VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 148
声望: 4

很简单的一个策略,每天开盘开单,中间或者收盘前平单,直接按bar.close_price 来成交
可是我回测时发现有时候平单平不掉。

比如:

记录开盘价,时间是2019-06-17 09:31:00,价格是3647.0
开空仓,买入时的价格是3642.6
-----买入时间2019-06-17 09:32:00
平空仓,价格是3649.4
-----平空时间2019-06-17 09:36:00
平空仓,价格是3657.4
-----平空时间2019-06-17 09:37:00
仓位为0,无需要处理,当前时间为2019-06-17 14:55:00
**************************************************

上面的代码逻辑是写在onbar里的,然后我将on_trade里面的信息也打印出来:

发现那天的信息是这样的:

09:33:00   3642.6000000000004
09:38:00   3657.4

就是说中间有一笔“平空仓,价格是3649.4”,虽然在onbar里面执行了,但是并没有成交。。

我用半年的数据测试,发现有6-7天出现这样的情况。就是每天只买入了一手,但是平仓平了两次。

请问这是因为价格忽然变动,无法按bar.close_price成交,所以平不了仓位,还是其他的原因?
谢谢。

Administrator
avatar
加入于:
帖子: 4495
声望: 317

T时刻的close_price,T+1时刻可能碰不到了。

希望保证能成交就加上额外的超价。

Member
avatar
加入于:
帖子: 103
声望: 7

用Python的交易员 wrote:

T时刻的close_price,T+1时刻可能碰不到了。

希望保证能成交就加上额外的超价。
我用1分钟基础数据回测也遇到平仓失败的问题,如果用加上额外差价来解决,是不是会造成很大的误差。这样回测出来的结果准确率会大打折扣。

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】