Strasmore Research
학습 Matt Connor작성자 Matt Connor

주식 시세가 15분 지연되는 이유와 라이선스 규정

대부분의 무료 주식 플랫폼에서 시세가 십오 분 지연되는 것은 거래소 데이터 라이선스 규정 때문입니다. 실시간 데이터와 지연 데이터의 차이가 실제 투자 가격에 미치는 영향과 거래소의 데이터 배포 정책을 상세히 설명합니다.

대부분의 무료 웹사이트에서 주식 시세가 15분 지연되는 이유는 라이선스 규정 때문입니다. 데이터 전송 시스템 자체가 느린 것은 아닙니다. 거래소의 매칭 엔진에서 체결된 가격은 1초도 안 되는 시간에 화면에 도달합니다. 15분이라는 지연 시간은 실시간 시세를 표시할 권한과 그에 따른 비용을 결정하는 계약 조건에 명시되어 있습니다.

주식 가격이 투자자에게 도달하기까지의 경로

미국 주식 한 종목은 십여 개 이상의 공개 거래소에서 동시에 거래되며, 이와 별도로 장외 거래(off-exchange trading)에서도 대규모 거래가 발생하여 각기 다른 체결 내역(prints)을 보고합니다. 각 거래소는 자체적인 호가와 체결가를 공시합니다. 업계 표준 계획에 따라 이 모든 데이터는 하나의 테이프로 통합되는데, NYSE 상장 종목을 다루는 계획과 Nasdaq 상장 종목을 다루는 계획으로 나뉩니다. 이를 운영하는 처리 장치를 SIP(Securities Information Processors, 증권 정보 처리 장치)라고 합니다. 이 통합 테이프는 특정 시점에 어디서든 이용 가능한 최선의 가격 쌍인 NBBO(National Best Bid and Offer, 최우선 매수·매도 호가)를 산출하며, 이에 대한 자세한 설명은 NBBO란 무엇인가 가이드에서 확인할 수 있습니다.

거래소는 통합 테이프보다 빠르고 상세한 자체 직접 피드(direct feed)를 판매하기도 하며, 이는 통합 테이프와는 별도의 라이선스를 통해 제공됩니다.

주식 시세가 15분 지연되는 이유: 라이선스 측면의 해설

시장 데이터는 거래소의 수익원입니다. 가격 정보를 제공하는 모든 배포자(브로커, 웹사이트, 터미널, 모바일 앱 등)는 거래소 및 테이프 플랜(tape plans)과 계약을 체결하며, 이 계약에 따라 동일한 수치가 두 가지 상품으로 나뉩니다. 실시간 데이터는 수수료가 부과되며 매월 사용자 단위로 보고됩니다. 반면 최소 15분이 경과한 지연 데이터는 실시간 데이터 체계에서 제외되므로, 배포자는 사용자 수를 집계하지 않고도 이를 무료로 제공할 수 있습니다.

이러한 체계에는 여러 비용이 중첩됩니다. 데이터 전송망에 대한 접속료, 실시간 가격을 조회할 수 있는 개인별 월간 이용료, 그리고 사람이 직접 보지 않고 기계가 가격 정보를 소비하는 경우에 부과되는 비디스플레이(non-display) 수수료가 있습니다. 요금은 공개적으로 공시되며 매년 변경되는 경우가 많으므로, 당해 연도의 구체적인 수치보다는 이러한 구조 자체가 더 중요합니다. 실시간 가격에 대해서는 누군가 매월 인당 비용을 지불해야 하지만, 15분이 지난 가격에 대해서는 아무도 비용을 지불하지 않습니다.

무료 버전이 무료인 이유는 이것이 전부입니다. 실시간 가격을 유지하는 데 드는 비용의 나머지 절반은 거래량입니다. 테이프는 장중 내내 끊임없이 시세 업데이트를 전송하며, 옵션의 경우 옵션 시세 피드의 규모에서 볼 수 있듯이 그 데이터 양이 극단적인 사례에 해당합니다.

15분 지연 시세의 실질적 가치

지연 시세의 영향력은 그 시간 동안 가격이 얼마나 변동하느냐에 달려 있으며, 이는 측정 가능한 영역입니다. 아래 패널은 2026년 6월까지 SPY(S&P 500 추종 ETF)의 정규장 1분 단위 바 데이터를 분석하여, 각 시점과 15분 후의 가격을 비교하고 이를 시간대별로 그룹화했습니다.

