关于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  进行 有偿 编写!(不贵!点击查看价格!)
                        
相关文章
- 
                        没有相关内容
                       

 
                     会员登录/注册
会员登录/注册