跳到主要內容

[衍生商品] 淺談 Black-Scholes Model 的性質 (0)

這次要跟大家介紹衍生商品市場的 Black-Scholes Model (B-S model),此 Formula 是由 Professor Fisher Black, Myron Scholes 與 Robert Merton 在選擇權定價領域的重大突破,此模型亦指引了衍生商品該如何透過無套利機會來獲得合理價格的研究大門。

事實上, B-S model 本質上是用來作為進行 歐式選擇權 (European Option) 定價公式。

在介紹之前,我們需先知道使用 B-S model 的一些假設:

對於股價分布的假設
  1. 股價服從連續複利 Log-normal 分布
  2. 波動度(Volatility)為已知常數
  3. 未來的股息已知
對於市場的假設
  1. 無交易手續費用、無稅收
  2. 證卷交易為連續進行
  3. 短期無風險利率 $r$ 為已知常數
  4. 可以基於無風險利率執行 short sell or borrow
  5. 不存在無風險套利機會 
Comment:
1. 股價的 Log-normal 分布假設: (此 Comment 需要隨機過程與隨機分析的背景知識,有興趣的讀者請參考BLOG中相關隨機分析的文章)

考慮股價模型為 Geometric Brownian Motion,故可寫做下列隨機微分方程 SDE
\[
dS_t := \mu S_t dt + \sigma S_t dB_t, \ 0 \leq t \leq T
\]其中 $S_t$ 為時刻 $t$ 的股價, $\mu :=$ 股價每年的收益率期望值 (或稱 drift rate),$\sigma:=$ 股價每年的波動度 (volatility),$B_t$ 為標準布朗運動。注意到這邊我們假設 $\mu, \sigma$ 為固定常數。

