Блог им. Snaiper

как построить корреляционную матрицу (для парной торговли)

Для эффективной парной торговли очень важно знать коэффициенты корреляции между инструментами.

Сегодня мы по пунктам разберем, как построить корреляционную матрицу в экселе за 5 минут.

Пример корреляционной матрицы:

как построить корреляционную матрицу (для парной торговли)

Алгоритм построения:
1. Скачиваем исторические дневные данные (минимум за 1 год). я пользуюсь сайтом финама (раздел экспорт данных) http://www.finam.ru/profile/moex-akcii/gazprom/export/

2. Вставляем все скаченные данные в эксель

как построить корреляционную матрицу (для парной торговли)

3. Находим разность между (динамику изменения котировок день/день

как построить корреляционную матрицу (для парной торговли)

4. Настраиваем в экселе Data Analysis (Файл-параметры-надстройки-перейти-выделяем галочкой все пункты). далее во вкладке данные у нас появляется функция Data Analysis

5.Далее выделяем все колонки с разностью и нажимаем на кнопку Data Analysis

как построить корреляционную матрицу (для парной торговли)

6. Следующим пунктом выбираем Correlation

как построить корреляционную матрицу (для парной торговли)

7. И в итоге у нас получается вот такая корреляционная матрица

как построить корреляционную матрицу (для парной торговли)

если будут вопросы, пишите их в комментариях
★104
56 комментариев
Как связан тайм-фрейм для взятия разностей при расчете корреляцонной функции с таймфреймом для парной торговли.
avatar
SergeyJu, советую брать тайм-фрейм 1D. Т.к корреляция будет более точной и менее динамичной
avatar
Sna777, Вы не поняли вопрос. Я спросил связи двух разных тайм-фреймов.
avatar
Sna777, на 2 скрине вы какие данные вставляете? По опену, клозу?
avatar
IliaM, по close 
avatar
Берете просто разницу цен  или логарифм разницы?
avatar
Andy_Z, берем только разницу не логарифмируем, т.к массив данных не большой
avatar
фигня это все… все эти парные трейдинги и т.д. в момент перекрутки сидят парные торговцы и репу чешут… видел уже таких. порно-трейдеров. Единственный нормальный парный трейдинг это схождения дериватива и базы, но чтобы там заработать нужен кэрри-трейд. Если нет очень больших дешевых денег то ловить нечего.
avatar
Pobeditel, если у вас не получилось то это не значит что парный трейдинг плох. 
avatar
Sna777, я даже торговать его не стал пробовать после тестов. Тесты я делаю годочков так за пять минимум. Понимаете любая корреляция должна быть крайне жесткой и очень важно понимать пике расхождений. Т.е. сценарий который может стать для вас неожиданным. Если вы это не закладываете… то будете сидеть и тупить… еще раз я такое уже видел. Вот когда года за три торгуя корреляции на реальных деньгах- вы заработаете показывайте график своей Эквити по стратегии и уже сверху демонстрируйте то что вы вон как умеете и на чем основано умение. 
avatar
Pobeditel, 6-ой год торгуем, результат устраивает. что касается ваших тестов, то там скорее всего у вас не учтены динамические параметры изменения спреда.
avatar
Pobeditel, то есть корреляцию надо смотреть в динамике, объединяя ТФ в макрофреймы, или просто плавающим окном в 1 год прогнать по пятилетке?
avatar
 
avatar
Sna777, отдельное спасибо за финальный рисунок =) а то у меня с фантазией и со вкусом слабовато. можно ещё формулы?
avatar
есть, какие именно формулы вам прислать?
avatar
Sna777, не по корреляции, а по которым спред считаете, если это не коммерческая тайна конечно. хотелось бы тоже к парному трейдингу приобщиться. в интернете столько версий, но лажа какая-то получается, если брать разницу или отношение между ценой лукойла и Роснефти и т.д.
avatar
есть, постараюсь в следующих постах осветить этот вопрос. 
avatar
Sna777, отлично, спасибо! буду ждать. а то прочел пару книг на буржуинском по парному трейдингу, лажа какая-то, проверял полученные знания в экселе на наших бумагах. много темных пятен. не клеится как-то. пару раз так вообще надо сидеть в глубоких просадках по обеим бумагам из пары. хотелось бы пример или разбор от практикующего специалиста.
avatar
бесплатный совет на мильон рублей:
если вы строите корреляции на данных daily close T0/T-1 (не важно при этом какой глубины сам ряд данных), ваши сетапы должны реализовываться в течение daily!
потому что на глубине daily close T0/Т-7 или любой другой корреляции уже совсем другие! а многие считают T0/T-1, а потом начинают высиживать в позе инвестора неделями, повторяя мантру «они сойдутся, корреляция же-ж!!!»
avatar
Jonah, полезный нюанс, спасибо! а можно по подробней.
avatar
есть, если по методике автора, то в п. 3 3. «Находим разность между (динамику изменения котировок день/день) — изменить глубину, и каждый день считать сегодня — n дней назад.
avatar
Jonah, т.е. считать отношение = цена.сегодня / цена.N.дней.назад вместо цена.сегодня / цена.вчера?
avatar
есть, да, по крайне мере сравнить разные N стоит
avatar
Jonah, интересно, спасибо. посмотрю ещё посты автора по этой теме. подумаю над Вашим предложением, так же посмотрю ещё различные средние.
avatar
Jonah, вот опять я сначала написал http://smart-lab.ru/blog/313956.php#comment5354423
потом прочитал ваш коммент. 
avatar
Jonah, высокий уровень корреляции не гарантирует схождения спреда, да он если честно то в парном трединге не особо важен, самое главное большое кол-во реверсивных движений. 
avatar

