全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
程序没有交易信号,实在找不出原因
2022-02-04 01:16

//交易规则:
//求25周期的最高点,突破高点开多。
//求15周期的最低点,突破低点开空。
//求25周期的最低点,突破低点平多
//求80周期的最高点,突破高点平空。
//每日最多开仓3次
//开仓时间9.30-14.40
//收盘前平仓14.55

Params
    Numeric LengthKaiKong(15);
    Numeric LengthKaiDuo(25);
    Numeric LengthPingduo(25);
    Numeric LengthPingKong(80);
    Numeric Lots(5);
    Numeric BeginTime1(9300);
    Numeric BeginTime2(1440);
    Numeric EndTime(1455);
    
Vars
    Series<Numeric> HighestKaiDuo ;//开多上轨
    Series<Numeric> LowestKaiKong ;//开空下轨
    Series<Numeric> LowestPingDuo ;//平多下轨
    Series<Numeric> HighestPingKong ;//平空上轨
    Series<Numeric> Freq;//开仓次数赋值
Events
    
    OnBar(ArrayRef<Integer> indexs)
    {
    HighestKaiDuo=Highest(High[1],LengthKaiDuo);//开多上轨
    LowestKaiKong=Lowest(Low[1],LengthKaiKong);//开空下轨
    LowestPingDuo=Lowest(Low[1],LengthPingduo);//平多下轨
    HighestPingKong=Highest(High[1],LengthPingKong);//平空上轨
    //PlotNumeric("开多上轨",HighestKaiDuo);
    //PlotNumeric("开空下轨",LowestKaiKong);
    //PlotNumeric("平多下轨",LowestPingDuo);
    //PlotNumeric("平空上轨",HighestPingKong);
    IF(TrueDate(0)!=TrueDate(1))
    {
        Freq=0;
    }
    Else If(Time>=BeginTime1*0.0001 And Time<BeginTime2*0.0001)
    {
        If(Freq<3 And MarketPosition==0)//最多开3次仓  0 1 2
        {
            If(High>=HighestKaiDuo)
            {
                Buy(Lots,Max(Open,HighestKaiDuo));
                Freq=Freq+1;
                Commentary("开多");
            }
            If(LOW<=LowestKaiKong)
            {
                SellShort(Lots,Min(Open,LowestKaiKong));
                Freq=Freq+1;
                Commentary("开空");
            }
        }
    }
        //平仓
    If(MarketPosition!=0)
    {
        If(Time<EndTime*0.0001)  
        {
            If(MarketPosition==1 And Low<=LowestPingDuo)
            {
                Sell(Lots,Min(Open,LowestPingDuo));
                Commentary("平多");
            }
            If(MarketPosition==-1 And High>=HighestPingKong)
            {
                BuyToCover(Lots,Max(Open,HighestKaiDuo));
                Commentary("平空");
            }
        }    
    }
    Else
        {
            IF(Time>=EndTime*0.0001)
            {
                Sell(0,Open);
                BuyToCover(0,Open);
                Commentary("收盘平仓");
            }
        }
    }

xdqh10180603

哪位大神能指点一下吗?多谢!!

2022-02-04 01:17
duanmuyufei

时间问题。

9:30 对应的time=0.0930

9300*0.0001=0.93

2022-02-05 09:52
您未登录,请先 登录注册 后发表评论
顶部