본문 바로가기

Financial Engineering/Foreign exchange option pricing

Chapter 7. Numerical Methods for Pricing and Calibration

Chapter 7. 수치해석 기반 가격평가와 캘리브레이션
Numerical Methods for Pricing and Calibration


0. 이 장을 읽기 전에 반드시 알아야 할 배경지식

Chapter 7은 금융공학에서 가장 실무적인 질문을 정면으로 다룹니다. "모형이 주어졌을 때 가격을 어떻게 계산하는가?", 그리고 "시장 데이터에 맞게 모형 파라미터를 어떻게 조정하는가?". 이 두 질문은 수학적으로는 기대값(적분)역문제(inverse problem)로서의 최적화로 환원되지만, 현실에서는 닫힌형 해가 거의 없기 때문에 수치해석가 필수 도구가 됩니다.

이 장의 난이도는 단순히 공식을 많이 외워서 높아지는 것이 아닙니다. 난이도의 핵심은 서로 다른 층위의 개념들이 한 사이클로 연결되어 있다는 점입니다. 확률론(기대값) → 위험중립(측도변경) → 가격 엔진(MC/PDE/푸리에) → 수치오차(편향/노이즈) → 최적화(LM 등) → 다시 가격 엔진 호출. 이 연결고리를 한 번이라도 끊어 이해하면, 실무에서 가장 흔한 실패(캘리브레이션 발산, IV 루트 미존재, PDE 폭주, MC 노이즈로 야코비안 붕괴)를 피할 수 없습니다.

[이 장의 정체성]

Chapter 7은 “수치기법 목록”이 아니라, 가격(기대값) ↔ 수치계산 ↔ 오차 ↔ 캘리브레이션의 한 덩어리 시스템을 다룹니다. 따라서 각 기법을 외우기보다, 왜 이 기법이 이 병목을 해결하는가를 구조적으로 이해하는 것이 목표입니다.

0.1 핵심 개념 지도: 무엇이 어디로 이어지는가

계층 개념 이 장에서의 역할 연결
확률·가격 조건부기대값, 마팅게일 가격을 “현재 정보 하 기대값”으로 정의 마팅게일 가격평가, Tower property
측도 Girsanov, 누메레르 현실 드리프트를 가격에서 제거 \(\mathbb{P}\to\mathbb{Q}\), forward measure
수치적분 Monte Carlo, 분산감소 고차원·경로의존 기대값 계산 CLT, SE, CV/IS/CRN/QMC
PDE 유한차분, 안정성 저차원에서 빠르고 노이즈 없는 가격 BSM PDE, CFL, CN, ADI
선형대수 삼대각/희소시스템 Implicit/CN/ADI의 핵심 병목 Thomas, conditioning, sparse LU
루트파인딩 IV 계산, Brent/Newton 시장 데이터를 “변동성”으로 표준화 vega, 브라켓, 무차익 범위
최적화 LM, GN, Regularization 모형 파라미터를 데이터에 맞춤 Jacobian, identifiability, constraints
수치오차 편향 vs 노이즈 캘리브레이션 품질을 직접 결정 time/space discretization, MC SE

0.2 읽는 방법: “초심자 경로”와 “실무자 경로”

처음 보는 독자(개념 연결이 목표)

  • Section 1 → 2 → 3: “가격 = 위험중립 기대값”이 왜 성립하는지
  • Section 6 → 7: MC가 왜 필요한지, 왜 배리어에서 어려운지
  • Section 8 → 10: PDE 스킴과 안정성의 핵심 논리
  • Section 4 → 5: IV와 캘리브레이션이 수치적으로 어떤 의미인지

실무자(속도/안정성/디버깅이 목표)

  • Section 4.6~4.7: 브렌트 + 예외처리(루트 없음, 베가 0)
  • Section 5.6~5.7: LM과 야코비안, MC 노이즈 상호작용
  • Section 10.4 & 12: Rannacher + 비균일 격자(정확도/진동/도메인)
  • Section 13.2: 오차 분류를 기준으로 디버깅 루틴 구성

0.3 표기·스케일·컴퓨터 산술: 수치해석이 실제로 어려운 이유

부동소수점과 머신 엡실론

컴퓨터는 실수를 정확히 저장하지 못합니다. IEEE 754 배정밀도(double)에서는 대략 15~16자리 유효숫자를 가집니다. 머신 엡실론 \(\varepsilon_{\text{mach}}\approx 2^{-52}\approx 2.22\times 10^{-16}\)은 “1과 구분되는 가장 작은 양의 수”의 대표적 스케일입니다.

이 사실은 “미소 \(h\)”를 쓰는 유한차분, “작은 시간스텝 \(\Delta t\)”를 쓰는 PDE/MC에서 곧바로 문제를 일으킵니다. 너무 작은 \(h\)를 쓰면 함수값 차이가 반올림 오차에 묻히고(치명적 소거), 너무 큰 \(h\)를 쓰면 절단오차가 커집니다.

[실무 함정]

“정밀도를 올리려고 \(h\)를 더 줄였는데 오히려 결과가 나빠졌다”는 현상은 유한차분에서 매우 흔합니다. 이 장에서는 절단오차(truncation)와 반올림오차(round-off)의 균형이 반복해서 등장합니다.


1. 가격평가의 출발점: 기대값과 ‘계산 불가능성’

1.1 파생상품은 무엇이고, 왜 가격 계산이 본질적으로 어렵나

파생상품(derivative)은 기초자산의 미래 값(또는 미래 경로)에 의해 지급액이 결정되는 계약입니다. 유럽형 콜 옵션을 가장 단순한 예로 들면, 만기 \(T\)에 \(\Phi(S_T)=(S_T-K)^+\)를 지급합니다.

“가격이 어렵다”는 말은 단순히 적분이 복잡하다는 뜻이 아닙니다. 핵심은 다음 두 층위가 동시에 얽힌다는 점입니다.

  • 불확실성 층위: \(\Phi\) 자체가 확률변수이며, 분포가 모형에 의해 결정된다.
  • 가치평가 층위: “불확실한 현금흐름의 현재가치”를 어떤 원리로 정하는가(무차익, 복제, 위험중립).

[핵심]