조회장중 시간대별 SPY 15분 변동폭 (2026년 6월)
모든 수치 뒤에 숨겨진 정확한 SQL
WITH regular_bars AS
(
    SELECT
        toTimeZone(window_start, 'America/New_York')                      AS et,
        toTimeZone(window_start, 'America/New_York') + INTERVAL 15 MINUTE AS et_later,
        toFloat64(close)                                                  AS px
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND close > 0
      AND window_start >= '2026-06-01 00:00:00'
      AND window_start <  '2026-07-01 00:00:00'
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
)
SELECT
    formatDateTime(toStartOfHour(a.et), '%H:%i')                                                       AS et_time,
    round(quantileDeterministic(0.5)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3)   AS median_gap_pct,
    round(quantileDeterministic(0.95)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3)  AS p95_gap_pct,
    count()                                                                                            AS sample_count
FROM regular_bars AS a
INNER JOIN regular_bars AS b ON b.et = a.et_later
GROUP BY et_time
ORDER BY et_time
Run this yourself

오전 9시 30분(ET 기준)에 시작되는 개장 첫 시간의 바는 이후 15분 동안 중앙값 0.125%의 변동을 보였으며, 95분위수는 0.556%로 나타났습니다. 15:00 시간대의 중앙값은 0.065%였습니다. 각 구간은 630개의 중첩된 1분 단위 쌍을 포함하므로, 이는 특정일의 우연이 아닌 일반적인 수치입니다. 변동성 곡선은 평탄하지 않으며, 고정된 지연 시간은 특정 시간대에 더 많은 정보를 가립니다.

정보가 가려지는 정도는 종목에 따라서도 달라집니다. 동일한 측정 방식을 6개 주요 종목에 적용한 결과입니다.

조회주요 6개 종목별 15분 변동폭 (2026년 6월)
모든 수치 뒤에 숨겨진 정확한 SQL
WITH regular_bars AS
(
    SELECT
        ticker,
        toTimeZone(window_start, 'America/New_York')                      AS et,
        toTimeZone(window_start, 'America/New_York') + INTERVAL 15 MINUTE AS et_later,
        toFloat64(close)                                                  AS px
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'KO', 'AAPL', 'MSFT', 'NVDA', 'AMD')
      AND close > 0
      AND window_start >= '2026-06-01 00:00:00'
      AND window_start <  '2026-07-01 00:00:00'
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
)
SELECT
    a.ticker                                                                                           AS ticker,
    round(quantileDeterministic(0.5)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3)   AS median_gap_pct,
    round(quantileDeterministic(0.99)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3)  AS p99_gap_pct
FROM regular_bars AS a
INNER JOIN regular_bars AS b ON b.ticker = a.ticker AND b.et = a.et_later
GROUP BY ticker
ORDER BY median_gap_pct DESC
Run this yourself

AMD는 6개 종목 중 가장 큰 중앙값 차이인 0.361%를 기록했고, SPY0.071%로 가장 작았습니다. 99분위수 열은 주의 깊게 살펴볼 필요가 있습니다. 해당 월의 15분 구간 중 변동성이 가장 컸던 상위 1퍼센트의 경우, AMD2.532%만큼 움직였습니다.

다음은 동일한 개념을 특정 하루에 적용한 결과입니다. 이 패널은 2026년 6월 중 SPY의 장중 변동폭이 가장 컸던 날을 찾아 두 개의 선을 그렸습니다. 하나는 10분 단위의 실시간 시세(live tape)이고, 다른 하나는 같은 시점에 15분 지연된 화면이 보여주는 가격입니다.

조회실시간 가격과 15분 지연 가격 비교 (SPY 1일 세션)
모든 수치 뒤에 숨겨진 정확한 SQL
WITH
    widest_session AS
    (
        SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND close > 0
          AND window_start >= '2026-06-01 00:00:00'
          AND window_start <  '2026-07-01 00:00:00'
          AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
               + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
          AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
               + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
        GROUP BY d
        ORDER BY (max(toFloat64(high)) - min(toFloat64(low))) / min(toFloat64(low)) DESC
        LIMIT 1
    ),
    session_bars AS
    (
        SELECT
            toTimeZone(window_start, 'America/New_York')                      AS et,
            toTimeZone(window_start, 'America/New_York') - INTERVAL 15 MINUTE AS et_earlier,
            toFloat64(close)                                                  AS px
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND close > 0
          AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM widest_session)
          AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
               + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
          AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
               + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
    )
