关于While发单 [开拓者 TB]
- 咨询内容:
各位老师您好:
我用While循环,在一根K线上连续开单,TB的海归策略里面有用到,可是中途出现信号消失,当根K线走完,刷新数据,信号又出现了,之前也有朋友提出了相同的问题,没有解答。
这个问题有办法解决吗,请各位指教。 - TB技术人员:
补充代码:
If(preEntryPrice!=InvalidNumeric && TurtleUnits >= 1)
{
If(Open >= preEntryPrice + 0.5*N) // 如果开盘就超过设定的1/2N,则直接用开盘价增仓。
{
myEntryPrice = Open;
preEntryPrice = myEntryPrice;
Buy(TurtleUnits,myEntryPrice);
SendOrderThisBar = True;
}
while(High >= preEntryPrice + 0.5*N) // 以最高价为标准,判断能进行几次增仓
{
myEntryPrice = preEntryPrice + 0.5 * N;
preEntryPrice = myEntryPrice;
Buy(TurtleUnits,myEntryPrice);
SendOrderThisBar = True;
}
} - TB客服:
是说系统自带的海龟交易系统有信号消失的问题吗?
公式有没有自己做为修改处理?什么合约?用于哪个周期上?各参数是否使用原默认的参数? - 网友回复:
本帖最后由 jrqh116098 于 2016-1-11 19:49 编辑
小米老师,对不起,是我弄错了。
和朋友讨论了下,不是自带代码本身的问题,是我的全局变量没有写好。
If(MarketPosition==1)
{
If(Open>=LastEntryPrice+MoreLength && GetGlobalVar(0)<TotalN)
{
Buy(MyNumeric,Open+MySmooth*Minpoint);
SetGetGlobalVar(0,GetGlobalVar(0)+1);
Commentary("多头加仓");
}
While(High>=LastEntryPrice+MoreLength && GetGlobalVar(0)<TotalN)
{
Buy(MyNumeric,LastEntryPrice+MoreLength+MySmooth*Minpoint);
SetGetGlobalVar(0,GetGlobalVar(0)+1);
Commentary("多头加仓");
}
}
全局变量SetGetGlobalVar(0,GetGlobalVar(0)+1); 是不是能这么用?换成NumericSeries i;就没有闪烁了。
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容