Блог им. Russor

Критерии качества робота

После реализации кучи алгоритмов торговли (фьючами на мосбирже), сформулировал для себя такие критерии качества робота:

1. бэктест за предыдущие 36 месяцев должен давать ежемесячный профит
2. внутри месяцев разрешены просадки
3. финрез каждой сделки вычитает комиссии и усредненное проскальзывание
4. профит за каждый год должен быть больше ГО на начало года

Тестирую новые алгоритмы на предмет соответствия этим критериям. Как показала практика, создать алгоритм, генерирующий за 3 года акуенный профит (например, 10 ГО) — не сложно. Но реальная работа такого робота будет крайне некомфортной. Гораздо сложнее создать алгоритм, генерирующий за 3 года ежемесячный профит. В реале такой робот не поразит доходностью. Доход за год будет меньше ГО из-за всякой херни на рынке, включая сквизы, изменение ГО и т.п… Но регулярный небольшой профит (например 5% от ГО в месяц) — это супер-пупер-турбо-мега-кайф.

А у вас какие критерии, друзья?
★3
36 комментариев
что значит от ГО, как вы это считаете? 
avatar
Igr, кхм… если совсем просто, то так:

ГО — это кучка денег, которую брокер блокирует на моем депо, когда я покупаю или продаю фьючерсный контракт. Например, сейчас фьюч сбера стоит 19 700р., а ГО по нему 5 200р. Я покупаю фьюч за 19 700, а брокер блокирует у меня сумму 5 200 р. 

Получается, что я «вкладываю» 5 200р. в инструмент, стоимостью 19 700р. Так образуется бесплатное виртуальное «плечо», позволяющее быстро слить депо на срочном рынке. При желании, можно слить депо за 1 день. На споте такое не провернуть.

В реальности, есть ГО покупателя и есть ГО продавца (они немного отличаются) и брокер блокирует не чисто ГО, а ГО+20% или даже ГО+30%… но это уже мелочи.

Сергей Симонов, как то странно считать доходность на ГО)  

не логично и вводит в заблуждение по моему, доходность на депо — вот это норм) 

avatar
Igr, если вы все депо заблокируете в ГО, то считайте доходность на депо… но на практике редко удается засунуть все депо в ГО… да и не нужно этого делать)

это во-первых...

а во-вторых, доходность нужно считать не на все деньги, которые у вас есть, а на деньги, которыми вы рискуете..

вы не включаете в расчет доходности игры на бирже наличные деньги в шкафу?.. или включаете???)))

Сергей Симонов, внесли брокеру на счёт? — вот это и есть депо от которого стоит считать доходность 

по моему 

avatar
Igr, это правильно, если все депо в работе… поэтому и важна диверсификация
Сергей Симонов, если не всё депо — это твои проблемы, всё равно считать от всего депо) 
avatar
Я использую, для оценки эффективности ТС ГОх2.
Форвардное тестирование за 3 месяца (отклонение от ТС не более 20%)
Один алгоритм на нескольких временных периодах (5, 15, 30 и тд)
Норма прибыли 5-7% в месяц от ГОх2 (считаю очень хорошим результатом).
Максимальная просадка не более 20% от ГОх2.
Обязательная проверка алгоритма на исторических данных, на которых не производилась оптимизация. Например оптимизируемся период 2017-2019, то этот алгоритм должен показывать похожий положительный результат за 2016 год. Как-то так.
1. бэктест за предыдущие 36 месяцев должен давать ежемесячный профит

Это 1 торговый алгоритм с 1 фиксированным набором параметров?

 

Высокая планка… Почти грааль.
Есть у Вас хоть один робот в бою на заметный объём средств с выполнением этого конкретно критерия?

avatar
ch5oh, да, это один алгоритм… уже неделю пашет на одном контракте сбера… пока в плюсе с учетом комиссий и проскальзываний… посмотрю, как покажет себя за месяц… а пока занимаюсь оптимизацией этого же алгоритма под брент, ришку и другие ликвидные фьючи… их, к сожалению, кот наплакал на нашей бирже… поэтому, диверсификация получится весьма условной
Сергей Симонов, то есть он показал 36 месяцев подряд в плюс при тестировании на истории? Поздравляю!
avatar
ch5oh, именно так… спасибо)

