Блог им. 3Qu

Несостоявшаяся стратегия.

    • 30 января 2020, 20:50
    • |
    • 3Qu
  • Еще

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

Но, давайте о самой стратегии.
Пусть текущее состояние инструмента в каждый момент времени описывается вектором X(t)={x1(t),x2(t),...,xi(t),...,xn(t)}, где x(t) — могут быть значениями индикаторов, какими либо значениями, вычисляемыми по неким формулам, значениями, типа, да/нет, фазами Луны, если вы считаете, что Луна как-то связана с поведением инструмента. В общем, значениями чего угодно, что по вашему как-то характеризует состояние инструмента в текущий момент, и может как-то быть связанным с его поведением в будущем. На отрезке истории вектор X(t) будет принимать большое количество различных значений и образует множество состояний или пространство состояний инструмента.
Чтобы как-то получить с инструмента прибыль мы должны предположить, что в пространстве состояний имеются некоторые устойчивые области, при нахождении в которых вектора X(t) мы сравнительно безопасно можем войти в сделку, и даже получить некоторую прибыль. Наша задача в том, чтобы попытаться обнаружить такие области в пространстве состояний. Задача, в общем, не тривиальная, но решаемая методами мат. статистики. Если такие области не будут обнаружены, то, либо они отсутствуют, либо выбранные вами компоненты вектора X(t) не описывают состояний инструмента, и вам следует попробовать другой набор параметров x(t) в векторе X(t).
Если же вам удалось найти такие области, то можно попробовать сократить размерность вектора X(t), выбросив из него малозначимые параметры x(t). После этого нам надо проверить нашу модель на других отрезках истории, и если модель продолжает оставаться работоспособной, то можно переносить ее в торговую систему и готовить к работе на рынке. Если мы не занимаемся пипсовкой, то истории на ТФ 1 мин для таких прогонов вполне хватает.
Именно такой стратегией для фьючерсов Сбербанка я занимался прошлым летом, и получил вот такой результат.
Несостоявшаяся стратегия.

На рисунке работа идет с одним фьючерсом SBRF-6.19 на интервале последних 3 месяцев до даты исполнения. По оси Х — номер сделки, по У — накопленная прибыль в п.п. фьючерса.
Класс, да?! Однако, за делами, леностью, но с чувством хорошо сделанной работы, стратегия была заброшена. Вообще, иногда даже полезно, чтобы стратегия некоторое время полежала и дала сок.
Вернулся я к ней только сейчас. Проверил ее на старых данных, сохранил картинку, которую вы видели выше, чтобы было с чем потом сравнивать, и запустил модель на последних 3-х месяцах фьючерса SBRF-12.19.
От стратегии ничего не осталось, абсолютно ничего — ноль. На фьючерсе SBRF-12.19 стратегия абсолютно несостоятельна. Почему это так — не знаю. Возможно, за это время изменился рынок, и движения инструмента перестали коррелировать с найденными факторами. Не знаю.
Такое уже случалось. Несколько лет назад попробовал воскресить стратегию, которая когда-то реально работала на рынке. Из этой затеи ничего не вышло. Ее стало невозможно настроить даже на минимальную прибыль.

★6
14 комментариев
Интересно, чему было равно N? 
По сути Вы изложили стартовую точку для тех, кто пытается применить NN к рынку. И, почти всегда, такой подход не срабатывает. Почему? Ответ тривиальный и хорошо известный, избыточное число степеней свободы при сильно зашумленных ограниченных данных плодит фальшивые закономерности.
avatar
SergeyJu, «фальшивые» корреляции не работают на других временных интервалах.)
Вообще-то, при правильном применении, такой подход почти всегда срабатывает. Есть еще примерно аналогичная стратегия с другим составом вектора Х. Она тоже не реализована в ТС, но модель работает и сейчас.
PS не ответил про размерность, N=15.
avatar
3Qu, 15 — это  много, даже сказал бы до фига. Вероятно, или параметры на самом деле сильно сильно взаимно зависимые, или у Вас весьма простые области, где-то же надо сократить реальное число степеней свободы!
avatar
SergeyJu, делал все, чтобы параметры были как минимум линейно независимы.
15 — это, на самом деле, оч не много. В обычных стратегиях обычно используется и больше. В одной из моих «обычных» стратегий использовались 30 для лонга, и 30 идентичных для шорта.
Всего один индикатор уже дает 3-4 параметра для оценки своего состояния.
avatar
3Qu, Xj(t) у вас — какая-то функция времени, типа, приращение цены, разница между ценой и скользяшкой, вола и так далее, или что-то попроще? 

avatar
SergeyJu, значения цены и двух-трех предыдущих цен. Значения индикаторов и пары их производных, если нужны. Значения статистических параметров.
Все это нормировано к некоторому диапазону.
avatar
3Qu, примерно к такому все и пристраивают нейронки. А потом удивляются, что не выходит каменный цветок. 
А Вы как делите область значений, с помощью линейной функции,  SVM (метод опорных векторов по русски) или что-то позаковыристее? 
avatar
SergeyJu, не знаю что они делают, и почему у них не получается. Наверно вначале надо книги какие почитать,)) и представлять, что может и не может та-же NN.
Вопрос чего-то не понял. Что подразумевается под областью значений?
avatar
3Qu, пространство, в котором находятся точки Вашей N мерной функции нужно как-то разбить на зоны принятия решений. Например, гиперплоскостью, или методом ближайшего соседа. Построить функционал и порог к нему. Как-то так.
avatar
SergeyJu, да, разумеется.
avatar
3Qu, ну так Вы — то какую используете схему? 
avatar
SergeyJu, пространство разбивается на 3 области: возможен лонг, возможен шорт, режим ожидания. Это находится простейшими методами. Далее лонг и шорт обрабатываются независимо для поиска точки входа или ее отсутствия. Выход системы — от 0 до 1. Срабатывание по порогу.
В самой системе, при проектировании,   ищется компактная область. Критерий отбора не прибыль, а близость к центру области. Маловероятные сделки с выпадающими параметрами независимо от их прибыльности исключаются.
avatar
А сколько средняя сделка если не секрет, в пунктах?

теги блога 3Qu

....все тэги



UPDONW
Новый дизайн