Советник по торговой стратегии «Орёл или Решка» (Heads or Tails) для MetaTrader 5

  • Автор темы Автор темы Overton
  • Дата начала Дата начала
Открыть счет в Альфа Форекс

Overton

Администратор
Сообщения
31 078
Реакции
7 653
Лого по по торговой стратегии «Орёл или Решка»

Введение: Когда случайность встречается с дисциплиной​


В мире форекс-трейдинга существуют тысячи сложных индикаторов и запутанных стратегий, требующих глубокого технического анализа. Однако иногда самые неожиданные подходы привлекают внимание сообщества. Торговая стратегия «Орёл или Решка» (Heads or Tails) — это уникальный эксперт-советник, доступный в библиотеке MQL5, который демонстрирует, как даже случайный вход в рынок может стать основой торговли при правильном управлении рисками.

⚠️ Важно: Стратегия относится к категории высокорисковых краткосрочных торговых подходов, используемых преимущественно на фондовом рынке и рынке Forex. Её название обусловлено случайностью принятия решений, подобно подбрасыванию монеты («орёл» — покупать актив, «решка» — продавать).


Что такое стратегия «Орёл или Решка»?​

Основная концепция​

Стратегия «Орёл или Решка» — это автоматизированная торговая система, работающая на платформе MetaTrader 5, которая принимает торговые решения на основе генератора случайных чисел. В отличие от традиционных методов, анализирующих ценовые паттерны или индикаторы, этот советник имитирует подбрасывание монеты для определения направления сделки.

Ключевые особенности стратегии​

  • Случайный выбор направления: BUY или SELL определяются случайным образом через функцию MathRand()
  • Фиксированный размер лота: Используется статический лот (по умолчанию 0.01), что обеспечивает предсказуемость риска
  • Чёткие уровни защиты: Настраиваемые Stop Loss (390 пунктов) и Take Profit (450 пунктов)
  • Защита от проскальзывания: Максимальное отклонение цены ограничено 30 пунктами
  • Уникальная идентификация: Magic Number 227 для фильтрации сделок советника

Технические детали и функционал​

Архитектура советника​

Советник использует язык программирования MQL5 и представляет собой классическую реализацию концепции случайной торговли с элементами строгого контроля рисков. Код доступен для бесплатного скачивания в официальной библиотеке MQL5 Code Base.

Настраиваемые параметры советника​

Орел и решка_1.png


Рис. 1 — Окно настроек входных параметров VR Heads or Tails 26.010

✓ Входные параметры (Input Parameters):

ПараметрЗначение по умолчаниюОписание
iLots0.01Размер лота (объём сделки). Для пары GBPUSD лот 0.01 соответствует 1000 единиц базовой валюты
iTakeProfit450Уровень фиксации прибыли в пунктах. При достижении цены позиция закрывается автоматически
iStopLoss390Уровень ограничения убытков в пунктах. Защита от чрезмерных потерь
iMagicNumber227Уникальный идентификатор сделок для фильтрации позиций данного советника
iSlippage30Максимальное проскальзывание цены в пунктах. Защита от исполнения по невыгодной цене

Логика работы алгоритма​


1. Инициализация и подготовка​


При запуске советник выполняет настройку торгового окружения:

Код:
sy = _Symbol;                              // Получение текущего инструмента
pt = _Point;                               // Минимальный шаг изменения цены
dt = _Digits;                              // Количество десятичных знаков

trade.SetExpertMagicNumber(iMagicNumber);  // Установка Magic Number
trade.SetDeviationInPoints(iSlippage);     // Допустимое проскальзывание
trade.SetTypeFillingBySymbol(sy);          // Режим исполнения по инструменту
trade.SetMarginMode();                     // Настройка маржинального режима

2. Расчёт объёма позиции​


Система автоматически корректирует размер лота с учётом требований брокера:

PHP:
double stepvol = SymbolInfoDouble(sy, SYMBOL_VOLUME_STEP);
if(stepvol > 0.0)
   lt = stepvol * (MathFloor(iLots / stepvol) - 1);

double minvol = SymbolInfoDouble(sy, SYMBOL_VOLUME_MIN);
if(lt < minvol) lt = 0.0;

::MathSrand(GetTickCount());  // Инициализация генератора случайных чисел

3. Управление открытыми позициями​


Советник проходит по всем открытым позициям и обновляет уровни SL/TP:

PHP:
for(int i = 0; i < total; i++)
   if(posit.SelectByIndex(i))
      if(posit.Symbol() == sy && posit.Magic() == iMagicNumber)
      {
         // Расчёт новых уровней для BUY позиций
         if(posit.PositionType() == POSITION_TYPE_BUY)
         {
            new_sl = NormalizeDouble(Ask - iStopLoss * pt, dt);
            new_tp = NormalizeDouble(Ask + iTakeProfit * pt, dt);
            b++;
         }
         // Расчёт новых уровней для SELL позиций
         if(posit.PositionType() == POSITION_TYPE_SELL)
         {
            new_sl = NormalizeDouble(Bid + iStopLoss * pt, dt);
            new_tp = NormalizeDouble(Bid - iTakeProfit * pt, dt);
            s++;
         }
         // Модификация позиции при необходимости
         if(old_sl == 0 || old_tp == 0)
            trade.PositionModify(posit.Ticket(), new_sl, new_tp);
      }