파생상품 가격평가의 진짜 난점은 “미래를 예측하기 어려워서”가 아니라, 불확실한 현금흐름을 동일한 기준으로 현재가로 환산하는 구조가 필요하기 때문입니다. 이 구조가 무차익과 위험중립 측도입니다.

1.2 위험중립 가격평가 공식: 이 장의 모든 수치기법이 결국 풀려는 ‘한 줄’

가장 일반적인 형태(국내 단위로 표기)

$$V_0=\mathbb{E}^{\mathbb{Q}}\!\left[\exp\!\left(-\int_0^T r_d(t)\,dt\right)\,\Phi(\text{path})\right]$$

유럽형이면 \(\Phi\)가 \(S_T\)만의 함수지만, 배리어/아시안/룩백/클리퀘처럼 경로의존형이면 \(\text{path}\) 전체에 의존합니다.

문제는 이 기대값이 대부분의 현실적 모형에서 닫힌형으로 계산되지 않는다는 것입니다. 따라서 이 장의 수치해석은 사실상 다음을 다양한 방식으로 수행하는 기술입니다.

  • 적분을 표본 평균으로 근사한다 → Monte Carlo
  • 기대값이 만족하는 PDE를 풀어 값 자체를 구한다 → Backward PDE + 유한차분
  • 특성함수/푸리에 적분으로 기대값을 빠르게 평가한다 → Semi-analytic (FFT/COS 등)
방법 핵심 아이디어 강점 약점
Monte Carlo 기대값 = 표본 평균 고차원·경로의존에 강함 \(1/\sqrt{N}\) 수렴, 배리어 편향
PDE (Backward) 가격함수가 만족하는 PDE를 수치적으로 해석 저차원(1~3D) 매우 빠름 차원의 저주, 고차원 불가
Semi-analytic 푸리에/특성함수로 적분 가속 Heston 등에서 압도적으로 빠름 특성함수 알려진 모델 한정

1.3 캘리브레이션: “최적화 문제”처럼 보이지만 실질은 ‘가격 엔진’ 문제

캘리브레이션(calibration)은 시장 데이터(가격/IV)를 설명하도록 모형 파라미터 \(\theta\)를 맞추는 과정입니다. 수학적으로는 다음과 같은 최소제곱 문제로 표현되는 경우가 많습니다.

$$\theta^\*=\arg\min_{\theta}\sum_{i=1}^{M} w_i\Big(q_{\text{model}}^{(i)}(\theta)-q_{\text{mkt}}^{(i)}\Big)^2$$

여기서 \(q\)는 가격 또는 내재변동성, \(w_i\)는 가중치, \(M\)은 데이터 포인트 수입니다.

중요한 사실은 최적화가 한 번의 계산이 아니라는 점입니다. 최적화 알고리즘은 \(\theta\)를 반복적으로 업데이트하며, 매 반복마다 모든 \(q_{\text{model}}^{(i)}(\theta)\)를 다시 계산해야 합니다. 즉, 캘리브레이션의 실질 비용은

“가격 엔진 호출 비용 × 최적화 반복 횟수 × 데이터 포인트 수”

따라서 가격 엔진이 느리거나(예: PDE 격자 너무 큼), 수치 노이즈가 크거나(예: MC 경로 수 부족), 민감도(야코비안)가 불안정하면(유한차분 \(h\) 선택 실패), 최적화는 “수학적으로는 맞는 알고리즘”이어도 현장에서 무너집니다.


2. 확률공간·기대값·조건부기대값: MC와 위험중립의 ‘문법’

2.1 확률공간의 구조: 불확실성을 수학으로 고정하는 방법

확률공간 \((\Omega,\mathcal{F},\mathbb{P})\)

  • \(\Omega\): 가능한 모든 결과(경로)의 집합
  • \(\mathcal{F}\): 사건들의 집합(측정 가능한 정보)
  • \(\mathbb{P}\): 사건에 확률을 부여하는 측도

확률변수 \(X:\Omega\to\mathbb{R}\)는 “값을 확률로 논할 수 있는” 가측 함수입니다. 옵션 페이오프 \(\Phi(S_T)\)는 \(S_T\)가 확률변수이므로 자동으로 확률변수입니다.

여기서 \(\mathcal{F}\)가 중요한 이유는 “정보”를 다루기 위해서입니다. 금융에서 우리는 항상 “지금까지 관측된 정보”를 조건으로 기대값을 계산합니다. 이를 위해 시간에 따라 정보가 증가하는 구조, 즉 여과(filtration) \(\{\mathcal{F}_t\}\)를 도입합니다.

여과 \(\{\mathcal{F}_t\}\)와 조건부기대값

\(\mathcal{F}_t\)는 시점 \(t\)까지 관측 가능한 모든 정보를 담습니다. 조건부기대값 \(\mathbb{E}[X|\mathcal{F}_t]\)는 “현재 정보로 보았을 때의 최선의 예측(평균)”이며, 마팅게일은 바로 이 조건부기대값의 고정 성질로 정의됩니다.

2.2 기대값의 정의: 합과 적분, 그리고 ‘가격 = 적분’의 정체

이산형에서는 기대값이 합, 연속형에서는 적분입니다. 옵션 가격이 어려운 이유는 대부분 “복잡한 분포에 대한 적분”으로 귀결됩니다.

연속형 기대값

$$\mathbb{E}[g(X)]=\int_{-\infty}^{\infty} g(x)f_X(x)\,dx$$

유럽콜에 대해 \(g(x)=(x-K)^+\)이면 $$\mathbb{E}[(S_T-K)^+]=\int_{K}^{\infty}(x-K)f_{S_T}(x)\,dx.$$

2.3 조건부기대값의 두 성질: Tower와 선형성

[Tower property]

$$\mathbb{E}\!\left[\mathbb{E}[X|\mathcal{F}_t]\right]=\mathbb{E}[X],\qquad \mathbb{E}\!\left[X|\mathcal{F}_s\right]=\mathbb{E}\!\left[\mathbb{E}[X|\mathcal{F}_t]|\mathcal{F}_s\right]\ (s\le t).$$

이 성질은 다기간 이항모형의 backward induction, PDE의 backward 성격, MC에서 단계적 시뮬레이션 구조 모두의 수학적 기반입니다.

2.4 분산·표준오차·CLT: MC 결과에 ‘오차막대’를 붙이는 이유

