作为全网功能强大、灵活易用的量化交易平台,发明者量化交易平台虽然使用门槛非常低,机器人程序占用资源很少。但是我们依然希望,让机器人需要运行的时候启动,不需要运行时停止。例如,在做商品期货程序化、量化交易时,非开市时间占全天的绝大部分。 这样我们就非常希望只让机器人在开市时间运行,每天只开市时间运行多节省费用,想想都激动。为了这个需求,我们可以使用Python语言编写一个在FMZ量化交易平台上运行的策略机器人,让这个机器人通过发明者量化交易平台的扩展API接口,定时控制机器人的启动和停止。 有了需求,说干就干! 其实整个代码非常简单,调用发明者量化交易平台扩展API接口的例子直接可以使用,地址:https://www.fmz.com/api#%E7%AE%80%E5%8D%95%E7%9A%84%E4%BE%8B%E5%AD%90 直接使用例子中的函数:def api(method, *args)。我们需要调用的接口也很简单,用到以下两个接口(在FMZ文档上可以查询到) RestartRobot是重启机器人接口,参数传入机器人ID即可。使用具体id,这样调用即可:api('RestartRobot', id) StopRobot是停止机器人接口,参数也是机器人ID。机器人ID查看、获取,截图: 调用发明者量化交易平台扩展API需要使用发明者量化交易平台的API KEY。 可以在账户管理中生成自己的API KEY。 我们把API KEY作为策略的参数传入。 获取发明者量化交易平台账号API KEY截图: 剩下的就是编写定时逻辑了,也非常简单,设置定时参数: ["175708,14:55:33-15:10:33", ...] 省略号代表可以设置更多的类似"175708,14:55:33-15:10:33"的设置。 定时参数是一个JSON字符串,策略代码中会对其解析,解析为一个列表。列表中每个元素就是一组机器人启动/停止设置。 即:"175708,14:55:33-15:10:33" 其中以逗号间隔。逗号之前的部分175708为机器人ID,逗号后面的部分为启动时间/停止时间。如上例子,是ID为:175708的机器人,14:55:33启动,15:10:33停止。 然后策略中不停轮寻,每次轮寻先获取当前时间,然后根据当前时间和定时时间对比,判断是否需要触发启动或者停止机器人。 如果触发了,就调用api('RestartRobot', id)或者api('StopRobot', id) ,来启动、停止机器人。 完整的策略代码 机器人参数设置 策略运行 被这个策略操作的机器人: 策略地址:https://www.fmz.com/strategy/184600 结尾 作为抛砖引玉,发明者量化交易平台的扩展API还强大的很,用这些扩展API基于FMZ平台做一个自己的量化交易平台都完全没问题。 这个定时机器人设计的比较简单,只是无脑到时间开启,到时间停止,并没有加入启动是否成功,检验,异常重试,等等机制,有兴趣的可以增加功能,扩展。策略仅供学习参考 本文来源:发明者量化 —- 编译者/作者:发明者量化 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
使用Python实现量化交易机器人定时启动或停止小工具
2020-03-11 发明者量化 来源:火星财经
LOADING...
相关阅读:
- 1万美元的比特币,你再也买不到了2020-08-02
- Upay即将上线苹果商店 金融数字货币潜力无穷2020-08-02
- 郑弘文:8.02强势反弹暴力瀑布1600点后市如何操作?2020-08-02
- 比特币不会突破12,000美元-分析师现在在说什么2020-08-02
- 区块链行业发展月度新动态2020-08-02