Что показывает индикатор корреляции: шкала от -1 до +1
Главное
коэффициент говорит, насколько согласованно два ряда отклонялись от своих средних в выбранном окне. Знак показывает направление связи, модуль её тесноту.
Индикатор корреляции TradingView рисуется отдельной линией под графиком и всегда живёт в границах от -1 до +1. По справке TradingView расчёт идёт по формуле Пирсона: ковариация двух рядов делится на корень из произведения их дисперсий. Проще говоря, для каждого бара смотрят, выше или ниже своего среднего оказались оба инструмента, и насколько.
Если в большинстве баров оба ряда отклоняются в одну сторону, произведения отклонений положительные и коэффициент уходит к +1. Если в разные, он уходит к -1. Когда совпадения и расхождения примерно гасят друг друга, получается число возле нуля.
| Значение | Что было в окне | Чего это не значит |
|---|---|---|
| Близко к +1 | Ряды отклонялись от средних почти синхронно | Что завтра они снова пойдут вместе |
| Возле нуля | Линейной связи почти нет | Что связи нет вообще: нелинейную Пирсон не видит |
| Около -1 | Ряды двигались зеркально | Что один актив страхует другой при любом рынке |
Чтобы шкала не была абстрактной, я посчитал коэффициент по дневным свечам Binance за весь 2025 год. Сравнивал дневные изменения цены, их ещё называют доходностями. У пары BTCUSDT и ETHUSDT вышло 0,82, у пары BTCUSDT и PAXGUSDT, токена с ценой, привязанной к золоту, всего 0,07.
-1: зеркальное движение
+1: синхронное движение
- 1.BTC и PAXG: 0,07
- 2.BTC и ETH: 0,82
Коэффициент 0,82 не переводится в «82% дней в одну сторону»: он мерит линейную связь, долю совпавших знаков считают отдельно. И оба числа описывают только прошлый год.
Как добавить Correlation Coefficient на график и выбрать второй тикер?
Главное
индикатор ищут по названию в окне индикаторов, второй инструмент задают в поле Symbol, период в поле Length. По умолчанию стоят цена закрытия и 20 баров.
Индикатор корреляции в TradingView ставится за минуту. Открой график первого инструмента и нажми «Индикаторы» на верхней панели. В поиске набери Correlation Coefficient и выбери встроенный вариант, у него короткое имя CC. Под графиком появится панель с линией.
Дальше открой настройки индикатора. В справке TradingView три входных параметра: Symbol, Source и Length (в русской справке Инструмент, Данные и Длина). Symbol это второй инструмент, с которым сравнивается график. Source задаёт, какое значение бара брать, по умолчанию Close. Length это число баров в окне, по умолчанию 20.
- 1
Найти Correlation Coefficient в индикаторах
Встроенный индикатор, отдельная панель под графиком
- 2
Выбрать второй тикер в поле Symbol
Тот же тип рынка и площадка, что у основного графика
- 3
Проверить Source и Length
По умолчанию цена закрытия и 20 баров
- 4
Читать значение на закрытом баре
Записать дату бара, таймфрейм и период рядом с числом
Второй тикер выбирай с площадкой и видом рынка. BINANCE:ETHUSDT и фьючерсный контракт на эфир дают разные ряды, и корреляция с ними получится разной. Если нужен сам график второго инструмента, а не число, в TradingView есть кнопка сравнения символов: шкала переходит в проценты, и расхождения видно глазами.
Отдельно проверь расписание торгов. Данные второго символа индикатор подтягивает через механизм, описанный в документации Pine о данных других символов, и берёт их только на барах текущего графика. Если на графике акция, а вторым идёт круглосуточный рынок, выходные второго инструмента в окно не попадут. Подробнее о том, как скрипт получает чужие данные, есть в разборе request.security в Pine Script.
Период расчёта: почему окно меняет ответ индикатора
Главное
короткое окно быстро реагирует и мечется по всей шкале, длинное сглаживает и отстаёт. На паре BTC и PAXG окно в 20 дней по ценам закрытия в 2025 году успело побывать и у -0,90, и у +0,86.
В индикаторе корреляции TradingView поле Length отвечает на вопрос «за какой отрезок мерить связь». При 20 барах на дневном графике это около трёх недель круглосуточного рынка, на часовом меньше суток. Одно и то же число в поле на разных таймфреймах охватывает разную историю.
Я прогнал скользящий коэффициент по дневкам BTCUSDT и PAXGUSDT за 2025 год с окнами 20, 50 и 100 и записал минимум и максимум. Годовой коэффициент у этой пары почти нулевой, а внутри года картина совсем другая.
Окно 20 дней
Цены: от -0,90 до +0,86
Доходности: от -0,50 до +0,73
Окно 50 дней
Цены: от -0,68 до +0,65
Доходности: от -0,30 до +0,37
Окно 100 дней
Цены: от -0,75 до +0,70
Доходности: от -0,22 до +0,25
Весь 2025 год
Цены: 0,10
Доходности: 0,07
С окном 20 по ценам линия индикатора за год прошла почти всю шкалу. Кто смотрел на неё в удачный месяц, увидел бы «сильную прямую связь», кто в другой, «сильную обратную». По доходностям разброс уже, но и там 20 дней дали отрезки от -0,50 до +0,73.
У пары BTCUSDT и ETHUSDT окно тоже важно, хотя связь там плотнее. По доходностям окно 20 давало от 0,08 до 0,97, окно 100 держалось между 0,67 и 0,90.
Универсального периода нет. Я бы брал окно, которое совпадает с горизонтом решения: держишь позиции неделями, смотри 50-100 дневных баров, торгуешь внутри дня, смотри часовой график. И проверяй, не прыгает ли ответ при соседних значениях Length, скажем 30 и 40 вместо 35.
Корреляция цен и корреляция доходностей: в чём разница?
Главное
цены описывают уровни, доходности изменения. Два ряда с трендом легко показывают высокую ценовую корреляцию без всякой связи между ежедневными движениями.
Встроенный индикатор корреляции по справке TradingView считает по ценам закрытия. Для вопроса «насколько похожи прошлые цены» это нормально. А чтобы понять, сложится ли риск двух позиций, нужны изменения, потому что деньги на счёте меняются вместе с изменениями, а не с уровнем цены.
Проблему бессмысленной корреляции между временными рядами описал ещё Джордж Юл в статье 1926 года в Journal of the Royal Statistical Society. В 1974 году Клайв Грейнджер и Пол Ньюболд разобрали ложные регрессии в эконометрике, а Питер Филлипс в 1986 году показал: для независимых случайных блужданий обычные тесты значимости с ростом выборки расходятся.
Это легко проверить самому. Я сгенерировал 2000 пар независимых случайных рядов по 250 шагов, их связь по построению нулевая. По уровням рядов коэффициент по модулю превысил 0,5 в 39,5% пар, медиана модуля 0,41. Если брать шаги, то есть аналог доходностей, таких пар не нашлось ни одной, медиана 0,04.
На живых данных бывает и наоборот. У пары BTCUSDT и PAXGUSDT с окном 100 дней ценовой и доходностный коэффициенты на одном и том же баре имели разный знак в 84% случаев. У BTCUSDT и ETHUSDT с окном 20 ценовой коэффициент однажды упал до -0,21, хотя по доходностям с тем же окном минимум за год был 0,08. Цены могут и завысить связь, и занизить.
Индикатор корреляции доходностей в TradingView можно собрать своим скриптом. Вот минимальный вариант на Pine, если с языком Pine Script ты уже знаком:
//@version=6
indicator("Корреляция доходностей", precision = 3)
sym = input.symbol("BINANCE:ETHUSDT", "Второй тикер")
len = input.int(20, "Период", minval = 2)
r1 = close / close[1] - 1
r2 = request.security(sym, timeframe.period, close / close[1] - 1)
plot(ta.correlation(r1, r2, len), "r")
hline(0)Скрипт вставляется через редактор Pine. Подпиши его на графике, чтобы потом не спутать со встроенным CC.
Как пересчитать корреляцию Пирсона вручную и сверить с терминалом?
Главное
выпиши закрытия, посчитай изменения и их отклонения от среднего, затем раздели сумму произведений на корень из произведения сумм квадратов. На пяти последних днях 2025 года у BTC и ETH вышло 0,946.
Возьмём шесть дневных свечей Binance с 26 по 31 декабря 2025 года, дата по открытию свечи в UTC. Из шести закрытий получается пять дневных изменений.
| Дата | Закрытие BTCUSDT | Закрытие ETHUSDT | Изменение BTC, % | Изменение ETH, % | Произведение отклонений |
|---|---|---|---|---|---|
| 26.12 | 87 369,56 | 2 927,99 | - | - | - |
| 27.12 | 87 877,01 | 2 949,05 | 0,58 | 0,72 | 0,2161 |
| 28.12 | 87 952,71 | 2 950,91 | 0,09 | 0,06 | -0,0052 |
| 29.12 | 87 237,13 | 2 937,90 | -0,81 | -0,44 | 0,6480 |
| 30.12 | 88 485,49 | 2 973,69 | 1,43 | 1,22 | 1,2558 |
| 31.12 | 87 648,22 | 2 971,64 | -0,95 | -0,07 | 0,3746 |
Среднее изменение BTC за пять дней 0,068%, ETH 0,298%. Из каждого изменения вычитаем среднее своего ряда, например для 27 декабря это 0,58 - 0,068 = 0,512 и 0,72 - 0,298 = 0,422. Их произведение 0,2161 стоит в последней колонке.
Сумма произведений 2,4892 (если сложить округлённые числа из колонки, выйдет 2,4893). Квадраты отклонений в сумме дают у BTC 3,9249, у ETH 1,7649. Итог: 2,4892 / √(3,9249 × 1,7649) = 2,4892 / 2,6319 = 0,946.
- 1
Выписать закрытия двух тикеров на одних датах
Тот же таймфрейм, только закрытые бары, без пропусков
- 2
Посчитать доходности и отклонения от среднего
Изменение к прошлому закрытию минус среднее по окну
- 3
Сложить произведения отклонений и квадраты
r = сумма произведений / корень из произведения сумм квадратов
- 4
Сравнить с индикатором на той же дате
Цены сверять с CC, доходности со своим скриптом
Теперь сверка. Встроенный индикатор корреляции TradingView считает по ценам, поэтому сравнивать с ним надо коэффициент по самим закрытиям. По этим же шести ценам он равен 0,728, заметно ниже 0,946 по изменениям. На графике BINANCE:BTCUSDT со вторым тикером BINANCE:ETHUSDT, дневным таймфреймом и Length 6 на свече 31 декабря ищи это значение, около 0,73. С Length 5 в Pine-скрипте корреляции доходностей ищи 0,947: скрипт берёт неокруглённые изменения, а в таблице они округлены до сотых процента, отсюда разница в тысячную.
Если числа не сошлись, проверь по порядку: тот ли поставщик свечей, то ли время закрытия дня, не попал ли в окно текущий незакрытый бар. Как отличить перерисовку от пересчёта живой свечи, разобрано отдельно. В таблице Excel ту же проверку делает функция CORREL, в русской версии КОРРЕЛ. Пяти строк хватает для сверки арифметики, но для выводов о рынке это слишком мало.
Риски и ограничения
Главное
коэффициент описывает прошлое окно и одну форму связи. Он не прогнозирует движение, не показывает причину и может резко измениться, когда рынок меняет режим.
Корреляция считается задним числом. Значение на последнем баре говорит, как ряды вели себя в прошедшем окне, и ничего не обещает про следующий бар. Резкое событие у одного из активов ломает связь за день, а индикатор отразит это только постепенно, по мере того как новые бары вытеснят старые из окна.
Высокая корреляция не делает сделку безопасной. Низкая тоже не защищает от убытка. Разный размах движения двух инструментов коэффициент не показывает: у пары с r = 0,9 одна позиция может колебаться вдвое сильнее другой. Эту разницу отдельно измеряет волатильность.
Торговля связана с риском потери денег, прошлые результаты не гарантируют будущих. Все замеры в статье сделаны на одном поставщике и одном годе. Материал носит образовательный характер и не является индивидуальной инвестиционной рекомендацией.
Разберите инструмент на практике вместе с Midas
В экосистеме Midas есть пошаговые инструкции, обучение техническому анализу и поддержка сообщества — от первого запуска до разбора собственной торговой логики.
- пошаговые инструкции по продукту
- структурированное обучение теханализу
- чат с командой и участниками клуба
Практическое применение: диверсификация позиций и риск набора
Главное
две позиции с корреляцией около +0,9 почти не снижают общий риск. Разнести риск помогает связь около нуля, но только пока она держится.
Главная польза индикатора в управлении набором позиций. Если ты открыл сделки по трём инструментам, которые годами ходят вместе, это ближе к одной большой ставке, чем к трём разным. В разборах вопросов трейдеров у нас в Midas это звучит так: Nasdaq и S&P 500 разумнее считать одной торговой идеей, а одинаковые позиции по нескольким металлам складывают риск.
Как сильно корреляция влияет на риск, видно по формуле дисперсии портфеля из двух активов. В онлайн-учебнике Уильяма Шарпа Macro-Investment Analysis на сайте Стэнфорда это показано на кривых: при корреляции 1,0 риск не снижается, только усредняется. Возьмём условный пример: две позиции равного размера, у каждой дневной разброс 4%.
| Корреляция | Дневной разброс пары позиций | Снижение разброса от второго актива |
|---|---|---|
| +1,0 | 4,00% | нет |
| +0,9 | 3,90% | около 2,5% |
| +0,5 | 3,46% | около 13% |
| 0 | 2,83% | около 29% |
Считается так: разброс пары = √(0,5² × 4² + 0,5² × 4² + 2 × 0,5 × 0,5 × r × 4 × 4). Числа условные и нужны только чтобы показать форму зависимости. При +0,9 вторая позиция почти ничего не разносит, при нуле общий разброс заметно ниже. Отсюда простая проверка, прежде чем добавлять позицию в набор: посмотреть корреляцию нового инструмента с тем, что уже открыто.
Подойдёт, если
- Находить позиции, которые по сути одна ставка
- Сравнивать связь до и после смены режима рынка
- Проверять, не собран ли набор из похожих активов
Не подойдёт, если
- Предсказывать направление следующей свечи
- Считать низкое значение защитой от общего падения
- Доказывать, что один актив двигает другой
Корреляция отвечает только за часть картины. Сколько терять на одной позиции, решается отдельно, об этом материал про риск на сделку. Как собрать правила на весь счёт, разобрано в статье про риск-менеджмент в трейдинге.
Ловушки: корреляция не причинность, трендовая синхронность и тонкие инструменты
Главное
у двух активов может быть общий драйвер, общий тренд или общая дыра в данных, а в кризис связь ещё и усиливается. В таких случаях индикатор показывает картину, на которую в торговле опираться нельзя.
Первая ловушка в причинности. Высокий коэффициент между двумя активами не говорит, что один двигает другой. Чаще у обоих общий фон: ставка, доллар, общий спрос на риск. Когда фон меняется, связь пропадает, и торговля «вслед за лидером» ломается.
Вторая ловушка трендовая синхронность, та самая ложная корреляция уровней, которую дают даже независимые случайные блуждания. Два растущих рынка на ценах дают высокую корреляцию, даже если по дням они живут каждый своей жизнью. Лечится переходом на доходности и сравнением нескольких окон.
Третья ловушка кризисная. Франсуа Лонжен и Бруно Сольник в работе 2001 года в Journal of Finance показали на международных фондовых рынках, что корреляция растёт на медвежьем рынке, а на бычьем так себя не ведёт. Диверсификация, посчитанная в спокойное время, может подвести ровно тогда, когда нужна.
Четвёртая ловушка в тонких инструментах. У неликвидного актива бывают бары без сделок и цена, стоящая на месте, а ряд без изменений делает коэффициент неопределённым. Разрывы и редкие крупные сделки дают выбросы, к которым Пирсон очень чувствителен: один такой бар в окне 20 способен перевернуть знак. Если в окне есть подозрительные свечи, проверь результат на соседних периодах.
Индикатор корреляции МТ5: отличия от TradingView
Главное
в стандартном наборе MetaTrader 5 индикатора корреляции нет. Его ставят из Кодбазы MQL5 или считают своим кодом через библиотечную функцию MathCorrelationPearson.
В справке MetaTrader 5 перечислено 38 встроенных технических индикаторов в четырёх группах: трендовые, осцилляторы, объёмы и индикаторы Билла Вильямса. Корреляции среди них нет. Поэтому запрос «индикатор корреляции мт5» обычно заканчивается пользовательским индикатором.
Первый путь это Кодбаза MQL5. Там есть бесплатные индикаторы корреляции, например Индикатор корреляции в Кодбазе, опубликованный в 2012 году. Кодбаза открывается прямо из терминала, скачанный индикатор появляется в Навигаторе. Перед использованием открой код и посмотри, по ценам или по изменениям он считает и как задаётся период. Как вообще проверять чужой код в терминале, есть в разборе про проверку чужого советника в MetaTrader.
Второй путь свой код. В стандартной библиотеке MQL5 есть функция MathCorrelationPearson, она считает коэффициент Пирсона для двух массивов. Рядом лежат коэффициенты Спирмена и Кендалла, они ранговые и меньше реагируют на выбросы.
| Что сравнить | TradingView, встроенный CC | MetaTrader 5 |
|---|---|---|
| Где взять | Встроенный индикатор | Кодбаза MQL5 или свой код |
| Что считает | Цены по Source, по умолчанию Close | Зависит от автора индикатора |
| Период | Length, по умолчанию 20 | Задаёт автор, проверять в коде |
| Котировки | Поставщик выбранного тикера | Сервер твоего брокера |
Даже при одинаковой формуле числа в двух терминалах разойдутся, если разные свечи. У брокера в MT5 свой поставщик котировок и своё время сервера, поэтому дневной бар может закрываться в другой час, чем на TradingView. Сверяй сначала закрытия, потом коэффициент, по той же схеме, что при ручном пересчёте коэффициента Пирсона.
Источники
- TradingView: Коэффициент корреляции (Correlation Coefficient) - формула, параметры Symbol, Source, Length и значения по умолчанию.
- TradingView: скрипты Correlation Coefficient - встроенный индикатор и пользовательские варианты.
- TradingView: данные других символов и таймфреймов в Pine - как request.security подтягивает второй тикер.
- TradingView: справочник Pine Script v6 - функции ta.correlation и request.security.
- MetaTrader 5: технические индикаторы - список встроенных индикаторов.
- MQL5: MathCorrelationPearson и Кодбаза MQL5: Индикатор корреляции - расчёт в MetaTrader 5.
- NIST: Dataplot, CORRELATION - формула и смысл коэффициента Пирсона.
- MIT OpenCourseWare 18.05: ковариация и корреляция - корреляция видит только линейную связь.
- Yule, 1926, Journal of the Royal Statistical Society - бессмысленные корреляции временных рядов.
- Granger, Newbold, 1974, Journal of Econometrics и Phillips, 1986 - ложные регрессии случайных блужданий.
- Longin, Solnik, 2001, Journal of Finance - рост корреляции на медвежьем рынке.
- Stanford, W. F. Sharpe: Portfolios of Two Assets - риск портфеля из двух активов.
- Binance: рыночные данные, klines - дневные свечи для замеров.
Частые вопросы
Какой период ставить в индикаторе корреляции?
По умолчанию индикатор корреляции в TradingView берёт 20 баров. Это рабочая отправная точка, но не лучший выбор для любой задачи. Подбирай окно под горизонт решения: для позиций на недели смотри 50-100 дневных баров, для внутридневной торговли часовой график. Сравни ответ при двух соседних периодах: если он сильно прыгает, связь в этом окне неустойчивая.
Корреляция 0,9 значит, что активы и завтра пойдут вместе?
Нет. Коэффициент описывает прошедшее окно и степень линейной связи в нём. Вероятность совпадения направления на следующем баре он не показывает. Связь может ослабнуть за несколько дней, особенно после события у одного из активов. Используй число как описание текущего набора позиций и пересматривай его по мере появления новых баров.
Почему индикатор корреляции не совпадает с моим расчётом в таблице?
Чаще всего причина в данных. Встроенный индикатор корреляции в TradingView считает по ценам закрытия, а в таблице обычно считают изменения цены. Ещё бывают разные поставщики свечей, разное время закрытия дня и незакрытый текущий бар в окне. Сначала сверь сами закрытия на тех же датах, потом тип ряда и период.
Можно ли сравнить акцию и криптовалюту в индикаторе корреляции?
Да, только расписания торгов разные. Индикатор берёт данные второго символа только на барах текущего графика, поэтому на графике акции выходные дни круглосуточного рынка в окно не попадут. Коэффициент получится по общим торговым дням. Учитывай это при выборе периода и не сравнивай такой результат напрямую с парой двух круглосуточных инструментов.
Отрицательная корреляция защищает от убытка?
Нет. Отрицательный коэффициент в прошлом окне значит только, что активы чаще расходились, и эта связь может смениться. Исследование Лонжена и Сольника по международным рынкам акций показало, что на медвежьем рынке корреляции растут. И у позиций может быть разный размах движения. Ограничивать потери помогают размер позиции и заранее определённый стоп-лосс, но и они убыток не исключают: при гэпе сделка может закрыться хуже уровня стопа.










Оставить комментарий