среда, 17 августа 2016 г.

Робот: ограничение риска по неконтролируемой потере капитала

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

Суть изменений.
Введены два параметра:
- AllowedDrawdownLevel - параметр, с помощью которого можно задавать порог, до которого разрешено снижение уровня средств (эквити) торгового счета.При достижении размером средств величины, заданной параметром AllowedDrawdownLevel, все позиции по счету автоматически закрываются, а дальнейшая торговля блокируется до принятия решения о новом лимите потерь. Если используется несколько клонов робота на разных инструментах, то следует  избегать конфликта интересов, который может возникнуть при разных настройках параметров и задавать пороговый уровень одинакового размера во всех клонах. 
- SafeTrading - параметр, с помощью которого происходит переключение в режим безопасного расчета объемов сделок. При значении параметра true риск сделки рассчитывается не от размера баланса торгового счета, а от размера рискового капитала - разницы между балансом торгового счета и уровнем AllowedDrawdownLevel, заданным в настройках эксперта, что позволяет снизить уровень рисков торговли при приближении к уровню AllowedDrawdownLevel. При AllowedDrawdownLevel = 0 риски рассчитываются от баланса торгового счета.

Данные параметры настройки особенно полезны при управлении счетами внешнего инвестора, с которым оговорен допустимый размер потерь по счету.

2. Параметры настройки робота.

2.1. Список параметров и их назначение.

При сбрасывании робота на график торгуемого инструмента появляется следующее диалоговое окно для настройки параметров робота. (Описание настроек предыдущей версии в конце страницы.)

Версия для торговли локального тренда с дополнительными фильтрами SWT_ExpL.

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

Это отредактированная и дополненная версия робота для приоритетной торговли локальных трендов. Следует отметить, что этот вариант остался больше по инерции, так как практически все его функции, кроме безусловного закрытия позиций по признакам локального тренда, реализованы в версии SWT_ExpR.



Рис.1.

Назначение параметров следующее.


1.Группа фильтрации сигналов по параметрам трендов.

FiltrIDayTrend - при параметре true для открытия позиции принимаются во внимание только сигналы в направлении внутридневного тренда;
FiltrIDayTrendEnd - при значении true параметр блокирует открытие сделок в направлении внутридневного направленного тренда если волна четвертого уровня графика М1 больше/меньше границы канала волатильности на диаграмме волн. Сделки в противоположном направлении открываются без ограничений. Фильтр работает только при Filtr_IDayTrend=true. Назначение - предотвратить вход в рынок в зоне возможного окончания импульса (свинга);
FiltrDailyTrend - при параметре true для открытия позиции принимаются во внимание только сигналы в направлении внутридневного тренда;
FiltrDailyTrendEnd - при значении true параметр блокирует открытие сделок в направлении внутридневного направленного тренда если волна четвертого уровня графика М5 больше/меньше границы канала волатильности на диаграмме волн. Сделки в противоположном направлении открываются без ограничений. Фильтр работает только при Filtr_DailyTrend=true. Назначение - предотвратить вход в рынок в зоне возможного окончания импульса (свинга);
FiltrLocalTrendEnd - при значении true параметр блокирует открытие сделок в направлении локального тренда если волна четвертого уровня графика М15 больше/меньше границы канала стандартной волатильности (пунктирный канал) на диаграмме волн. Сделки в противоположном направлении открываются без ограничений;
FiltrShortTrend - при параметре true для открытия позиции принимаются во внимание только сигналы в направлении краткосрочного тренда;
FiltrMediumTrend - при параметре true для открытия позиции принимаются во внимание только сигналы в направлении среднесрочного тренда.
В данной версии признаки краткосрочного и среднесрочного тренда при активных режимах объединяются по ИЛИ, т.е. сделки разрешены, если при прочих положительных условиях хотя бы один из двух старших трендов допускает торговлю в данном направлении;
MajorTrendsANDMode - при параметре true объединение признаков краткосрочного и среднесрочного тренда переключается из режима логического ИЛИ в режим логического И;
MajorTrendsDirectMode - при параметре true не учитывается режим фазы коррекционного движения краткосрочного и среднесрочного трендов, а только режимы направленного движения рынка по этим трендам.

2. Группа настройки вспомогательных режимов.

