주마다 미국 재화 선물 거래 위원회는 세계 최대 시장 참여자가 통화 선물 시장에 어떻게 위치하는지 한 순간 사진을 공개합니다. 동부 시간으로 매주 금요일 오후 3시 30분에 발표되며 전날 화요일까지 데이터를 다루고있는 거래자의 약속 (COT) 보고서는 몇 안되는 창 중 하나입니다. 누가 다음 큰 움직임이 일어나기 전에 무엇을 어떤 방향으로 잡고 있는지
외환 거래자에게는 COT 데이터는 결정공이 아닙니다. 그것은 위치 지도입니다. 그리고 위치 지도는 올바르게 읽으면 급격한 반전, 지속적인 추세, 그리고 합의가 자신의 위험이 되는 순간이 종종 선행되는 조건을 보여줍니다.
당신 이 배울 것
- CFTC COT 보고서는 무엇이며, 어떻게 구성되어 있으며, 어떤 숫자가 중요합니까?
- 순차 비상업 포지셔닝을 감정 지표로 해석하는 방법
- 왜 극단적 위치가 FX 쌍의 잠재적 전환점을 신호합니까?
- FXMacroData API를 통해 COT 데이터에 액세스하고 분석하는 방법
- COT 신호와 거시적 기본 요소를 결합하는 실용적 틀
COT 보고서 의 해부학
CFTC는 선물 거래소에서 포지션 데이터를 수집하고 집계하고 COT 보고서의 세 가지 주요 버전을 발표합니다. FX 거래자에게 가장 중요한 것은 레거시 COT 보고서 (예래 전액), 포지션을 세 그룹으로 나누는
- 상업적 거래자 기업, 수입자, 수출자 및 다국적 기업들은 주로 환전하기 위해 통화 선물을 사용합니다. 그들의 지위는 방향에 대한 투기적인 견해보다는 비즈니스 수준의 환전 위험 관리를 반영합니다. 상업적 지점은 종종 상반되는 성격으로 가격이 상승함에 따라 단기 노출을 증가시키고 (앞으로 발생할 수 있는 채무를 보호하고) 가격이 떨어지면 감소합니다.
- 비상업 거래자 (큰 투기자) 헤지 펀드, 자산 관리자, 그리고 투기적 이윤을 위해 통화 선물 거래를 하는 CTA. 이 그룹은 FX 트레이더들이 가장 자세히 관찰한다. 비상업자들은 거시적 견해, 트렌드 신호, 그리고 금리 차이에 기초한 확신을 가지고 입장을 한다. 그들이 공격적으로 통화에 긴 또는 짧은 경우, 그것은 그들이 논문을 가지고 있기 때문이며, 그 논문이 붐비는 경우, 반전 위험이 증가한다.
- 신고되지 않는 포지션 (작은 투기자) 소규모 거래자 및 포지션이 CFTC 보고 기준 이하인 소규모 참가자. 이 그룹은 일반적으로 거시 FX 분석에 덜 중요합니다.
핵심 개념: 비상업적 순위
비상업적 순위 지위 = 비상공적 장기계약 − 비상사적 단위계약. 이 단수 는 대부분의 FX 거래자 들 이 주 가 주 가 추적 하는 것 이다. EUR 선물 에 대한 순위 긴 지위 의 상승 은 큰 투기자 들 은 유로 에 대한 상승적 인 노출 을 증가 시키고 있다는 의미 이다. JPY 선물 에 관한 지속적 인 순위 단위 는 헤지 펀드 커뮤니티 가 엔 에 대한 구조적 인 하향적 인 시각 을 가지고 있다는 의미.
왜 COT 데이터가 FX 트레이더에게 중요한가
통화 시장은 세계에서 가장 크고 유동적인 시장이지만 투명하지 않습니다. 1.1050에서 EUR/USD를 구매하거나 아시아에서 하루 중 JPY 선물을 단축하는 사람은 볼 수 없습니다. COT 보고서는 주간 집계 방향 확신을 읽는 몇 안 되는 소스 중 하나이며 세 가지 특정 유형의 분석에 독특하게 가치있게 만듭니다.
1. 밀집 된 직업 을 식별 하는 것
통화의 비상업적 위치가 역사적인 범위에 비해 극단적 수준에 도달하면 거래가 밀집됩니다. 밀집 된 거래는 본질적으로 잘못되지 않습니다. 그들은 종종 잘 근거 된 거시 논문의 결과입니다. 그러나 비대칭적 인 위험을 가지고 있습니다. 거래가 더 밀집하면 더 많은 거래가 참여자가 동시에 출퇴해야 할 때 움직임이 더 폭력적입니다.
유동 예제로는 JPY 단축 거래이다. 2022년과 2023년 상당 기간 동안 JPY 선물에 대한 비상업적 단축 포지셔닝은 일본 은행과 다른 모든 주요 중앙 은행 사이의 광범위하고 지속적인 금리 차이를 반영하여 수십 년의 극에 달했다. 예인은 광범위하게 약화되었다. 그러나 일본 은행의 각 정책 놀라움 과 여러 이 JPY에 급격하고 빠른 단축 커버 릴리를 유발하여 꽉 찬 단축 지위의 보유자를 압축했다. 근본적인 논문은 기간의 대부분 동안 옳았지만, 그 지위가 얼마나 꽉 차 있었는지 때문에 주기적으로 유지하기가 위험했다.
FXMacroData는 8개의 주요 통화 선물 ( AUD, CAD, CHF, EUR, GBP, JPY, NZD, USD) 에 대한 COT 포지셔닝을 표면화하여 어떤 거래가 역사적인 극에 향하고 있는지 추적하는 것이 간단합니다.
curl "https://fxmacrodata.com/api/v1/cot/jpy?api_key=YOUR_API_KEY&start=2022-01-01"
{
"data": [
{
"date": "2024-04-02",
"noncommercial_long": 28341,
"noncommercial_short": 198076,
"noncommercial_net": -169735,
"commercial_long": 213540,
"commercial_short": 47832,
"open_interest": 287450
}
]
}
JPY의 순 비상업적 지점은 -169,735 계약으로 역사적 측정 기준으로는 크다. 이 시리즈를 시간적으로 그래프화하면 과거의 극단적 지점과 비교하여 현재 위치가 얼마나 멀리 있는지 즉시 밝혀지고 군중이 더 확장 할 여지가 있는지 또는 구조적 역전 위험 구역에 접근하고 있는지 여부를 보여줍니다.
2. 추세 확인 및 악화 추적
COT 데이터는 타이밍 도구가 아닙니다. 붐비는 거래는 반전되기 전에 몇 달 동안 붐비어있을 수 있습니다. 그러나 그것은 훌륭한 체제 식별자입니다. 비상업적 위치가 일관되게 한 방향으로 트렌드를 보이는 경우 거시적 돈이 트렌드에 따라 정렬되어 있음을 확인합니다. 가격이 같은 방향으로 계속되는 동안 그 추세가 평면 또는 반전되는 경우도 종종 확신이 감소하는 초기 경고입니다.
가격과 위치 사이의 차이는 FX에서 가장 신뢰할 수있는 COT 기반 신호 중 하나입니다. EUR/USD가 상승하지만 EUR 선물의 비상업 순 장점은 주간이 줄어들고, 큰 투기자가 강점으로 노출을 줄이고, 그 분배 패턴은 종종 정상에 앞서 있습니다.
신호 프레임: 가격 대 위치 격차
- 상승차가: 가격 하락, 하지만 비상업 순 장기 유지 또는 증가 판매 압력 새로운 장기 확신에 의해 충족됩니다. 더 장기적인 추세를 계속 지원합니다.
- 하향적 분차: 가격이 상승하지만 비상업적인 순환은 줄어들게 됩니다. 투기자들이 힘을 보냅니다.
- 추세 확인: 가격과 순위 위치가 같은 방향으로 움직이고 있습니다.
3. 시장 위치와 맥로 뷰를 연결
코트 데이터는 거시적 기본 요소와 결합하면 가장 강력합니다. 금리 차이는 한 통화를 강하게 유리한 지점으로 만들 수 있지만 그 테시스가 이미 극심한 순자 긴 지위에 가격화되면 증가 추세는 제한 될 수 있습니다. 반대로, 거시적인 짧은 지위와 거시성 높은 거시 기본 요소에 대한 통화 거래는 자세히 관찰 할 가치가있는 설정입니다. 곰 테시스에 도전하는 모든 근본적인 놀라움은 규모에서 짧은 커버를 강요합니다.
스위스 을 보고 있는 것을 상상해보세요. 스위스 국민은행의 정책 결정은 CHF 정책금리 최종점거시적 자료가 CHF-긍정적 인 금리 차이는 확대되고 있지만 선물에 대한 비상업적 CHF 포지셔닝은 여전히 매우 짧다면, 근본적인 사례가 결국 부정할 수 없을 때 포지션 배경은 포착 릴리에 건설적입니다. 그 조합 거시적인 후풍 + 잘못된 투기자 커뮤니티 은 가장 크고 가장 빠른 FX 움직임이 종종 발생하는 곳입니다.
COT 보고서를 읽는 것: 추적해야 할 주요 측정
원료 계약 수치는 정보적이지만 다음 파생 메트릭은 신호를 상당히 선명합니다.
순위 지분 (공개금액의 비율)
전체 오픈 이인세에 대한 순 비상업 지위를 정규화하면 방향 편향의 표준화된 척도가 된다. 50,000계약의 순 길이는 오픈 이니세스의 100,000계약과 500,000계약이 있는 통화에서 매우 다른 것을 의미한다. 오픈 이인에 의해 순 지위를 나누면 통화와 시간 간 직접 비교할 수 있는 -1과 +1 사이의 비율을 만들어낸다.
import requests
BASE = "https://fxmacrodata.com/api/v1"
KEY = "YOUR_API_KEY"
def cot_series(currency: str, start: str = "2020-01-01") -> list[dict]:
r = requests.get(
f"{BASE}/cot/{currency}",
params={"api_key": KEY, "start": start}
)
r.raise_for_status()
return r.json()["data"]
def net_oi_ratio(record: dict) -> float:
"""Net non-commercial position as fraction of open interest."""
if record.get("open_interest", 0) == 0:
return 0.0
return record["noncommercial_net"] / record["open_interest"]
eur_cot = cot_series("eur")
ratios = [(r["date"], net_oi_ratio(r)) for r in eur_cot]
print(ratios[-5:]) # most recent five weeks
네트워크 위치 설정의 Z 점수
z 점수는 현재 포지셔닝이 역사적 평균에서 얼마나 많은 표준편차를 측정하는지 측정합니다. +2 이상의 z 점수 또는 -2 이하의 점수는 통계적으로 극단적인 조건을 표시합니다. FX의 경우 기준이 10 년 된 포지시닝 체제보다는 현재의 시장 구조를 반영하기 위해 52 주 분기 창을 사용하는 것이 일반적입니다.
import statistics
def rolling_zscore(series: list[dict], window: int = 52) -> list[dict]:
"""Compute z-score of net non-commercial positioning on a rolling window."""
results = []
values = [r["noncommercial_net"] for r in series]
for i, record in enumerate(series):
start_i = max(0, i - window + 1)
window_vals = values[start_i : i + 1]
if len(window_vals) < 4:
results.append({**record, "zscore": None})
continue
mu = statistics.mean(window_vals)
sig = statistics.stdev(window_vals)
z = (record["noncommercial_net"] - mu) / sig if sig > 0 else 0.0
results.append({**record, "zscore": round(z, 2)})
return results
gbp_cot = cot_series("gbp", start="2018-01-01")
gbp_scored = rolling_zscore(gbp_cot)
extremes = [r for r in gbp_scored if r["zscore"] is not None and abs(r["zscore"]) > 2.0]
print(f"Extreme positioning weeks in GBP: {len(extremes)}")
주간 순위 변화
포지셔닝 변화의 속도는 절대 수준만큼이나 중요합니다. 네 주 동안 +20,000 순 장기에서 +80,000 순 장기로 이동하는 통화는 확신을 가속화하는 신호입니다. 같은 기간 동안 +120,000에서 +60,000으로 역전되는 통화는 순 포지시닝이 편안하게 긍정적 인 상태에도 불구하고 활성 유통을 신호합니다.
FXMacroData를 통해 COT 데이터에 액세스
FXMacroData는 깨끗한 REST 엔드포인트를 통해 모든 8개의 주요 통화 선물 계약에 대한 CFTC COT 데이터를 주간 제공합니다. 각 기록에는 비상업 장기, 단위 및 순, 상업 장기 및 단위, 전체 오픈 이자 등 전체 분포가 포함되어 있습니다.
지원된 통화: AUD, CAD, CHF, EUR, GBP, JPY, NZD, USD- 그래요
# EUR net positioning since 2023
curl "https://fxmacrodata.com/api/v1/cot/eur?api_key=YOUR_API_KEY&start=2023-01-01"
# GBP full history
curl "https://fxmacrodata.com/api/v1/cot/gbp?api_key=YOUR_API_KEY"
# AUD recent 12 months
curl "https://fxmacrodata.com/api/v1/cot/aud?api_key=YOUR_API_KEY&start=2024-01-01"
응답은 가장 최근의 데이터로 날짜별로 정렬되며 모든 통화에서 일관된 필드 이름을 사용합니다. 그래서 단일 분석 스크립트는 수정 없이 모든 8개의 쌍에서 작동합니다.
비상업용 장
헤지펀드나 CTA가 보유한 투기적인 상승성 계약은 주간 상승하고, 상승성도 증가하고 있습니다.
비상업용 단편
투기적인 하향 계약. 일주일씩 상승: 하향은 증가하고 있습니다. 극단적 수준: 짧은 압축 위험.
비상업적 네트워크
롱스 미네 셔트 헤드라인 번호 0 이상: 투기 커뮤니티는 순 상승 추세와 z 점수를 추적합니다.
공개 관심
전체 계약금액: 증가하는 오픈 인테리스와 증가하는 순 장기간에 따라 트렌드에 강한 참여를 확인합니다.
실용적인 다화폐 COT 스캔
COT 데이터의 가장 유용한 응용 프로그램 중 하나는 주간 크로스 통화 스캔으로 모든 주요 화폐를 z 점수 위치로 순위 지정합니다. 이것은 즉시 가장 긴 긴 외환이 무엇인지, 가장 긴 짧은 외환인지, 중성 근처에 앉아있는 것을 표면화하며 한쪽의 위치가 다른 쪽에 극한 상대적으로있는 쌍을 식별하는 기초를 제공합니다.
import requests, statistics
from datetime import datetime, timedelta
BASE = "https://fxmacrodata.com/api/v1"
KEY = "YOUR_API_KEY"
CURRENCIES = ["aud", "cad", "chf", "eur", "gbp", "jpy", "nzd"]
def cot_series(ccy: str) -> list[dict]:
r = requests.get(f"{BASE}/cot/{ccy}", params={"api_key": KEY, "start": "2019-01-01"})
r.raise_for_status()
return r.json()["data"]
def zscore_latest(records: list[dict], window: int = 52) -> dict:
vals = [r["noncommercial_net"] for r in records]
latest = vals[0]
sample = vals[:window]
mu = statistics.mean(sample)
sig = statistics.stdev(sample) if len(sample) > 1 else 1.0
z = (latest - mu) / sig if sig > 0 else 0.0
return {
"net" : latest,
"zscore" : round(z, 2),
"oi_ratio" : round(latest / records[0]["open_interest"], 3) if records[0].get("open_interest") else None,
"date" : records[0]["date"],
}
results = {}
for ccy in CURRENCIES:
data = cot_series(ccy)
results[ccy.upper()] = zscore_latest(data)
# Rank by z-score
ranked = sorted(results.items(), key=lambda x: x[1]["zscore"], reverse=True)
print(f"{'CCY':<6} {'Net':>12} {'Z-Score':>9} {'OI Ratio':>10} {'Date'}")
print("-" * 56)
for ccy, r in ranked:
flag = " ← EXTREME" if abs(r["zscore"]) > 2.0 else ""
print(f"{ccy:<6} {r['net']:>12,} {r['zscore']:>9.2f} {str(r['oi_ratio']):>10} {r['date']}{flag}")
출력은 아래와 같은 스냅샷을 제공합니다 (예시 값):
CCY Net Z-Score OI Ratio Date
--------------------------------------------------------
EUR +94,320 +2.31 +0.31 2024-04-02 ← EXTREME
GBP +38,150 +1.45 +0.22 2024-04-02
AUD -4,200 -0.18 -0.03 2024-04-02
NZD -8,900 -0.62 -0.15 2024-04-02
CAD -21,300 -1.08 -0.18 2024-04-02
CHF -44,100 -1.95 -0.38 2024-04-02
JPY -172,400 -2.64 -0.60 2024-04-02 ← EXTREME
EUR가 2 표준편차 극도로 긴 지점과 JPY가 2 기준편차 극단적으로 짧은 지점일 때, EUR/JPY 쌍은 한쪽에서 군중과 함께 단단히 위치한다. EUR의 상승 요약이나 JPY의 하락 요약에 방해가 되는 모든 거시 충격은 급속하고 대규모의 완화를 강요할 것이며, EUR / JPY는 이러한 조건 하에서 단일 세션에서 34% 움직일 수 있다.
COT와 매크로 기본을 결합하는 방법
COT 데이터는 질문에 답합니다. 누가 위치하고 있으며 얼마나 공격적인가? 매크로 기본 데이터는 질문에 답합니다. 환율, 인플레이션, 성장에 따라 통화 가치가 얼마일까요? 가장 강력한 FX 프레임워크는 둘 다 사용합니다.
간단한 4차원 모델은 상호 작용을 명확하게 구성합니다.
| 시나리오 | 매크로 신호 | COT 위치 | 함유 |
|---|---|---|---|
| 강한 확신 | 상승 ( 상승률, 강력한 데이터) | 아직 붐비는 게 없는데 z 점수 < +1 | 트렌드는 확장할 수 있는 공간이 있고, 매입 기회도 있습니다. |
| 후기 단계 | 상승세를 보이지만, 속도가 느려지고 있습니다. | 밀집; z 점수 > +2 | 트렌드 건전하지만 취약하다 포지션 크기를 줄이고, 스톱을 강화해 |
| 역설계 | 하향 (기근한 삭감, 약한 데이터) | 극도로 길고 z 점수 > +2.5 | 높은 확률로 플러쉬, 강제 판매로 움직임을 강화한다 |
| 스텔스 축적 | 낙후적 의견 | 극히 짧다. z 점수 < -2 | 긍정적인 놀라움은 큰 단축을 유발합니다. |
거시 열을 작동시키기 위해, 관련 중앙 은행 최종 지점에서 COT 데이터와 함께 정책금리 역사를 뽑습니다. RBA 정책금리 그리고 호주 인플레이션 AUD COT 위치가 함께 투기 커뮤니티가 거시적인 이야기와 일치하는지 아니면 앞서 있는지에 대한 완전한 그림을 제공합니다.
기억 해야 할 한계
COT 데이터는 강력하지만 무실치하지는 않습니다.
- 출판 지연 CFTC는 화요일로 포지션을 측정하고 금요일에 발표합니다. 데이터가 공개 될 때까지 3 ~ 4 일간의 거래가 발생했습니다. 측정과 출판 사이에 상당한 포지션 변화가 발생할 수 있습니다.
- 선물은 현금 FX입니다. 기관 외환 흐름은 주로 OTC 스팟과 선물 시장에서 발생하며, 이는 훨씬 크고 완전히 규제되지 않습니다. COT는 거래소 거래 시속층을 포착합니다. 전체 투기 포지셔닝에 대한 중요한 그러나 불완전한 대리자입니다.
- 붐비는 거래는 붐비지 않을 수 있습니다. +2 이상의 z 점수는 위급한 통계적 극단성을 식별하는 것이 아니라 임박한 반전을 나타냅니다. 일본 은행이 극도로 느슨한 정책 틀을 유지하면서 JPY 단축 거래는 여러 분기에 걸쳐 극단적으로 유지되었습니다. 극단적 인 위치화는 위험-상금을 좁히고 전환 날짜를 보장하지 않습니다.
- 광고는 실수 없는 반대의 대상이 아닙니다. 헤지업자는 보호해야 할 채무가있을 때 짧은 포지션을 증가시킵니다. 반드시 통화가 떨어질 것이라고 생각하기 때문에 아닙니다. 상용 포지셔닝을 반대 신호로 사용하는 것은 헤지 활동을 주도하는 기본 비즈니스 흐름에 대한 신중한 맥락을 필요로합니다.
- 공개된 관심은 계약 수를 왜곡시킬 수 있습니다. 상승하는 순위 지점과 함께 오픈 이텐트의 큰 증가는 새로운 돈이 들어오는 것을 나타낼 수 있으며, 상승하는 netto와 함께 안정적이거나 감소하는 오픈 이센트는 단순히 짧은 측면을 반영 할 수 있습니다. 항상 오픈 이젠트 트렌드와 함께 순위 포지션을 참조하십시오.
주간 COT 대시보드 구축
FXMacroData API를 사용하면 개인 COT 모니터링 대시보드를 구축하는 것은 주말 프로젝트입니다. 주요 구성 요소는 다음과 같습니다.
- G10 7개 통화 선물에 대한 지난 52주 COT 데이터를 가져오기
- 순위 위치 z 점수를 계산하는 52주 롤링 윈도우
- 가장 극도로 긴 통화에서 가장 극적으로 짧은 통화로 순위를 매겨라
- 반대 극단이 존재하는 쌍을 식별합니다 (예: EUR 극장장 + JPY 극장 단축 → EUR/JPY 중점)
- 거시적 맥락을 정책금리차이를 관련률 최종점 위치가 기본 배경과 일치하는지 또는 근본 배경에서 벗어나는지 결정하기
- 위치가 한 개 이상의 표준편차로 이동한 모든 주를 표시합니다.
FXMacroData COT 대시보드 페이지 이 뷰는 모든 지원된 화폐에 시각적으로 제공되며, CFTC의 모든 릴리스 후 매주 업데이트됩니다. 양적 또는 프로그래밍 용도로 API 엔드포인트는 기본 데이터를 파이썬, R 또는 다른 분석 환경에 직접 공급하는 형태로 반환합니다.
빠른 참조: COT API 최종점
- EUR:
https://fxmacrodata.com/api/v1/cot/eur?api_key=YOUR_API_KEY - GBP:
https://fxmacrodata.com/api/v1/cot/gbp?api_key=YOUR_API_KEY - JPY:
https://fxmacrodata.com/api/v1/cot/jpy?api_key=YOUR_API_KEY - AUD:
https://fxmacrodata.com/api/v1/cot/aud?api_key=YOUR_API_KEY - CAD:
https://fxmacrodata.com/api/v1/cot/cad?api_key=YOUR_API_KEY - CHF:
https://fxmacrodata.com/api/v1/cot/chf?api_key=YOUR_API_KEY - NZD:
https://fxmacrodata.com/api/v1/cot/nzd?api_key=YOUR_API_KEY
결론
COT 보고서는 FX 트레이더들에게 거의 다른 어떤 것도 제공하지 않는 창을 제공합니다: 세계 최대 투기 계좌가 통화 선물에 어떻게 위치하는지 매주 감사 된 측정. 고립적으로 사용되면 그 정보는 시사적이지만 불완전합니다. 중앙 은행 정책 금리, 인플레이션 판독 및 FXMacroData API를 통해 표면으로 나타난 경제적 놀라움과 결합하면 진정한 분석 우위를 점하게됩니다.
가장 위험한 FX 거래는 근본적인 사례가 잘못되는 것이 아닙니다. 근본적인 경우가 옳지만 거래가 너무 밀집되어 단일 데이터 놀라움이 강제 출구의 계곡을 유발합니다. COT 데이터는 그러한 조건에 대한 조기 경고 시스템입니다.
거시적인 달력과 함께 위치를 추적해 군중이 늘어나고 기본이 변할 때 출구가 어느 방향으로 향하는지 알아