가이드가이드

ECB 기준환율 설명

유럽중앙은행(ECB)은 영업일마다 공식 외환 기준환율을 하나씩 발표합니다. 이것이 무엇을 의미하는지, 실시간 현물 데이터와 어떻게 다른지, API에서 어떻게 읽는지 설명합니다.

2026년 8월 9일 · 6분 읽기

/v1/latest/USD를 호출해 source: ecb_daily를 받았다면, 유럽중앙은행의 유로 외환 기준환율을 보고 있는 것입니다. 영업일마다 약 16:00 CET에 한 번 발표되며, 참고와 정보 제공용이지 거래용이 아닙니다. EUR 통화쌍에 대해 가장 권위 있는 일일 환율 수치이지만 하나의 스냅샷일 뿐입니다,16:00 CET 이후에도 시장은 계속 움직이지만, 이 고시가는 다음 영업일까지 갱신되지 않습니다.

  • ECB는 영업일마다 약 16:00 CET에 유로 기준환율을 발표합니다.
  • source: live, ecb_daily, market_daily(ECB 고시 없는 통화의 저장된 일일 시장 종가).
  • 주말과 공휴일에는 새로운 ECB 고시가가 발표되지 않습니다. 해당 날짜의 과거 응답에는 is_forward_filled: true가 붙습니다.
  • 모든 환율은 인디케이티브 값이며, 참고와 분석용일 뿐 정산이나 딜링용이 아닙니다.
  • ECB EXR 시계열이 시작된 1999년까지 이력이 거슬러 올라갑니다.

ECB 기준환율이란 무엇인가

영업일마다 유럽중앙은행은 일련의 유로 외환 기준환율을 발표합니다. 이 값은 유럽중앙은행제도 안팎의 중앙은행들과의 협의 절차를 거쳐 약 16:00 CET에 산출됩니다. 이 환율은 그 시점의 컨센서스 중간시장 수치를 나타내며, ECB 자체 문서에서 명시하듯 정보 제공과 참고용으로만 쓰입니다.

이 환율은 공공기관에서 나오고 고정되고 투명한 일정에 따라 발표되기 때문에, EU 전역의 금융 계약, 회계, 규제 보고에 널리 쓰입니다. API 응답에서 source: ecb_daily를 보았다면 바로 이 값을 읽고 있는 것입니다.

인디케이티브 값, 정산용 아님

ECB 기준환율은 딜링 환율이 아닙니다. 특정 시점의 시장 컨센서스를 반영할 뿐입니다. ECB 출처 환율을 담은 모든 /v1/latest 응답에는 이를 확인하는 notice 필드가 포함되어 있습니다: "Indicative rates, not for settlement. Source: incl. ECB statistics."

세 가지 데이터 출처 분류

API의 모든 응답에는 환율이 어떤 데이터 분류에서 왔는지 알려주는 source 필드가 있습니다. 세 가지가 있습니다:

source 값ecb_dailylive
제공기관유럽중앙은행참고용 현물 시장 환율
빈도영업일마다 1회장중(~60초), 거래 주간
발표 시점평일 약 16:00 CET거래 주간 내내
고시 사이 기간이전 고시가 유지됨; 시장 움직임 미반영거래 주간 내내 계속 갱신
주말/공휴일새 고시 없음; 이전 값 유지은행 간 시장 휴장; 마지막 시장 환율 유지
이용 가능한 이력1999년까지최근 구간
적합한 용도회계, 보고, 감사 추적실시간 표시, 가격 책정

ECB 출처 응답 읽기

기준 통화를 지정해 최신 환율을 요청하고 source를 확인하면 무엇을 보고 있는지 알 수 있습니다:

bash · latest rates, EUR base
curl -s https://api.exchangerate.dev/v1/latest/EUR
json · response excerpt
{  "result": "success",  "base": "EUR",  "source": "ecb_daily",  "market_session": "open",  "timestamp": "2026-06-19T14:05:33Z",  "data_updated_at": "2026-06-19T14:00:00Z",  "rates": {    "USD": 1.14235,    "GBP": 0.86781,    "JPY": 184.320  },  "notice": "Indicative rates, not for settlement. Source: incl. ECB statistics."}

모든 응답에는 두 개의 타임스탬프 필드가 있습니다. data_updated_at은 원본 환율이 데이터 저장소에 마지막으로 기록된 시점입니다. ecb_daily의 경우 가장 최근 영업일의 약 16:00 CET가 됩니다. timestamp는 API가 응답을 생성한 시점입니다. 응답을 캐시한다면, 신선도를 추적할 필드는 data_updated_at입니다.

첫 번째 요청은 키 없이도 작동합니다. 호출이 예약된 작업이나 애플리케이션으로 옮겨가면, 무료 키를 만들어 계정별 할당량을 확보하고 서버에 보관하세요.

고시 사이, 주말, 순방향 채움(forward-fill)

ECB 고시가는 하루에 한 번뿐인 스냅샷입니다. 약 16:00 CET 발표와 다음 영업일 고시 사이에는 ecb_daily 데이터가 갱신되지 않습니다,장중이나 야간의 시장 움직임은 반영되지 않습니다. ECB는 주말이나 공휴일에도 발표하지 않으므로, 토요일이나 일요일에 요청하면 금요일 고시가가 반환됩니다. API는 발표가 없는 날짜를 is_forward_filled 필드로 처리합니다:

bash · historical date on a weekend
curl -s https://api.exchangerate.dev/v1/2026-06-13/USD \  -H "Authorization: Bearer exr_live_..."
json · forward-filled response
{  "result": "success",  "base": "USD",  "source": "ecb_daily",  "market_session": "weekend",  "is_forward_filled": true,  "rates": {    "EUR": 0.87531,    "GBP": 0.75945,    "JPY": 161.412  }}

is_forward_filled가 true이면, 응답의 환율은 이전 영업일에서 이월된 마지막 발표값입니다. 새로운 관측값이 아닙니다. 주말에 환율을 표시하거나 차트를 채우는 등 많은 경우에는 이 정도로 충분합니다. 특정 날짜에 실제로 고시가 존재했는지 기록해야 하는 회계나 감사 추적에서는 이 플래그를 확인해야 합니다.

실시간 환율은 고시 사이 장중에도 갱신됩니다

live 출처는 거래 주간 내내 약 60초마다 갱신됩니다,ECB의 일일 고시 사이와 야간을 포함해서입니다. 어제 16:00 CET 시점이 아니라 지금 시장이 어디에 있는지 반영하는 환율이 필요하다면, 응답에 source: live가 있는지 확인하세요.

Python에서 source 확인하기

흔한 패턴은 환율을 읽고 source로 분기해 표시 방식을 결정하는 것입니다:

python · source-aware rate fetch
import requestsAPI = "https://api.exchangerate.dev/v1"KEY = "exr_live_..."resp = requests.get(    f"{API}/latest/USD",    headers={"Authorization": f"Bearer {KEY}"},    timeout=10,)resp.raise_for_status()data = resp.json()rate = data["rates"]["EUR"]        # 0.87531source = data["source"]            # ecb_dailysession = data["market_session"]   # openif source == "ecb_daily":    print(f"ECB reference rate as of last business day: {rate}")elif source == "live":    print(f"Indicative spot rate ({session}): {rate}")else:    print(f"Rate ({source}): {rate}")

1999년까지의 이력

ECB는 유로가 도입되면서 EXR 시계열을 시작했습니다. Plus/Pro 키로 API는 날짜 경로 /v1/{date}/{base}와 범위 엔드포인트 /v1/range를 통해 전체 이력을 제공합니다. 둘 다 해당하는 경우 is_forward_filled를 반환합니다. 원하는 기간 동안 특정 통화쌍의 시계열을 가져올 수 있습니다:

bash · weekly EUR/USD series
curl -s "https://api.exchangerate.dev/v1/range?base=EUR&symbols=USD&start_date=2026-06-10&end_date=2026-06-16" \  -H "Authorization: Bearer exr_live_..."

매개변수 이름에 유의하세요: start_date와 end_date(스네이크 케이스), 그리고 쉼표로 구분된 문자열인 symbols입니다. 범위 응답은 발표된 영업일마다 한 행을 반환하며, 각 행에는 고유한 source와 is_forward_filled가 있습니다. 주말 날짜는 행으로 포함되지 않습니다.

ECB 고시가는 영업일마다 하나의 관측값입니다. 실시간 현물, 순방향 채움, 삼각 교차환율은 모두 이 기준점을 둘러싼 맥락일 뿐입니다.
실시간 응답에서 두 필드를 함께 확인하세요

요청 한 번, 키는 필요 없습니다: /v1/latest/USD를 사용해보고 실제 응답에서 source와 market_session을 읽어보세요. 이력과 자신만의 할당량이 필요하다면, 무료 키는 월 5,000회이며 카드가 필요 없습니다.

자주 묻는 질문

ECB 유로 외환 기준환율이란 무엇인가요?

유럽중앙은행이 영업일마다 약 16:00 CET에 발표하는 공식 중간시장 환율입니다. 협의 절차를 거쳐 산출된 컨센서스 수치를 나타내며, 거래 정산이 아니라 참고와 정보 제공용입니다.

API 응답에 is_forward_filled: true가 표시되는 경우는 언제인가요?

ECB는 주말이나 공휴일에는 환율을 발표하지 않습니다. 이런 날짜에 해당하는 과거 날짜를 요청하면, API는 가장 최근에 발표된 환율을 이월하고 is_forward_filled를 true로 설정합니다. 새로운 관측값이 아니라 이전 영업일 값을 반복한 것입니다.

source 필드의 ecb_daily와 live는 어떻게 다른가요?

ecb_daily는 유럽중앙은행의 공식 참조 고시가로, 영업일마다 약 16:00 CET에 한 번 발표됩니다. 이 발표와 다음 발표 사이에도 시장은 계속 움직이지만 ecb_daily는 갱신되지 않습니다. live는 거래 주간 내내 약 60초마다 갱신되는 참고용 현물 시장 환율입니다. 두 값은 서로 다른 목적을 가집니다: ecb_daily는 고정된 공식 벤치마크가 필요한 회계와 감사 추적용이고, live는 실시간 표시와 최신 인디케이티브 가격 책정용입니다.

ECB 환율 이력은 얼마나 거슬러 올라가나요?

ECB EXR 시계열은 유로가 도입된 1999년부터 시작합니다. 1999년부터의 /v1/{date}/{base}에는 Plus나 Pro 키가 필요합니다. ECB가 발표하지 않은 날짜(주말, 공휴일)는 is_forward_filled: true를 갖습니다.

계속 읽기

무료 API 키로 시작하세요

무료 플랜으로 월 5,000건 요청 가능. 신용카드는 필요하지 않습니다.

무료 키 받기