Отложенные ордера с учётом максимального лота. HELP - страница 4

 
forex2030:

Есть расчёт максимального лота, как получить цену следующего ордера если лот должен быть больше предыдущего на *koeff

Эта функция весьма странная (как и фраза "с учётом максимального лота") и явно далека от Вашей задачки.

 

Есть такая функция хорошая - AccountFreeMarginCheck()

Посмотрите в справке.

Надо сделать цикл, в котором подставлять в эту функцию размеры лота и отловить лот перед самым стоп-аутом

 
forex2030:

Это мысль в правильном направлении вроде.

0.01 = 0пп (старт)
+
0.03 = 300пп от первого
+
0.07 = (700-300) = 400пп от второго
+
0.1 = (1000-700) = 300пп от третьего
и т.д.

================================
Нет, чушь вроде какая-то))

Где-то в том направлении, только неточности имеются.

Вы правильно пытаетесь отределить пошагово сумму затрачиваемых средств. Пошагово нужно проверять сумму затрачиваемых средств относительно свободных средств. Нужно пошагово идти, пока не окажется что следующий ордер (цена * лот) в сумме с предыдущими превысит Ваши средства. Тогда для последнего ордера нужно пересчитать его лот от остатка. Но нужно еще оставить запас по средствам на комиссии, свопы, проскальзывания и др., например 10% от средств.

Старт - 0пп - текущая цена (ТЦ)

          - СуммаПоОрдерам = 0;

Шаг1 - 1ордер = (ТЦ+20пп)*0,01

         - сравнение со средствами { СуммаПоОрдерам += 1ордер }

Шаг2 - 2ордер = (ТЦ+40пп)*0,02

         - сравнение со средствами { СуммаПоОрдерам += 2ордер }

Шаг3 - 3ордер = (ТЦ+60пп)*0,04

         - сравнение со средствами { СуммаПоОрдерам += 3ордер }

......

Получается закономерность, которую нужно засунуть в цикл в виде формулы подсчета средств для ордеров и сравнения с имеющимися средствами.

Результаты по ордерам желательно записать в массив. А после по очереди из массива выставить ордера, проверяя ошибки на каждом выставлении.

Или у Вас с чем-то другим проблема?

Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Приказы на проведение торговых операций оформляются ордерами. Каждый ордер имеет множество свойств для чтения, информацию по ним можно получать с помощью функций Идентификатор позиции, который ставится на ордере при его исполнении. Каждый исполненный ордер порождает сделку, которая открывает новую или изменяет уже существующую позицию...
 
Evgeniy Zhdan:

Есть такая функция хорошая - AccountFreeMarginCheck()

Посмотрите в справке.

Надо сделать цикл, в котором подставлять в эту функцию размеры лота и отловить лот перед самым стоп-аутом

Можно, но нужно правильно рассчитать среднюю цену и тогда можно, но имеет ли это смысл? Только усложнение. 
Причина обращения: