Индекс COT: формула и 5 ошибок интерпретации
Индекс COT показывает, где текущая чистая позиция находится между своим минимумом и максимумом за выбранное окно. Значение 100 означает верхнюю границу диапазона, а не вероятность роста цены в 100 процентов.
Формула индекса COT
Сначала выберите группу участников и рассчитайте её чистую позицию: net = long − short. Затем найдите минимум и максимум net в выбранном историческом окне. Индекс равен 100 × (текущий net − минимум net) / (максимум net − минимум net). В MOEX COT окно включает текущее наблюдение. При неполном окне или равенстве минимума и максимума результат отсутствует.
Это нормировка относительно собственной истории. Она переводит контракты в шкалу от 0 до 100 и помогает сопоставлять периоды одного ряда. При этом индекс не измеряет долю юрлиц среди всех участников, процент покупателей или вероятность будущего движения. Для понимания результата полезно держать рядом исходную net-позицию: одинаковое значение индекса может соответствовать разным абсолютным размерам обязательств.
Учебный пример расчёта
Пусть минимум net в окне равен −20 000 контрактов, максимум — +30 000, а текущая позиция — +10 000. Диапазон составляет 50 000, расстояние от минимума до текущего значения — 30 000. Индекс COT равен 100 × 30 000 / 50 000 = 60. Это означает положение на 60 процентах пути от нижней до верхней границы наблюдаемого диапазона.
Для проверки расчёта подставьте крайние значения. При net = −20 000 числитель равен нулю, значит индекс равен 0. При net = +30 000 числитель равен диапазону, значит индекс равен 100. Середина диапазона в этом примере равна +5 000, а не нулю контрактов. Поэтому индекс 50 не означает баланс long и short и не делает net нейтральным.
Почему COT=100 бывает при отрицательном net
Возьмём другое окно: минимум −80 000, максимум −20 000, текущий net тоже −20 000. Индекс равен 100, потому что позиция достигла максимума внутри этого окна. Но net всё ещё отрицателен: коротких контрактов у выбранной группы больше, чем длинных. Фраза «COT=100, значит юрлица в нетто-лонге» здесь была бы ошибкой.
Значение 0 устроено симметрично. Если весь диапазон положительный, индекс может равняться нулю при положительной чистой позиции. Таким образом, знак net отвечает на вопрос о превышении long над short, а индекс — о положении net в его диапазоне. Эти два вопроса нужно задавать отдельно. Это особенно важно при сравнении инструментов, у которых историческое позиционирование имеет разное смещение.
Какие окна использует MOEX COT
В сервисе COT-26 рассчитывается по 130 наблюдениям, а COT-52 — по 260. Названия соответствуют приближению 26 и 52 недель по пять торговых дней. Это фиксированное число строк, а не календарное вычитание полугода или года. Праздники, пропуски и глубина истории влияют на календарную длину фактически охваченного периода.
Короткое окно быстрее реагирует на изменение локального диапазона. Длинное добавляет контекст более продолжительной истории. Например, текущая позиция может быть максимумом за 130 наблюдений, но находиться лишь в середине диапазона за 260. Это не конфликт показателей: они отвечают на вопросы о разных окнах. Нельзя выбирать удобное окно задним числом и представлять результат как заранее известное преимущество.
Что показывает индекс движения
Индекс движения в MOEX COT равен текущему COT-26 минус его значение 30 наблюдений назад. Если было 25, а стало 70, движение равно +45 пунктам индекса. Это разница на шкале COT, а не увеличение контрактов на 45 процентов. Уровни +40 и −40 используются как ориентиры в методике, но сами по себе не гарантируют разворот цены.
На индекс влияет не только текущий net, но и границы скользящего окна. Когда старый экстремум выходит из расчёта, минимум или максимум меняется. Поэтому COT способен сдвинуться даже без изменения текущей чистой позиции относительно предыдущего наблюдения. При необычном движении полезно проверить три ряда: net, минимум окна и максимум окна. Это объясняет механический эффект, который легко принять за действия участников.
Пять ошибок при чтении индекса
- Считать 100 вероятностью роста. Шкала описывает историю позиции, а не распределение будущих исходов. Для вероятности нужна отдельная проверенная модель.
- Путать максимум с положительным net. Максимальное значение отрицательного ряда остаётся отрицательным. Смотрите исходные контракты рядом с индексом.
- Покупать при каждом экстремуме. Индекс может долго удерживаться у границы. Он не задаёт точку выхода и допустимый убыток.
- Игнорировать окно. Значения за 130 и 260 наблюдений относятся к разным диапазонам. Сравнивайте одинаковые настройки или явно отмечайте различия.
- Превращать отсутствие значения в ноль. Неполная история не равна минимуму позиции. Подстановка нуля создаёт ложный экстремум и искажает производные расчёты.
Как использовать индекс в анализе
Начните с состава long и short и убедитесь, что выбранная группа определена одинаково на всём отрезке. Посмотрите абсолютный net и его изменение. После этого оцените COT-26 и COT-52, добавьте индекс движения, цену и открытый интерес. Формулируйте наблюдение так, чтобы его можно было проверить по числам: например, «net остаётся отрицательным, но находится у верхней границы полугодового окна».
Если проверяете торговое правило на истории, используйте только доступные на момент решения данные. Учитывайте время публикации, цену исполнения и издержки. Отдельно проверяйте правила, использующие всю загруженную историю: появление новых экстремумов может менять глобальную нормировку. Результат визуального просмотра графика не заменяет тест вне выборки. Текущая статья описывает индексы; отдельные маркеры сигналов имеют собственные правила, изложенные в методике.
Пример изменения границ окна
Пусть вчера минимум net в окне был −100, максимум +100, а текущая позиция равнялась нулю. Индекс был 50. Сегодня старое наблюдение −100 вышло из окна, новый минимум стал −50, максимум остался +100, а текущий net снова равен нулю. Теперь индекс равен 100 × 50 / 150, то есть примерно 33,3. Позиция не изменилась между двумя датами, но её положение в обновившемся диапазоне стало другим.
Этот пример не является ошибкой формулы. Скользящее окно намеренно забывает старые значения. Поэтому интерпретация изменения COT должна учитывать изменение границ. При фиксированных границах рост индекса означает рост net; при изменяющихся границах такого простого соответствия уже недостаточно. Для объяснения скачка сначала посмотрите исходный ряд и даты выхода старых экстремумов.
При публикации разбора полезно указать инструмент, группу, размер окна, дату данных и абсолютный net. Тогда другой читатель сможет воспроизвести результат. Если в примере округляете индекс, сохраняйте точность исходных контрактов до последнего шага: иначе рядом с границей могут возникнуть искусственные различия. Само число десятичных знаков не повышает предсказательную силу показателя.
Частые вопросы
Индекс COT — официальный показатель Мосбиржи?
Исходные позиции публикует биржа, а описанный индекс рассчитывает MOEX COT. Это производный показатель по выбранной формуле. Его нельзя представлять как официальный прогноз биржи или отчёт CFTC по российскому рынку.
Что означает COT=50?
Текущий net находится посередине между минимумом и максимумом окна. Из этого не следует равенство длинных и коротких контрактов: для равенства net должен быть нулевым, что зависит от исходного диапазона.
Можно ли рассчитать индекс для нового фьючерса?
Только при достаточной истории. Для COT-26 нужны 130 наблюдений, для COT-52 — 260. До этого пустое значение корректнее любого искусственно достроенного числа. Выбранный размер окна и пробелы в данных нужно учитывать при сравнении инструментов.
Источники и проверка расчётов
- Методика MOEX COT: формулы и ограничения
- Московская биржа: первичные данные позиций
- CFTC: что такое отчёты COT
Описание расчётов сервиса сверено с его реализацией на дату обновления статьи. Материал носит образовательный характер и не является индивидуальной инвестиционной рекомендацией.