Обсуждение статьи "Риск-менеджер для торговых роботов (Часть I): Включаемый файл контроля рисков для советников"

 

Опубликована статья Риск-менеджер для торговых роботов (Часть I): Включаемый файл контроля рисков для советников:

Трейдинг характеризуется высокими требованиями к дисциплине риск-менеджмента. Настоящая работа представляет анализ основных причин неудач трейдеров и предлагает техническое решение в виде класса CEnhancedRiskManager для платформы MQL5. Включает практическое тестирование на агрессивном сеточном советнике.

Опыт показывает, что торговые счета без продуманной системы риск-менеджмента, как правило, имеют короткий жизненный цикл.

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

Вторая ловушка — надежда на разворот рынка. Убыточная позиция растет, красные цифры на экране становятся все больше, но трейдер продолжает держать сделку. "Вот-вот развернется", "Это просто коррекция", "Рынок не может падать вечно" — эти мантры повторяют себе тысячи трейдеров, пока маржин-колл не ставит жирную точку в их торговой карьере.

Третья ловушка самая коварная — игнорирование собственных правил. Трейдер создает торговую систему, прописывает четкие правила входа и выхода, устанавливает лимиты риска. Но в какой-то момент появляется мысль: "Да что там может случиться? Один раз можно и нарушить". Отключаются стоп-лоссы, превышается максимальный лот, открываются сделки против тренда. Это путь к неизбежному краху, причем трейдер прекрасно понимает это, но не может остановиться.

Риск-менеджер для торговых роботов (Часть I): Включаемый файл контроля рисков для советников

Автор: Yevgeniy Koshtenko

 
Thanks for sharing your ideas and codes ; i will use them as you wish
 
Есть вариант для MQL4?
 

Здравствуйте, спасибо за работу!

Однако хотелось бы увидеть код класса соответствующий описанному в статье, например

В статье:

enum ENUM_RISK_CALC_TYPE {
    RISK_CALC_BALANCE_ONLY,   // Расчет только от баланса
    RISK_CALC_EQUITY_ONLY,    // Расчет только от эквити
    RISK_CALC_COMBINED,       // Комбинированный расчет
    RISK_CALC_ADAPTIVE        // Адаптивный расчет
};

В приложенном файле :

enum ENUM_RISK_CALC_TYPE {
    RISK_CALC_BALANCE_ONLY,   // Only Balance
    RISK_CALC_EQUITY_ONLY,    // Only Equity
    RISK_CALC_BALANCE_EQUITY, // Balance/Equity (US Prop Style)
    RISK_CALC_PROP_STANDARD   // Standard Prop Company Rules
};

"Адаптивный расчет" который упоминается в статье никак не отображен в приложенном коде класса.

Кроме того в коде есть ошибка не позволяющая откомпилировать код советника:

// Trading Object
    CTrade              m_trade;

Должен быть в секции public:

Проверьте, пожалуйста.

 
У меня тоже компиляция не  проходит затыкается на 124 строке:   123 // Настройка магического номера для торгового объекта
  124        g_RiskManager.m_trade.SetExpertMagicNumber(InpMagicNumber);
 
Борис Ворона #:
У меня тоже компиляция не  проходит затыкается на 124 строке:   123 // Настройка магического номера для торгового объекта
  124        g_RiskManager.m_trade.SetExpertMagicNumber(InpMagicNumber);
Переместите в файле описания класса EnhancedPropRiskManager.mqh строку "CTrade              m_trade;" из секции private: в секцию public:
 
Cпасибо, теперь компилирует. А вот адаптивный не хочет компилировать.
 

Применил риск-менеджер для своего работающего советника с мартингейлом

Вот результат тестирования 2025 без риск-менеджера:

А вот с лучшими настройками риск-менеджера:

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