Сегодня хочу поделиться некоторыми мыслями относительно фильтра торговых сигналов в разрезе состояния рынка. Для этого я ввел такие показатели, как среднее изменение с момента открытия рынка для совокупности торгуемых инструментов, текущее отклонение изменения выбранного инструмента от среднего и индекс изменения цены инструмента в индексе.
Посмотрим, как ложатся результаты пробойной системы по тикеру VTR на эти индикаторы.
Первый график показывает результаты сделок с зависимости от состояния индекса выбранных инструментов.
На графике мы видим среднюю прибыль на сделку в каждом направлении при увеличении и уменьшении показателя изменения текущего индекса.
Анализ сделок в лонг говорит о том, что с уменьшением изменения индекса прибыль на сделку падает, а шорт примерно стабилен, однако, если формализовать правила открытия позиций, я бы не открывал лонг, когда индекс находится в отрицательной зоне и шорт, когда индекс в
положительной.
Второй график показывает значения сделок в зависимости от того, на сколько изменения по тикеру VTR отличаются от изменения совокупного индекса.
Примерно та же ситуация. Открываемся в лонг, если VTR переигрывает индекс, и открываемся в шорт если выглядит слабее. Стоит заметить, что есть крайние значения в шорте, которые не подтверждают это правило, однако, надо понимать, что это совсем не значит, что такие ситуации повторятся.
А теперь посмотрим, какова средняя прибыль на сделку в зависимости от того, на каком месте по росту находится VTR в текущий момент в индексе торгуемых инструментов.
Как видим, особенной зависимости нет, однако, это не значит, что на каких-то других системах она не появится.
В общем, дополнительные фильтры несут следующий смысл: при торговле большого количества акций и стратегий мы сокращаем количество сделок, и, соответственно, комиссию, а ранжирование позволяет определять наиболее сильные акции, выбирая из систем с сильной корреляцией наилучшую.
UPD: По совету Александра Горчакова сделал пару графиков остаточной эквити в позиции в зависимости от отклонения от индекса. Честно говоря, мой мозг пока это не перварил, но, мне кажется, тут надо выбирать немного другие параметры, такие как отклонение от хая дня или что-то в этом духе! Но идея хороша, спасибо!
Это можно сделать и для имеющихся систем — их эквити то есть.
У любой системы, кроме сигналов на смену позиции (вход-выход) есть и сигналы на сохранение позиции. Оценить эффективность последних по статистике сделок невозможно — только по эквити системы. Поэтому и фильтр надо строить на все три типа сигналов. Т. е. смотреть влияние текущего значения фильтра на будущую доходность системы за период.
Да методика как Ваша, только вместо результатов сделок, брать доходность системы (отдельно лонг, отдельно шорт) за некоторый период в будущем. И составлять такие же картинки.
Судя по картинкам фильтр рабочий, надо думать над правилами его применения.
Ну на этот вопрос у меня только один ответ: эксперимент покажет. А эксперимент можете провести только Вы.
Каждая система (правила входа, выхода, сохранения позиции) индивидуальна. Это подходы к тестированию общие.
Но меня сразу стал интересовать вопрос будущего переноса статистических моделей в с#. Одно дело когда у тебя есть грубо говоря ключевые слова и можно творить со статистикой все что захочешь, а вот что делать с с#?
поделитесь опытом/впечатлениями переноса на с#…
Буду использовать!