но доходность скромная… чуть больше 1 ГО за год с учетом скальперской комиссии 1 руб (Финам+Мосбиржа) и проскальзываний в 2 рубля на каждую сделку (примерно столько теряется днем в каждой сделке на фьюче сбера).
Скучно как… за 1 сделку и два дня 5 процентов это норм. Зачем для этого робот? 
avatar
No pain-no gain, регулярные ~5% в месяц от ГО — это, на самом деле, праздник
Сергей Симонов, регулярно не бывает. А вот просто 5 процентов в месяц я могу легко, потратив максимум 1-2 дня на это
avatar
No pain-no gain, так это все могут… но почти никто не делает))
Сергей Симонов, да? А я могу и сегодня заработал столько)
avatar
Как показала практика, создать алгоритм, генерирующий за 3 года акуенный профит (например, 10 ГО) — не сложно.

Сразу возникает подозрение что бэктестер допускает подглядывание в будущее или не учитывается что-то важное)
Дядя Ваня СпекулянтЪ, все по чесноку… уж поверьте… с визуализацией сделок на графике и дальнейшим внимательным изучением каждой сделки… все, как положено)

но чем выше доходность, тем ниже стабильность… а для меня стабильность важнее размера доходности…

замечу, что к пониманию приоритета стабильности над доходностью пришел не сразу… понадобился примерно год упорного и бессмысленного труда))
36 месяцев достаточно для ХФТ. Если речь идет о нескольких сделках в день (в среднем), то надо брать хотя бы 10 лет. Пусть и не на всех активах. Хотя бы на 2. И 36 подряд месяцев в плюс… слишком хорошо, чтобы быть правдой.
avatar
SergeyJu, да… несколько сделок в день

суть не в количестве обсчитанных баров… можно миллион баров обсчитать и получить конфетку, а в следующем месяце слить…

суть — в способности алгоритма автоматически подстраиваться по неизбежные изменения в поведении инструмента… а для создания механизма адаптации не нужно обсчитывать миллион баров)
Сергей Симонов, адаптация, увы, не панацея. Я видел, как разносило именно адаптивные алгоритмы. 
avatar
SergeyJu, тоже за адаптацию, потому как: а что же ещё? Но применительно к контртрендовым. 
Adam Kazimirovich, идеологически я тоже за адаптацию. Но практически предпочитаю что-то более тупое.
avatar
SergeyJu, с этим не поспоришь))… слить можно и на золотом граале
Про «приоритет стабильности над доходностью» понравилось, сам в этом направлении рою. И да, с ликвидными фьючами большая проблема, — максимум штук 7-9…
Adam Kazimirovich, это да… брент, ришка, сишка, сбер… и еще несколько задохликов… а хотелось бы иметь штук 20 ликвидных фьючей с разными базовыми активами — русские акции, американские акции, комоды, индексы и т.п.

и да… стабильность однозначно рулит… копайте в этом направлении… оно того стоит
Adam Kazimirovich, 2-3.
avatar
SergeyJu, диверсификации ради приходится вплоть до LKOH доходить, это как раз для тех девяти, сбалансированных по стоимости и волЕ к депо. 
Adam Kazimirovich, диверсификация за счет полуликвидов мне не очень нравится. Проскальзывание больше, а емкость меньше. Проще сформировать портфель акций и хеджировать его фьючами ри и си, помимо собственно торговли фьючами. 
avatar
Adam Kazimirovich, LKOH??.. ой… не не неее..  по нему меньше 10 тыс. сделок в день...  проскальзывания зашкаливают
Сергей Симонов, ну да, но это как последний довесок к портфелю.
Сергей Симонов, там же так или иначе инструмент тактируется, и в общем-то сделка выпадает на более-менее приемлемую плотность ордеров, как правило внутри сечи. Ну тут такое, — частное исключительно мнение. И за счёт тактирования исключаются «шпильки», кстати.
Adam Kazimirovich, у меня роботы торгуют рыночными ордерами, поэтому для меня проскальзывания очень важны… а неликвид генерирует такие лаги, что профит превращается в тыкву))
Гладкая гистограмма выигрыша на контракт в шагах цены с центром правее положения безубытка))
avatar
1) бэктест c 2008 года
2) Кол-во параметров 2-3
3) финрез каждой сделки вычитает комиссии и усредненное проскальзывание
4) 50-70 % всех наборов параметров должны быть положительными
5) Береться облако хороших параметров и торгуется целиком, т.к. рынок меняется и облако хороших параметров постоянно смещается.
6) Желательно, чтобы 1 или 2 параметра были адаптивными
7) Нужен мани-менеджмент

P.S. Считать от ГО — странно. Пару месяцев назад ГО Si было 4500, а теперь 8000. Считать от депо — правильно на мой взгляд.
avatar

теги блога Сергей Симонов

....все тэги



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