Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
- Просмотров:
- 25
- Рейтинг:
- Опубликован:
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Каждый, кто использует систему «грид», «мартингейл» или любую другую систему усреднения, задает себе один и тот же вопрос —«Достаточно ли велик мой счет? » — и почти все называют неверную цифру.
Обычно в качестве ответа называют размер убытка на последнем уровне сетки. Но это не то, что приводит к закрытию счета. Счет закрывается, когдауровень маржи достигает уровня стоп-аута, установленного брокером, что происходит в тот момент, когда цепочка позиций ещё открыта и ситуация ещё выглядит исправимой.
Этот советник вычисляет реальное число, а затем выполняет ту часть работы, которая превращает арифметику в информацию: он сканирует историю торговли по данному инструменту на таймере M1 и подсчитывает,сколько раз уже происходило движение такой же величины.
Он работаетисключительно в режиме «только для чтения». Он никогда не открывает, не закрывает и не изменяет позиции.
Три ошибки, для исправления которых он и существует, и все они заключаются в излишней уверенности
- Цепочка из N участков не «плавает» на шаге × N. Самый старый участок находится на расстоянии (N−1) шагов, следующий — (N−2) и так далее, поэтому общее количество составляетшаг × N(N−1)/2. При 10 участках это 45 шагов убытка, а не 10.
- Открытые позиции также блокируют маржу, пока они находятся в открытом состоянии. При стоп-ауте собственный капитал сравнивается с использованной маржой, поэтому обе части этого соотношения одновременно работают против вас — убыток растёт, а запас безопасности сокращается.
- Стоп-аут выражается в процентах, а не в нуле. Счету не обязательно терять всё. При распространённом уровне в 50 % достаточно уже потери половины собственного капитала.
Что показывают отчёты
| Строка | Значение |
|---|---|
| протяженность всей цепочки | Расстояние по цепочке от самого нового звена до самого старого. |
| плавающая, когда цепочка полна | Показатель «шаг × N(N−1)/2» в валюте счета. |
| заблокированная маржа | Из OrderCalcMargin, не вычисляется — только терминал знает правила вашего брокера. |
| Полная цепочка — это | Плавающая маржа плюс маржа, выраженная в процентах от собственного капитала. |
| Неблагоприятное движение, которое завершает позицию | Насколько цена может измениться не в вашу пользу, прежде чем брокер примет меры. |
| Открытые позиции на этот момент | Сколько позиций фактически существует в момент, когда это происходит. |
| количество раз за последние N дней | Как часто происходило движение такой амплитуды, подсчитанное по реальным свечам M1. |
Почему последние две строки важнее остальных
«Вам нужно 86 долларов запаса» — это абстракция.«Движение на 86 долларов происходило 71 раз за последние 100 дней, то есть раз в 1,4 дня» — это решение. Частота рассчитывается от текущего экстремума и обнуляется после каждого события, поэтому одно длительное падение учитывается один раз, а не по одному разу за каждый бар — показатель остается сопоставимым с количеством дней.
Аоткрытие позиций в этот момент дает ответ на вопрос, о котором люди спорят, не проводя измерений: если счет иссякнет до того, как цепочка заполнится, ваш лимит по позициям так и не будет достигнут, и его повышение или понижение ничего не изменит.
Три детали, в которых легко ошибиться, рассмотрены здесь
- Сумма на единицу цены зависит от стоимости тика и размера тика символа, а не от размера контракта. Индекс CFD, металл и валютная пара по-разному трактуют понятие «размер контракта», а кросс-пара, валюта прибыли которой отличается от валюты счёта, требует конвертации, которая уже учтена в стоимости тика.
- Хеджированные позиции обычно не удваивают маржу. На хеджируемом счете брокер, как правило, взимает комиссию с более крупной позиции, а не с их суммы — на реальном счете за 6 длинных и 2 коротких позиции взималась комиссия как за 6, а не за 8. Советник считывает SYMBOL_MARGIN_HEDGED, чтобы выяснить это, и когда это правило не может быть прочитано, он исходит изнаиболее дорогостоящего варианта , поскольку предположение, касающееся вашей собственной безопасности, никогда не должно быть оптимистичным.
- Цепочка заполняется по мере движения цены. Расчет полной цепочки приводит к начислению маржи за N позиций в момент, когда существует только две. На небольшом счёте с широким шагом это приводит к сообщению «вы уже мертвы» для конфигурации, реальным ответом на которую является обычное движение. Этот советник решает задачу внутри каждой полосы из k позиций и выбирает первое самосогласованное решение — то, при котором цепочка действительно содержит k позиций по данной цене.
Входные данные
| Входные данные | Значение |
|---|---|
| InpGridStep | Расстояние между отрезками в цене (не в пунктах). |
| InpLots | Количество лотов на каждый этап. |
| InpMaxLegs | Количество участков в цепочке — ваш лимит. |
| InpBothSides | Работают ли длинная и короткая цепочки одновременно. |
| InpEquity | Предполагаемый капитал. При значении 0 используется реальный счет, что позволяет протестировать размер позиции, которого у вас пока нет. |
| InpStopOutLevel | Процент стоп-аута. Значение 0 означает запрос у брокера. |
| InpHistoryDays | Количество дней истории M1 для сканирования. Значение 0 пропускает проверку частоты. |
On InpEquity. Установка значения, которого на счете нет, — это и есть суть, а не обходной путь: это позволяет ответить на вопрос «сколько капитала на самом деле потребуется для данной конфигурации», без необходимости сначала вносить средства.
Чего это не делает
Это не бэктест, и он ничего не говорит о том, является ли стратегия прибыльной. Он отвечает на один вопрос: при данной конфигурации и данном счете, насколько далеко цена может уйти в невыгодную для вас сторону, прежде чем брокер закроет вашу позицию, и насколько часто происходит движение на такое расстояние.
Кроме того, инструмент не моделирует восстановление. Цепочка, которая выживает, — это цепочка, к которой цена вернулась, а этот инструмент измеряет амплитуду колебания, от которой зависит, останетесь ли вы в игре к моменту возврата цены.
Перевод с английского произведен MetaQuotes Ltd.
Оригинальная публикация: https://www.mql5.com/en/code/76972
AI Prompt Writer - Simple AI Assistant Customization
Настройте своего ИИ-помощника MetaTrader 5, выбрав язык, стиль общения, меню и поведение с помощью простого файла команд.
London Breakout Asian Range Box
Рисует диапазон азиатской сессии и отмечает пробои на лондонской сессии стрелками, уровнями стопа и цели и алертами
YURAZ_RSAXEL Скрипт рисует уровни Рудолфа Акселя
Скрипт рисует уровни Рудолфа Акселя
YURAZ_MCCH
Индикатор рассчитывает % роста или падения относительно CLOSE, написан с применением ООП, и легко интегрируется в любой советник или иной индикатор.