Обсуждение статьи "Разрабатываем мультивалютный советник (Часть 28): Добавляем менеджер закрытия позиций"
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Опубликована статья Разрабатываем мультивалютный советник (Часть 28): Добавляем менеджер закрытия позиций:
При параллельной работе многих стратегий может возникнуть желание время от времени закрывать все открытые позиции и начинать работу стратегий заново. Уже написанный код позволяет реализовать такое поведение только вместе с ручными манипуляциями. Попробуем автоматизировать эту часть.
В Части 12 мы добавили в мультивалютного советника модуль риск-менеджера для ограничения дневной и общей просадки. Он не увеличивает прибыль, но критически важен для защиты капитала в неблагоприятных условиях. Основан на правилах проп-трейдингов, с возможностью гибкой настройки: просадка в валюте, в процентах от баланса или от начала дня.
Модуль реализован как класс CVirtualRiskManager с методами отслеживания баланса, прибыли и проверки ограничений. Также предусмотрена функция фиксации прибыли — по достижении цели все позиции закрываются и торговля останавливается.
Для обычных счетов хотелось бы, чтобы после достижения прибыли торговля автоматически перезапускалась. Сейчас это требует ручного вмешательства. Пора автоматизировать и этот момент.
Для перезапуска торговых стратегий при достижении заданной прибыли рассматривались два варианта:
расширить текущий риск-менеджер,
создать отдельный модуль.
Мы выбрали второй путь, поскольку текущий риск-менеджер работает независимо от стратегий: он закрывает только реальные позиции, не затрагивая виртуальные. Изменение этой логики усложнило бы архитектуру и нарушило модульную независимость.
Также риск-менеджер создаёт дополнительную нагрузку при тестировании, поэтому новый функционал лучше вынести в отдельный модуль — его можно будет использовать даже без запущенного риск-менеджера.
Новая цель — модуль, способный перезапускать все стратегии при выполнении заданных условий (прибыль, убыток, время и т.д.), не полагаясь на историю и без ручного вмешательства. Будем называть новый модуль менеджером закрытия, так как это отдельный модуль, наличие которого не является обязательным, но его добавление может улучшить результаты, и он управляет процессом полного закрытия всех позиций, как реальных, так и виртуальных.
Автор: Yuriy Bykov