实测帮助文件的延迟反手不能实现平仓之后延迟几个tick反手开仓
2021-10-14 10:34

帮助文件代码原文如下,实测是在下个K线才反手开仓,求解答

Params
    Numeric FastLength(5);
    Numeric SlowLength(20);
    Numeric DelayTicks(5);
Vars    
    Series<Numeric> AvgValue1;
    Series<Numeric> AvgValue2;
    Numeric LastBarTime;
    Numeric TickCounter;
    Numeric dataIndex;
Events
OnBar(ArrayRef<Integer> indexs)
{    
    AvgValue1 = AverageFC(Close,FastLength);
    AvgValue2 = AverageFC(Close,SlowLength);
    LastBarTime = GetGlobalVar(0);    
    TickCounter = GetGlobalVar(1);

    // 最新Bar第一次生成时,Tick重新开始计数 
    If(BarStatus == 2 && gValue[0]!= Time)    
    {    
        LastBarTime = Time; 
        TickCounter = 0;
    }
    If(MarketPosition <> 1 && AvgValue1[1] > AvgValue2[1])
    {        
        If(MarketPosition == 0 || BarStatus != 2)    
        // 无持仓,直接买多仓
        // 持空仓且Bar不是实时行情,平空仓,买多仓
        {
            Buy(1,Open);
        }Else    // 持空仓,Bar实时行情,平空仓,通过TickCounter计数,延迟反手
        {    
            BuyToCover(1,Open);        
            If(TickCounter == 0)
            {    
               TickCounter = 1;
            }Else If(TickCounter < DelayTicks)
            {
               TickCounter = TickCounter + 1;
            }Else            
            {
                Buy(1,Open);        
            }
        }
    }
    
    If(MarketPosition <> -1 && AvgValue1[1] < AvgValue2[1])    
    {
        If(MarketPosition == 0 || BarStatus != 2)    
        {    
            SellShort(1,Open);
        }Else     // 持多仓且Bar为实时行情,平多,延迟反手
        {
            Sell(1,Open);
            If(TickCounter == 0)            
            {
                TickCounter = 1;
            }Else If(TickCounter < DelayTicks)
            {
                TickCounter = TickCounter + 1;
            }Else
            {
                SellShort(1,Open);
            }
        }
    }
    SetGlobalVar(0,LastBarTime); 
    SetGlobalVar(1,TickCounter);
}

评论区
warning

大佬查出原因了没有,着急上火的呀

2021-10-15 13:04
warning

请问搞清是否有问题了吗?

2021-10-14 15:50
warning

感谢回复,亟待尽快解决,实盘坐等laugh

2021-10-14 11:32
顶部