4. Случайное открытие новой позиции​


Ключевой момент стратегии — случайный выбор направления при отсутствии активных позиций:

PHP:
if((b + s) == 0)  // Если нет открытых позиций
   if(::MathRand() % 2 == 0)  // Случайный выбор: 50/50
   {
      // Открытие BUY позиции
      if(trade.CheckVolume(sy, lt, Ask, ORDER_TYPE_BUY))
         if(trade.Buy(lt)) return;
   }
   else
   {
      // Открытие SELL позиции
      if(trade.CheckVolume(sy, lt, Bid, ORDER_TYPE_SELL))
         if(trade.Sell(lt)) return;
   }

Почему случайная торговля может работать?​


Психология vs. Математика​

Главная ценность стратегии «Орёл или Решка» — демонстрация фундаментальной истины: в долгосрочной перспективе результат торговли определяется не точностью входов, а соотношением прибыли к убытку и дисциплиной.

Математическая модель:
  • При соотношении TP/SL = 450/390 ≈ 1.15:1 и случайном входе ожидаемая прибыль зависит от процента успешных сделок
  • При точности 50% и учёте спредов математическое ожидание стремится к нулю
  • Строгий риск-менеджмент предотвращает катастрофические потери
  • Фиксированный лот 0.01 обеспечивает контроль над максимальным риском

Преимущества подхода​

  1. Элиминация эмоций — полное устранение психологических факторов (страх и жадность)
  2. Тестируемость — возможность объективной оценки через тестер стратегий MetaTrader 5
  3. Прозрачность — простая логика без скрытых параметров и переоптимизации
  4. Образовательная ценность — отличный инструмент для изучения влияния мани-менеджмента

Практическое применение и рекомендации​


Оптимальные настройки​

Для волатильных пар (GBP/USD, XAU/USD):
  • Take Profit: 450-600 пунктов
  • Stop Loss: 390-500 пунктов
  • Лот: 0.01 (консервативный подход)

Для мажорных пар (EUR/USD, USD/JPY):
  • Take Profit: 300-450 пунктов
  • Stop Loss: 250-390 пунктов
  • Лот: 0.01-0.02

Важные ограничения и риски​

⚠️ Предупреждения:
  • Рыночные условия — в периоды сильных трендов без откатов возможны серии убытков
  • Транзакционные издержки — спред и комиссии могут свести на нет преимущество при частых сделках
  • Маржинальные требования — необходим достаточный запас свободной маржи
  • Тестирование обязательно — всегда проверяйте стратегию на демо-счёте перед реальной торговлей


Сравнение с традиционными стратегиями​


КритерийHeads or TailsТрендовые стратегииКонтртрендовые
Сложность анализаМинимальнаяВысокаяСредняя
Зависимость от рынкаНизкаяВысокаяСредняя
Психологическая нагрузкаМинимальнаяВысокаяВысокая
Потенциал доходностиУмеренныйВысокийУмеренный
Максимальная просадкаКонтролируемаяМожет быть значительнойУмеренная

Заключение: Уроки для трейдера​

Стратегия «Орёл или Решка» — это не просто экспериментальный советник, а мощный образовательный инструмент, который доказывает: успех в трейдинге определяется не столько точностью прогнозов, сколько дисциплиной и управлением капиталом. Поэтому зачастую советники работают куда луче трейдеров, именно потому что могут соблюдать точный дисциплинированный алгоритм, а не тянуть сделки до маржин колла постоянно ожидая что вот-вот рынок откатит.

Ключевые выводы:
  • Даже случайный вход может быть прибыльным при правильном соотношении риска и прибыли
  • Автоматизация устраняет эмоциональные ошибки, разрушающие депозит
  • Фиксированные параметры (TP 450, SL 390, Lot 0.01) обеспечивают предсказуемость
  • Тестирование на исторических данных обязательно перед использованием на реальном счёте

Эта стратегия идеально подходит для трейдеров, изучающих основы алгоритмической торговли, а также для тех, кто хочет протестировать гипотезы о важности мани-менеджмента без влияния сложных технических факторов.

СКАЧАТЬ Советник по торговой стратегии «Орёл или Решка» (Heads or Tails) для MetaTrader 5


Примечание: Торговля на финансовых рынках связана с высокими рисками. Данная статья носит информационный характер и не является инвестиционной рекомендацией. Всегда тестируйте стратегии на демо-счёте перед использованием реальных средств.
 
Последнее редактирование:
Назад
Сверху