期货软件TB系统源代码解读系列55-双均线交易系统完善

我刚翻看以前的解读,双均线交易系统在第一篇的时候,就解读了,而且我一直用的就是这个系统,当然,它的缺陷还是存在的,开仓过多,后来我给改了,添加了一条200均线,限制多空方向的开仓,但在过均线200时,又没法去掉延迟,那时,我也还不知道怎么改,就留着了,随着自己解读的代码越多,现在才知道把它给完善。也不废话了,我直接附上这个自己修改完善后的代码吧,解读如下:

Params

Numeric FastLength(5);//声明数值参数FastLength,初值5.//

Numeric SlowLength(20);//声明数值参数SlowLength,初值20.//

Numeric DslowLength(200);//声明数值参数DslowLength,初值200.//

Vars

NumericSeries AvgValue1; //声明数值序列变量AvgValue1.//

NumericSeries AvgValue2;//声明数值序列变量AvgValue2.//

NumericSeries AvgValue3;//声明数值序列变量AvgValue3.//

Begin

AvgValue1 = AverageFC(Close,FastLength);//求5日均线了。//

AvgValue2 = AverageFC(Close,SlowLength);//求20日均线了。//

AvgValue3 = AverageFC(Close,DslowLength);//求200日均线了。//

PlotNumeric("MA1",AvgValue1);//画5日均线。//

PlotNumeric("MA2",AvgValue2); //画20日均线。//

PlotNumeric("MA3",AvgValue3); //画200日均线。//

If(!CallAuctionFilter()) Return;// 集合竞价和小节休息过滤。//

If(MarketPosition <>1 && AvgValue1[1] > AvgValue2[1] && High >= AvgValue3[1])  //假如当前没用持多单,且前一5日均线大于前一20日均线,且当前高价大于或等于200日均线。//

{

Buy(1,Max(Open , AvgValue3 ));//开仓买入,这里的细节处理就是把200日均线与当前k线开盘价比较,取较大值。//

}

If(MarketPosition ==1 && AvgValue1[1] < AvgValue2[1]) //假如当前持有多仓,且前一5日均线小于前一20日均线。//

{

Sell(1,Open);//平仓。//

}

If(MarketPosition <>-1 && AvgValue1[1] < AvgValue2[1] && Low <= AvgValue3[1])  //假如当前没有持空单,且前一5日均线小于前一20日均线,且当前低价小于前一200日均线。//

{

SellShort(1,Min(Open , AvgValue3 ));//开仓卖出,细节处理就是把当前k线的开盘价与200日均线值比较,取较小值即可。//

}

If(MarketPosition ==-1 && AvgValue1[1] > AvgValue2[1])//当前持有空单,且前一5日均线大于前一20日均线的。//

{

BuyToCover(1,open);//平仓。//

}

End

上面的系统是我修改的,下面是TB里自带写好的双均线系统,源代码及结果如下:

Params

Numeric FastLength(5);

Numeric SlowLength(20);

Vars

NumericSeries AvgValue1; 

NumericSeries AvgValue2;

Begin

AvgValue1 = AverageFC(Close,FastLength);

AvgValue2 = AverageFC(Close,SlowLength);

PlotNumeric("MA1",AvgValue1);

PlotNumeric("MA2",AvgValue2);

// 集合竞价和小节休息过滤

If(!CallAuctionFilter()) Return;

If(MarketPosition <>1 && AvgValue1[1] > AvgValue2[1])

{

Buy(1,Open);

}

If(MarketPosition <>-1 && AvgValue1[1] < AvgValue2[1])

{

SellShort(1,Open);

}

End

喜欢均线系统的,就自己把这两代码复制测试,对比一下了,当然这些5日、20日、200日等参数都可以修改的,随个人意愿来的,我这里也只是做个解读,把能完善的给完善了。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容