SELECT
    formatDateTime(a.et, '%H:%i')  AS et_time,
    round(a.px, 2)                 AS live_price,
    round(b.px, 2)                 AS delayed_price,
    round(abs(a.px - b.px), 2)     AS gap_delta,
    formatDateTime(a.et, '%b %e')  AS session_label
FROM session_bars AS a
INNER JOIN session_bars AS b ON b.et = a.et_earlier
WHERE toMinute(a.et) % 10 = 0
ORDER BY a.et
Run this yourself

Jun 9, ET 기준 09:50에 실시간 SPY 가격은 746.13였으나, 지연된 화면은 744.22를 가리키고 있었으며, 이는 실제 가격과 $1.91의 차이를 보였습니다. 15:50가 되었을 때 두 가격은 각각 735.29734.49였습니다. 시장이 조용할 때는 두 선이 겹치지만, 움직임이 발생하면 격차가 벌어집니다. 시장이 정체된 상태에서는 지연 시세가 아무런 비용을 발생시키지 않지만, 투자자들이 가장 주목하는 순간에는 가장 큰 비용을 초래합니다.

표시 규정: 웹사이트가 제공해야 하는 정보

Regulation NMS(국가시장시스템 규정)에는 통합 표시 요건인 Rule 603(c)가 포함되어 있습니다. 대중에게 호가 데이터를 제공하는 정보 제공업체는 특정 거래소의 호가를 마치 전체 시장 가격인 것처럼 포장해서는 안 되며, 통합 최종 체결가와 함께 NBBO(National Best Bid and Offer, 국가 최우선 매수·매도 호가)를 포함한 통합 정보를 제시해야 합니다. 또한 정보 제공업체는 지연된 데이터에 대해 반드시 지연 표시를 해야 하며, 모든 금융 정보 페이지 하단에 기재된 작은 글씨의 문구들이 바로 이 규정에서 비롯된 것입니다. 무료 호가를 확인하는 투자자는 다음 두 가지 사항을 유의해야 합니다.

  • 단일 거래소에서 제공하는 무료 실시간 호가는 실제 가격이지만 NBBO는 아닙니다. 이는 특정 거래소의 호가창만을 보여주는 것으로, 실제 시장에서 이용 가능한 최선의 가격보다 스프레드가 넓을 수 있습니다.
  • 실시간 최종 체결가는 표시되지만 매수·매도 호가가 없는 페이지는 흔히 볼 수 있습니다. 최종 체결가와 호가 데이터는 별도의 라이선스 상품이며, 최종 체결가가 상대적으로 저렴하기 때문입니다.

두 거래소의 호가가 호가창 최상단에서 일치하는 상황에 대해서는 locked and crossed markets(잠김 및 교차 시장)를 참조하십시오.

전문 투자자인가 비전문 투자자인가: 비용을 결정하는 기준

개인 투자자가 실시간 데이터를 이용할 때 지불하는 비용은 투자자 분류에 따라 달라지며, 이 분류는 자산 규모가 아닌 직업을 기준으로 결정됩니다. 거래소에서 사용하는 용어에 따라 다음 조건을 모두 충족하는 경우 비전문 투자자(non-professional subscriber)로 간주합니다.

  • 귀하는 회사나 기타 법인을 대신하는 것이 아니라 개인적인 용도로 데이터를 이용하는 자연인입니다.
  • 귀하는 SEC(미국 증권거래위원회), CFTC(미국 상품선물거래위원회), 주 증권 당국, 증권 거래소나 협회, 또는 선물 계약 시장에 등록되거나 자격을 갖춘 상태가 아닙니다.
  • 귀하는 투자 자문가나 자산 운용사로 활동하지 않으며, 해당 등록이 필요한 업무에 고용된 상태가 아닙니다.
  • 귀하는 구독료를 환급해 주는 고용주를 포함하여, 어떠한 업무상 목적으로도 데이터를 사용하지 않습니다.

