vn.py量化社区
By Traders, For Traders.
Member
avatar
加入于:
帖子: 144
声望: 3

一段尾盘平仓的代码,每天14:55定时平仓,代码如下面这样:

可是我看回测结果的时候,大部分是正常的,如下图所示,前后几天都是14:56平仓了,但是2010-12-22这天没有显示有平仓记录。
我根据self.f1的记录,发现确实发出了平仓命令。

我自己分析可能的原因只能是发出了平仓命令,但是没有平仓成功。

这就奇怪了。
我记得回测时没有什么另外的逻辑判断吧,只要用bar.close_price就一定能成交的,
请问一下陈总,这是什么原因引起的呢?谢谢。
description

    #盘中未平仓,盘尾时间段平仓
    if self.sellWindow:
        if self.pos > 0:
            self.sell(bar.close_price,abs(self.pos))
            self.f1.write("清多仓, 时间是{},价格是{}".format(bar.datetime,bar.close_price)+"\n") 
        if self.pos < 0:
            self.cover(bar.close_price,abs(self.pos))
            self.f1.write("清空仓, 时间是{},价格是{}".format(bar.datetime,bar.close_price)+"\n") 
Administrator
avatar
加入于:
帖子: 4372
声望: 250

你挂的是限价单,以cover为例,如果下面K线的最高价,全部都高于bar.close_price,你的这个限价委托就无法成交了。

如果要保证成交,请超价下限价委托。

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