Блог им. fehuman

+100% первый год алготрейдинга. Одурачен ли я случайностью?

Всех приветствую!

Первый год публичной алго торговли закончился с результатом +100%.
Первый пост о моем пути к алготрейдингу тут
В этом посте подробно разберу результаты за прошлый год, а также попытаюсь ответить на вопрос – одурачен ли я случайностью?
На рисунке изменение депозита и фьючерса долл./руб.
+100% первый год алготрейдинга. Одурачен ли я случайностью?
Все системы торговали на фьючерсе долл./руб. Примерно 75% систем работают на волатильности, остальные пытаются поймать тренд. В начале года затишье, которое к концу марта привело к просадке в 30%. Ну а дальше роботы оседлали взрыв рынка. 8 августа вывел 10% от первоначального депо, в этот же период был удержан НДФЛ на всю сумму накопившегося дохода.

Красным цветом выделил зоны, где алгоритмы не смогли заработать на волатильности. То есть движения были, но они были «плохими». В эти периоды дневные свечи имели большие тени как с верху, так и снизу. Поэтому, не смотря на хорошую волатильность их возило по стопам. Зеленые зоны – экстремально низкая волатильность и сильные просадки.

В портфеле 4 идеи, каждая в двух вариациях, итого 8 ботов. Две вариации (по разным идеям) по очереди обновили тестовую просадку, одна в марте, другая в декабре. Торговлю по ним не останавливал. Принял решение не менять портфель в течении года, так как частая перетасовка приводит к еще большим неприятностям. В итоге обе вариации вышли из глубокой просадки и по итогам года дали в хороший плюс.

Основная проблема по итогам года. Выбор вариаций в портфель был основан на максимальной эффективности (отношение доход/просадка) и не учитывал корреляцию. Правильнее было бы включить в портфель вариации с чуть меньшей эффективностью, но они, как показало тестирование намного лучше справлялись с красными и зелеными зонами. Кто-то сторговал в эти периоды в ноль, кто-то вообще в плюс.  

Включение в портфель всех вариаций, которые хотелось бы торговать не было возможности из-за размера депозита. Да и сейчас, спустя год эта возможность ограничена. В начале 2019 года запустил обновленный портфель с большей диверсификацией по вариациям. Добавил ботов на фьючерсе Сбербанка. Фьючерс РТС не торгую, так как большое ГО и запустить несколько систем не получится. А один бот в поле не воин. Обновленный портфель в 2019 году уверенно вышел из декабрьской просадки. 
+100% первый год алготрейдинга. Одурачен ли я случайностью?

Далее попытаюсь критически оценить результаты торговли, взвесить «за» и «против» случайности. Для чего это нужно? Чтобы не обманывать себя, выявить недостатки и определить точки приложения материальных и трудовых ресурсов.

Против случайности, «плюсики»

