Блог им. Artemunak

показываю как посчитал корреляцию между своими 24 роботами в excel, картинки, выводы по итогам

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

Итак, роботов запущено на самом деле больше 24, и не у всех по одному коню, так что сами картинки отображают то что мне интересно, а не реальную картину. Если вкратце то используется около 10-15 разных идей, остальные роботы это их вариации. 

К сожалению в Тслабе нет портфельного тестирования, блиииин. Поэтому самому пришлось делать. Вот краткие шаги.
0. Копируем рабочий скрипт.
1. Выбираем период истории в тслабе для скрипта.
2. Во вкладке сделки делаем экспорт в эксель (получается готовый файл со сделками для одного робота, повторяем операцию 24 раза)
3. Делаем 1 скрипт с историей сишки от финам, чтобы сделка открывалась и закрывалась на каждом баре. Выбираем таймфрейм в соответсвиии в желаемой точностью, у меня это 10 мин.  
4. Делаем экспорт, выкидываем все столбики, оставляем только цену закрытия и время входа.

5. Делаем макрос на VBA который  на основе данных из 24 файликов со сделками  заполняет нашу итоговую таблицу сделками.

показываю как посчитал корреляцию между своими 24 роботами в excel, картинки, выводы по итогам 
См скрин, столбики посередине это открытые позиции каждого робота в каждый момент времени.
Добавляем колонку с суммой всех позиций.
Добавляем колонку с профитом на один бар (разница закрытий помножить на лоты)
И другие колонки

6. Делаем субтотал, например по месяцам, и получаем такую картинку, с отображением профита каждого робота в каждый месяц.
У меня например в правой колонке средний профит с 1 робота в месяц.
7. Делаем условное форматирование.
показываю как посчитал корреляцию между своими 24 роботами в excel, картинки, выводы по итогам

 8. Блин, что-то я утомился уже каждый шаг расписывать, если будет интерес то напишу подробней.
Переходим к самому интересному
Сводная таблица с корреляцией роботов
В экселе это функция correl, подставляем наши отсубтоталеные (субтотал по 1 дню комп минут 10 считал)столбики с позициями, в формулу.
показываю как посчитал корреляцию между своими 24 роботами в excel, картинки, выводы по итогам 
Как мы видим один робот с другим у меня коррелирует в среднем на 20%.
И контртренд в данное время я почти не использую, что также видно.

Как ни странно оказалось что робот на одном алгоритме с разными параметрами и 2 робота на разных алгоритмах по эффекту корреляции трудно отличимы между собой, так что использовать разные параметры смысл есть.
Но самый неприятный момент оказался в том что каждый робот на почти целых 50% коррелирует со средним от вклада всех других роботов.
Вот это засада, я ожидал цифры в 30-40%, получается что толку от такой диверсификации довольно мало.
Ок, всё-таки роботы довольно фиговые, и сильно коррелированы, долго объяснять почему так, если вкратце то — фиговый подход к оптимизации. 

Ок, смотрим другие картинки.
показываю как посчитал корреляцию между своими 24 роботами в excel, картинки, выводы по итогам 
Самый неудачный месяц на истории -6884 руб,
а в среднем на этих 24 роботах*1контракт в месяц был профит 18-20тр.
остальные цифры на скрине. 

Как вы уже догадались, имея макросы и эксель можно сделать много что полезного, но думаю что мало кто догадается что я буду делать дальше. to be continued…  ))
★20
21 комментарий
класс
avatar
vito333, а вы не Вито с тслабфорума который наделал кучу классных индикаторов? Как успехи?
avatar
Artemunak, работаем помаленьку )
avatar
vito333, 1.так вы тот самый Вито?
2. Это не ваша статья smart-lab.ru/blog/221458.php?
avatar
1. тот
2. не наша
avatar
vito333, ок, тогда спасибо за индикаторы, плюс в профиль.
Жалко что не пишите статьи, думаю много что интересного могли бы написать. И ещё всё-таки хотелось бы индюк с реальной позицией )
avatar
Дальше расколбас, перекрутка оптимизации, слив...

:)
ladomirov, могу вас порадовать, всё это уже было отчасти и написано в блоге
avatar
ladomirov, а почему так?
avatar
ПBМ, это всегда так — что бы человек выработал свой максимально простой подход, ему сперва надо наворотить всякой х… а потом разгрести :)

«Сложности» нужны на этапе становления трейдуна — рано или поздно приходишь к пониманию что эффективность это то, что просто, один индикатор, пустой график с объёмами — и нефиг усложнять:)
Очень и очень толковый пост про мой любимый EXCEL :)
Дальше я бы смотрел какие роботы лишние, какие работают наименее коррелировано, оптимизация доли капитала на каждый и тп… Ну вообще для фантазии дальше простор поистине российского масштаба :)
Держите в курсе!!!
avatar
я вот обнаружил что трендовые роботы даже на разных валютных парах чудовищно скоррелированы
а кроме валютных фьючерсов на нашей родной московской бирже и торговать-то нечем.
в золоте тоска, в серебре гэпчики..RIшка — тоже считай валютыный дериватив.
avatar
А из 24-х роботов одного нельзя что-ли слепить? Зачем вы их разделяете, трендовые — не трендовые, в чем фича не могу понять
avatar
Максим Дмитриевский, об этом напишу в следующей части, через недельку наверно
avatar
может не суммарный доход а просто доход? а не понятно чем это тогда отличается от эквити.
avatar
Mr. Bean, в эквити суммарный доход за всё время. А на скрине суммарный за 5 последних дней (синий). И за 22 (оранж). Остальные цифры под графиком и на других скринах, для ориентации.
avatar
Большое спасибо! (жаль плюсануть пока не могу) Скажи пожалуйста, а такой макрос только с помощью VBA можно написать или все же можно справится обычным способом?
avatar
теоретически наверно можно и через формулы, но у меня бы это намного больше времени заняло бы. А вообще vba классная вещь, легок в освоении. С небольшим опытом такой макрос за час-два можно сделать. В макросе всего 3 цикла, десяток сравнений и копирование, возможно позже про эксель и макросы напишу ещё.
avatar
Artemunak, посоветуйте книгу/курс для изучения VBA с нуля.
avatar
Если хочется оценить риск портфеля стратегий, то куда правильней просто построить суммарный эквити всех стратегий и посмотреть максимальную просадку.
Парная линейная корреляция это «от бедности», если ничего сложнее применить не можем. Пролетала тут на форуме наукообразная лекция про то, что парная корреляция это мало для оценки, нужны характеристики более сложных корреляций для N инструментов. Иначе модель теряет важную информацию.
ПыСы: А если этого мало, можно еще и бутстрапом статистику просадки помоделировать. Но это уже будет тоже шаманство.
avatar
кому понравилась статья — уже написал следующую, где и показывается для чего всё затевалось, а корреляция была лишь как попутный бонус.
avatar

теги блога Artemunak

....все тэги



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