MTM即动量指标,这可能是最简单的系统了,源代码如下:
Params
Numeric Length(20);//声明数值参数Length,初值20.//
Begin
PlotNumeric("MTM",Close/Close[Length]*100);//画线MTM,值就是把当前收盘价除以前20k线收盘价,最后乘以100了。//
PlotNumeric("Ref",100);//画中线100.//
End
代码虽然简单,但仔细观察会发现这可以做一个很简单而有效的程序化系统,如下:
Params
Numeric Length(20);
Vars
NumericSeries MTM;
NumericSeries MTM1;
NumericSeries MTM2;
Begin
MTM=Close/Close[Length]*100;
MTM1 = High / High[Length] *100;
MTM2 = Low / Low[Length] *100;
If(MarketPosition <> 1 And MTM[1] >= 102 And MTM1[1] >= 102 And MTM2[1] >= 102)
{Buy(1,Open);}
If(MarketPosition <>-1 And MTM[1] <=98 And MTM1[1] <= 98 And MTM2[1] <=98)
{SellShort(1,Open);}
End
我没做过参数优化,就是单纯观察了一下MTM指标,顺道写出来的,当然,限制条件还可以在这基础上添加,可我一般就喜欢做些简单的程序。
閱讀更多 依之翊 的文章