Сетка отложенных ордеров

MQL4 Эксперты

Техническое задание

В нашем терминале МТ4 Копировщиком открывается рыночный ордер по валютной паре VAL. Спустя заданное время (60-150) сек с момента открытия ордеров наш Советник  выполняет следующие функции: 

- цепляет заданные SL, TP к ордерам 

- цепляет стандартный Trailing Stop 

- при закрытии ордеров по TP или тралу: генерирует (последовательно с движением цены) сетку конечного числа отложенных ордеров (кол-во лотов в ордерах плавно растет по простой прогрессии). 

- к полученной сетке по моим формулам рассчитываются свои TP и SL 

- по достижении TP цепляется трал

 

Детали:

В нашем терминале МТ4 Копировщиком открывается рыночный ордер по валютной паре VAL, пусть для определенности SELL (для BUY тоже нужна зеркальная реализация) 

наш эксперт стартует молниеносно по появлению любого такого ордера:

запомнить LEVEL1

IF TP>0 THEN открыть 3 ордера в том же направлении (в выбранном примере SELL) лотами: 3*FixedLots, 2*FixedLots, 1*FixedLots

IF TS=0 THEN  ко всем 4-м ордерам прикрутить SL(LEVEL1+S1)

Спустя T секунд прикрутить к исходному ордеру трал (S1); к трем ордерам прикрутить TP1:=LEVEL1-1*Steps, TP2:= LEVEL1-2*Steps, TP3:= LEVEL1-3*Steps “примечание: а) все 3 ордера принесут одинаковый профит=3*FixedLots*Steps б) но возможна ситуация когда цена за Т секунд уже прошла все уровни ТР и нужно предусмотреть закрытие по текущей цене”;
IF TS>0 THEN  ко всем 4-м ордерам прикрутить SL(LEVEL1+S1)

TP:= LEVEL1+TP и сдвигаем уровень TP при движении на каждый шаг вниз:

IF MarketPrice<= LEVEL1-Steps THEN TP:=TP-Steps;

IF MarketPrice<= LEVEL1-2*Steps THEN TP:=TP-Steps; перенести SL 3-его ордера SL:=SL-2.11*Steps

При срабатывании SL (он до последнего был одинаковый для всех 4-х ордеров) или трала единственного ордера в случае TP=0  все ордера соответственно закрываются и открывается 1 ордер BUY лотом 3*FixedLots (TP)

В момент закрытия третьего ордера по ТР3=LEVEL1-3*Steps если BS=true выставляем BUY-STOP 1*FixedLots (LEVEL1-2*Steps) и тралим его вниз при движении цены вниз. Меняем TP:= TP-Steps если BS=false – конец алгоритма, переход в режим ожидания нового сигнала-ордера.

При достижении ценой вниз уровня LEVEL1-(i+3.5)*Steps открываем ДВА FixedLots BUY-STOP (LEVEL1-3*Steps), предыдущий BUY-STOP переносим сюда же, тралим вместе.  BUY-STOP ордера предпочтительно выставлять виртуально, чтобы они не были видны для ДЦ. 

При достижении ценой  каждого следующего уровня вниз LEVEL1-(i+0.5)*Steps, i:=4 to Lmax
открываем
KM*FixedLots BUY-STOP (MarketPrice -KS*Steps); KM:=KM*KM; TP:=TP-KT*Steps

При достижении ценой уровня LEVEL1-Lmax*Steps-0.00062 закрыть все ордера. Ждать нового сигнала.

 

При достижении TP цепляется трал(S2)

 

Прим.: любые другие ордера открывающиеся в нашем терминале кроме VAL – игнорируются. любые другие ордера открывающиеся в нашем терминале по паре VAL в направлении первого исходного ордера – игнорируются. Первый  открывщийся в нашем терминале по паре VAL в направлении ОБРАТНОМ первому исходному ордера – прикрутить трал(S2) ко всем ордерам, при срабатывание трала – закрыть ВСЕ ордера, включая пришедший.

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

 

Список параметров и их значения по умолчанию:

VAL = EURUSD.c

TS=0 – выставлять стоп-лосс мгновенно

