Блог им. mic_pdn

*** MIC_PDN-Robot. В поисках идеальной тиковой стратегии 2

В данный момент я получил довольно качественные «сигнальные модели» и пытаюсь сформировать базовый цикл робота «не упустив ничего важного» :)
   Что есть «сигнальная модель»? Это такой способ представления обработанных входных тиковых данных, который дает дополнительные связи-параметры для более высокого уровня логики. Как пример для обычного свечного графика. Если мы просто анализируем роботом свечки «рост-падение» это вообще мало информативная модель (не будешь же роботом генерировать сигнал покупки при появлении зеленой свечи и сигнал продажи при красной? :) ) Если мы анализируем серии, когда вподряд идут свечки падения или роста, это более трендовая «сигнальная модель», если мы при этом еще анализируем длинну текущей волны к предыдущей волне отката в процентах при этом регистрируя факт «трендовое безоткатное локальное движение превысило откат на 160%», то из перечисленных — это будет самая информативная «сигнальная модель» и она будет генерировать наиболее качественные торговые сигналы.

   Само собой моя модель куда сложнее :) но суть не в этом. Любая модель как мне думается ляжет на базовый цикл работы робота. И вот что я в нем вижу:

1. Realtime построение дополнительной «сигнальной модели» данных, отличной от обычного графика свечей-линий (возможно одновременное использование нескольких моделей) У меня это разного рода деревья со списками и прочими вложенностями — очень ветвистая структура, причем у меня одна сигнальная модель формируется на основе второй )) то бишь я работаю на вторых производных от тикового потока.
2. Анализ перемен в «сигнальной модели» на предмет новых сигналов
3. Непосредственное генерирование сигналов
4. Менеджер сделок по прошлым сигналам (были выставлены лимитники и сработали ли по ним сделки)
— если лимитник запоздав не сработал и цена уходит — необходим заход «по рынку» с отменой лимитки
— если сигнал оказался ранним и цена пошла в контр направлении — предусмотреть выход по стоповому уровню и перезайти в случае возврата в сигнальном направлении
— предусмотреть режим «карантин» (отключающий робота) до момента, когда цена выйдет из зоны «турбулентности/неопределенности» (подобный эффект в волатильных разворотных зонах)
5. Проверка актуальности всех текущих сигналов (вместе с новыми) для генерирования одного главного сигнала для одного из действий: «направление текущих позиций верное»/«переворот позиции»/«закрытие всех позиций» (если есть позиции) или же «вход по текущей цене» (если позиций нет)
6 Менеджер режима «карантин» анализирующий отключить ли робота на некоторое время или же продолжить анализировать входящие тиковые данные. (За время тестирования понял, что очень важно выбирать моменты, когда работает робот. Как ни странно, но выбор времени работы робота не менее важен чем сам алгоритм торговли, который он будет осуществлять. Все это вытекает из «хаотичности рынка». Маркет мейкер и проф участники не дремлят и всячески пытаются обмануть участников создавая «ложные модели». Важно работать с «чистыми трендами».)
7. Риск менеджер (проверяет по хистори данным удачно ли идет торговля на фоне прошлых результатов эквити, какой КПД прибыль/время сейчас на рынке. Стоит ли торговать или обратится к менеджеру «карантина» и перевести робота в режим фонового анализа рынка — без генерирования сигналов и текущих позиций)

-------

Таким образом я вырисовал в своей голове базовый цикл, что уже большое дело :)) Что касается самих сигналов, то у меня одновременно может быть множество противоречивых сигналов разного типа вроде 
диагональный уровень поддержки, горизонтальный, фибо уровень, уровень по признаку превышения среднего контр-движения, первый пробой, второй пробой, номер волны (аналог эллиота), средний объем за 100 сделок и прочее (в процессе наполнения). Все сигналы у меня имеют не просто направление, но выражены еще неким числом, которое меняется со временем и по причине изменения цены и прочее (пока прорабатывается модель)… то бишь у меня сигнал не просто шорт а скажем -0.95 а спустя время этот же сигнал уже может стать -0.5, а еще спустя время менеджером сигналов вообще исчезнет став не актуальным. Для чего это нужно? :) правильно — чтобы скормить нейронке и имея с десяток сигналов получить на выходе одно простое условие — выставлять лимитник по текущей или более худшей цене или же пока нет...
.......

в общем пока как-то так :) все в процессе кодинга и тестирования.
To be continue 
★6
3 комментария
сколько времени уже занимаетесь этим роботом(стратегией)?
avatar
RealA, месяц, пробую четвертую глобальную модификацию… Просто я очень жесткие условия ставлю — почти никаких просадок — рост по экспоненте )))
Дмитрий Интрадей, это правильно, допускать просадки, значит допускать несовершенство системы, а следовательно потенциальную уязвимость модели принятия решения
avatar

теги блога Дмитрий Интрадей

....все тэги



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