Скользящие средние со сдвигом по вертикали

 

Уважаемые гуру, просветите!

Хочу написать советника, который торгует в конверте ( между скользящими средними со сдвигом по вертикали в процентах).

Попытался сделать примерно так:

EMA1 = iMA(NULL,5,Per_EMA1,shift,MODE_EMA,PRICE_CLOSE,0); // средняя для конверта

EMA2 = iMA(NULL,5,Per_EMA2,shift1,MODE_EMA,PRICE_CLOSE,0); // средняя с большим периодом

EMA3 = iMA(NULL,1,Per_EMA3,0,MODE_EMA,PRICE_CLOSE,0); // текущая цена

conv_up = EMA1*(1+C);

conv_down = EMA1*(1-C);

Условие для открытия ордера:

if (conv_up>EMA2>conv_down)

{

if (EMA3>conv_up)

{

OrderSend(Symbol(),OP_SELL,Lots,Bid,30,Ask+Stoploss1*Point,Bid-Takeprofit1*Point,"Продаем",11000,0,Red);

}

if (EMA3<conv_down)

{

OrderSend(Symbol(),OP_BUY,Lots,Ask,30,Bid-Stoploss*Point,Ask+Takeprofit*Point,"Покупаем",666,0,Green);

}

}

Подскажите, пожалуйста, в чем ошибка? Ордера не открываются. Может быть выражения типа conv_up = EMA1*(1+C) некорректны для MQL4?

Я здесь новичок, поэтому прошу снисходительно отнестись к моим ошибкам или неправильным вопросам. Заранее благодарю.

 
if (conv_up>EMA2>conv_down)

Странное выражение, лучше так:

if(conv_up>EMA2 && EMA2>conv_down)
 
Sepulca:

Странное выражение, лучше так:


Я уже методом тыка допер, но все-равно спасибо!
Причина обращения: