Strasmore Research
학습 Matt Connor작성자 Matt Connor

소수점 단위 주식 거래와 통합 테이프 기록 방식

소수점 단위 주식은 통합 테이프에 정수 단위로 기록됩니다. 2026년 2월 23일 시행된 규정 변경으로 인해 모든 주식 거래량 시계열 데이터에 단절이 발생했습니다. 본문에서는 소수점 주문이 시장 거래량과 체결 기록에 미치는 영향과 증권사의 자기매매 처리 과정을 상세히 설명합니다.

소수점 단위 주식(fractional shares)은 통합 테이프(consolidated tape)에 정수 단위 체결 건으로 기록되며, 2026년 2월 23일까지 이러한 변환은 두 방향으로 동시에 이루어졌습니다. 1주 미만의 거래는 1주로 올림 처리되었고, 1주를 초과하는 거래의 소수점 단위는 절사되었습니다. 해당 날짜를 포함하는 모든 주식 거래량 시계열 데이터에는 단절(seam)이 존재하며, 소수점 단위 주문이 빈번한 종목의 경우 과거 데이터는 양방향 모두에서 오류를 포함하고 있었습니다.

소수점 단위 주식 주문은 어떻게 체결 기록(print)이 되는가?

180달러에 호가되는 주식을 50달러어치 매수하겠다고 요청하면 0.2778주를 주문하게 됩니다. 거래소 주문장(order book)은 이러한 수량을 수용하지 않습니다. 거래소는 정수 단위로 매칭하며, 모든 시장 참여자에게 제공되는 최우선 매수·매도 호가(NBBO, national best bid and offer)를 결정하는 호가는 100주 단위인 라운드 랏(round lot)만을 집계합니다. 이에 관한 두 번째 규칙은 odd lot quote 페이지에서 다룹니다.

증권사는 자체 장부에서 이 차이를 메웁니다. 증권사는 고객들의 소수점 단위 주문을 상계(netting) 처리한 뒤, 정수 단위 부분만 하나의 주문으로 시장에 보내고, 소수점 단위는 자기매매(principal fill) 형태로 고객 계좌에 배분합니다. 즉, 소수점 거래의 상대방은 증권사 자신입니다. 공공 테이프에 기록되는 체결 건은 증권사가 시장에 보낸 정수 단위 수량입니다. 귀하의 0.2778주는 귀하의 계좌 명세서에만 존재할 뿐, 당일 공시되는 거래량에는 포함되지 않습니다.

첫 번째 사실을 기억하십시오. 대부분의 소수점 단위 거래는 공공 거래량 데이터에 전혀 나타나지 않았습니다. 눈에 보이는 것은 이를 대신하는 정수 단위의 집계 주문과, 테이프에 직접 전송되는 소수의 소수점 단위 보고 건뿐입니다.

2026년 2월 23일에 무엇이 바뀌었는가?

수량 필드 자체가 변경되었습니다. 이제 거래 보고서에는 소수점 여섯째 자리까지의 수량이 포함되며, 올림이 아닌 절사 방식이 적용됩니다. 따라서 0.142857주 보고 건은 그대로 게시될 수 있습니다. 해당 날짜 이전에는 모든 보고 수량이 정수여야 했으며, 올림 규칙은 대칭적이지 않았습니다.

  • 1주 미만: 수량이 1주로 올림 처리되었습니다. 실제 거래되지 않은 거래량이 발생했습니다.
  • 1주 이상: 소수점 단위가 절사되었습니다. 2.7주 보고 건은 2주로 게시되었습니다.

두 가지 왜곡이 같은 필드에서 반대 방향으로 발생했습니다. 거래 건수(trade counts)는 첫 번째 왜곡의 영향을 받았습니다. 1주로 올림 처리된 1주 미만 보고 건이 당일 거래 집계에서 하나의 정수 체결 건으로 계산된 것입니다. 수년간 소수점 거래가 많은 종목에 대해 이를 합산하면, 공시된 시계열 데이터는 실제보다 높거나 낮게 나타날 수 있으며, 데이터 자체만으로는 어떤 오류가 발생했는지 알 수 없습니다.

소규모 체결 규모의 분포에서 이러한 변화가 나타납니다. 아래 패널은 2026년 1월 초와 7월 초의 5거래일 기간 동안 26주 미만인 모든 AAPL 체결 건을 집계한 것입니다. 0행은 1주 미만의 모든 체결 건을 나타냅니다.

조회AAPL 소규모 거래량: 2026년 1월 5거래일 대비 2026년 7월 5거래일
모든 수치 뒤에 숨겨진 정확한 SQL
SELECT
    scaffold.shares                        AS shares,
    toUInt64(ifNull(t.jan_prints, 0))      AS prints_early_january,
    toUInt64(ifNull(t.jul_prints, 0))      AS prints_early_july
FROM
(
    SELECT toUInt32(arrayJoin(range(0, 26))) AS shares
) AS scaffold
LEFT JOIN
(
    SELECT
        toUInt32(floor(toFloat64(size)))                 AS shares,
        countIf(sip_timestamp <  '2026-02-01 00:00:00')  AS jan_prints,
        countIf(sip_timestamp >= '2026-07-01 00:00:00')  AS jul_prints
    FROM global_markets.stocks_trades
    WHERE ticker = 'AAPL'
      AND ((sip_timestamp >= '2026-01-05 00:00:00' AND sip_timestamp < '2026-01-10 00:00:00')
        OR (sip_timestamp >= '2026-07-06 00:00:00' AND sip_timestamp < '2026-07-11 00:00:00'))
      AND toFloat64(size) < 26
    GROUP BY shares
) AS t ON t.shares = scaffold.shares
ORDER BY shares
Run this yourself

1주 단위 버킷(bucket)에는 1월 기간 동안 1360015건, 7월 기간 동안 331200건의 체결이 있었으며, 7월의 2주 단위 체결은 132674건이었습니다. 1주 미만 행에는 1월에 2건, 7월에 1191620건이 기록되었습니다. 1월 기간 중 보고된 1주 미만의 모든 거래는 한 행 위로 올라가 1주 단위 체결로 계산되었습니다.

소수점 단위 주식과 홀 랏(odd lot)의 차이

이 둘은 자주 혼동되지만 서로 다른 제외 대상입니다. 홀 랏은 100주 미만의 정수 단위 주문입니다. 라운드 랏은 보호받는 호가의 기준이 되는 100주 단위입니다. 홀 랏은 공공 테이프에 기록되고 고유의 trade condition code를 가지며 거래량에 포함됩니다. 단지 NBBO를 갱신하지 않을 뿐입니다. 소수점 단위 수량은 1주 미만을 의미하는 별개의 개념입니다.

모든 소수점 단위 체결은 홀 랏에 해당합니다. 반면 홀 랏이 소수점 단위인 경우는 거의 없습니다. 아래 패널은 2026년 7월 3거래일 동안 6개 주요 종목의 체결 건 중 홀 랏이 차지하는 비중을 분류한 것입니다.

조회6개 종목별 단주(odd lots), 정수 단위(round lots) 및 1주 미만 거래량, 2026년 7월 8일~10일
모든 수치 뒤에 숨겨진 정확한 SQL
SELECT
    ticker,
    round(100 * countIf(toFloat64(size) >= 1 AND toFloat64(size) < 100) / count(), 1) AS odd_lot_pct,
    round(100 * countIf(toFloat64(size) >= 100) / count(), 1)                         AS round_lot_pct,
    countIf(toFloat64(size) < 1)                                                      AS sub_one_share_prints
FROM global_markets.stocks_trades
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'KO', 'PG', 'SPY')
  AND sip_timestamp >= '2026-07-08 00:00:00'
  AND sip_timestamp <  '2026-07-11 00:00:00'
GROUP BY ticker
ORDER BY odd_lot_pct DESC
Run this yourself

홀 랏 비중순으로 정렬된 목록은 체결 건의 74.1%를 차지하는 SPY부터 39%를 차지하는 KO까지 이어집니다. 마지막 열은 1주 미만 체결 건수를 나타내며, 같은 3거래일 동안 SPY에서 211801를 기록했습니다. 홀 랏은 일반적인 거래 형태인 반면, 소수점 단위 체결은 그 위에 얹힌 미세한 먼지와 같습니다.

거래량 열이 갑자기 소수점이 된 이유

지난 30년간 주식 수량은 정수였으며, 모든 하위 시스템은 이를 전제로 설계되었습니다. 소수점 여섯째 자리까지의 표기는 이러한 가정을 조용히 무너뜨립니다. 필드를 정수로 해석하는 판독기는 해당 행을 거부하거나 0.5를 0으로 내림 처리하며, 정수형으로 정의된 열은 같은 결과를 저장합니다. 거래 데이터를 직접 보관하는 경우, 수량 필드는 최소 6자리의 소수점을 지원하는 데이터 타입이어야 하며, 이를 기반으로 하는 모든 합계 역시 동일한 정밀도를 가져야 합니다.

거래량 시계열 데이터의 가장 간단한 건전성 검사는 평균 체결 규모(주식 거래량을 당일 거래 건수로 나눈 값)입니다. 이는 단기적으로 종목 내에서 안정적이므로 급격한 변화를 쉽게 포착할 수 있습니다. 다음은 변화 전후 2주간의 AAPL 데이터입니다.

조회2026년 2월 경계 기준 AAPL 평균 거래량
모든 수치 뒤에 숨겨진 정확한 SQL
SELECT
    toString(date)                                        AS session_date,
    formatDateTime(date, '%b %e')                         AS session_label,
    round(sum(toFloat64(volume)) / sum(transactions), 1)  AS shares_per_print,
    round(sum(toFloat64(volume)) / 1000000, 1)            AS volume_millions
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'AAPL'
  AND date >= '2026-02-09'
  AND date <= '2026-03-06'
GROUP BY date
HAVING sum(transactions) > 0
ORDER BY date
Run this yourself

AAPL의 평균 체결 규모는 Feb 961.3주(거래량 44.6백만 주), Mar 666.2주였습니다. 이 정도의 일일 변동은 일반적입니다. 2월 23일의 변화는 거래된 주식의 양이 아니라 수량 표기 방식이 바뀐 것입니다.

시계열 데이터가 단절 구간을 지날 때 변하는 수치들

거래량으로 정규화된 모든 수치는 이 단절의 영향을 받습니다. 확인해야 할 네 가지는 다음과 같습니다.

  • 상대 거래량(Relative volume): 이전 기간 평균 대비 당일 거래량. 2026년 2월 23일 이전까지 소급할 경우, 비율의 양쪽은 서로 다른 규칙으로 계산된 것입니다. 공식은 relative volume 페이지를 참조하십시오.
  • VWAP(거래량 가중 평균 가격): 모든 체결 건을 수량으로 가중치를 둡니다. 1주로 올림 처리된 1주 미만 체결 건은 실제보다 더 큰 가중치를 가졌습니다. how VWAP is calculated를 참조하십시오.
  • 분봉 및 일봉: 특정 기간 내 체결 규모를 합산하여 생성됩니다. How OHLCV bars are built에서 집계 과정을 설명합니다.
  • 회전율 및 비유동성 지표: 다년간의 가격 변동을 달러 거래량으로 나눕니다.

2026년 2월 23일을 가격 이력의 기업 활동(corporate action)처럼 다루십시오. 즉, 매끄럽게 보정해야 할 오류가 아니라 명확히 표시된 단절 구간으로 보아야 합니다. 가격 이력 역시 split adjusted price history 페이지에서 다루는 것과 같은 문제를 안고 있습니다. 단절 지점을 표시하지 않은 채 변경 전후의 거래량을 하나의 축에 두지 마십시오.

장기적인 평균 체결 규모를 보면 마지막 요점이 명확해집니다. 이는 종목별로 시장 구조에 따라 각자의 일정대로 변동합니다.

조회월별 평균 거래 주식 수, 2025년 9월~2026년 7월
모든 수치 뒤에 숨겨진 정확한 SQL
SELECT
    toString(m)                                                   AS month,
    formatDateTime(m, '%b %Y')                                    AS month_label,
    round(sumIf(vol, sym = 'AAPL') / sumIf(trades, sym = 'AAPL'), 1) AS aapl_shares_per_print,
    round(sumIf(vol, sym = 'MSFT') / sumIf(trades, sym = 'MSFT'), 1) AS msft_shares_per_print,
    round(sumIf(vol, sym = 'KO')   / sumIf(trades, sym = 'KO'), 1)   AS ko_shares_per_print
