Strasmore Research
Deep Dives · Matt ConnorBy Matt Connor ·

박스 스프레드 옵션 전략과 내재 대출 금리 계산

박스 스프레드는 네 개의 옵션을 조합하여 구성하는 합성 제로 쿠폰 대출 전략입니다. 만기 시 행사가격 차이로 정산되는 구조를 이해하고, 이를 통해 내재 대출 금리를 도출하는 방법을 설명합니다. 계약당 천 달러로 정산되는 원리와 기초자산 가격 구간별 손익 구조를 분석합니다.

박스 스프레드(box spread)란 무엇인가?

박스 스프레드는 단일 기초자산에 대해 두 개의 행사가격과 하나의 만기일을 사용하는 전략입니다. 낮은 행사가격을 K1, 높은 행사가격을 K2라고 할 때, 롱 박스(long box)는 다음 네 가지 포지션으로 구성됩니다.

  • K1 행사가격의 콜옵션 매수
  • K2 행사가격의 콜옵션 매도
  • K2 행사가격의 풋옵션 매수
  • K1 행사가격의 풋옵션 매도

앞의 두 포지션은 불 콜 스프레드(bull call spread)를, 뒤의 두 포지션은 베어 풋 스프레드(bear put spread)를 형성합니다. 이 네 가지를 동시에 매수하면 순차감(net debit)이 발생하며, 이는 오늘 계좌에서 현금이 나가는 것을 의미합니다. 미국 상장 주식 옵션은 한 계약당 100주를 기초로 하므로, 행사가격 차이가 10포인트인 박스 스프레드는 계약당 1,000달러로 정산됩니다.

위 네 가지 포지션을 매도하는 것을 숏 박스(short box)라고 합니다. 이는 오늘 순증가(net credit)를 발생시키며, 만기 시 행사가격 차이만큼을 지불해야 합니다.

박스 스프레드가 만기 시 행사가격 차이만큼을 지급하는 이유

만기 시 기초자산 가격을 세 구간으로 나눌 수 있습니다. K1 미만에서는 두 콜옵션이 모두 무가치하게 만기되고 풋 스프레드는 전체 폭만큼의 가치를 가집니다. K2 초과 구간에서는 두 풋옵션이 모두 무가치하게 만기되고 콜 스프레드가 전체 폭만큼의 가치를 가집니다. 두 행사가격 사이에서는 K1의 롱 콜옵션이 K1으로부터의 상승분만큼, K2의 롱 풋옵션이 K2로부터의 하락분만큼의 가치를 가지며, 이 두 거리를 합치면 전체 폭이 됩니다.

아래 패널은 2026년 6월 중 SPY가 마감된 모든 5달러 단위 가격 수준에서 해당 두 스프레드의 가치를 산출한 것입니다. 행사가격은 해당 월 평균 종가에서 상하 5포인트로 설정되었습니다.

조회2026년 6월 SPY 종가 기준 10포인트 박스(box) 가치
모든 수치 뒤에 숨겨진 정확한 SQL
WITH
    daily AS
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York'))   AS d,
            toFloat64(argMax(close, window_start))                 AS spy_close
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          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
    ),
    strikes AS
    (
        SELECT
            round(avg(spy_close) / 5) * 5 - 5 AS lower_strike,
            round(avg(spy_close) / 5) * 5 + 5 AS upper_strike
        FROM daily
    ),
    levels AS
    (
        SELECT DISTINCT round(spy_close / 5) * 5 AS settle
        FROM daily
    )
SELECT
    concat('$', toString(toUInt32(settle)))                                                AS settle_level,
    concat('$', toString(toUInt32(lower_strike)), ' / $', toString(toUInt32(upper_strike))) AS box_strikes,
    round(greatest(settle - lower_strike, 0) - greatest(settle - upper_strike, 0), 2)      AS call_leg_value,
    round(greatest(upper_strike - settle, 0) - greatest(lower_strike - settle, 0), 2)      AS put_leg_value,
    round(greatest(settle - lower_strike, 0) - greatest(settle - upper_strike, 0)
        + greatest(upper_strike - settle, 0) - greatest(lower_strike - settle, 0), 2)      AS box_value
FROM levels
CROSS JOIN strikes
ORDER BY settle
Run this yourself

call_leg_value 열과 put_leg_value 열은 가격 수준별로 서로 상쇄됩니다. box_value 열은 변하지 않습니다. SPY가 기록한 최저가에서 10, 최고가에서 10이며, $740 / $750 행사가격에서 동일합니다. 이 상숫값이 전체 구조의 핵심입니다. 동일한 원리를 공식화한 것이 풋-콜 패리티(put call parity)이며, 이는 동일한 행사가격을 공유하는 콜옵션과 풋옵션 간의 관계를 고정합니다. 박스 스프레드는 두 행사가격에서 패리티를 적용하고 그 차이를 취하는 방식입니다.