위 조건 중 하나라도 충족하지 못하면 거래소는 귀하를 전문 투자자로 분류하며, 거래소별·사용자별·월별로 비전문 투자자 요금의 몇 배에 달하는 비용이 청구됩니다. 소액의 개인 계좌를 운용하는 펀드의 주니어 애널리스트는 전문 투자자에 해당하지만, 거액의 포트폴리오를 보유하고 오직 본인의 자금으로만 거래하는 은퇴한 투자자는 비전문 투자자에 해당합니다. 데이터 배급사는 귀하의 답변을 수집하고 보고할 의무가 있으며, 이것이 바로 실시간 데이터 가입 시 고용주와 등록 여부를 묻는 이유입니다.

스냅샷 호가란 무엇인가?

스냅샷은 요청하는 순간의 데이터를 한 번 읽어오는 것을 의미합니다. 마지막 체결가나 현재의 매수·매도 호가를 한 번 반환한 뒤 업데이트하지 않습니다. 반면 스트림은 지속적인 구독 형태로, 변화가 발생할 때마다 실시간으로 전송됩니다. 라이선스 비용은 두 방식에 따라 다르게 책정되는데, 보통 스트림은 사용자당 월간 단위로, 스냅샷은 쿼리당 단위로 부과됩니다. 무료 API가 실시간 스트림 대신 지연된 스냅샷 엔드포인트만 제공하는 이유가 여기에 있습니다. 스냅샷을 매초 새로고침하여 스트림을 재구축하려는 시도는 라이선스 계약상 제재 대상이 됩니다.

현재 보고 있는 가격이 지연된 것인지 확인하는 방법

  • 타임스탬프가 유일하고 확실한 지표입니다. 실시간 호가는 현재 ET(미 동부 표준시) 기준 1~2초 이내의 시각이 찍힙니다.
  • 당일 고가와 누적 거래량 역시 지연될 수 있으므로, 지연된 페이지는 10분 전 체결된 고가를 놓칠 수 있습니다.
  • 오전 9시 30분 ET 개장 후 첫 15분 동안, 지연된 페이지에는 당일 세션의 정보가 전혀 없으며 전일 종가나 장전 거래(premarket print) 가격이 표시됩니다.
  • 호가가 움직이는지 확인하는 '정지 테스트'는 실제로 변동성이 있는 종목에서만 유효합니다.

마지막 방법은 데이터로 뒷받침되어야 합니다.