MC는 “가격을 숫자로 하나 찍어준다”가 아니라, “가격 추정치 + 불확실성(표준오차)”를 함께 제공해야 의미가 있습니다.

표본평균 \(\bar{X}\)의 분산

Step 1. \(X_1,\dots,X_N\) i.i.d., \(\mathrm{Var}(X_i)=\sigma^2\)

$$\mathrm{Var}(\bar{X})=\mathrm{Var}\!\left(\frac{1}{N}\sum_{i=1}^N X_i\right)=\frac{1}{N^2}\sum_{i=1}^N\mathrm{Var}(X_i)=\frac{\sigma^2}{N}$$

결론. 표준오차(SE) = \(\sigma/\sqrt{N}\)

중심극한정리(CLT)와 신뢰구간

충분히 큰 \(N\)에서 \(\bar{X}\approx N(\mu,\sigma^2/N)\)이므로, 95% 신뢰구간은 대략 \(\bar{X}\pm 1.96\, s/\sqrt{N}\)입니다. 실무 리포트에서 “MC 가격 = 1.2345”만 단독으로 쓰면 정보가 부족합니다.


3. 무차익·측도변경·누메레르: 왜 ‘드리프트’는 가격에서 사라지나

3.1 무차익의 정의: “손실 없이 가끔 이기는” 전략의 부재

차익거래(Arbitrage)

초기 비용이 0(또는 음수)이고, 미래에 손실이 없으며(\(\ge 0\) a.s.), 어떤 상태에서는 양(+)의 이익이 발생하는 전략. 무차익은 이런 전략이 존재하지 않는다는 가정입니다.

무차익은 “현실에서 항상 완벽히 성립한다”는 진술이 아니라, 마찰이 작고 경쟁이 존재하는 시장에서 가격결정의 논리적 기준으로 작동하는 규범입니다. 이 규범이 성립하는 순간, 가격은 주관적 예측이 아니라 구조적 제약을 받습니다.

3.2 물리 측도 \(\mathbb{P}\)에서의 SDE: 기대수익률(위험프리미엄)의 자리

$$dS_t=\mu_{\mathbb{P}}S_t\,dt+\sigma S_t\,dW_t^{\mathbb{P}}$$

\(\mu_{\mathbb{P}}\)는 “현실 세계에서의 기대수익률”이며 일반적으로 \(r+\)위험프리미엄을 포함합니다. 그런데 옵션가격은 이 \(\mu_{\mathbb{P}}\)를 직접 필요로 하지 않습니다. 이 역설의 해답이 측도변경입니다.

3.3 Girsanov 정리: “확률을 바꾸면 브라운 운동의 드리프트가 바뀐다”

위험중립 측도로의 전환(핵심 형태)

시장가격의 위험 \(\lambda\)를 사용해 라돈-니코딤 도함수(우도비)를 정의:

$$\frac{d\mathbb{Q}}{d\mathbb{P}}\Big|_{\mathcal{F}_T}= \exp\!\left(-\lambda W_T^{\mathbb{P}}-\tfrac12\lambda^2T\right).$$

그 결과 \(\mathbb{Q}\) 아래에서 \(\tilde{W}_t=W_t^{\mathbb{P}}+\lambda t\)가 브라운 운동이 되고, 드리프트는 무위험이자율로 “재정렬”됩니다.

$$dS_t=rS_t\,dt+\sigma S_t\,d\tilde{W}_t^{\mathbb{Q}}.$$

[핵심 해석]

드리프트가 사라진다는 뜻은 “현실에서 기대수익률이 없다”가 아니라, 가격결정에 필요한 확률체계(위험중립 측도)를 선택하면 할인된 가격이 마팅게일이 되도록 만들 수 있다는 뜻입니다. 즉 \(\mu_{\mathbb{P}}\)는 “현실의 통계”이고, 가격은 “무차익의 구조”입니다.

3.4 마팅게일 가격평가 정리: 이 장의 중심 공식(조건부 형태)

$$V_t=\mathbb{E}^{\mathbb{Q}}\!\left[e^{-\int_t^T r(u)\,du}\,\Phi\ \Big|\ \mathcal{F}_t\right]$$

이 식은 “가격 = 현재 정보 하에서의 할인 기대값”이라는 문장 하나로 요약되지만, 그 뒤에는 무차익, 측도변경, 조건부기대값, 마팅게일이 동시에 깔려 있습니다.

3.5 누메레르 선택: FX에서 특히 중요한 이유

누메레르(numeraire)는 가치 측정의 기준 자산입니다. 누메레르를 바꾸면 측도가 바뀌고, 드리프트의 형태가 달라지지만, 최종 가격은 동일해야 합니다. FX에서는 국내/해외 두 머니마켓이 공존하므로 이 구조가 실무적으로 자주 등장합니다.

FX 위험중립 드리프트(국내 측도)

$$dS_t=(r_d-r_f)S_t\,dt+\sigma S_t\,dW_t^{\mathbb{Q}^d}.$$

해외 통화를 “배당률 \(r_f\)”을 주는 자산으로 보는 관점이 이 드리프트를 자연스럽게 만듭니다.


4. 내재변동성(IV)과 루트파인딩: “가격”을 표준화하는 수치 알고리즘

4.1 Garman–Kohlhagen 공식: FX 바닐라의 기준점(베이스라인)

$$C=S_0e^{-r_fT}N(d_1)-Ke^{-r_dT}N(d_2)$$ $$d_1=\frac{\ln(S_0/K)+(r_d-r_f+\tfrac12\sigma^2)T}{\sigma\sqrt{T}},\qquad d_2=d_1-\sigma\sqrt{T}.$$

이 공식은 단지 “닫힌형 가격”이 아니라, IV 정의, vega, 무차익 범위, 캘리브레이션의 표준 스케일을 제공하는 기준점입니다.

4.2 IV의 정의: “가격 방정식을 \(\sigma\)에 대해 푸는 것”

시장 가격 \(C_{\text{mkt}}\)가 주어졌을 때, \(\sigma\mapsto C(\sigma)\)의 역함수를 찾는 것이 IV입니다. 즉 \(F(\sigma)=C(\sigma)-C_{\text{mkt}}=0\)의 근을 찾습니다.