박스 스프레드의 내재 대출 금리 계산법

금리는 오늘 지불한 순차감과 만기 시 수취할 행사가격 차이라는 두 가지 숫자로 결정됩니다. 잔존 만기가 200일 남은 10포인트 박스 스프레드가 9.70달러의 순차감으로 호가된다고 가정해 봅시다. 계약당 오늘 970달러를 지불하고 만기 시 1,000달러를 돌려받으므로 30달러의 수익이 발생합니다.

수익을 투자 원금으로 나누고 연율로 환산합니다. 970달러에 대한 30달러 수익은 200일 동안 3.09%이며, 이를 365일 기준으로 환산하면 연간 약 5.6%가 됩니다. 단순 환산 대신 복리를 적용하여 1,000을 970으로 나눈 값의 (365/200) 제곱을 계산하면 약 5.7%가 나옵니다. 두 방식 모두 이 가격이 내포하는 금리가 얼마인가라는 질문에 답합니다.

롱 박스는 대출인가 차입인가?

롱 박스는 대출입니다. 오늘 계좌에서 현금이 나가고 만기 시 더 큰 고정 금액이 들어오며, 그 차액이 이자 수익이 됩니다.

숏 박스는 차입입니다. 오늘 현금이 들어오고 만기 시 행사가격 차이만큼을 지불해야 하며, 동일한 계산을 통해 수익률이 아닌 지불 금리가 산출됩니다. 이 방향은 종종 반대로 설명되기도 합니다. 현금을 기준으로 생각하십시오. 오늘 돈을 받고 나중에 고정 금액을 상환하는 것은 차입이며, 오늘 돈을 지불하고 나중에 고정 금액을 받는 것은 대출입니다.

박스 스프레드에 델타(delta)가 존재하는가?

델타는 기초자산 가격이 1달러 변할 때 옵션 가격이 얼마나 변하는지를 측정합니다. 박스 스프레드의 네 개 포지션은 각각 큰 델타를 가지지만, 서로 상쇄됩니다. 아래 패널은 2026년 6월 1일 기준, 2026년 12월 18일 만기 SPY 옵션의 그리스(greeks) 지표를 보여줍니다. K1은 현물 가격과 가장 가까운 행사가격으로 고정하고 K2는 위로 넓혀갑니다.

조회상단 행사가 확대에 따른 SPY 박스의 순 델타(delta) (2026년 6월 1일)
모든 수치 뒤에 숨겨진 정확한 SQL
WITH
    chain AS
    (
        SELECT
            toFloat64(strike_price)           AS strike,
            avg(toFloat64(underlying_close))  AS spot,
            round(avgIf(delta, delta > 0), 4) AS call_delta,
            round(avgIf(delta, delta < 0), 4) AS put_delta
        FROM global_markets.options_greeks
        WHERE underlying_symbol = 'SPY'
          AND date = '2026-06-01'
          AND expiration_date = '2026-12-18'
          AND iv_converged = 1
          AND volume > 0
        GROUP BY strike
        HAVING countIf(delta > 0) > 0
           AND countIf(delta < 0) > 0
    ),
    lower_leg AS
    (
        SELECT
            strike     AS k1,
            call_delta AS c1,
            put_delta  AS p1
        FROM chain
        ORDER BY abs(strike - spot)
        LIMIT 1
    )
SELECT
    toUInt32(strike - k1)                      AS strike_width,
    round(c1 - call_delta, 4)                  AS call_leg_delta,
    round(put_delta - p1, 4)                   AS put_leg_delta,
    round(c1 - call_delta + put_delta - p1, 4) AS box_net_delta
FROM chain
CROSS JOIN lower_leg
WHERE strike > k1
  AND strike <= k1 + 60
ORDER BY strike
Run this yourself

패널에서 가장 넓은 간격인 50 포인트 차이에서, 콜 포지션의 델타는 0.2208, 풋 포지션의 델타는 -0.1977입니다. 두 값을 합치면 0.0231가 됩니다. 가장 좁은 간격에서는 0.0005이 됩니다. 이러한 잔차는 0 주변의 모델 노이즈에 불과합니다. 박스 스프레드는 방향성에 대한 견해가 없으며, 이것이 바로 포지션이 아닌 금융 상품으로 가격이 책정되는 이유입니다.

박스 스프레드의 실질적인 위험은 무엇인가?

