输入/搜索内容
入门
平台基础
编写策略
开发工具
回测系统
进阶专题
数据与研究
扩展API接口
AI接入
创建ApiKey
验证方式
扩展API接口详解
GetAccount
GetNodeList
DeleteNode
GetExchangeList
GetPlatformList
GetStrategyList
GetRobotGroupList
GetRobotList
GetRobotDetail
GetRobotLogs
NewRobot
RestartRobot
StopRobot
CommandRobot
DeleteRobot
PluginRun
pub
扩展API接口返回码
实盘状态码

在托管者上执行一段JavaScript代码并返回结果,不创建实盘、不计费,单次执行最长5分钟;代码可以真实下单。

示例

在托管者123上执行一段代码,取回日志和返回值。

python
# api() 见「签名验证」页面的Python示例 import json settings = { "source": "function main() {Log(\"Hello FMZ\")}", "node": 123, "period": 60, "exchanges": [{"pid": 123, "pair": "SOL_USDT"}] } r = api('PluginRun', settings) out = json.loads(r['data']['result']) print(out['logs'], out['result'])

返回值

类型描述

string

data.result是JSON文本:logs为代码中Log()输出的日志,result为main()返回值的JSON文本。

参数

名称类型必填描述

settings

object

是

执行配置,字段见下方属性表。

属性

名称类型描述

settings.source

string

要执行的代码,入口为main(),返回值就是执行结果。

settings.strategy

number

不传source时,执行账号中这个Id的策略(例如交易插件)。

settings.node

number

执行代码的托管者Id;不写或为-1时自动选择。

settings.exchanges

array

交易所对象配置,写法同扩展API接口详解中的「实盘配置(settings)」。

备注

与开发工具中的「调试工具」、交易终端插件使用同一种执行机制,见插件原理与编写。

exchanges也可以不引用平台上的交易所账户,直接传入交易所配置,例如{"eid": "Binance", "pair": "ETH_BTC", "meta": {"AccessKey": "...", "SecretKey": "..."}},meta的字段名见GetExchangeList返回的meta。exchanges中通常只设置一个交易所对象(调试工具页面也只支持一个);设置两个不会报错,但代码中访问第二个交易所对象时会报错。

返回示例
json
{ "code": 0, "data": { "result": "{\"logs\": [...], \"result\": \"\"}", "error": null } }

其中result解析后为:

json
{ "logs": [{ "PlatformId": "", "OrderId": "0", "LogType": 5, "Price": 0, "Amount": 0, "Extra": "Hello FMZ", "Currency": "", "Instrument": "", "Direction": "", "Time": 1732267473108 }], "result": "" }