扩展API接口详解
-
优宽量化交易平台扩展API接口
在https://www.youquant.com/api/v1?中,?符号后面跟随请求参数。使用Python语言描述请求参数:python{ 'version' : '1.0', 'access_key': 'xxx', # AccessKey,在账户管理页面申请 'method' : 'GetNodeList', # 具体调用的方法 'args' : [], # 具体调用的method方法的参数列表 'nonce' : 1516292399361, # 时间戳,单位为毫秒,允许与标准时间戳前后误差1小时,nonce必须大于上一次访问时的nonce值 'sign' : '085b63456c93hfb243a757366600f9c2' # 签名 }各参数以字符
&分隔,参数名和参数值用符号=连接,完整的请求URL(以method=GetNodeList为例):texthttps://www.youquant.com/api/v1? access_key=xxx& nonce=1516292399361& args=%5B%5D& sign=085b63456c93hfb243a757366600f9c2& version=1.0& method=GetNodeList注意:请求参数中不包含
secret_key参数。 -
签名方式
请求参数中sign参数的加密方式如下,按照以下格式:textversion + "|" + method + "|" + args + "|" + nonce + "|" + secretKey拼接字符串后,使用
MD5加密算法对字符串进行加密,并转换为十六进制字符串,该值作为参数sign的值。签名部分参考Python代码,扩展API接口「验证方式」:python# 参数 d = { 'version': '1.0', 'access_key': accessKey, 'method': method, 'args': json.dumps(list(args)), 'nonce': int(time.time() * 1000), } # 计算sign签名 d['sign'] = md5.md5(('%s|%s|%s|%d|%s' % (d['version'], d['method'], d['args'], d['nonce'], secretKey)).encode('utf-8')).hexdigest() -
接口业务错误:
- 参数不足:json{ "code":0, "data":{ "result":null, "error":"Params length incorrect" } }
- 参数不足:
本章内容整章阅读
| 名称 | 描述 |
| GetNodeList | 获取当前账号下的托管者列表。 |
| GetRobotGroupList | 获取当前账号的实盘分组列表。 |
| GetPlatformList | 获取当前账号已添加的交易所列表。 |
| GetRobotList | 获取当前账号的实盘列表。 |
| CommandRobot | 向当前账号下的实盘发送交互命令。 |
| StopRobot | 停止当前账号下的实盘。 |
| RestartRobot | 重启当前账号下的实盘。 |
| GetRobotDetail | 获取当前账号下指定实盘的详细信息。 |
| GetAccount | 获取当前账号的账户信息。 |
| GetExchangeList | 获取平台支持的交易所列表及其配置信息。 |
| DeleteNode | 删除当前账号的托管者节点,删除的托管者节点ID为nid参数指定的托管者ID。 |
| DeleteRobot | 删除当前账号下的实盘。 |
| GetStrategyList | 获取平台策略信息。 |
| NewRobot | 在当前账号下创建一个实盘。 |
| PluginRun | 调用平台的调试工具功能;仅支持JavaScript语言。 |
| GetRobotLogs | 获取当前账号下一个实盘的日志信息,所要获取的日志信息对应的实盘Id由robotId参数指定。 |