미국식 옵션은 만기 전 영업일이라면 언제든지 보유자가 행사할 수 있습니다. 유럽식 옵션은 그렇지 않습니다. 미국식 옵션과 유럽식 옵션에서 다루는 이 차이가 박스 스프레드가 대출처럼 작동할지, 아니면 실시간 마진 포지션처럼 작동할지를 결정합니다.

과정은 다음과 같습니다.

  1. 롱 박스와 숏 박스 모두 두 개의 매도 포지션을 포함하며, 주식이나 ETF의 경우 이 포지션들은 미국식 옵션입니다.
  2. 롱 박스는 매도 포지션을 외가격(out of the money) 상태로 유지합니다. 기초자산이 행사가격 사이에 있을 때 항상 그렇습니다. 숏 박스는 반대입니다. 동일 구간에서 두 매도 포지션이 모두 내가격(in the money) 상태가 됩니다.
  3. 시간 가치가 거의 남지 않은 내가격 매도 옵션은 보유자가 조기 행사할 가능성이 높습니다. 배당금 지급이 임박한 경우 콜옵션 매도 포지션에서 흔히 발생하며, 이는 배당락일과 옵션에서 다룹니다.
  4. 행사가 발생하면 해당 포지션은 계약당 100주의 주식 매수 또는 매도 포지션으로 전환되며, 나머지 세 포지션은 그대로 남습니다.
  5. 주식 포지션은 박스 스프레드의 폭이 아닌 주가를 기준으로 마진 요구액(margin requirement)이 발생합니다. 수백 달러의 순증가를 기대했던 계좌가 수만 달러의 마진 요구를 받을 수 있으며, 이를 충족하지 못하면 강제 청산이 뒤따릅니다.

이 과정으로 인해 2018년 널리 알려진 개인 투자자의 계좌가 비워진 사례가 있습니다. 기초자산이 전혀 움직이지 않았음에도 메커니즘 자체가 손실을 유발한 것입니다.

현금 결제형 지수 옵션은 다릅니다. 이들은 유럽식 옵션이므로 만기 전에는 누구도 행사할 수 없습니다. 결제는 주식 인도 대신 계산된 지수 수준에 따른 현금 지급으로 이루어지며, 결제 시점과 관련된 특이 사항은 AM 결제 옵션과 PM 결제 옵션에 설명되어 있습니다.

수수료와 매수-매도 호가 스프레드가 수익을 잠식하는 이유

넓은 박스 스프레드의 포지션들은 현물 가격에서 멀리 떨어진 행사가격에 위치합니다. 아래 패널은 2026년 6월 SPY 옵션 거래량을 5개의 내가격 수준(moneyness)으로 분류한 것입니다.

조회현물 대비 행사가 거리별 SPY 옵션 거래량 분포 (2026년 6월)
모든 수치 뒤에 숨겨진 정확한 SQL
WITH
    chain AS
    (
        SELECT
            multiIf(
                toFloat64(strike_price) / toFloat64(underlying_close) < 0.85, 1,
                toFloat64(strike_price) / toFloat64(underlying_close) < 0.95, 2,
                toFloat64(strike_price) / toFloat64(underlying_close) < 1.05, 3,
                toFloat64(strike_price) / toFloat64(underlying_close) < 1.15, 4,
                5)                          AS bucket_key,
            multiIf(
                bucket_key = 1, 'more than 15% below spot',
                bucket_key = 2, '5% to 15% below spot',
                bucket_key = 3, 'within 5% of spot',
                bucket_key = 4, '5% to 15% above spot',
                'more than 15% above spot') AS moneyness_bucket,
            volume
        FROM global_markets.options_greeks
        WHERE underlying_symbol = 'SPY'
          AND date >= '2026-06-01'
          AND date <  '2026-07-01'
          AND iv_converged = 1
          AND volume > 0
          AND days_to_expiry BETWEEN 30 AND 400
    ),
    totals AS
    (
        SELECT
            sum(volume) AS all_volume,
            count()     AS all_rows
        FROM chain
    )
SELECT
    moneyness_bucket,
    round(100 * count() / any(all_rows), 2)       AS contracts_pct,
    round(100 * sum(volume) / any(all_volume), 2) AS turnover_pct
FROM chain
CROSS JOIN totals
GROUP BY bucket_key, moneyness_bucket
ORDER BY bucket_key
Run this yourself

