кстати, почему у меня нет пересечение..,? В условиях я указал "if(iMA1 >= iMA2 && iMA3 > iMA2 && CountBuy() == 0)" ---- если быстрая МА больше или ровнос средней МА а так же тяжелая МА больше средней МА и нет покупок - то покупка.... условия на продажу противоположные. Или я неправильно условия создал?
Это не пересечение.
Пересечение - это когда быстра машка в один момент времени были ниже медленной, а вдругой момент выше.
Вот смотри код на примере двух машек:
string Signal(){
double PrevFast = iMA(Symbol(), 0, FastMA, 0, MODE_EMA, PRICE_CLOSE, 2);
double CurFast = iMA(Symbol(), 0, FastMA, 0, MODE_EMA, PRICE_CLOSE, 1);
double Slow = iMA(Symbol(), 0, SlowMA, 0, MODE_EMA, PRICE_CLOSE, 1);
if (PrevFast Slow) return("Buy");
if (PrevFast > Slow && CurFast return("No Signal");
}
Добавлено: 06-07-2013 16:33:48
Так точнее:
string Signal(){
double PrevFast = iMA(Symbol(), 0, FastMA, 0, MODE_EMA, PRICE_CLOSE, 2);
double CurFast = iMA(Symbol(), 0, FastMA, 0, MODE_EMA, PRICE_CLOSE, 1);
double CurSlow = iMA(Symbol(), 0, SlowMA, 0, MODE_EMA, PRICE_CLOSE, 1);
double PrevSlow = iMA(Symbol(), 0, SlowMA, 0, MODE_EMA, PRICE_CLOSE, 2);
if (PrevFast CurSlow) return("Buy");
if (PrevFast > PrevSlow && CurFast return("No Signal");
}
