Блог им. ivanovr |Синтез торгового алгоритма методом генетического программирования

Метод ГП по своим свойствам потенциально мог бы являться универсальным методом поиска алгоритма оптимизирующего заданную целевую функцию. И я как любитель эволюционной оптимизации не мог пройти мимо такой заманчивой идеи.

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

Например, функционал вычисления минимума/максимума в заданном окне получает на вход интересующую величину и значение размера окна, а также имеет 4 выхода: минимум/максимум, позиция точки минимума/максимума в окне.

ГП должен подобрать функционалы и связать их входы и выходы так, чтобы в итоге получился единственный выход типа сигнал (сигнал есть либо нет), который и будет являться сигналом на покупку/продажу. Связанные функционалы с общем случае образуют граф. Целевой функцией является критерий Шарпа с поправкой — наказанием за информационную сложность алгоритма.



( Читать дальше )

Блог им. ivanovr |2.5 года торговли ботом

Прочитал пост smart-lab.ru/blog/121566.php, жизненно, решил тоже поделиться.
Торгую ботом около 2.5 лет большой пакет стратегий на RI и GZ таймфреймы 5, 15, 60. Бот в виде Quik + самописная программа + MySQL. Поскольку это требует скромных ресурсов, то все отлично работает на виртуальном сервере (покупаю за 400р/мес). Скорости от бота не требуется. Алгоритм отлажен так чтобы не требовать контроля.
Сумма сейчас 3 ляма из них 1.5 честнозаработанных. За первые 1.5 года напилил больше 100%. Затем, где-то в мае прошлого года рынок испортился и эквити ушла в горизонталь. Сейчас есть позывы к нормализации рынка, но лето может все испортить. С другой стороны есть новые данные с рынка и на них уже готовы новые стратегии, которые не плохо работали бы если бы да кабы. Будем посмотреть.
Стратегии непосредственно руками не разрабатываю, использую самописный тестер на исторических данных и генетический алгоритм для поиска стратегий. Оптимизатор выбирает несколько правил из набора доступных, а также подбирает параметры каждого правила. Набор доступных правил кодирую сам по мотивам всяких статей и собственным соображениям. Сигналы на вход и выход есть комбинация правил. Плюс также есть варианты выхода по времени и Stop Loss, параметры эти и еще более другие подбираются алгоритмом. В общем руками стратегии не ковыряю, смотрю только эквити из тестера. Иногда смотрю какие правила и какие парамеры используются. Оптимизирую на старых данных, кусок самых свежих использую для отбраковки переоптимизированных. Естественнос стремлюсь уменшать число параметров, так что в последнее время ограничиваюсь двумя правилами, что дает информационную емкость перебираемого пространства 30-40 бит.


( Читать дальше )

....все тэги
UPDONW
Новый дизайн