+ Период тестирования алгоритмов 10 лет. Такие системы теоретически должны дольше жить. Есть конечно концепция тестирования и выявления неэффективности за 3-4 последние года, пока к ней не пришел. В первом варианте «субъективно» мат. ожидание выше
+ Системы строятся без оптимизации параметров путем их перебора в тестировщике. То есть подбираются вручную, в зависимости от изначальной идеи. Параметры таких систем не нужно постоянно менять, так как их изменение не приведет к улучшению. В этом случае подгонка под рынок (переоптимизация) минимальная, что дает большое преимущество.
+ Логика входа и выхода описывается 1-2 параметрами, реже 3-мя. Это также положительно влияет на отсутствие подгонки под рынок.
+ Все алгоритмы и вариации без индикаторов. Хотя уверен, что их можно торговать в случае: а) использовать нестандартно б) параметры не оптимизировать в тестировщике в) складывать идею из индикаторов, а не наоборот.
+ Стабильность результатов тестирования на каждый год. То есть доход за каждый тестируемый год должен быть порядка 100% при максимальной просадке 30%. Если у системы/вариации нет дохода за какой-то отдельный период, ее не торгую. Возможно, этот принцип в будущем пересмотрю, так как попадаются системы с меньшей эффективностью, но с меньшей корреляцией к остальным алгоритмам.  
+ Алгоритмы не пробойные. Считаю это положительным моментом, так как такие системы менее явные, их как бы не видно, входы и выходы не на значимых уровнях.
+ Не использую фиксированные стопы и трейлинг-стопы, так, как и то и другое параметры для оптимизации/переоптимизации.
+ Гэпы учтены. Системы переносят позицию на следующий день. Либо закрывают позицию в конце дня.
+ Системы адаптивны к волатильности, одинаково хорошо торгуют si, до 2014 года и после него. Контроль рисков на уровне 1-2% на сделку. Доливок в открытую позицию не использую, чем проще, тем лучше.
+ Эффективность портфеля тестовая 1 к 4. В целом соответствует реальной торговле 1 к 3,3. Так как две вариации обновили максимальную просадку. К этому был готов).
+ Имеется длительный и мучительный опыт ручной торговли, возможно это тоже плюс, так как есть определенное понимание рынка (субъективно) конечно)
+ Очень опытный наставник Максим Frend
   Без него освоение TSLab и алготорговли в целом затянулось бы еще года на два.

Теперь «за» случайность «минусики»

– Торговался один инструмент – фьючерс на долл./руб. Низкая диверсификация по активам
– 2018 год был достаточно волатильным, следовательно, следующие периоды могут быть не такими удачными
– В портфеле только импульсные и трендовые системы. Низкая диверсификация по алгоритмам. Хотя именно они (если смотреть на практику коллег) генерируют основной доход
– Небольшое количество торговых идей – 4 штуки. Низкая диверсификация по идеям. Хотя возможно это компенсируется их качеством
– Заложены высокие риски. По каждому алгоритму максимальная просадка 30%. По портфелю в целом с учетом корреляции не считал. Возможно порядка 25%. Дело в том, что TSLab не дает статистику прибыль/убыток за день для экспорта в текстовый файл. Поэтому посчитать корреляцию и смоделировать более эффективный портфель основная задача 2019 года

Вывод

Плюсиков получилось больше и результат 2018 года не случаен, возможно субъективно. Выявлены недостатки, с которыми необходимо работать. Но бывают периоды после пропущенного движения или в просадке – кошки на душе скребутся. Главный судья здесь, наверное – время.  

Всем добра и профитов!



★25
ошибка по ссылке, что за алгоритм такой, где его постичь!?
avatar

Alex Bik

Alex Bik, https://smart-lab.ru/blog/520732.php и https://smart-lab.ru/profile/Din_Don/
Alex Bik, Могу порекомендовать тех, чьи труды подробно изучил: Саро Мекаелян, Игорь Чечет, Дмитрий Власов, Алексей Горбунов, Константин Гринькин. Еще обязательно Перри Кауфман «Системы и методы биржевой торговли» 
я не верю в ИИ, в алготрейдинг тоже. На графике я вижу резкие скачки — сам писал роботов — тоже такое было ) 
Риск бы понять... 
Николай Помещенко, Да, скачки большие, риск заложенный в алгоритмы 30% максимальной просадки на истории. Итого по портфелю риск порядка 25%. 
Кирилл Глухов, много. Ну вот я два года тыркался с роботами и успокоился. 
Усложнять что-то смысла нет, ТА — это для справки, а не для принятия решений. 
Хотя, когда то я свято верил в силу ТА. 
Николай Помещенко, почему в ИИ не веришь?
Николай Маржинов, люди иррациональны. Это доказано
Николай Помещенко, зря, я тоже алготрейдаю, не с такими фееричными результатами конечно, но тоже профитно. И есть публичная статистика. Причем все впереди, т.к. нет предела совершенству )))
avatar

