Парный арбитраж # 1 Корреляция.

Парный арбитраж # 1 Корреляция.

Сегодня поговорим о корреляции в контексте алготрейдинга.

Зачем это нужно? Как посчитать? Возможные применения в алготрейдинге?

О корреляции в алготрейдинге

Рис. 1. Интерфейс для парного трейдинга в OsEngine.

 

1. Что такое корреляция?

Корреляция в трейдинге – числовая мера взаимосвязи между различными активами и индексами. Насколько два актива движутся синхронно.

Числовое значение корреляции бывает от + 1 до – 1, что очень удобно для расчётов и использования данного показателя во время торговли.

  1. +1 означает очень высокую синхронизированность активов. Высокую корреляцию. Свечи буквально ходят одна за другой без отклонений.
  2. -1 означает отрицательную корреляцию. Это значит, что активы ходят в разные стороны.
  3. Всё, что между этими значениями нужно как-то в коде будет интерпретировать. Не всегда очевидным образом. Но про это мы тоже поговорим.

 

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

  1. Потому что, он очень сильно влияет на итоговую прибыльность роботов для парного и иных видов арбитражей, в которых сравниваются два актива (или актив к индексу).
  2. Изменение корреляции в динамике может само по себе давать отличные точки входа. Можно даже особо на графики инструментов не смотреть. Пример:

О корреляции в алготрейдинге

3. Как посчитать корреляцию?

Поскольку этот пост будут читать следующие лет 5, мы просто обязаны привести здесь формулы для математиков. Но это не означает, что надо в этом разбираться и пугаться) Не пугайтесь! Всё гораздо проще!

Обычно предлагается делать так:

О корреляции в алготрейдинге

Или так:

О корреляции в алготрейдинге

Естественно делать так не надо. Всё уже написано до нас очень давно. Даже мы с этим разбираться не стали. Ну а Вам уж точно не нужно.

Нужно использовать стандартные средства расчёта корреляции между двумя рядами, встроенными в среду, в которой вы делаете роботов.

В рамках OsEngine у нас есть слой создания роботов для торговли пар.

Также продвинутые товарищи могут пользоваться классом CorrelationBuilder:

О корреляции в алготрейдинге

Который предоставляет нам методы для расчёта корреляции:


О корреляции в алготрейдинге

  1. ReloadCorrelation – на вход подаём:

свечи 1

свечи 2

длину расчёта,

получаем массив значений PairIndicatorValue.

  1. ReloadCorrelationLast – всё то же самое, только на выходе одно значение по последним свечкам.

 

4. Итого

На данный момент надо понимать:

  1. Корреляция очень важна, когда вы торгуете парный арбитраж или актив к индексу.
  2. Штука эта генерирует торговые сигналы сама по себе и может служить фильтром для входа. Ибо сильно низкая корреляция в моменте может говорить о том, что не стоит торговать в данный момент на схождение.
  3. Рассчитать можно в любом языке стандартными способами, бросив в какой-то класс массив свечей или массив типа double. Формулы зубрить не нужно. Концентрируйтесь на торговой логике. В OsEngine вообще всё за Вас уже сделано, и в слое торговли пар Вы всегда будете иметь под рукой актуальные данные по корреляции.

OsEngine: https://github.com/AlexWan/OsEngine

Если что-то не получилось, или остались вопросы, пишите в чат поддержки, ссылка:

https://t.me/osengine_official_support

18:38
796
Seo

Комментарии

Нет комментариев. Ваш будет первым!