簡單公式的莫名其秒的問題。朋友說是BUG [開拓者 TB]
- 咨詢內(nèi)容:
本帖最后由 sssaaabbb 于 2016-2-29 09:43 編輯
一個語句,A AND B 改為B AND A,,只是把順序反了一下。結果完全不一樣了。
語句1
Params
Vars
NumericSeries FastMA;
NumericSeries slowMA;
NumericSeries EntPriceL;
NumericSeries ma5;
NumericSeries ma10;
NumericSeries ds;
NumericSeries ks;
NumericSeries MinPoint;
BoolSeries kd;
BoolSeries kk;
BoolSeries pd;
BoolSeries pk;
begin
ma5=Average(c,5);
ma10=Average(c,10);
FastMA = Average(c,9) ;
SlowMA = Average(c,18) ;
pd=CrossUnder(l,Lowest(l[1],8)) ;
pk=Crossover(l,Highest(h[1],8)) ;
PlotNumeric("Highest(h[1],50)",Highest(h[1],50));
PlotNumeric("Lowest(l[1],50)",Lowest(l[1],50));
//開倉條件
if( (CrossOver(ma5,ma10)) && h>Highest(h[1],50) )
{Buy(1,o);}
if( (CrossUnder(ma5,ma10)) && l<Lowest(l[1],50) )
{SellShort(1,o);}
開倉條件的反順序
//if( h>Highest(h[1],50) && (CrossOver(ma5,ma10)) )
//{Buy(1,o);}
//if( l<Lowest(l[1],50) && (CrossUnder(ma5,ma10)))
//{SellShort(1,o);}
if(pd[1])
{sell(1,c);}
if(pk[1])
{BuyToCover(1,c);}
end
效果如圖
FT1.png (22.23 KB, 下載次數(shù): 1) 2016-2-29 09:29:01 上傳 - TB技術人員:
crossover,highest等是序列函數(shù),不可放在條件中運算。
使用中間變量,布爾型的,將crossover,highest,lowest等語句賦值 給中間變量。
比如你現(xiàn)有的kd,kk等變量再加多二個,將&&前后的二個判斷式分別賦值給中間變量,
再將中間變量代入條件中,A&&B 或是 B&&A就沒有區(qū)別了
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯(lián)系技術人員 QQ: 511411198 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內(nèi)容