开拓者期货期权程序化系统交易论坛
标题:
TbQuant 信号错误
[打印本页]
作者:
TBlaov
时间:
2021-3-8 12:33:04
标题:
TbQuant 信号错误
本帖最后由 TBlaov 于 2021-3-8 12:33 编辑
信号错误。
一个策略,在有的品种里显示正确,有的品种,符合开仓条件却不开仓。
作者:
TBlaov
时间:
2021-3-8 12:33:05
图1,符合开仓条件,没开仓
图2,符合开仓条件,不仅没开仓,计数器 i 计算错误,没开仓应该为0
图3,显示正确
图1 图2 的错误品种还有很多,我这里只是举个例子。
源码:
//上穿均线 并且 均线拐头向上,开仓
Params
Numeric Length(10); //用于计算ATR和新低价的Bar数
Vars
Numeric PriceH(130);
Numeric ExitP(150);
Numeric gap(2);
Numeric Money(10000);
Series<Numeric> EntryP;
Series<Numeric> i(0);
Series<Numeric> lot;
Series<Numeric> Ma;
Events
OnBar(ArrayRef<Integer> indexs)
{
//初始设置
Ma=average(C,Length);
PlotNumeric("Ma",Ma[1],0,White);
//上穿 MarketPosition==0 首次买入
If(MarketPosition==0 && i<100)
{
If( C[1]<PriceH && C[1]>Ma[1] && ma[1]>ma[2])
{ lot=money/c[1];
Buy(lot,Open);
i=i+1;
entryP=lastentryprice-gap;
}
}
//达到价差,补仓
If(L<=EntryP && i<100)
{ lot=money/c[1];
Buy(lot,Min(Open,EntryP));
i=i+1;
entryP=lastentryprice-gap;
}
Commentary("i="+text(i));
Commentary("c[1]="+text(c[1]));
Commentary("Ma[1]="+text(ma[1]));
//平仓
If(MarketPosition==1 )
{
If(H>=ExitP) {Sell(0,Max(Open,ExitP)); i=0; EntryP=0;}
}
}
作者:
TBlaov
时间:
2021-3-8 12:33:06
请版主看看。代码是完整的。
作者:
will2020
时间:
2021-4-7 15:49:01
我的公式使用于同样一个合约同样周期在两个并列的图标,交易信号不一样
欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/)
Powered by Discuz! X2