double MA5=iMA(NULL,0,5,0,MODE_SMA,PRICE_CLOSE,0);
double MA5_1=iMA(NULL,0,5,0,MODE_SMA,PRICE_CLOSE,1);
double MA10=iMA(NULL,0,10,0,MODE_SMA,PRICE_CLOSE,0);
double MA10_1=iMA(NULL,0,10,0,MODE_SMA,PRICE_CLOSE,1);
double MA21=iMA(NULL,0,21,0,MODE_SMA,PRICE_CLOSE,0);
double MA21_1=iMA(NULL,0,21,0,MODE_SMA,PRICE_CLOSE,1);
double MA48=iMA(NULL,0,48,0,MODE_SMA,PRICE_CLOSE,0);
double MA48_1=iMA(NULL,0,48,0,MODE_SMA,PRICE_CLOSE,1);
double MA89=iMA(NULL,0,89,0,MODE_SMA,PRICE_CLOSE,0);
double MA89_1=iMA(NULL,0,89,0,MODE_SMA,PRICE_CLOSE,1);
double MA144=iMA(NULL,0,144,0,MODE_SMA,PRICE_CLOSE,0);
double MA144_1=iMA(NULL,0,144,0,MODE_SMA,PRICE_CLOSE,1);
double MA288=iMA(NULL,0,288,0,MODE_SMA,PRICE_CLOSE,0);
double MA288_1=iMA(NULL,0,288,0,MODE_SMA,PRICE_CLOSE,1);
定义两个函数
int Math_M(double M1,double M2)//比较两个值的大小,如果M1>M2,则=1,否则=0
{
int M=0;
if(M1>0)
if(M1>M2)M=1;
return(M);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int Math_X(double X1,double X2)//比较两个值得大小,如果X1<X2,则=1,否则=0
{
int X=0;
if(X1>0)
if(X1<X2)X=1;
return(X);
}
//+------------------------------------------------------------------+
做多条件:(Math_M(MA5,MA5_1)+Math_M(MA10,MA10_1)+Math_M(MA21,MA21_1)+Math_M(MA48,MA48_1)+Math_M(MA89,MA89_1)+Math_M(MA144,MA144_1)+Math_M(MA288,MA288_1))>=5;//7条均线当中,有5条及以上的均线向上,做多
做空条件:(Math_X(MA5,MA5_1)+Math_X(MA10,MA10_1)+Math_X(MA21,MA21_1)+Math_X(MA48,MA48_1)+Math_X(MA89,MA89_1)+Math_X(MA144,MA144_1)+Math_X(MA288,MA288_1))>=5;//7条均线当中,有5条及以上的均线向下,做空
平空条件:(Math_M(MA5,MA5_1)+Math_M(MA10,MA10_1)+Math_M(MA21,MA21_1)+Math_M(MA48,MA48_1))>=3;//4条均线中,有3条及以上的均线向上,平空
平多条件:(Math_X(MA5,MA5_1)+Math_X(MA10,MA10_1)+Math_X(MA21,MA21_1)+Math_X(MA48,MA48_1))>=3;//4条均线中,有3条及以上的均线向下,平多
带移动止损,可以自定义。
开仓手数可调
亏损超过500点加仓1倍,点数和倍数都可以调
当所有多单盈利达到200点(可调)全部多单平掉
当所有空单盈利达到200点(可调)全部空单平掉
|