Написать советник для отслеживания ордеров в MT4

MQL4 Experten

Auftrag beendet

Ausführungszeit 19 Stunden
Bewertung des Kunden
Спасибо за работу! Советник соответствует ТЗ, работа сдана раньше срока.

Spezifikation

Здравствуйте.

Необходимо написать советника для платформы MetaTrader 4, который будет отслеживать срабатывание(открытие) ордеров и вызывать метод myMethod().

Пункт 1. Важный момент и основное условие:

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

2. Метод myMethod() должен вызываться только в момент срабатывания ордера, а не выставления!


Пункт 2. Какие типы ордеров необходимо отслеживать:

  • OP_BUY - ордер на покупку (метод myMethod() вызывается моментально),
  • OP_SELL - ордер на продажу (метод myMethod() вызывается моментально),
  • OP_BUYLIMIT - отложенный ордер на покупку по достижении заданного уровня, текущая цена выше уровня (метод myMethod() вызывается только при срабатывании ордера),
  • OP_BUYSTOP - отложенный ордер на покупку по достижении заданного уровня, текущая цена ниже уровня (метод myMethod() вызывается только при срабатывании ордера),
  • OP_SELLLIMIT - отложенный ордер на продажу по достижении заданного уровня, текущая цена ниже уровня (метод myMethod() вызывается только при срабатывании ордера),
  • OP_SELLSTOP - отложенный ордер на продажу по достижении заданного уровня, текущая цена выше уровня (метод myMethod() вызывается только при срабатывании ордера).


Пункт 3. При срабатывании данных ордеров в терминале должен вызываться метод myMethod() и в него должны передаваться следующие параметры:

1. Тип ордера, смотреть пункт 2

2. Торговый инструмент - OrderSymbol()

3. Время срабатывания ордера - TimeCurrent()


Пункт 4. Необходимо создать метод myMethod() и описать его свойства(параметры) и добавить следующие условия:


if(OrderType()==OP_BUY) {

   Print("Сработал метод OP_BUY");

}

if(OrderType()==OP_SELL) {

   Print("Сработал метод OP_SELL");

}

if(OrderType()==OP_BUYLIMIT) {

   Print("Сработал метод OP_BUYLIMIT");

}

if(OrderType()==OP_BUYSTOP) {

   Print("Сработал метод OP_BUYSTOP");

}

if(OrderType()==OP_SELLLIMIT) {

   Print("Сработал метод OP_SELLLIMIT");

}

if(OrderType()==OP_SELLSTOP) {

   Print("Сработал метод OP_SELLSTOP");

}



Советник должен устанавливаться на любое количество пар

Корректно обрабатывать сигналы по каждой паре

При срабатывании ордера, метод должен вызываться 1 раз, без зацикливания. При повторном срабатывании метод должен снова вызываться 1 раз (вообщем все должно работать исправно и логично)

Советник должен обрабатывать как открытие ордеров пользователем терминала, так и открытие ордеров по сигналам сервиса(https://www.mql5.com/ru/signals)






Bewerbungen

1
Entwickler 1
Bewertung
(241)
Projekte
387
51%
Schlichtung
14
14% / 14%
Frist nicht eingehalten
43
11%
Frei
Veröffentlicht: 1 Artikel, 1 Beispiel
2
Entwickler 2
Bewertung
(50)
Projekte
94
29%
Schlichtung
4
25% / 0%
Frist nicht eingehalten
4
4%
Frei
Veröffentlicht: 3 Beispiele

Projektdetails

Budget
30 - 50 USD
Ausführungsfristen
von 1 bis 3 Tag(e)