Scroooge

Scroooge, да, я тоже так писал и не раз. Собственно, любой опыт — на пользу.
Отличный результат. Хорошие итоги года, Поздравляю с хорошим началом 
avatar

Frend

Вы молодец! профит есть — что еще надо? :)
Индекс оптимизма, Спасибо! Что еще нужно? Постоянно развиваться, так как системы быстро устареют. В дальнейшем планирую писать познавательные посты, делиться опытом)
Кирилл Глухов, постоянное развитие — это прекрасно! Успехов Вам!

Читать Вас приятно — подпишусь в ожидании новых постов :)
avatar

Friendly Deep Space

По ощущениям от постав результат выглядит не случайным), уже по первым двум абзацам начал подозревать неслучайность)).

 

Интересно узнать, с вашим подходом какая у вас конверсия по системам? отношения к кол-ва систем, которые идут в бой к кол-ву идей, которые были протестированы. Короче, каково соотношение акцептуемые идеи /отвергаемые идеи.

avatar

Replikant_mih

Сложно сказать, такую статистику не веду. По началу брак был 100%) Со временем лучше. Сильный прогресс пошел после того, как построил первую качественную систему. Типа как озарение. Пришло понимание, как выхватывать из графика работающие вещи. Можно сказать на уровне интуиции, что должно работать, а что нет. 
Кирилл Глухов, Понял, интересно, спасибо!)
avatar

Replikant_mih

ссылка не рабочая
avatar

sloNIK.

sloNIK., не разобрался с сылками( Рабочие написал в первом комментарии
Как посчитана прибыльность (и просадка). Прибыль (просадку) получили, — на что делили?
avatar

Pin-T-Set

Pin-T-Set, эффективность считаю как отношение дохода к просадке. Доход/просадка. 
Кирилл Глухов, нет, я не про эффективность. Само значение прибыльности и просадки в %, как получено?
avatar

Pin-T-Set

Pin-T-Set, При тестировании или на реале? Всего портфеля или отдельного алгоритма? 
Если не используешь стопы, то как тогда выходишь из сделки? А если рынок полетит не в твою сторону?
Андрей Возяков, если бы люди жили вечно, то все они умирали бы от удара молний и прочих неожиданных воздействий.

Со стопами — такая же беда. Если торгуешь без стопа, то живешь до первого удара молнии. Год, два, три, четыре, пять… а потом бац!.. и ты труп))
Андрей Возяков, Стопы есть, возможно неправильно выразился. Нет фиксированного размера стопа, который можно было бы подогнать под рынок.
молодец!
avatar

Scroooge

Немного недопонял этот пункт:
складывать идею из индикаторов, а не наоборот.
Что имеется в виду?
И ещё. Всегда хотел спросить алготрейдеров: «А зачем нужно так много алгоритмов/ТС? Разве пары-тройки недостаточно?
Каракольский, 
А зачем нужно так много алгоритмов/ТС? Разве пары-тройки недостаточно?
Диверсификация. Чем больше систем — тем лучше. Главное при этом — чтобы они были независимыми.
avatar

Eugene Logunov

Eugene Logunov, понимаю, диверсификация, потому и написал — пара-тройка систем (независимые друг от друга). Но зачем их 8-12 штук? Что это даёт? В этом и был вопрос.
Каракольский, Во-первых, пользу можно увидеть, если расписать дисперсию доходностей портфеля стратегий...

sigma_p^2=sum(i=1..n; (sigma[i]^2)*(w[i]^2))+sum(i=1..(n-1), j=(i+1)..n; 2*sigma[i]*sigma[j]*w[i]*w[j]*rho[i,j])

Допустим, корреляции между стратегиями равны нулю и их волатильности одинаковы (rho[i,j]=0, sigma[i]=sigma), тогда дисперсия доходностей портфеля с равными весами (w[i]=1/n) будет равна:

sigma_p^2=sum(i=1..n; (sigma^2)*(1/n^2))

Преобразуем:

sigma_p^2=n*(sigma^2)*(1/n^2);
sigma_p^2=(sigma^2)*(1/n);
sigma_p=sigma/sqrt(n).

Последнее выражение показывает, что волатильность портфеля некоррелированных стратегий с равными волатильностями, если их взять с равными весами, уменьшается пропорционально корню квадратному из кол-ва стратегий в портфеле. Если добавить ещё и предположение об одинаковых доходностях — можно увидеть, что коэффициент Шарпа портфеля тоже будет расти пропорционально корню квадратному из кол-ва стратегий.

Аналогичные рассуждения для волатильности портфеля легко провести для случаев, когда корреляции не равны нулю и волатильности отличаются. Сводится к рассмотренному случаю путём поворота системы координат.

Во-вторых, рано или поздно стратегии перестают работать. Хорошо если стратегия просто перестанет приносить доход, но она может начать приносить убытки. Если у вас сломалась 1 стратегия из 10, а не из 3 — ваше положение, очевидно, лучше.
avatar

Eugene Logunov

Каракольский, у меня другой подход: один алгоритм на разных инструментах. Такой метод удается неплохо контролировать. А от одновременной работы разных алгоритмов лично у меня голова болит. Пробовал — чуть не порвался. Поэтому, в рассказы про стадо ботов с разными алгоритмами верю с большим трудом. А точнее, не верю вовсе.
Каракольский, Как обычно делают. Берут скользящую и от нее строят систему. Например пересечение цены и SMA. Другой подход. Сначала формулируем идею. Например: входим по тренду, но так как индикаторы запаздывают, нужно заходить на коррекции. Таким образом нам нужно описать с помощью скользяшек: 1) наличие тренда 2) наличие коррекции по тренду. Не знаю получилось ли объяснить суть.
Автору:

Единственный способ получить  объективный ответ на вопрос "это система или просто повезло?" — прогнать тест торгового алгоритма на «предсказательную силу». Общий принцип тестирования выглядит так:



Ваш алгоритм (с ваших слов) не требует параметров. Это прикольно. Но вы делали такой тест? 

Если он показывает устойчивый профит в 10-12 периодах, то это на алгоритм, а путь к богатству и обеспеченной старости. Такому алгоритму можно доверить большие (соразмерные нашей помоечке) деньги. Я бы точно доверил.
Сергей Симонов, Как без параметров? Написал же что есть) 1-2 параметра, реже 3 штуки. 
Сергей Симонов, Спасибо за комментарий. О таком способе тестирования в курсе. Но, правда, не применяю его. У меня сложился другой подход. Берем идею. Описываем ее 1-2 параметрами. Если они работают на истории в 10 лет. Гут. Возможно имеет право на жизнь и тот и другой вариант. 
Кирилл Глухов, описанный метод тестирования весьма похож на известный метод WFO (Walk forward optimization). Берите на вооружение эту замечательную практику тестирования торговых алгоритмов.
Интересно. как раз ищу людей, к которым можно будет, если что, обратиться с вопросами насчёт освоения тс лаба). А результат действительно хорош! Главное не растерять темп)
Антон Безымянный, да, чем больше счет тем больше нужен темп) 
А чем по-вашему плохи пробойные роботы?
avatar

Андрей Ш.

Андрей Ш., Не говорил, что они плохи. Раньше сам их торговал. Сейчас просто нашел более прибыльные вещи. Есть в них определенные недостатки: как правило они менее эффективны (доход\риск), на пробое выше проскальзывания, пробойный уровень видят крупные участники и возят ботов на стопы. Но все это по моему опыту. У Вас возможно другой опыт их использования. 
Кирилл Глухов,  у меня маленький опыт, до Вас мне далеко), я только пришел к ним и очень доволен их работой, по-сравнению с скользящими средними.