上述隨機微分方程可解得 (Proof: omitted,有興趣讀者請參閱
[隨機分析] How to solve SDE practically (4) - Geometric Brownian Motion
\[
S_t = S_0 \exp \left\{ {\left( {\mu  - \frac{{{\sigma ^2}}}{2}} \right)t + \sigma {B_t}} \right\}
\]改寫上式
\[ \Rightarrow \ln \frac{{{S_t}}}{{{S_0}}} = \left( {\mu  - \frac{{{\sigma ^2}}}{2}} \right)t + \sigma {B_t}
\]由於 $B_t$ 為標準布朗運動,由定義可知標準布朗運動為 Gaussian process with mean 0, variance $t$ 與 covariance $\min{(s,t)}$,故我們可推論
\[\begin{array}{l}
\ln \frac{{{S_T}}}{{{S_0}}}\sim {{\cal N}}((\mu  - \frac{{{\sigma ^2}}}{2})T,{\sigma ^2}T)\\
 \Rightarrow \ln {S_T}\sim {{\cal N}}(\ln{S_0} + (\mu  - \frac{{{\sigma ^2}}}{2})T,{\sigma ^2}T)
\end{array}
\]其中 $S_T$ 是未來時間 $T$ 時的股價,$S_0$ 是時間 $0$ 時的股價。上式表明 $\ln {S_T}$ 服從 normal distribution,故 $S_T$ 為Log-normal (亦即 取Log之後為normal),

2. 關於 波動度 (Volatility) $\sigma$
股價的波動度 $\sigma$ 用於測量股價收益的不確定性。一般而言介於 $15 \% \sim 50 \%$。
B-S formula 假設:給定任意 $K,S,T,r..$, $\sigma$ 均為常數不變。

另外值得一提的是波動度有兩種,一種是 歷史資料波動度 (Historical Volatility) 隱含波動度 (Implied Volatility),其中歷史波動度是由歷史資料股價計算收益再由此歷史收益計算標準差將其定為波動度。但是隱含波動度則是透過 Black-Scholes Formula 反推而得。此波動度會在之後再作介紹。

3. 關於 Black-Scholes Formula 本質:
透過 購買/賣出 股票與債卷  來複製 選擇權的收益。透過此法可建構一組無風險投資組合,且此組合收益僅為無風險利率 (亦及無套利機會),相關推導請參閱此文: [隨機分析] Black-Scholes PDE for European Call option (0)

Black-Scholes-Metron Formula: 

B-S Model For Stock Option with Constant Dividend: 
以下為  對 European Call option 與 European put option 的 B-S formula
\[\left\{ \begin{array}{l}
c = {S_0}{e^{ - qT}}N\left( {{d_1}} \right) - K{e^{ - rT}}N\left( {{d_2}} \right)\\
p = K{e^{ - rT}}N\left( {{-d_2}} \right) - {S_0}{e^{ - qT}}N\left( {{-d_1}} \right)
\end{array} \right.
\]其中 $c$ 為 European Call option 的價格、$p$ 為 European Put option 價格、$q$ 為連續複利的固定股息、$r$ 為連續複利的無風險利率、 $S_0$ 為現時股價、$T$ 到期時間(以年為單位)、$K$ 為執行價格、$\sigma$ 為股價波動度;且 $N(\cdot)$ 為 Standard Normal cumulative distirbuiton function,其中
\[\left\{ \begin{array}{l}
{d_1} = \frac{{\ln \left( {{S_0}/K} \right) + \left( {r - q + {\sigma ^2}/2} \right)T}}{{\sigma \sqrt T }}\\
{d_2} = {d_1} - \sigma \sqrt T
\end{array} \right.
\]關於上式的證明有興趣的讀者請參考
 [隨機分析] Black-Scholes PDE for European Call option (1)

如果是要計算的話,讀者可以使用 MATLAB 指令 blsprice 協助計算,在此不贅述

Comment:
1. 仔細觀察 B-S Formula,我們可發現需要的參數有
$S_0, K, T, r, q, \sigma$ ,亦即選擇權 $f$ 為
\[
f(S,K,T,r,q,\sigma)
\]注意到其中只有 $\sigma$ 無法被直接觀測獲得,其餘參數都可直接獲得。但是事實上選擇權的報價是知道的 $c,p$已知,故我們可以透過代入選擇權價格以及其餘已知資訊來反推 $\sigma$,此法求得的 $\sigma$ 即為之前所提及的隱含波動度( Implied Volatility)

2. 關於上述 B-S formula的性質:
首先考慮 $S_0$ 很大 (deep in the money for call option, and out of money for put option) 的時候,
則上述 $d_1, d_2 \rightarrow \infty$ 故 $N(d_1), N(d_2) \rightarrow 1$,$N(-d_1), N(-d_2) \rightarrow 0$亦即
\[\left\{ \begin{array}{l}
c = {S_0}{e^{ - qT}}N\left( {{d_1}} \right) - K{e^{ - rT}}N\left( {{d_2}} \right) \to {S_0}{e^{ - qT}} - K{e^{ - rT}}\\
p = K{e^{ - rT}}N\left( { - {d_2}} \right) - {S_0}{e^{ - qT}}N\left( { - {d_1}} \right) \to 0
\end{array} \right.
\]可發現此情況確實為 $c, p$ 的收益價格。

當 $S_0$ 非常小的時候 (deep in the money for put option, and out of money for call option)
則上述 $d_1, d_2 \rightarrow -\infty$ 故 $N(d_1), N(d_2) \rightarrow 0$,$N(-d_1), N(-d_2) \rightarrow 1$亦即
\[\left\{ \begin{array}{l}
c = {S_0}{e^{ - qT}}N\left( {{d_1}} \right) - K{e^{ - rT}}N\left( {{d_2}} \right) \to 0\\
p = K{e^{ - rT}}N\left( { - {d_2}} \right) - {S_0}{e^{ - qT}}N\left( { - {d_1}} \right) \to K{e^{ - rT}} - {S_0}{e^{ - qT}}
\end{array} \right.
\]可發現此情況確實為 $c, p$ 的收益價格。

$T \rightarrow 0$ 的時候 :
如果 $S_0 \geq K$ 則 ${{d_1}} \rightarrow \infty \Rightarrow d_2 \rightarrow \infty$,故
\[
N(d_1) \rightarrow 1, N(d_2) \rightarrow 1
\]且
\[\begin{array}{l}
\left\{ {\begin{array}{*{20}{l}}
{c = {S_0}{e^{ - qT}}N\left( {{d_1}} \right) - K{e^{ - rT}}N\left( {{d_2}} \right)}\\
{p = K{e^{ - rT}}N\left( { - {d_2}} \right) - {S_0}{e^{ - qT}}N\left( { - {d_1}} \right)}
\end{array}} \right.
 \Rightarrow \left\{ {\begin{array}{*{20}{l}}
{c = {S_0} - K}\\
{p = 0}
\end{array}} \right.
\end{array}\]
如果 $S_0 < K$ 則 ${{d_1}} \rightarrow -\infty \Rightarrow d_2 \rightarrow -\infty$,故
\[
N(d_1) \rightarrow 0, N(d_2) \rightarrow 0
\]且
\[\begin{array}{l}
\left\{ {\begin{array}{*{20}{l}}
{c = {S_0}{e^{ - qT}}N\left( {{d_1}} \right) - K{e^{ - rT}}N\left( {{d_2}} \right)}\\
{p = K{e^{ - rT}}N\left( { - {d_2}} \right) - {S_0}{e^{ - qT}}N\left( { - {d_1}} \right)}
\end{array}} \right.
 \Rightarrow \left\{ {\begin{array}{*{20}{l}}
{c = 0}\\
{p = K - {S_0}}
\end{array}} \right.
\end{array}\]
故總結上述兩種情況,我們得到 當 $T \rightarrow 0$ ,選擇權價格為
\[\left\{ {\begin{array}{*{20}{l}}
{c = \max \left\{ {{S_0} - K,0} \right\}}\\
{p = \max \left\{ {K - {S_0},0} \right\}}
\end{array}} \right.\]


3. 現在如果考慮B-S model 用到其他商品上的情況

B-S Model For Currency Option
此時 $S_0$ 為現時匯率;$q$ 為外幣利率(foreign currency interest rate)。

B-S Model For Future Option
此時 $S_0 = F_0$ 為現時期貨價格、$q = r$ 

以下我們看兩個例子:

Example 1:
使用 B-S model 來計算 European Put Option on the euro currencies 
考慮 現時匯率 $1.05/euro$、執行價格 $1.1/ euro$、歐元利率 $3.1 \%$、美金利率 $5.5 \%$、波動度 $10 \%$、到期時間 $4$個月

Solution
首先改寫已知資訊 $S=1.05, K=1.1, q=3.1\%, r=5.5\%, \sigma=10\%, T=4/12$,

接著計算 $d_1, d_2$:
\[\left\{ \begin{array}{l}
{d_1} = \frac{{\ln \left( {1.05/1.1} \right) + \left( {5.5\%  - 3.1\%  + {{\left( {0.1} \right)}^2}/2} \right)\left( {4/12} \right)}}{{\left( {0.1} \right)\sqrt {(4/12)} }} =  - 0.6383\\
{d_2} =  - 0.6961
\end{array} \right.
\]帶入 B-S formula 可得 $p=0.05/euro$. $\square$

Example 2:
使用 B-S formula 計算 Put Options on Futures
考慮 期貨現時價格 $\$ 31$、執行價格 $31$、利率 $2 \%$、波動度 $30 \%$、到期時間 $6$個月

Solution
首先改寫已知資訊 $S=31, K=31, q=r=2\%, \sigma=30\%, T=6/12$,(注意到在期貨中 $q=r$ !!)

接著計算 $d_1, d_2$:
\[\left\{ \begin{array}{l}
{d_1} = \frac{{\ln \left( {31/31} \right) + \left( {2\%  - 2\%  + {{\left( {0.3} \right)}^2}/2} \right)\left( {6/12} \right)}}{{\left( {0.3} \right)\sqrt {(6/12)} }} =  0.1061\\
{d_2} =  - 0.1060
\end{array} \right.
\]帶入 B-S formula 可得 Put Future Option 價格 $p= \$ 2.59 $. $\square$



ref: John C. Hull, Options, Futures and Other Derivatives 7th.

留言

  1. 非常感謝你的文章....精簡易懂

    回覆刪除
  2. 我是初學, 感謝你的文章, 希望可以有請益的機會

    回覆刪除

張貼留言

這個網誌中的熱門文章

[數學分析] 什麼是若且唯若 "if and only if"

數學上的 if and only if  ( 此文不討論邏輯學中的 if and only if,只討論數學上的 if and only if。) 中文翻譯叫做  若且唯若 (or 當且僅當) , 記得當初剛接觸這個詞彙的時候,我是完全不明白到底是甚麼意思,查了翻譯也是愛莫能助,畢竟有翻跟沒翻一樣,都是有看沒有懂。 在數學上如果看到 if and only if  這類的句子,其實是表示一種 雙條件句 ,通常可以直接將其視為" 定義(Definition)" 待之,今天要分享的是這樣的一個句子如何用比較直觀的方法去看他 假設我們現在有 兩個邏輯陳述句 A 與  B. 注意到,在此我們不必考慮這兩個陳述句到底是什麼,想表達什麼,或者到底是否為真(true),這些都不重要。只要知道是兩個陳述即可。 現在,考慮新的陳述:  "A if and only if B" 好了,現在主角登場,我們可以怎麼看待這個句子呢? 事實上我們可以很直覺的把這句子拆成兩部分看待,也就是 "( A if B ) and ( A only if B )" 那麼先針對第一個部分  A if B  來看, 其實這句就是說  if B then A, 更直白一點就是 "if B is true, then A is also true".  在數學上等價可以寫為 "B implies A" .  或者更常用一個箭頭符號來表示 "B $\Rightarrow$  A"  現在針對第二個部分  A only if B 此句意指  "If B is not true, then A is also not true". 所以如果已知 A is true,  那麼按照上句不難推得 B is also true 也就是說  A only if B  等價為 "If A is true then B is also true". 同樣,也可以寫作   "A implies B"   或者用箭頭表示  "A   $\Rightarrow$     B".

[數學分析] 淺談各種基本範數 (Norm)

這次要介紹的是數學上一個重要的概念: Norm: 一般翻譯成 範數 (在英語中 norm 有規範的意思,比如我們說normalization就是把某種東西/物品/事件 做 正規化,也就是加上規範使其正常化),不過個人認為其實翻譯成 範數 也是看不懂的...這邊建議把 Norm 想成長度就好 (事實上norm是長度的抽象推廣), 也許讀者會認為好端端的長度不用,為何又要發明一個 norm 來自討苦吃?? 既抽象又艱澀。 事實上想法是這樣的: 比如說現在想要比較兩個數字 $3$ , $5$ 之間的大小,則我們可以馬上知道 $ 3 < 5 $;同樣的,如果再考慮小數與無理數如 $1.8753$ 與 $\pi$,我們仍然可以比較大小 $1.8753 < \pi = 3.1415...$ 故可以發現我們有辦法對 "純量" 做明確的比大小,WHY? 因為前述例子中 $3$, $5$, $1.8753$ or $\pi$ 其各自的大小有辦法被 "measure "! 但是如果是現在考慮的是一組數字 我們如何去measure 其大小呢?? 比如說 \[x:=[1, -2, 0.1, 0 ]^T \]上式的大小該是多少? 是 $1$? $-2$? $0.1$??? 再者如果更過分一點,我們考慮一個矩陣 \[A = \left[ {\begin{array}{*{20}{c}} 1&2\\ 3&4 \end{array}} \right] \],想要知道這個矩陣的大小又該怎麼辦?? 是 $1$ ? $2$ 還是 $4$ ?..其實現階段我們說不清楚。 也正是如此,可以發現我們確實需要新的 "長度" 的定義來幫助我們如何去 measure 矩陣/向量/甚至是函數的大小。 故此,我們首先定義甚麼是Norm,(也就是把 "長度" or "大小" 的本質抽離出來) ================== Definition: Norm 考慮 $V$ 為一個向量空間(Vector space),則我們說  Norm 為一個函數 $||\cdot|| : V \rightarrow \mathbb{R}$ 且滿足下列性質