测试环境:阿里云服务器,金字塔Python,登陆simnow模拟账户
设置:走完k线模式,基础周期1分钟,基准合约:SQRB00.
运行逻辑:一旦触发handle_bar,立即发单。
orderlog:
2019-03-11 13:29:59.827 【Python】 策略:<2_for_test> 触发handle_bar
2019-03-11 13:29:59.850 【Python】sell_open 策略:<2_for_test> 出现信号 book_id:ZQCF00,voloram=8, Type=0, Price=14500.000000, Account=
2019-03-11 13:29:59.858 【下单】CF05 价14500.000000 量8 买卖1 类型0 开平0 账户132532 Formula 1
2019-03-11 13:29:59.866 【下单】确认报单已发送 ID=-870471630 RefID = 40
2019-03-11 13:29:59.882 【指令】收到回报指令 ID = -870471630 RefID = 40
2019-03-11 13:29:59.897 【指令】收到回报指令 ID = -870471630 RefID = 40
2019-03-11 13:29:59.921 【回报】132532 : CF905 - 已报单 8 价格:14500 开 卖
2019-03-11 13:29:59.921 【回报】132532 : CF905 - 已撤单报单被拒绝CZCE:当前状态禁止此项操作 量:8
分析:
我理解,只有交易开始后才会触发handle_bar,金字塔的行情数据肯定晚于交易所的撮合时间。如果出现问题,就是上期技术的simnow出现时间错误。
然而,登陆金字塔自己的模拟交易服务器,出现同样的问题“2019-03-11 10:30:01.202 【回报】628830 : J05 焦炭1905 - 已撤单 量:4”
simnow和金字塔自己的模拟交易服务器,同时出现时间错误的可能性比较低。如果是这样的话,handle_bar的触发时间逻辑可能存在bug。
刚才写的设置有误,把基准合约ZQCF00误写成了SQRB00。
测试环境:阿里云服务器,金字塔Python,登陆simnow模拟账户
设置:走完k线模式,基础周期1分钟,基准合约:ZQCF00.
运行逻辑:一旦触发handle_bar,立即发单。
orderlog: 2019-03-11 13:29:59.827 【Python】 策略:<2_for_test> 触发handle_bar
分析: 我理解,只有交易开始后才会触发handle_bar,金字塔的行情数据肯定晚于交易所的撮合时间。如果出现问题,就是上期技术的simnow出现时间错误。 然而,登陆金字塔自己的模拟交易服务器,出现同样的问题“2019-03-11 10:30:01.202 【回报】628830 : J05 焦炭1905 - 已撤单 量:4” simnow和金字塔自己的模拟交易服务器,同时出现时间错误的可能性比较低。如果是这样的话,handle_bar的触发时间逻辑可能存在bug。 |
但,问题是,“2019-03-11 13:29:59.921 【回报】132532 : CF905 - 已撤单报单被拒绝CZCE:当前状态禁止此项操作 量:8”是中期技术返回给我的拒绝信息啊,并不是我本地电脑的时间啊?
请问:如何在handle_bar里取到行情的毫秒时间?我用get_dynainf(order_book_id=context.s1,type=207)取到的时间,只精确到秒,没有毫秒。
但,问题是,“2019-03-11 13:29:59.921 【回报】132532 : CF905 - 已撤单报单被拒绝CZCE:当前状态禁止此项操作 量:8”是中期技术返回给我的拒绝信息啊,并不是我本地电脑的时间啊?
谢谢。我用实盘账号测试一下。如果有问题再反馈。