왜 IV를 쓰는가

  • 모형/통화/노션이 달라도 “변동성 포인트”로 비교 가능
  • 가격 스케일의 차이를 제거해 목적함수(캘리브레이션)가 안정적
  • 시장 관행(특히 FX)의 표면 표기 방식(ATM/RR/BF)

4.3 무차익 범위: 루트가 존재하려면 가격이 ‘물리적으로’ 가능해야 한다

$$\max\!\left(S_0e^{-r_fT}-Ke^{-r_dT},\ 0\right)\le C \le S_0e^{-r_fT}.$$

이 범위를 벗어나면 수치 알고리즘이 아니라 입력 데이터가 문제일 가능성이 큽니다.

4.4 단조성과 vega: “해가 유일하다”는 사실이 루트파인딩을 가능하게 한다

바닐라의 vega는 항상 양수

GK/BSM에서 $$\mathcal{V}=\frac{\partial C}{\partial\sigma}=S_0e^{-r_fT}\varphi(d_1)\sqrt{T}>0.$$

따라서 \(C(\sigma)\)는 \(\sigma\)에 대해 단조 증가하며, 무차익 범위 안에서는 IV가 유일합니다.

4.5 이분법(Bisection): 느리지만 ‘깨지지 않는’ 기본기

이분법은 브라켓 \([a,b]\)에서 부호가 바뀐다는 것만 확보되면(연속성 가정 하) 반드시 수렴합니다. 수렴 속도는 선형(1차)이며 \(n\)회 반복 후 오차 상한은 \((b-a)/2^n\)입니다.

def bisection(F, a, b, tol_F=1e-8, tol_x=1e-10, max_iter=100):
    fa = F(a)
    fb = F(b)
    if fa * fb > 0:
        raise ValueError("Root not bracketed")

    for _ in range(max_iter):
        m = 0.5 * (a + b)
        fm = F(m)
        if abs(fm) < tol_F or (b - a) < tol_x:
            return m
        if fa * fm <= 0:
            b, fb = m, fm
        else:
            a, fa = m, fm

    return 0.5 * (a + b)

4.6 Newton–Raphson: 빠르지만 실패할 수 있는 이유를 ‘베가’로 설명하라

$$\sigma_{n+1}=\sigma_n-\frac{C(\sigma_n)-C_{\text{mkt}}}{\mathcal{V}(\sigma_n)}.$$

2차 수렴이라는 장점은 “해 근처에서”만 보장됩니다. \(\mathcal{V}\approx 0\)인 초단기/심도 OTM에서는 분모가 작아 업데이트가 폭주합니다.

[뉴턴법 실패 패턴]

  • 초단기 \(T\to 0\): \(\mathcal{V}\sim \sqrt{T}\to 0\)
  • 심도 OTM: \(\varphi(d_1)\)가 거의 0 → vega 붕괴
  • 나쁜 초기값: 발산/진동/음수 변동성

4.7 Brent법: 실무 표준이 되는 이유(안정성 + 가속의 결합)

브렌트는 이분법의 “최악의 경우 안전장치”를 유지하면서, 할선법/역이차보간으로 가속합니다. 즉, 빠른 후보가 신뢰 가능하면 채택하고, 그렇지 않으면 이분법으로 후퇴합니다. 이 로직 때문에 실무에서는 IV 계산에 브렌트를 디폴트로 둡니다.

케이스 증상 원인 권장 대응
초단기 뉴턴 폭주 vega \(\to 0\) Brent + 하한 \(\sigma_{\min}\)
심도 OTM 가격이 기계정밀도 수준 상대오차/소거 로그 공간, 상대오차 기준
무차익 위반 루트 없음 입력 데이터 오류/스프레드 사전 필터링 + 오류 플래그
정상 빠른 수렴 브라켓 정상 Brent 또는 Newton+bracket

5. 캘리브레이션: 역문제, 식별가능성, 그리고 야코비안의 수치 안정성

5.1 캘리브레이션은 ‘역문제’다: 왜 본질적으로 불안정해지나

가격평가(forward problem)는 \(\theta \mapsto q_{\text{model}}(\theta)\)를 계산하는 문제입니다. 캘리브레이션(inverse problem)은 반대로 관측값 \(q_{\text{mkt}}\)로부터 \(\theta\)를 복원합니다. 역문제는 일반적으로 다음 특징을 가집니다.

  • 비유일성: 서로 다른 \(\theta\)가 유사한 표면을 만들 수 있음(식별가능성 문제)
  • 민감도: 작은 데이터 노이즈가 \(\theta\)에 큰 변화를 유발
  • 비선형성: 목적함수가 좁고 긴 골짜기 형태로 나타남

[실무적 결론]

캘리브레이션은 “정답 파라미터 찾기”가 아니라, 시장 범위 안에서 안정적으로 재현되는 파라미터 영역을 찾고, 그 해가 경제적으로 합리적인지 진단하는 과정입니다.

5.2 Heston 모델: 확률적 변동성의 대표이자 ‘식별가능성’의 교과서

$$dS_t=(r_d-r_f)S_t\,dt+\sqrt{v_t}S_t\,dW_t^{(1)}$$ $$dv_t=\kappa(\bar v-v_t)\,dt+\alpha\sqrt{v_t}\,dW_t^{(2)},\qquad \langle dW^{(1)},dW^{(2)}\rangle=\rho\,dt.$$

5개 파라미터(\(v_0,\kappa,\bar v,\alpha,\rho\))가 표면의 레벨/스큐/볼록성/만기 구조를 분담하지만, 일부 조합은 서로를 대체할 수 있어 목적함수가 길게 찢어진 형태가 됩니다.

파라미터 주요 영향 표면에서 나타나는 현상
\(v_0\) 단기 레벨 단기 ATM 변동성 결정
\(\bar v\) 장기 레벨 장기 ATM 변동성 수준
\(\kappa\) 회귀 속도 단기→장기 연결(만기 구조 기울기)
\(\rho\) 비대칭 스큐 RR(리스크 리버설) 형태
\(\alpha\) 볼록성 BF(버터플라이) 수준

5.3 목적함수 설계: 가격 공간 vs IV 공간, 그리고 가중치의 의미