TP = 0.00389 - открывать 3 ордера

T=120 кол-во секунд для выставления TP

Lmax = 7 – номер последнего шага в сетке, после достижения которого вскоре наступит SL-сетки

S1=10 - размер инверсного трэйл-стопа

S2=11 – размер прямого трэйл-стопа

KM = 1.2 Коэффициент Мартингейла

KS=0.5 или 0.75 – насколько далеко выставить Buy-stop в долях шага.

KT=0.5 – коэффициент сдвига TP уже в сетке

KS:=0.61 – насколько далеко в долях шага выставляем BUY-STOPs

BS=true будут открываться BUY-STOP ордера; иначе не будут и алгоритм будет заканчиваться

FixedLots = 0.05

Steps = 10 

Откликнулись

1
Разработчик 1
Оценка
(21)
Проекты
31
23%
Арбитраж
2
50% / 0%
Просрочено
2
6%
Свободен
Опубликовал: 1 статью, 8 примеров
2
Разработчик 2
Оценка
(71)
Проекты
83
39%
Арбитраж
3
0% / 0%
Просрочено
1
1%
Свободен
Опубликовал: 7 примеров
3
Разработчик 3
Оценка
(618)
Проекты
1428
59%
Арбитраж
31
81% / 0%
Просрочено
10
1%
Свободен
4
Разработчик 4
Оценка
Проекты
1
0%
Арбитраж
0
Просрочено
1
100%
Свободен
5
Разработчик 5
Оценка
Проекты
3
33%
Арбитраж
3
0% / 100%
Просрочено
1
33%
Свободен
6
Разработчик 6
Оценка
(68)
Проекты
111
26%
Арбитраж
17
6% / 71%
Просрочено
15
14%
Свободен
Опубликовал: 9 примеров
7
Разработчик 7
Оценка
(46)
Проекты
73
16%
Арбитраж
13
8% / 92%
Просрочено
37
51%
Свободен
8
Разработчик 8
Оценка
(12)
Проекты
18
33%
Арбитраж
0
Просрочено
6
33%
Свободен
9
Разработчик 9
Оценка
(265)
Проекты
596
35%
Арбитраж
64
20% / 58%
Просрочено
147
25%
Работает
Опубликовал: 1 статью, 22 примера
10
Разработчик 10
Оценка
(64)
Проекты
144
46%
Арбитраж
19
42% / 16%
Просрочено
32
22%
Работает
Похожие заказы
Стоимость обсуждается. У меня есть стратегия с уже существующим шаблоном для metatrader 4, который даёт сигналы по золоту на основе индикаторов. Задача : сделать на его основе советник для MT5, который будет заходить в сделку по сигналу при определённых условиях на таймфрейме 5m и 1h. Также необходимо добавить опции установки фиксированного лота. И выхода из сделки при сигнале в встречном направлении
Сама стратегия будет предоставлена разработчику после того как будут согласованы все пункты описаные ниже. Качество кода: Работа должна содержать чистый код с комментариями на английском языке. Организация структур: Все структуры должны содержать только простые типы данных. Для оптимального выравнивания памяти данные внутри структур должны быть организованы от самого большого типа к самому малому . Допускается
Имеется защищенный от копирования счет на МТ5, обычные копировщики не копируют его. Сделки только по eurusd.f c суффиксом .f Сделок не много, только сделка 1 в день. Доступ и пароль инвестора к счету предоставлю. Необходимо решение для копирования с этого счета, предполагаю, что система должна увидеть сделку визуально, например через BAS и дальше передать данные для открытия сделки в МТ5. Другие рабочие решения от
1. Загальна логіка Треба створити ЕА для MetaTrader 5 на основі індикатора Zig Zag (параметри індикатора стандартні: Depth, Deviation, Backstep) та рівнів Фібоначчі. Детально логіка входу описана в додатку до ТЗ. 2. Відкриття сету ордерів ЕА відкриває сет відкладених ордерів (кількість ордерів від 1 до 5) Для кожного ордеру задається - рівень входу (значення рівня Фібоначчі) - рівень SL

Информация о проекте

Бюджет
Сроки выполнения
от 1 до 5 дн.