2026년 6월, 만기가 한 달 이상 남은 SPY 옵션 중 현물 가격 대비 5% 이내의 행사가격이 전체 거래량의 43%를 차지했으며, 전체 거래일의 34.99%를 점유했습니다. 현물 가격보다 가장 낮은 구간은 전체 거래량의 25.03%, 거래일의 23.06%를 차지했습니다. 이 행사가격들은 넓은 박스 스프레드가 기반으로 하는 깊은 내가격 콜옵션과, 동일 가격대의 먼 외가격 풋옵션들입니다. 특정 구간에 거래량이 몰려 있다고 해서 박스 스프레드에 필요한 특정 계약에 거래량이 많은 것은 아니며, 모든 포지션에는 호가 스프레드가 존재합니다. 박스 스프레드는 진입 시 4개의 스프레드를, 만기 전 청산 시 4개의 스프레드를 추가로 부담해야 합니다.

실행 오차(execution error) 또한 기간에 따라 커집니다. 10포인트 박스 스프레드에서 10센트의 슬리피지는 행사가격 폭의 1%에 해당하며, 짧은 기간 동안 1%의 연율화 비용은 매우 큽니다. 아래 패널은 2026년 6월 1일 기준 SPY 만기물에 대해 10센트의 비용을 산출한 것입니다.

조회10포인트 박스 거래 시 10센트 체결 오차에 따른 연간 비용
모든 수치 뒤에 숨겨진 정확한 SQL
SELECT
    concat(formatDateTime(expiration_date, '%b %e, %Y'),
           ' (', toString(toUInt32(any(days_to_expiry))), 'd)') AS expiry_label,
    round(100 * (0.10 / 10) * (365 / any(days_to_expiry)), 2)   AS annual_cost_pct
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
  AND date = '2026-06-01'
  AND iv_converged = 1
  AND volume > 0
  AND toDayOfWeek(expiration_date) = 5
  AND toDayOfMonth(expiration_date) BETWEEN 15 AND 21
  AND days_to_expiry BETWEEN 30 AND 800
GROUP BY expiration_date
ORDER BY any(days_to_expiry)
LIMIT 12
Run this yourself

Jul 17, 2026 (46d) 만기물에서 10센트의 비용은 연간 7.93%입니다. Jun 16, 2028 (746d) 만기물에서는 0.49%가 됩니다. 금융 거래가 장기로 이루어지는 이유가 바로 이것이며, 박스 스프레드의 포지션들이 깊은 내가격 LEAPS와 유사해 보이는 이유입니다. 여기에 수수료가 추가되며, 계약당 및 포지션당 비용은 옵션 거래 비용에서 확인할 수 있습니다.

자주 묻는 질문(FAQ)

박스 스프레드는 무위험인가요?

만기 시 지급액은 행사가격 차이로 고정되며, 포지션은 방향성 노출이 없습니다. 다만 미국식 옵션의 조기 행사 위험과 네 개 포지션을 진입하고 청산하는 과정에서 발생하는 비용이라는 두 가지 위험은 남아 있습니다.

롱 박스와 숏 박스의 차이는 무엇인가요?

롱 박스는 오늘 순차감을 지불하고 만기 시 행사가격 차이를 수취하므로 대출자의 위치에 서게 됩니다. 숏 박스는 오늘 순증가를 수취하고 만기 시 행사가격 차이를 지불하므로 차입자의 위치에 서게 됩니다.

박스 스프레드가 조기 행사될 수 있나요?

네, 주식이나 ETF의 미국식 옵션으로 구성된 경우 가능합니다. 매도 포지션은 보유자에 의해 언제든 행사될 수 있으며, 이 경우 해당 포지션은 자체 마진 요구가 있는 주식 포지션으로 전환됩니다. 유럽식 현금 결제형 지수 옵션으로 구성된 박스 스프레드는 조기 행사될 수 없습니다.

브로커들이 숏 박스 스프레드를 제한하는 이유는 무엇인가요?

많은 브로커가 미국식 옵션에 대한 숏 박스를 제한하거나 차단합니다. 조기 행사가 발생하면 작은 옵션 포지션이 큰 주식 포지션과 그에 따른 마진 요구로 대체되기 때문입니다.

박스 스프레드의 내재 금리는 어떻게 계산하나요?

행사가격 차이를 순차감으로 나누고, 그 결과값을 (365/잔존 만기일)만큼 거듭제곱한 뒤 1을 뺍니다. 단순 계산 방식은 수익을 차감액으로 나누고 365를 잔존 일수로 곱하는 것입니다.


이곳의 모든 패널은 생성에 사용된 SQL과 함께 제공됩니다. 하나를 열어 티커나 만기일을 변경한 뒤 Strasmore 터미널에서 직접 실행해 보십시오.

#options#box spread#arbitrage#financing#put-call parity