Forex Forum
Trailing of EquityClose in EA MPGO MT5
Quote from Support@fxpip.one on 01/06/2025, 10:58Механизм плавающего стопа по прибыли (trailing stop by profit) в торговом роботе Forex используется для защиты достигнутой прибыли и минимизации потенциальных убытков. Ниже рассмотрим математическую модель этого механизма.
Основные переменные:
- P_{текущая}: Текущая общая прибыль/убыток по открытым ордерам.
- S_{старт\_трейла}: Начальная положительная сумма прибыли, необходимая для активации плавающего стопа.
- D_{трейл}: Дистанция плавающего стопа (откат). Определяет, насколько ниже S_{старт\_трейла} (или максимальной зафиксированной прибыли) должна упасть прибыль, чтобы ордера закрылись.
- M_{мин\_трейл}: Минимальный уровень прибыли для закрытия ордеров после активации плавающего стопа.
- P_{макс\_трейл}: Максимальная достигнутая сумма прибыли после активации плавающего стопа.
Логика работы модели:
- Начальное состояние: Плавающий стоп еще не активирован.
- Если P_{текущая} < S_{старт\_трейла}, плавающий стоп неактивен.
- Активация плавающего стопа:
- Когда выполняется условие P_{текущая} \ge S_{старт\_трейла}, плавающий стоп активируется.
- В этот момент фиксируется достигнутая максимальная прибыль:
P_{макс\_трейл} = P_{текущая}- Рассчитывается минимальный порог прибыли:
M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл}- Рост прибыли при работающем плавающем стопе:
- Если плавающий стоп активирован и текущая прибыль превышает предыдущую максимальную прибыль (P_{текущая} > P_{макс\_трейл}), то:
- Обновляется максимальная прибыль: P_{макс\_трейл} = P_{текущая}
- Минимальный порог прибыли также пересчитывается:
M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл}- Снижение прибыли и закрытие ордеров при работающем плавающем стопе:
- Если плавающий стоп активирован и текущая прибыль падает до минимального порога прибыли или ниже (P_{текущая} \le M_{мин\_трейл}), то:
- Все открытые ордера закрываются.
- Механизм плавающего стопа деактивируется до следующего сигнала.
Математические формулы (в формате LaTeX):
Условие активации плавающего стопа:
‘Pтекущая≥Sстарт_трейла‘‘Pтекущая≥Sстарт_трейла‘
Начальные значения после активации:
‘Pмакс_трейл=Pтекущая‘‘Pмакс_трейл=Pтекущая‘
‘Mмин_трейл=Pмакс_трейл−Dтрейл‘‘Mмин_трейл=Pмакс_трейл−Dтрейл‘
Обновление значений при росте прибыли:
Если P_{текущая} > P_{макс\_трейл}:‘Pмакс_трейл←Pтекущая‘‘Pмакс_трейл←Pтекущая‘
‘Mмин_трейл←Pмакс_трейл−Dтрейл‘‘Mмин_трейл←Pмакс_трейл−Dтрейл‘
Условие закрытия ордеров:
‘Pтекущая≤Mмин_трейл‘‘Pтекущая≤Mмин_трейл‘
Пример:
Допустим, заданы следующие параметры:
- S_{старт\_трейла} = 100 (Активировать плавающий стоп при прибыли $100)
- D_{трейл} = 30 (Дистанция плавающего стопа $30)
Последовательность работы:
- Робот торгует. Текущая прибыль P_{текущая} = 80.
- 80 < 100 (P_{текущая} < S_{старт\_трейла}), поэтому плавающий стоп неактивен.
- Прибыль выросла и P_{текущая} = 100.
- 100 \ge 100 (P_{текущая} \ge S_{старт\_трейла}), плавающий стоп активируется.
- P_{макс\_трейл} = 100.
- M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл} = 100 - 30 = 70.
- Следовательно, если прибыль упадет до $70, ордера закроются.
- Прибыль снова выросла и P_{текущая} = 120.
- 120 > 100 (P_{текущая} > P_{макс\_трейл}), значит P_{макс\_трейл} обновляется.
- P_{макс\_трейл} = 120.
- M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл} = 120 - 30 = 90.
- Теперь, если прибыль упадет до $90, ордера закроются.
- Прибыль снова выросла и P_{текущая} = 150.
- 150 > 120 (P_{текущая} > P_{макс\_трейл}), значит P_{макс\_трейл} обновляется.
- P_{макс\_трейл} = 150.
- M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл} = 150 - 30 = 120.
- Теперь, если прибыль упадет до $120, ордера закроются.
- Прибыль начала снижаться. P_{текущая} = 130.
- 130 > 120 (P_{текущая} > M_{мин\_трейл}), ордера остаются открытыми.
- Прибыль снова снизилась и P_{текущая} = 120.
- 120 \le 120 (P_{текущая} \le M_{мин\_трейл}), условие выполнено.
- Все открытые ордера закрываются с текущей прибылью ($120).
С помощью этой модели робот фиксирует прибыль, защищая ее до определенного уровня, и предотвращает потерю значительной части прибыли при развороте рынка
Механизм плавающего стопа по прибыли (trailing stop by profit) в торговом роботе Forex используется для защиты достигнутой прибыли и минимизации потенциальных убытков. Ниже рассмотрим математическую модель этого механизма.
Основные переменные:
- P_{текущая}: Текущая общая прибыль/убыток по открытым ордерам.
- S_{старт\_трейла}: Начальная положительная сумма прибыли, необходимая для активации плавающего стопа.
- D_{трейл}: Дистанция плавающего стопа (откат). Определяет, насколько ниже S_{старт\_трейла} (или максимальной зафиксированной прибыли) должна упасть прибыль, чтобы ордера закрылись.
- M_{мин\_трейл}: Минимальный уровень прибыли для закрытия ордеров после активации плавающего стопа.
- P_{макс\_трейл}: Максимальная достигнутая сумма прибыли после активации плавающего стопа.
Логика работы модели:
- Начальное состояние: Плавающий стоп еще не активирован.
- Если P_{текущая} < S_{старт\_трейла}, плавающий стоп неактивен.
- Активация плавающего стопа:
- Когда выполняется условие P_{текущая} \ge S_{старт\_трейла}, плавающий стоп активируется.
- В этот момент фиксируется достигнутая максимальная прибыль:
P_{макс\_трейл} = P_{текущая}- Рассчитывается минимальный порог прибыли:
M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл}- Рост прибыли при работающем плавающем стопе:
- Если плавающий стоп активирован и текущая прибыль превышает предыдущую максимальную прибыль (P_{текущая} > P_{макс\_трейл}), то:
- Обновляется максимальная прибыль: P_{макс\_трейл} = P_{текущая}
- Минимальный порог прибыли также пересчитывается:
M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл}- Снижение прибыли и закрытие ордеров при работающем плавающем стопе:
- Если плавающий стоп активирован и текущая прибыль падает до минимального порога прибыли или ниже (P_{текущая} \le M_{мин\_трейл}), то:
- Все открытые ордера закрываются.
- Механизм плавающего стопа деактивируется до следующего сигнала.
Математические формулы (в формате LaTeX):
Условие активации плавающего стопа:
‘Pтекущая≥Sстарт_трейла‘‘Pтекущая≥Sстарт_трейла‘
Начальные значения после активации:
‘Pмакс_трейл=Pтекущая‘‘Pмакс_трейл=Pтекущая‘
‘Mмин_трейл=Pмакс_трейл−Dтрейл‘‘Mмин_трейл=Pмакс_трейл−Dтрейл‘
Обновление значений при росте прибыли:
Если P_{текущая} > P_{макс\_трейл}:‘Pмакс_трейл←Pтекущая‘‘Pмакс_трейл←Pтекущая‘
‘Mмин_трейл←Pмакс_трейл−Dтрейл‘‘Mмин_трейл←Pмакс_трейл−Dтрейл‘
Условие закрытия ордеров:
‘Pтекущая≤Mмин_трейл‘‘Pтекущая≤Mмин_трейл‘
Пример:
Допустим, заданы следующие параметры:
- S_{старт\_трейла} = 100 (Активировать плавающий стоп при прибыли $100)
- D_{трейл} = 30 (Дистанция плавающего стопа $30)
Последовательность работы:
- Робот торгует. Текущая прибыль P_{текущая} = 80.
- 80 < 100 (P_{текущая} < S_{старт\_трейла}), поэтому плавающий стоп неактивен.
- Прибыль выросла и P_{текущая} = 100.
- 100 \ge 100 (P_{текущая} \ge S_{старт\_трейла}), плавающий стоп активируется.
- P_{макс\_трейл} = 100.
- M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл} = 100 - 30 = 70.
- Следовательно, если прибыль упадет до $70, ордера закроются.
- Прибыль снова выросла и P_{текущая} = 120.
- 120 > 100 (P_{текущая} > P_{макс\_трейл}), значит P_{макс\_трейл} обновляется.
- P_{макс\_трейл} = 120.
- M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл} = 120 - 30 = 90.
- Теперь, если прибыль упадет до $90, ордера закроются.
- Прибыль снова выросла и P_{текущая} = 150.
- 150 > 120 (P_{текущая} > P_{макс\_трейл}), значит P_{макс\_трейл} обновляется.
- P_{макс\_трейл} = 150.
- M_{мин\_трейл} = P_{макс\_трейл} - D_{трейл} = 150 - 30 = 120.
- Теперь, если прибыль упадет до $120, ордера закроются.
- Прибыль начала снижаться. P_{текущая} = 130.
- 130 > 120 (P_{текущая} > M_{мин\_трейл}), ордера остаются открытыми.
- Прибыль снова снизилась и P_{текущая} = 120.
- 120 \le 120 (P_{текущая} \le M_{мин\_трейл}), условие выполнено.
- Все открытые ордера закрываются с текущей прибылью ($120).
С помощью этой модели робот фиксирует прибыль, защищая ее до определенного уровня, и предотвращает потерю значительной части прибыли при развороте рынка
!!! All FXPIP.ONE Soft is FREE to use on DEMO ACCOUNTS in Summer 2025