가격 공간에서 오차를 재면 ATM이 목적함수를 지배합니다(가격 스케일이 큼). IV 공간에서 오차를 재면 “변동성 포인트” 단위로 균형 잡힌 비교가 됩니다.

$$F(\theta)=\sum_{i=1}^M w_i\left(\sigma_{\text{model}}^{(i)}(\theta)-\sigma_{\text{mkt}}^{(i)}\right)^2+\lambda_{\text{reg}}R(\theta).$$

규제항 \(R(\theta)\)는 역문제 불안정성을 완화합니다(과도한 파라미터 진동 억제, 경제적 제약 반영).

5.4 제약 처리: “제약 없는 최적화”로 변환하는 좌표변환

$$v_0=e^{x_1},\quad \kappa=e^{x_2},\quad \bar v=e^{x_3},\quad \alpha=e^{x_4},\quad \rho=\tanh(x_5).$$

최적화 변수를 \(\mathbb{R}^5\)로 두면 알고리즘이 훨씬 안정적으로 동작합니다.

5.5 LM(Levenberg–Marquardt): “GN의 속도”와 “GD의 안정성” 사이의 가변 스위치

정규방정식과 LM 수정

잔차 벡터 \(r(\theta)\), 야코비안 \(J(\theta)\)에 대해 GN은 $$(J^TJ)\Delta=-J^Tr.$$

LM은 수치적으로 불안정한 \(J^TJ\)를 안정화하기 위해 $$(J^TJ+\lambda I)\Delta=-J^Tr$$ 를 푼다. \(\lambda\)를 줄이면 GN에 가까워져 빠르고, 키우면 GD에 가까워져 안정적이다.

5.6 수치 야코비안과 MC 노이즈: “\(h\)를 줄이면 더 정확해질까?”의 반전

PDE/반해석 가격은 매끄럽지만, MC 가격은 통계 노이즈를 포함합니다. 유한차분 야코비안 \(\frac{r(\theta+he_j)-r(\theta)}{h}\)에서 노이즈가 차분으로 증폭되어 \(\sim \varepsilon_{\text{noise}}/h\) 형태로 나타납니다. 따라서 \(h\)를 무작정 줄이면 오히려 야코비안이 망가집니다.

[실무 해법: Common Random Numbers (CRN)]

\(\theta\)와 \(\theta+he_j\)를 평가할 때 같은 난수(같은 경로)로 MC를 돌리면, 두 값이 비슷한 방향의 노이즈를 공유하므로 차이에서 노이즈가 크게 상쇄됩니다. 이는 야코비안 안정성과 분산감소를 동시에 달성합니다.


6. Monte Carlo: SDE 이산화, 분산감소, 그리고 “오차의 분해”

6.1 왜 SDE인가: 연속시간 모델링과 시뮬레이션의 필연성

주가는 이산적으로 관측되지만, 모형은 연속시간에서 정의되는 경우가 많습니다. 연속시간의 장점은 (i) 측도변경과 마팅게일 이론이 깔끔해지고, (ii) PDE/푸리에/확률해석이 연결되며, (iii) 헤지(동적 복제)의 극한 논리가 가능해진다는 점입니다.

6.2 브라운 운동: “정규 난수”가 금융 시뮬레이션의 언어가 되는 이유

브라운 운동의 핵심 성질

  • \(W_t-W_s\sim N(0,t-s)\)
  • 독립 증분
  • 연속 경로(하지만 거의 어디서도 미분 불가)

MC에서 \(\Delta W=\sqrt{\Delta t}\,Z\)로 생성하는 것이 표준이며, 모든 다요인 모델의 상관 구조는 “상관된 정규 벡터 생성” 문제로 환원됩니다.

6.3 Euler–Maruyama: 가장 기본적인 SDE 이산화

$$X_{t_{i+1}}\approx X_{t_i}+\mu(t_i,X_{t_i})\Delta t+\Sigma(t_i,X_{t_i})\sqrt{\Delta t}\,Z_i.$$

Euler는 구현이 단순하지만, 경로 수준(강수렴)에서는 1/2차, 기대값(약수렴)에서는 1차입니다. 상품이 경로의존일수록 “강수렴”이 중요해집니다.

6.4 GBM의 Exact Scheme: “이산화 오차가 0인 드문 경우”

\(S\)가 GBM이면 로그로 바꿔 정확히 적분 가능

$$S_{t+\Delta t}=S_t\exp\!\left[\left(r_d-r_f-\tfrac12\sigma^2\right)\Delta t+\sigma\sqrt{\Delta t}\,Z\right].$$

이 스킴은 \(\Delta t\)를 크게 잡아도 편향이 없으므로, 바닐라 유럽형에서는 단 한 스텝으로도 \(S_T\)를 생성할 수 있습니다.

6.5 상관 브라운 운동: Cholesky 분해가 ‘다요인 MC’의 출발점

$$\Gamma=LL^T,\qquad Z_{\text{corr}}=LZ_{\text{indep}}.$$

\(\Gamma\)가 상관행렬이면 \(Z_{\text{corr}}\)는 원하는 상관을 갖는 다변량 정규 벡터가 됩니다. Heston의 \(\rho\)는 바로 이 상관 구조에 들어갑니다.

6.6 분산감소: \(1/\sqrt{N}\)의 벽을 ‘같은 계산량으로’ 낮추는 법

6.6.1 대립변수(Antithetic Variates)

\(Z\)와 \(-Z\)를 짝으로 쓰면, 많은 페이오프에서 음의 상관이 발생해 분산이 감소합니다. 바닐라에서 효과가 큰 편이지만, 경로의존에서는 효과가 약해질 수 있습니다.

6.6.2 제어변량(Control Variates): “기댓값을 아는 변수를 빌려온다”

$$\hat{V}^{\text{CV}}=\hat{V}-\hat{\beta}(\hat{Y}-\mathbb{E}[Y]),\qquad \beta^\*=\frac{\mathrm{Cov}(V,Y)}{\mathrm{Var}(Y)}.$$

상관이 클수록 분산 감소가 커집니다. 실무에서는 “복잡한 상품”을 “바닐라”로 보정하는 제어변량이 매우 강력합니다.

6.6.3 중요도 샘플링(Importance Sampling): 희귀 이벤트를 ‘자주 보게’ 만든 뒤 보정