Long - торгуем/не торгуем лонг;
Short - торгуем/не торгуем шорт;
OnlyOpen - при значении параметра true позиции только открываются и сопровождаются адаптивным или ручным трейлинг-стопом. Закрытие позиций происходит только по достижению уровней ордеров стоп-лосс и тейк-профит;
CloseManualPosByExpert - при значении параметра true экспертом получает возможность закрытия позиций, ранее открытых или открываемых вручную. Пользоваться с осторожностью и только при отсутствии сделок против тренда, торгуемого роботом, поскольку такие позиции будут сразу же закрыты;
SwitchToSignalSUMM - при значении true для формирования торгового сигнала используется не пересечение нулевой линии волной второго уровня графика М1, а пересечение нулевой линии суммой всех волн графика М1. Использование режима в некоторых случаях улучшает статистику сделок в отсутствие фильтрации по внутридневному и/или дневному трендам.. Использовать после предварительного тестирования.

3. Группа настройки параметров риска.

LotsForManualMM - размер лота для торговли фиксированным объемом без AutoMM;
AutoMM - параметр выбора режима автоматического определения размера (объема) позиции, значение true соответствует автоматическому определению размера позиции, значение false - ручной выбор размера позиции, задаваемый параметром LotsForManualMM;
RiskPercForTradeAutoMM - процент риска на сделку при AutoMM=true. Если заданный размер или рассчитанный лота меньше допустимого в торговом терминале, то в советнике автоматически устанавливается минимально допустимый размер лота;
MaxNumberOrdersInMarket - максимальное количество ордеров в рынке по инструменту;
TotalRiskLimitPerc - максимальный общий риск в процентах по всему портфелю торгуемых инструментов;
TrailingStopAdaptive - включение/выключение режима адаптивного трейлинг-стопа. Адаптивный трейлинг-стоп включается на режиме коррекционного движения по локальному тренду;
TrailingStopManualSize - размер трейлинг-стопа, задаваемого вручную. Активен, если TrailingStopAdaptive выключен. При значении 0 - ручной трейлинг стоп отсутствует. Если значение больше 0, но меньше минимально допустимого в торговом терминале, то устанавливается минимально допустимое + 5пп;
AggressiveMode - в режиме агрессивной торговли на интервале направленного локального тренда, если волна четвертого уровня графика М15 находится внутри границ канала стандартной волатильности (пунктирный канал) на диаграмме волн, то риск на позицию умножается на величину AModeFactorRiskPercForTrade, а количество открываемых сделок - на величину AModeFactorMaxNumberOrders;
LeverageLimits - задается предельный размер кредитного плеча, в рамках которого советник может открывать позиции. Если заданный размер кредитного плеча больше плеча, предоставленного брокером, то действуют ограничения по кредитному плечу брокера. Например, плечо у брокера 1:500, а вы можете установить 1:25 и советники не будут открывать новые позиции, если набран объем, соответствующий кредитному плечу 1:25. Это впрочем не препятствует ручной догрузке счета;
AllowedDrawdownLevel - параметр, с помощью которого можно задавать порог, до которого разрешено снижение уровня средств (эквити) торгового счета.При достижении размером средств величины, заданной параметром AllowedDrawdownLevel, все позиции по счету автоматически закрываются, а дальнейшая торговля блокируется до принятия решения о новом лимите потерь. Если используется несколько клонов робота на разных инструментах, то следует  избегать конфликта интересов, который может возникнуть при разных настройках параметров и задавать пороговый уровень одинакового размера во всех клонах
SafeTrading - параметр, с помощью которого происходит переключение в режим безопасного расчета объемов сделок. При значении параметра true риск сделки рассчитывается не от размера баланса торгового счета, а от размера рискового капитала - разницы между балансом торгового счета и уровнем AllowedDrawdownLevel, заданным в настройках эксперта, что позволяет снизить уровень рисков торговли при приближении к уровню AllowedDrawdownLevel. При AllowedDrawdownLevel = 0 риски рассчитываются от баланса торгового счета.

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

Magic - мэджик-идентификатор для селекции позиций, открытых советниками SWT-метода. Значение по умолчанию 112358 - одинаковое для всех типов советников. Селекция позиций при их обработке экспертом производится по символу и мэджик-идентификатору. При желании трейдер может задавать свои значения идентификатора для работы различных версий советника с различными параметрами.

Универсальная версия для использования в ситуативной (и автоматизированной) торговле SWR_ExpR.



Рис.2.

Остановлюсь только на отличиях от предыдущей версии.

Первое. Появился дополнительный параметр настройки FiltrLocalTrend,  который позволяет явно включать или отключать фильтрацию торговых сигналов по локальному тренду. При параметре true для открытия позиции принимаются во внимание только сигналы в направлении локального тренда.

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

Подробное описание тактики торгового робота: SWT-робот. Формализованная торговая тактика.

Комментариев нет:

Отправить комментарий