Новичек задает вопрос
if ( OrdersTotal()==0)
OrderSend(....)
Но допустим сработал мой тейкпрофит, OrdersTotal() опять стал равен нулю, ЕМА попрежнему выше цены-открывается опять ордер, а мне этого не надо.... Будет опять надо когда ЕМА опять пересечет цену вверх и опять 1 раз...
Но допустим сработал мой тейкпрофит, OrdersTotal() опять стал равен нулю, ЕМА попрежнему выше цены-открывается опять ордер, а мне этого не надо.... Будет опять надо когда ЕМА опять пересечет цену вверх и опять 1 раз...
Условие на покупку пропишите конкретно пересечение ценой ЕМА, т.е. сравнивайте значение ЕМА и цены на 2-ом и 1-ом барах, например: если на втором баре цена ниже ЕМА, а на первом уже выше, то бай...см. учебник, создание обычного эксперта, ф-ия определения торговых критериев, все очень подробно расписано, только в варианте не ЕМА и цены, а гистограммы МАСД и его сигнальной линии...те же пересечения, тот же один ордер в рынке одновременно и т.д. Читайте азбуку...
If (я спросил) then (я не расшифровал азбуку && не могу написать) //а так как мой вариант не работает поэтому и обратился на форум
else (обратился на форум)
Спасибо.
Paukas, спасибо большое, но можно еще словесные комментарии какие-нибудь? к написанному.... Что такое iOpen?
Ф1 в редакторе в падлу нажать?...
Paukas, спасибо большое, но можно еще словесные комментарии какие-нибудь? к написанному.... Что такое iOpen?
В МТ хелп есть F1 - кнопка. Пишите и F1
| double iOpen( | string symbol, int timeframe, int shift) |
Для текущего графика информация о ценах открытия находится в предопределенном массиве Open[].
| symbol | - | Символьное имя инструмента. NULL означает текущий символ. |
| timeframe | - | Период. Может быть одним из периодов графика. 0 означает период текущего графика. |
| shift | - | Индекс получаемого значения из таймсерии (сдвиг относительно текущего бара на указанное количество периодов назад). |
Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));
If (я спросил) then (я не расшифровал азбуку && не могу написать) //а так как мой вариант не работает поэтому и обратился на форум
else (обратился на форум)
Спасибо.
MA1=iMA(NULL,0,Period_MA1,0,MODE_EMA,PRICE_CLOSE,0);
if ( iOpen("EURUSD",30,0) < MA1 && Ask>MA1)
OrderSend("EURUSD",OP_BUY,0.01,Ask,2,Bid-SL*Point,Bid+TP*Point,NULL,1,0,Blue);
Странно, значит присваиваем значение единственной ЕМА1 переменной. Далее судя из написанного кода: если цена открытия последнего бара(а последний бар (свеча) это уже сформировавшаяся свеча или всетаки прошлая свеча?) меньше текущего значения ЕМА1 и значение ASK больше МА.... (бррр, а такое вообще может быть?)
Здравствуйте уважаемые форумчате. Подскажите пожалуйста как сделать так что бы например при пересечении ЕМА цены вверх открывалась только одна позиция на покупку, при следующем пересечении вверх тоже одна, а не несколько.(Аналогичное для продажи).