$$\mathbb{E}^{\mathbb{Q}}[\Phi] =\mathbb{E}^{\tilde{\mathbb{Q}}}\!\left[\Phi\cdot \frac{d\mathbb{Q}}{d\tilde{\mathbb{Q}}}\right].$$

OTM 옵션처럼 페이오프가 드문 경우, 드리프트를 페이오프 방향으로 이동시키면 표본 효율이 크게 좋아집니다. 단, 우도비(라돈-니코딤) 보정이 빠지면 가격이 완전히 틀어집니다.

6.7 강수렴 vs 약수렴: Euler와 Milstein 선택의 기준

수렴 유형 측정 대상 형태 실무 관련
강수렴 경로 자체 오차 \(\mathbb{E}[|X_T^{\Delta t}-X_T|]=O((\Delta t)^p)\) 배리어/아시안 등 경로의존
약수렴 기대값 오차 \(|\mathbb{E}[g(X_T^{\Delta t})]-\mathbb{E}[g(X_T)]|=O((\Delta t)^q)\) 유럽형 가격 자체

Euler는 강수렴 1/2차, 약수렴 1차입니다. Milstein은 강수렴을 1차로 올리지만, 약수렴은 대개 1차로 유지됩니다. 따라서 “유럽형 가격”만 보면 Milstein이 Euler보다 항상 낫다고 단정할 수 없고, “연속 배리어처럼 경로가 중요한 경우”에 Milstein의 가치가 커집니다.


7. 연속 배리어와 MC: 왜 ‘관측 방식’이 가격 편향을 만든다

7.1 연속 모니터링 배리어의 정의와 이산 관측 편향

연속 배리어 옵션은 \(0\le t\le T\) 사이 어느 순간이라도 배리어를 터치하면 KO/KI가 발생합니다. 하지만 MC는 유한한 시간격자에서만 경로를 관측하므로, 두 관측점 사이의 터치를 놓칠 수 있습니다. 이것이 이산 관측 편향이며, KO 옵션에서는 보통 생존을 과대평가해 가격을 과대평가합니다.

[중요]

이 편향은 경로 수 \(N\)을 늘려도 줄어들지 않습니다. 이는 통계오차가 아니라 시간 이산화 편향이기 때문입니다. 줄이려면 \(\Delta t\)를 줄이거나(비용↑), 연속 터치 확률을 반영하는 보정이 필요합니다.

7.2 브라운 브리지: 두 점 사이의 “조건부 경로”를 이용해 연속 터치를 계산

브라운 브리지의 분포

\(B_0=x\), \(B_T=y\)로 고정한 브라운 운동의 조건부 과정. 중간 \(t\)에서 $$B_t|(B_0=x,B_T=y)\sim N\!\left(x+\frac{t}{T}(y-x),\ \frac{t(T-t)}{T}\right).$$

7.3 비접촉 확률 공식: 반사원리로 얻는 ‘구간 생존확률’

업-배리어(로그공간) 비접촉 확률의 핵심 형태

구간 \([t_i,t_{i+1}]\)에서 \(X=\ln S\), \(b=\ln H\)라 하면, 양 끝점이 배리어 아래일 때 생존확률은

$$\mathbb{P}(\text{no-hit in }[t_i,t_{i+1}]\,|\,X_i,X_{i+1}) =1-\exp\!\left(-\frac{2(b-X_i)(b-X_{i+1})}{\sigma^2\Delta t}\right).$$

이 식을 각 구간에 적용해 생존확률을 누적시키면, “연속 모니터링”에 훨씬 가까운 MC가 됩니다. 또한 Boolean KO(0/1) 대신 연속 확률을 사용하므로 분산 감소 효과도 기대할 수 있습니다.

7.4 BGK 보정: 배리어를 \(O(\sqrt{\Delta t})\)만큼 이동시키는 1차 보정

$$H_{\text{equiv}}=H\exp(\pm \beta\sigma\sqrt{\Delta t}),\qquad \beta=\frac{\zeta(1/2)}{\sqrt{2\pi}}\approx 0.5826.$$

이산 모니터링을 연속 모니터링에 맞추기 위해 “배리어 위치를 살짝 이동”시키는 방법입니다. 구현이 매우 간단하지만, 정밀도는 브라운 브리지 보정이 더 좋은 경우가 많습니다.

항목 BGK 브라운 브리지
구현 난이도 매우 쉬움 중간(구간별 확률 계산)
거친 \(\Delta t\) 보통 좋음
분산 감소 거의 없음 있음(연속 확률)
확장성 다중배리어 복잡 상대적으로 단순

8. PDE로의 연결: 기대값이 ‘함수 방정식’이 되는 이유

8.1 이토 보조정리: 확률미분의 체인룰(2차항이 사라지지 않는다)

핵심 전개

\(dS=\mu Sdt+\sigma SdW\)이면 \((dS)^2=\sigma^2S^2dt\)가 되므로, 테일러 전개에서 2차항이 남습니다.

$$dV=\left(V_t+\mu SV_S+\tfrac12\sigma^2S^2V_{SS}\right)dt+\sigma SV_S\,dW.$$

8.2 무차익 헤지로 PDE 유도: 랜덤 항을 제거하면 남는 것은 ‘무위험 성장’

Step 1. \(\Pi=-V+\Delta S\)

Step 2. \(\Delta=V_S\)로 \(dW\) 항 제거(델타 헤지)

Step 3. 무위험 포트폴리오는 \(r\)로 성장해야 함

결론(FX: GK PDE)

$$V_t+\tfrac12\sigma^2S^2V_{SS}+(r_d-r_f)SV_S-r_dV=0,\qquad V(S,T)=\Phi(S).$$

8.3 시간 역전: Backward PDE를 수치적으로 전진 문제로 바꾸기

$$\tau=T-t,\qquad U(S,\tau)=V(S,T-\tau),\qquad U(S,0)=\Phi(S).$$

\(\tau\)를 잔존만기로 두면 초기조건이 만기 페이오프가 되고, \(\tau\)에 대해 전진하며 수치해석을 할 수 있습니다.

8.4 경계조건의 금융적 의미: “도메인 자르기”가 오차를 만든다