Андрей Ш., В скользящих тоже есть мед, если использовать их нестандартно. В общем случае, да, пробойные работают лучше. 
Кирилл Глухов, я был бы очень вам благодарен, если бы вы немножко намекнули, что значит нестандартно)
Да, они очень хорошо работали на сбербанке весь 2018, с параметрами 88/120 — довольно не стандартно для скользяшек. Заработали более 16000 п, при просадке 1800 п. Зато  в текущем боковике, просадка превысила максимальную, и в 2 раза превысила просадку за 2018, и может быть это еще не конец просадки)
Андрей Ш., Стандартное использование это пересечение цены и MA или пересечение самих MA или использование ее как подтягивающегося стопа. Нестандартно например задание скользящими направление тренда и определение отката. Или например смотреть куда «смотрит» МА т.е. ее наклон период назад или несколько периодов назад) Можно строить системы не по самой цене, а по сглаженной цене через МА. 
Хороший результат — поздравляю!

Насчет пользы/вреда оптимизации — лично я пока не определился. Но все же больше склоняюсь, что польза определенно есть (без фанатизма). Но пока сам для себя не зафиксировал четкую методику. Первый вопрос конечно в том — что оптимизировать. Очевидно — не голый профит, т.к. это прямой путь к подгонке. Но думаю что-нибудь придумаю :)

Идеи, которые работают на 10 годах — это круто!!! К сожалению, или к счастью — таких не больше 3-5% — все же рынок меняется гораздо быстрее.

Отдельное спасибо — за сам пост, в котором поделились своим опытом. Все написано по делу! К сожалению, сейчас на СЛ это редкость…
avatar

Носорог

Носорог, Спасибо! опытом поделился совсем чуть-чуть) Проповедую идею о не изменчивости рынка. На длительной дистанции все тоже самое, меняется характер, волатильность движения цены, но все это повторяется.  
Din Don много за обучение берет?
avatar

Stasik

Stasik, Не обучает :) и поэтому не берет :)
avatar

Frend

А как вы тестируете за 10 лет инструменты, цена которых существенно изменилась? Например в Si при цене 33 рубля была скорее всего одна матиматика, при 66 скорее всего другая?
Апостол Андрей, Сначала смотрю на общую эквити за 10 лет. Далее чтобы более точно учесть риски на si, делю тест на два этапа до 2014 и после него. Как Вы верно заметили математика будет отличаться примерно в два раза. 
Кирилл Глухов, а роботов на чем пишете?
Кирилл Глухов, спасибо за ответ! А, если не секрет, на каких таймфреймах работают роботы?
Андрей Ш., TSLab на кубиках. Для описания простых моделей пока их хватает. Таймфрейм основной 1 минута. Время в позиции разное. Бывает стоп выбьет за пару минут. Бывает поза неделю открыта. 
у меня за первые 9 месяцев алго-торговли было +600% прибыли
блаженный 2014й год.

с тех пор что-то пошло не так. и продолжает идти.

в целом 2018й был достаточно флетовым. если удалось заработать там, то системы хорошие я думаю.

респект.
avatar

ПBМ

ПBМ,  Спасибо! Через управление размером позиции с учетом волатильности выравниваю доходность по годам. В 2014 году по тестам максимум 250%, в остальные периоды 80-150%. 
Нет не одурачен. Так держать. Но деньги любят тишину
avatar

Tapkl

Tapkl, Согласен, любят! Поэтому выработал для себя определенные правила по управлению денежной энергией, чтобы не сглазили) 
Мои поздравления. Прекрасный результат!
Как раз искал посмотреть этот же период на Si у других!
У меня тот же результат при 10% посадки.
При 30% просадки,  557% годовых.  
https://smart-lab.ru/blog/529500.php

Борис Литвинов, Если в реале также как на тесте, круто! 

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.

Залогиниться

Зарегистрироваться
....все тэги
UPDONW