GetRobotLogs
获取当前账号下一个实盘的策略日志、收益日志、图表数据和状态栏数据。
示例
按参数名查询实盘123最近的10条策略日志和状态栏数据。
python
# api() 见「签名验证」页面的Python示例
r = api('GetRobotLogs', robotId=123, logLimit=10, summaryLimit=1)
result = r['data']['result']
for row in result['logs'][0]['Arr']:
print(row)
print(result['summary']) # 状态栏数据返回值
| 类型 | 描述 |
object | 成功时 |
参数
| 名称 | 类型 | 必填 | 描述 |
robotId | number | 是 | 实盘Id,可以用 |
logMinId | number | 是 | 策略日志的最小Id。 |
logMaxId | number | 是 | 策略日志的最大Id。 |
logOffset | number | 是 | 在 |
logLimit | number | 是 | 从起始位置开始取的记录条数。 |
profitMinId | number | 是 | 收益日志的最小Id。 |
profitMaxId | number | 是 | 收益日志的最大Id。 |
profitOffset | number | 是 | 跳过的记录条数。 |
profitLimit | number | 是 | 取的记录条数。 |
chartMinId | number | 是 | 图表日志的最小Id。 |
chartMaxId | number | 是 | 图表日志的最大Id。 |
chartOffset | number | 是 | 跳过的记录条数。 |
chartLimit | number | 是 | 取的记录条数。 |
chartUpdateBaseId | number | 是 | 查询更新后的基础Id。 |
chartUpdateDate | number | 是 | 数据记录更新时间戳,只返回比它新的记录。 |
summaryLimit | number | 是 | 是否返回状态栏数据: |
logExchange | string | 否 | 只返回该交易所对象(按标签)的日志,空字符串表示不筛选。 |
logKeyword | string | 否 | 只返回内容包含该关键字的日志,空字符串表示不筛选。 |
logTypes | string | 否 | 只返回这些类型的日志,类型号用逗号分隔,例如 |
属性
| 名称 | 类型 | 描述 |
logs | array | 三个对象,依次是实盘数据库中策略日志表、收益日志表、图表日志表的查询结果;每个对象的 |
summary | string | 实盘状态栏数据( |
status | number | 实盘状态码,见 |
备注
参数较多,建议按参数名传值,没有传的参数取默认值;按位置传参时要传15~19个(15个时不查询状态栏)。logExchange、logKeyword、logTypes三个筛选参数只在新版托管者上生效,旧版托管者会忽略它们,返回全部日志。
logs[0]:策略日志
logs[0].Arr中的每条日志是一个数组,依次为:日志Id(id)、日志类型(logType)、交易所对象的标签(platformId)、订单Id(orderId)、价格(price)、数量(amount)、日志的附加消息(extra)、时间戳(date)、合约代码(contractType)、方向(direction)。例如:
plaintext
"Arr": [
[3977, 3, "Futures_OKX", "", 0, 0, "Sell(688.9, 2): 20016", 1526954372591, "", ""],
[3976, 5, "", "", 0, 0, "this_week 仓位过多, 多: 2", 1526954372410, "", ""]
]
logType的取值:
| logType | 名称 | 含义 |
|---|---|---|
| 0 | BUY | 买单 |
| 1 | SALE | 卖单 |
| 2 | RETRACT | 撤单 |
| 3 | ERROR | 错误 |
| 4 | PROFIT | 收益 |
| 5 | MESSAGE | 日志 |
| 6 | RESTART | 重启 |
logs[1]:收益日志
与策略日志中的收益日志一致,每条依次为日志Id、收益数值、时间戳。例如[202, 2515.44, 1575896700315]中202为日志Id,2515.44为收益,1575896700315为时间戳:
plaintext
"Arr": [
[202, 2515.44, 1575896700315],
[201, 1415.44, 1575896341568]
]
logs[2]:图表日志
每条依次为日志Id、图表数据系列索引、数据(JSON文本)。例如[23637, 0, "{\"close\":648, ...}"]中23637为日志Id,0为数据系列索引,最后的JSON文本是图表上的一根K线:
plaintext
"Arr": [
[23637, 0, "{\"close\":648,\"high\":650.5,\"low\":647,\"open\":650,\"x\":1575960300000}"],
[23636, 5, "{\"x\":1575960300000,\"y\":3.0735}"]
]
返回示例
json
{
"code": 0,
"data": {
"result": {
"chart": "",
"chartTime": 0,
"logs": [{
"Total": 20,
"Max": 20,
"Min": 1,
"Arr": []
}, {
"Total": 0,
"Max": 0,
"Min": 0,
"Arr": []
}, {
"Total": 0,
"Max": 0,
"Min": 0,
"Arr": []
}],
"node_id": 123,
"online": true,
"refresh": 1732201544000,
"status": 4,
"summary": "...",
"updateTime": 1732201532636,
"wd": 0
},
"error": null
}
}