LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 使用Python实现量化交易机器人定时启动或停止小工具

使用Python实现量化交易机器人定时启动或停止小工具

2020-03-11 发明者量化 来源:火星财经


作为全网功能强大、灵活易用的量化交易平台,发明者量化交易平台虽然使用门槛非常低,机器人程序占用资源很少。但是我们依然希望,让机器人需要运行的时候启动,不需要运行时停止。例如,在做商品期货程序化、量化交易时,非开市时间占全天的绝大部分。

这样我们就非常希望只让机器人在开市时间运行,每天只开市时间运行多节省费用,想想都激动。为了这个需求,我们可以使用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实现量化交易机器人定时启动或停止小工具

—-

编译者/作者:发明者量化

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...