FROM
(
    SELECT
        toStartOfMonth(date)  AS m,
        ticker                AS sym,
        toFloat64(volume)     AS vol,
        transactions          AS trades
    FROM global_markets.stocks_daily_aggs
    WHERE ticker IN ('AAPL', 'MSFT', 'KO')
      AND date >= '2025-09-01'
      AND date <  '2026-08-01'
)
GROUP BY m
ORDER BY m
Run this yourself

AAPL의 평균 체결 규모는 Sep 202591.4주, Jul 202654.9주였으며, KO는 마감 월에 61.8주를 기록했습니다. 세 시계열은 구간 전체에 걸쳐 공통된 변화 없이 서로 다른 수준에 머물러 있습니다. 월간 거래량 시계열로는 보고 규칙이 변경된 지점을 확인할 수 없습니다. 달력이 이를 보여주며, 이것이 바로 해당 날짜를 기록해 두어야 하는 이유입니다.

윈도우 및 제외 사항
  • 1월 윈도우는 2026년 1월 5일부터 1월 9일까지 5거래일입니다. 7월 윈도우는 2026년 7월 6일부터 7월 10일까지 5거래일입니다. 두 기간 모두 SQL에 고정되어 있어 새로운 데이터가 유입되어도 패널은 변하지 않습니다.
  • 6개 종목 패널은 2026년 7월 8일부터 7월 10일까지 3거래일이며, 장소나 조건에 관계없이 모든 체결 건을 집계합니다.
  • 거래 데이터는 약간의 지연을 두고 유입되므로, 여기에 사용된 모든 윈도우는 과거 데이터에 해당합니다.

FAQ

거래소에서 소수점 단위 주식을 매수할 수 있습니까?

아니요. 거래소 주문장은 정수 단위만 수용합니다. 소수점 단위 주문은 증권사가 고객의 수요를 상계하고 정수 단위 부분만 시장에 보낸 후, 자체 재고에서 체결해 주는 것입니다. 소수점 단위는 귀하와 증권사 간의 자기매매 거래입니다.

소수점 단위 수량은 언제부터 테이프에 나타나기 시작했습니까?

2026년 2월 23일부터입니다. 해당 날짜부터 거래 보고서에는 소수점 여섯째 자리까지의 수량이 포함되며, 올림이 아닌 절사 방식이 적용됩니다. 그 이전에는 모든 보고 수량이 정수였습니다.

과거 거래량 수치는 잘못되었습니까?

소수점 거래가 많은 종목의 경우, 양방향 모두에서 오류가 있었습니다. 1주 미만 보고 건은 1주로 올림 처리되어 거래량이 증가했고, 1주 초과 보고 건은 절사되어 거래량이 감소했습니다. 이 두 가지는 예측 가능한 일정으로 상쇄되지 않습니다.

소수점 단위 주식 거래는 홀 랏(odd lot)과 같습니까?

아니요. 홀 랏은 100주 미만의 정수 단위 수량이며, 수십 년간 테이프에 기록되어 왔습니다. 소수점 단위 수량은 1주 미만을 의미합니다. 모든 소수점 단위 체결은 홀 랏에 해당하지만, 그 반대는 거의 성립하지 않습니다.

2026년 2월 경계에 걸친 거래량을 차트로 그리는 가장 안전한 방법은 무엇입니까?

표시를 남기십시오. 수량은 소수점 여섯째 자리까지 지원하는 데이터 타입을 유지하고, 경계를 넘는 모든 시계열에 해당 날짜를 표시하며, 소급 평균이 양쪽을 모두 포함할 경우 이를 명확히 밝히십시오.


여기에 포함된 모든 패널은 하단에 SQL을 포함하고 있습니다. 패널을 열어 티커나 기간을 변경하고 Strasmore 터미널에서 직접 체결 건수를 확인해 보십시오.