조건 형태 금융적 의미 대표 사용
Dirichlet \(V=g(t)\) 경계에서 값 고정 KO 배리어 \(V=0\)
Neumann \(V_S=h(t)\) 델타 고정 자연 경계
선형 \(V_{SS}=0\) 감마=0(멀리서 선형) 극단 OTM
자유경계 값/기울기 접합 조기행사 경계 아메리칸

9. Explicit 스킴과 안정성: 왜 어떤 격자에서는 ‘폭주’하는가

9.1 수치 불안정의 본질: 오차 증폭(특히 고주파 모드)

불안정은 “정답이 틀렸다”가 아니라, 계산 과정에서 발생하는 아주 작은 오차(절단오차, 반올림오차)가 시간스텝 반복을 통해 기하급수적으로 커지는 현상입니다. von Neumann 분석은 이 오차 증폭을 푸리에 모드로 분해해 추적합니다.

9.2 순수 확산의 CFL 조건: explicit이 ‘조건부 안정’인 이유

FTCS에서 \(r=D\Delta\tau/h^2\)

성장인자 \(g=1-2r(1-\cos\xi)\)이므로 \(|g|\le1\)을 위해 \(r\le 1/2\).

$$\boxed{\frac{D\Delta\tau}{h^2}\le \frac12}\quad\text{(CFL 조건)}$$

9.3 이류 지배와 업윈드: 진동(wiggles)의 원인을 수치적으로 설명하라

페클렛 수와 진동 조건

$$\text{Pe}_h=\frac{|\mu|h}{2D},\qquad \text{Pe}_h>1 \Rightarrow \text{중앙차분에서 진동 가능}.$$

드리프트(이류)가 커지면 중앙차분은 음의 가중치를 만들 수 있고, 이는 비물리적 진동을 유발합니다. 업윈드 차분은 진동을 줄이지만 수치확산이 커져 정확도 손실이 생깁니다.


10. Implicit·Crank–Nicolson: 안정성을 “선형시스템”과 교환하다

10.1 Implicit 스킴: 무조건 안정의 대가

$$(I-\Delta\tau L)V^{n+1}=V^n.$$

1D에서는 삼대각 시스템이 되어 \(O(N)\) Thomas 알고리즘으로 풉니다. 하지만 시스템이 커질수록(2D/3D) 선형대수 비용이 지배합니다.

10.2 \(\theta\)-방법: explicit과 implicit의 연속체

$$(I-\theta\Delta\tau L)V^{n+1}=[I+(1-\theta)\Delta\tau L]V^n.$$
  • \(\theta=0\): explicit (조건부 안정)
  • \(\theta=1\): implicit (무조건 안정, 시간 1차)
  • \(\theta=\tfrac12\): Crank–Nicolson (무조건 안정, 시간 2차)

10.3 CN의 진동과 Rannacher: “초기 불연속”을 먼저 감쇠시켜라

콜 페이오프는 꺾임이 있어 고주파 성분이 강합니다. CN은 고주파 감쇠가 약해 초기 구간에서 진동이 생길 수 있습니다. Rannacher는 초반 몇 스텝을 implicit으로 수행해 고주파를 먼저 죽이고, 그 뒤 CN으로 전환해 2차 정확도를 확보합니다.

10.4 삼대각 시스템과 Thomas 알고리즘: PDE가 사실상 선형대수 문제인 이유

삼대각 시스템

1D 유한차분에서 각 격자점은 이웃 두 점과만 연결됩니다(3점 스텐실). 따라서 선형시스템은 삼대각 행렬이 되며, 가우스 소거를 특화한 Thomas 알고리즘으로 \(O(N)\)에 풉니다.


11. 2차원 PDE와 ADI: 행렬 폭발을 피하는 방향분할

11.1 2D의 본질적 문제: 미지수 \(N_S N_v\)개, 직접 implicit은 너무 비싸다

Heston PDE는 \(S\)와 \(v\) 두 상태변수로 2D가 됩니다. \(N_S=N_v=200\)만 되어도 미지수는 4만 개이며, 직접 implicit은 거대한 희소시스템을 매 스텝 풀어야 합니다. 이때 비용과 구현 복잡도를 낮추는 대표 전략이 ADI입니다.

11.2 ADI의 핵심 아이디어: “한 번에 2D를 풀지 말고, 1D를 여러 번 풀자”

ADI는 한 타임스텝을 하위 스텝으로 쪼개고, 각 하위 스텝에서 한 방향만 implicit으로 처리하여 삼대각 시스템을 반복해서 풉니다. 결과적으로 2D 전체 시스템을 직접 푸는 것보다 훨씬 저렴합니다.

11.3 교차미분이 있을 때: Craig–Sneyd 계열이 필요한 이유

\(\rho\neq 0\)이면 교차미분 \(V_{Sv}\) 항이 생겨 단순 방향분할이 깨끗하지 않습니다. Craig–Sneyd(CS)와 그 변형(MCS/HV)은 교차항을 별도 보정 단계로 처리해 안정성과 정확도를 유지합니다.

[선택 기준]

  • 교차미분 있음(\(\rho\neq0\)): CS/MCS/HV 계열 고려
  • 2D 교차미분 없음: PR/DR도 가능
  • 3D 확장: 안정성 측면에서 HV/DR 계열이 선호되는 경우가 많음

12. 격자 설계: 정확도는 ‘스킴’이 아니라 ‘격자’에서 무너진다

12.1 균일 격자의 한계: 옵션 가격 함수는 ‘어디서나 같은 난이도’가 아니다

옵션 가격은 행사가/배리어 근처에서 급격히 변하고, 멀리 OTM에서는 매우 매끄럽습니다. 균일 격자는 쉬운 구간에 점을 낭비하고, 어려운 구간에 점이 부족해 전체 오차가 커집니다.

12.2 Sinh 변환: 중요한 지점(예: \(K\), \(S_0\), 배리어)에 격자점을 집중

$$x(u)=c+d\sinh(\alpha(u-u_0)),\qquad u\in[0,1].$$

\(\alpha\)가 클수록 \(u_0\) 근처에 점이 몰립니다. 실무에서는 \(c\)를 \(K\) 또는 \(\ln K\), \(u_0\)를 집중 중심으로 잡아 행사가 근처의 곡률(감마)을 더 잘 해상합니다.