Jonah, так а если они не реализуются в течении дейли?

Пробовали считать и торговать корреляцию daily close T0/Т-7 ?

avatar
Nepall, мой комментарий в том, что на каком периоде считаем, на таком и торгуем, историческая корреляция T0/T-1 не обязана сохраниться в будущем и тем более воспроизводиться на другом тайм-фрейме; если не реализовалась — выход по тайм-фрейму
avatar
Jonah, причем я думаю тут большой ньанс будет как считать корреляцию, если втупую семь дней, то во первых это больше недели т.к. у нас только 5 торговых дней, а во вторых будет как бы сквозное окно, может имеет смысл считать разницу понедельник -пятница?
avatar
Nepall, можно не заморачиваться, считаем только торговые дни
avatar
Помогите с экспортом котировок. У меня цена при любых настройках скачивания разделяется точкой, а не запятой. Может кто знает решение проблемы?
Максим Бондаренко, выделяйте все столбцы, нажимайте Ctrl+F, выбирайте вкладку заменить, далее точку меняете на запятую

avatar
Sna777, спасибо большое, не догадался я что-то
Максим Бондаренко, как вариант — заменить символ в скаченном файле или заменить разделитель в своей системе
avatar
Максим Бондаренко, в языковых настройках виндоус поменяй разделитель целой и дробной части с, на .
тогда все будет работать без ручной замены знака.
Sna777, Расскажите пожалуйста про способы торговли этого самого спреда. Читал, что вычитают из него скользящую и торгуют потом эту разность методом ступенчатого усреднения против тренда…
avatar
wyg, это как один из методов, более детально методы торговли буду рассказывать в последующих статьях. а пока можете посмотреть тесты некоторых пар на истории http://smart-lab.ru/blog/310800.php
avatar
в R это сделать гораздо проще )
avatar
Для Итоговой корреляционной матрицы оформление (заливка, наименование столбцов и строк) редактировалось вручную?
Александр Иванов, да
avatar
Sna777, я не совсем понял, зачем 1 столбец, там где просто порядковый номер указан. Он же вроде больше ни где не фигурирует.
На UT есть раздел про парный трейдинг — статьи,, формулы и даже программа для парного трейдинга
avatar
Igor Ku4in, что такое UT?
Александр Иванов, United trader utmagazine.ru
avatar
Igor Ku4in, спасибо за рекламу 
avatar
Sna777, не нужно ли для начала взять коефициенты  внутри каждой пары, тоесть сколько акций одной и другой бумаги берется для того что бы создать спред, а уже потому считать матрицу корреляции?
avatar
SL, странный у вас подход. Коэффициенты никак не влияют на корреляции. Газ и газ*3 будут иметь одинаковую корреляцию по отношению к рассчитываему инструменту.
avatar
а где логарифмирование? 
продолжение банкета будет? 
хотелось бы статью про фильтры спреда. 
avatar
Ivor, хорошо, в скором времени опубликую. 
avatar
Sna777, Спасибо. Буду ждать! 
avatar
Ivor, продолжение публикаций по парному трейдингу http://smart-lab.ru/blog/314395.php
avatar
IliaM, необходимо приводить данные к общей дате. если у вас каких то данных не хватает, излишнюю информацию просто удаляете. 
avatar

теги блога Не тинькофф

....все тэги



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