조회분 단위 최종 가격 변동 빈도 (2026년 6월)
모든 수치 뒤에 숨겨진 정확한 SQL
WITH regular_bars AS
(
    SELECT
        ticker,
        toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
        toTimeZone(window_start, 'America/New_York')         AS et,
        toFloat64(close)                                     AS px
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'KO', 'AAPL', 'MSFT', 'NVDA', 'AMD')
      AND close > 0
      AND window_start >= '2026-06-01 00:00:00'
      AND window_start <  '2026-07-01 00:00:00'
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
),
stepped AS
(
    SELECT
        ticker,
        et,
        px,
        lagInFrame(px) OVER (PARTITION BY ticker, session_date ORDER BY et
                             ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_px
    FROM regular_bars
)
SELECT
    ticker,
    round(100 * countIf(px != prev_px) / count(), 1)                                                       AS minutes_price_moved_pct,
    round(quantileDeterministic(0.5)(abs(px / prev_px - 1) * 10000, toUInt64(toUnixTimestamp(et))), 1)      AS median_move_bps
FROM stepped
WHERE prev_px > 0
GROUP BY ticker
HAVING count() > 0
ORDER BY minutes_price_moved_pct DESC
Run this yourself

2026년 6월까지 AMD는 정규 세션 분 단위 거래 중 99.8%의 확률로 직전 분과 다른 가격을 기록했으며, 분 단위 중앙값 변동 폭은 9.6 베이시스 포인트(basis point, 1%의 100분의 1)였습니다. KO는 6개 종목 중 가장 드물게 가격이 갱신되었으며, 그 비율은 94.1%였습니다. 이처럼 활발한 종목에서 장중에 수 분간 마지막 가격이 움직이지 않는다면, 지연되거나 캐시된 숫자를 보고 있을 가능성이 큽니다. 거래량이 적은 종목(thinly traded stock)에서는 이러한 정지 상태가 일반적이므로, 타임스탬프 확인이 여전히 가장 확실한 검증 방법입니다.

진정한 실시간 무료 주식 시세를 제공하는 곳은 어디인가

개인 투자자에게 신뢰할 수 있는 실시간 가격 정보를 제공하는 출처는 두 곳이며, 흔히 사용되는 명칭 중에는 주의 깊게 살펴봐야 할 항목이 하나 있습니다.

  • 증권 계좌: 증권사는 고객에게 비전문가용 실시간 시세 이용 권한을 제공하며, 앱을 통해 실시간 호가를 전달합니다. 계좌 개설 시 직장 정보를 묻는 이유가 바로 이 때문입니다.
  • 거래소 운영 웹사이트: 해당 거래소에 상장된 종목에 한해 실시간 시세를 제공합니다. 단일 거래소의 데이터이므로 통합된 NBBO(National Best Bid and Offer, 최우선 매수·매도 호가)가 아닌 해당 거래소의 호가창을 보여줍니다.
  • 로그인이나 자격 확인 없이 실시간 무료 시세를 광고하는 서비스: 이러한 서비스를 이용하기 전에는 반드시 시세 데이터에 표시된 시간 정보를 확인해야 합니다.

데이터의 목적지가 화면이 아닌 프로그램인 경우 분류 기준이 달라집니다. 기계적 데이터 소비는 사용자별 라이선스와는 별도의 비디스플레이(non-display) 약관에 따라 라이선스가 부여됩니다. 무료 주식 시장 데이터 APISQL을 이용한 시장 데이터 조회에 관한 당사의 분석 글에서 해당 등급에 대해 다루고 있습니다.

자주 묻는 질문(FAQ)

주식 시세가 정확히 15분 지연되는 이유는 무엇입니까?

15분은 미국 주식 가격이 거래소 데이터 계약에 따라 수수료가 부과되는 실시간 상품에서 제외되는 기준 시간입니다. 데이터 배포자는 15분 이상 경과한 데이터에 대해서는 사용자 수를 보고하지 않고도 자유롭게 게시할 수 있습니다.

어떤 경우에 전문 시장 데이터 구독자로 분류됩니까?

증권 또는 선물 규제 기관에 등록된 경우, 투자 관련 직무에 종사하는 경우, 법인을 대신하여 데이터를 수신하는 경우, 또는 가격 정보를 비즈니스 목적으로 사용하는 경우에 해당합니다. 순자산이나 계좌 규모는 분류 기준과 무관합니다.

주식 시세가 지연되고 있는지 어떻게 확인할 수 있습니까?

시세의 타임스탬프를 현재 ET(미 동부 표준시)와 비교하고, 데이터 제공업체가 의무적으로 표시해야 하는 '지연(delayed)' 문구를 확인하십시오. 정규 거래 시간 중 활발하게 거래되는 종목의 가격이 수 분 동안 변동이 없다면 지연 데이터일 가능성이 높습니다.

무료 실시간 시세는 NBBO와 동일합니까?

대개 그렇지 않습니다. 단일 거래소에서 제공하는 무료 시세는 해당 거래소의 호가창만을 보여줍니다. NBBO(National Best Bid and Offer, 최우선 매수·매도 호가)는 통합 테이프(consolidated tape)를 통해 산출된 모든 거래소의 최우선 매수 및 매도 호가를 의미합니다.

15분 지연이 일일 종가 데이터에도 영향을 미칩니까?

아니요. 장이 마감되면 지연 데이터와 실시간 데이터의 종가나 일일 거래량 수치는 동일해집니다. 지연 데이터는 장중 거래 시에만 영향을 미칩니다.


이 페이지의 모든 패널은 데이터를 생성한 SQL과 함께 제공되므로, 위 수치들은 다른 티커(ticker)나 다른 월을 기준으로 재산출할 수 있습니다. 특정 종목에서 15분이라는 시간의 가치를 측정하려면 Strasmore 터미널에서 평이한 영어로 요청하십시오.

#market data#quotes#sip#exchange fees#nbbo