Забытая реализация Поля дала результаты: тесты на демо приносят более 20% в месяц при пропорционально меньше просадке. Сделал пару модификаций, стратегии которых расскажу с самого начала.
Хочу попробовать последний вариант базовой торговой идеи для серии роботов Поль, которую я упустил из виду, подводя итоги в прошлой записи. Для целостности, начну с идеи, которую описывал ранее.
Торговая идея
Торговая идея заключается в том, что тренд обычно длиннее, чем период консолидации и если открывать позиции с каким-то шагом по направлению движения рынка, то трендовый пул позиций будет покрывать убытки, возникающие во время консолидации.
Базовая стратегия
Использовать Awesome Oscillator и увеличивать / уменьшать объём консолидированной позиции на каждом баре в соответсвии со значением осциллятора.
Про 3 вариант (рабочий) подробнее:
Открывается маленькая позиция, по мере развития тренда позиция пропорционально растет, по мере затухания тренда — сокращается.
Примечания:
- увеличивать позицию надо на разницу значений осциллятора;
- лот считается динамически, поэтому нужно ввести коэффициент (линейное увеличение), вместо прямого указания лота.
Преимущества:
- малый объем при неопределенном рынке = малые убытки во время флетов;
- чем значительнее тренд — тем больше прибыль;
- нет проблем с закрытием позиций (не случится ложного пробития из-за рыночного шума).
Недостатки (и методы борьбы с ними):
- позиция будет увеличиваться в локальных пиках тренда, прямо перед коррекцией, и сокращаться все время этой коррекции — можно исправить механизмом односторонних позиций (только наращивать и закрывать пул при смене тренда);
- если рынок выстрелил большим баром, но сразу же развернулся (например, на публикации новостей), то откроется большая позиция, которая сразу пойдёт в убыток — можно исправить ограничением объема новой позиции;
- неуправляемое накопление объема позиции — нужно работать с малыми объемами и вводить какие-то ограничители без потери для общей стратегии (взять инструмент с малой размерностью лота).
Рисунок и торговый алгоритм
Визуально стратегия работает следующим образом:
сплошная линия — увеличиение объема позиции
пунктирная — сокращение объема позиции
Позиции открываются по принципу:
- AO ниже нуля — период продаж (красные стрелки)
- AO выше нуля — период покупок (зеленые стрелки)
Объем позиций меняется по принципу:
- AO < 0 и AO[0] > AO[1] — закрываем часть продажи
- AO < 0 и AO[0] < AO[1] — увеличиваем объем продажи
- AO > 0 и AO[0] > AO[1] — увеличиваем объем покупки
- AO > 0 и AO[0] < AO[1] — закрываем часть покупки
Теперь, когда теория позади, время за реализацией.
Итак, спустя 3 часа мучений, у меня получилось воссоздать исходную стратегию и она даже прибыльная:
Новое наблюдение = Новая версия
На визуализации работы я заметил, что объем позиции лучше добавлять не по мере разбега тренда, а по мере его отката:
Попробую внедрить эту доработку в Poole 6. Спустя час, получилось это:
Выглядит лучше, работает менее прибыльно, но, в любом случае, нужно проводить длительные тестирования для того и другого алгоритма. Если хотя бы один из них пройдет тест временем успешно, то запущу тест в на демо-счете. В любом случае, это последняя запись для Эпохи Поль.