12.3 시간 격자: 만기 근처를 더 촘촘히 잡아야 하는 이유

Backward PDE에서는 \(\tau=0\) (만기 직후)에서 페이오프의 불연속 미분이 가장 강합니다. 따라서 초기 구간에서 작은 \(\Delta\tau\)를 쓰면 진동/오차가 크게 줄어듭니다. 예: \(\tau_i=T(i/M)^p,\ p>1\)로 만기 근처를 촘촘하게.

12.4 수렴 테스트: “좋은 격자”는 감으로 판단하지 않는다

[격자 진단의 원칙]

  • \(h\)를 절반으로 줄였을 때 오차가 \(1/4\)로 줄면(2차) 설계가 제대로 작동 중
  • 도메인을 확장해도 값이 거의 변하지 않으면 경계 오차가 작음
  • Rannacher 적용 전/후 진동 비교로 고주파 감쇠 확인

13. 통합 관점: 엔진 선택, 오차 예산, 캘리브레이션 워크플로

13.1 가격 엔진 선택 기준: 차원, 페이오프 구조, 그리고 반복 호출 여부

상황 권장 방법 이유
유럽형, 1~2D 반해석(푸리에) 또는 PDE 빠름, 노이즈 없음
배리어/아메리칸, 1~3D PDE(+ADI) 연속 배리어 자연 처리, 안정적
다자산(4D+) Monte Carlo 차원의 저주 회피, 유연한 페이오프
복잡한 경로의존 MC + 분산감소 경로 전체가 필요
캘리브레이션 가능하면 반해석 + LM 반복 호출이 핵심 병목

13.2 오차의 분류: “노이즈”와 “편향”을 구분하지 못하면 디버깅이 불가능하다

오차 원인 감소 방법 발생
통계오차(SE) MC 표본 수 유한 \(N\) 증가, 분산감소, QMC MC
시간 이산화 \(\Delta t\) 유한 \(\Delta t\) 감소, 강수렴 스킴 MC/PDE
공간 이산화 \(h\) 유한 \(h\) 감소, 비균일 격자 PDE
연속 배리어 편향 이산 관측 브라운브리지/BGK MC(배리어)
도메인/경계 오차 도메인 절단 도메인 확장, 경계조건 개선 PDE

13.3 Heston 캘리브레이션: 전체 워크플로(한 번에 연결하기)

Step 1. 시장 IV 데이터 수집, 무차익 필터(바운드/캘린더/버터플라이)

Step 2. 가중치 설계(액체성, bid-ask, ATM/OTM 밸런스)

Step 3. 초기값 설정(경험적/통계적)

Step 4. 파라미터 변환으로 제약 제거

Step 5. 가격 엔진(가능하면 특성함수+푸리에) 구축

Step 6. 가격 → IV 변환(Brent) + 잔차 계산

Step 7. LM 업데이트(야코비안 안정화, 필요시 규제)

Step 8. 진단(잔차 패턴, 파라미터 합리성, Feller 조건 등)

13.4 최종 메시지: “도구”가 아니라 “사이클”로 이해하라

가격(기대값)수치 엔진(MC/PDE/푸리에)수치 오차(편향+노이즈)최적화(캘리브레이션)

새로운 상품/모형을 만나면 먼저 이 사이클에서 병목이 어디인지 파악하십시오. 그 병목이 “차원”인지, “경로의존”인지, “선형대수”인지, “루트파인딩”인지, “야코비안 노이즈”인지에 따라 답이 달라집니다.


14. 흔한 함정과 오해

[함정 1] MC 경로 수만 늘리면 배리어가 정확해진다

배리어의 핵심 문제는 통계오차가 아니라 이산 관측 편향입니다. \(\Delta t\) 또는 보정을 건드려야 합니다.

[함정 2] 유한차분에서 \(h\)를 줄일수록 야코비안이 좋아진다

반올림오차와 MC 노이즈가 \(\sim 1/h\)로 증폭됩니다. CRN, 적절한 \(h\), 중앙차분/스무딩을 같이 고려해야 합니다.

[함정 3] CN은 무조건 안정이니 항상 최고의 선택이다

CN은 진동 문제를 가질 수 있고, 초기 불연속에서 특히 악화됩니다. Rannacher로 감쇠 후 CN이 표준적 대응입니다.

[함정 4] 캘리브레이션이 안 되면 최적화 알고리즘이 나쁘다

많은 경우 문제는 엔진 노이즈/야코비안/식별가능성/데이터 무차익 위반입니다. 알고리즘 교체 전에 오차 분류표(Section 13.2)로 원인을 분해하십시오.


15. 암기 체크리스트

번호 체크 항목 확인
1 위험중립 가격평가식이 “조건부기대값” 형태로 왜 필요한가 설명 가능한가?  
2 MC 오차가 \(1/\sqrt{N}\)인 이유와 SE 보고의 의미를 설명 가능한가?  
3 이산 관측 편향이 왜 경로 수 증가로 해결되지 않는지 구분 가능한가?  
4 브라운 브리지 생존확률 공식이 왜 편향을 줄이는지 설명 가능한가?  
5 IV 루트파인딩에서 브렌트가 실무 표준인 이유를 말할 수 있는가?  
6 LM이 GN과 GD 사이를 어떻게 오가는지(\(\lambda\)의 의미) 설명 가능한가?  
7 Explicit의 CFL 조건과, Implicit/CN의 장단점을 비교 가능한가?  
8 2D PDE에서 ADI가 “큰 시스템 대신 여러 1D”를 푸는 이유를 말할 수 있는가?  
9 격자 설계(비균일, 도메인, 시간격자)에서 수렴 테스트의 역할을 설명 가능한가?  

16. 다음 장으로의 연결

Chapter 7에서 얻어야 하는 가장 중요한 역량은 “가격을 계산하는 알고리즘”이 아니라, 오차를 분해하고, 병목을 진단하고, 그에 맞는 수치 도구를 선택하는 감각입니다. 다음 장에서는 (당신의 커리큘럼에 따라) 더 복잡한 모델(LSV, 금리 결합, 크로스커런시) 또는 수치적 그릭스/리스크(민감도, 헤지오차)로 확장되며, 여기서 배운 “사이클 관점”이 그대로 확장되어 작동합니다.