Black-Scholes Model,Binomial Model 和 Monte Carlo Simulation 在期權定價上分別起到什麼作用?
這三種方法各自的優勢和應用範圍是什麼?
我在博士期間研究過美式期權定價的數值方法,所以試著回答下這個問題。有不足之處,歡迎各位知友討論。
Black-Scholes模型是在1973年由芝加哥大學Black和Scholes提出的,其中涉及到著名的Black-Scholes偏微分方程。此微分方程在數學上為拋物型對流擴散(parabolic convection diffusion)方程,變數為原生資產(underlying asset,如股票等)和時間,參數為波動率和利率,均假設為常數。如果加上邊界條件(期權在股價為0處的價格,以及在股價無窮大處的價格)和終值條件(期權在到期日的價格),那麼,基於Black-Scholes模型歐式期權價格是可以通過偏微分方程的解析解得到。
看到不少知友在這個問題上有爭議。Black-Scholes方程確實只能用於求解歐式期權定價,但是,美式期權定價是可以基於Black-Scholes模型。這就意味著,由於可以提前實施,美式期權定價在數學上不是簡單的求解一個偏微分方程問題,而是更為複雜的變分不等式(variational inequality)問題,或者互補問題(complementarity problem)。這些變分不等式或者互補問題,可以基於Black-Scholes微分運算元。
Binomial模型,或者Binomial Tree模型,中文翻譯為二叉樹模型,實際上是屬於Tree模型的一類。Tree模型還有Trinomial Tree(三叉樹)模型,Willow Tree(柳樹)模型等。二叉樹模型最早由Cox,Ross和Robinstein在1979年提出的,是一種數值定價歐式或美式期權的方法。相對於微分方程模型,樹模型引入離散時間(discrete time),可以視為是對連續模型的離散化逼近。
實際上,數值方法都是對連續模型的離散化逼近,在有限維的空間里尋找對真實解的近似。比如有限差分方法,有限體積法和有限元方法。因此,早就有學者證明(直觀上也很容易理解),二叉樹方法不過是一種特殊的顯式有限差分格式。
期權定價的數值方法包含兩大類,一類是確定性方法,比如有限差分方法和(二叉)樹方法等,另外一類是隨機方法,也就是Monte Carlo模擬。下面說說這兩類方法的優缺點。
對於空間方向為5維以下的期權定價模型,比如Black-Scholes模型,Heston隨機波動率模型,Kou或Merton的Jump-diffusion模型,文獻中通常推薦採用確定性方法數值求解。這是因為確定性方法的精度比較高,且在理論上可以估計。相比於隨機模擬的不確定性,差分方法的數值結果總是固定的,不會隨著實驗次數而改變。歐式期權的離散對應為每個時間層上一系列方程組的求解,美式期權則對應每個時間層上一系列線性互補問題的求解,都已經有成熟的高效演算法可以應用。有限差分方法還有個優點在於,一旦求解出期權價格,可以很方便的求解期權的風險指標,如Delta,Gamma等。
誠如知友所言,當模型維數大時,確定性方法,尤其是有限差分方法等,數值離散後的規模隨著離散節點的增加呈現指數級增長,也就是所謂的維數災難。對於高維問題,如多資產的期權模型,無論是理論還是實際中,都沒人會考慮用確定性方法。我從文獻中總結的經驗是,當模型空間方向高於3維時,有學者就考慮採用交替方向法之類的降維方法進行求解,也就是把一個多維問題,分解成若干個一維問題(Black-Scholes模型)求解。
這就是為什麼業界用的最普遍的方法還是Monte Carlo方法。對於path-dependent(路徑依賴)的各類奇異期權,以及multi-asset(多資產)期權模型,Monte Carlo方法直觀有效。從理論上說,隨機模擬方法效率和精度很低,但Monte Carlo演算法中模擬路徑部分相互獨立,因此可以並行計算。通過大幅度提高隨機次數,可以達到所需的精度。
Monte Carlo方法有多慢?根據數值上的精度估計,Monte Carlo數值解誤差與隨機次數開根號分之一同階。也就是說,若數值解要精確到小數點後面1位,需要試驗100次;要精確到小數點後面2位,需要試驗10000次;要精確到小數點後面3位,需要試驗10^6次等等。國內外都有很多學者考慮對Monte Carlo隨機模擬作加速,比如方差減小技術,控制變數技術等等。參見大牛 @袁浩瀚 的回答「數學類第3題:提出至少三種Monte Carlo Simulation的Variance Reduction方法,並簡單描述如何實現。」
為了避免模型的數值離散隨著維數增大而計算量急劇增大,除了採用Monte Carlo方法外,還可以採用無網格方法。區別於有網格方法(Lattice Method),無網格方法離散得到的問題規模僅與節點基函數的個數有關,與PDE維數無關。在我看來,這將是期權定價數值研究的新方向。由於和問題無關,這裡不展開討論了。BS model: trader用的
Monte Carlo: quant用的
Binomial tree: 學生用的
BS是一個基於GBM process的模型。Binomial tree是離散時間的一個模型。這兩者可以通過中心極限定理證明後者可以收斂到前者。BS模型的最大弱點就是隨機波動率的問題。因為它把波動率當作常數來處理,這和現實是不相符的。好處則是簡單方便,直觀性強。而單純的binomial tree其實收斂速度很低,所以見過業內用三叉樹的,而沒見過用二叉樹,因為三叉樹收斂的比二叉樹快一些。
Monte Carlo只是一種數值方法,而不是model,可以看作是無close form formula的model的一種數值實現手段。好處是簡單粗暴,處理高維度問題和路徑依賴問題無往不利,弱點是太慢,不好算greeks來對沖。業內還是很喜歡close form solution的model的,因為可以省去很多不必要的定價計算時間和對沖計算時間。我來補充。樓上很多人都說BS model僅限於European vanilla option。這一點我不太同意誒,確實對於BS來說大部分exotic option和American style option 是給不出closed form solution的,但是PDE本身和boundary和terminal condition都能根據不同option的特性寫出來,American style也能寫出對應的PDE。而且其實還是有很多European style的exotic option可以給出closed form solution的。而且有了PDE, 我們總能用numerical methods解啊不是么!Binomial Tree Method 說白了就是BS model的一種效率比較低的numerical method誒好像。反正再高級一點還有各種finite difference scheme還有更高級的,給大部分不是太太太太奇葩非主流option定價還是沒有問題的吧,multiple asset都可以,加difference scheme的dimension就可以了,不過感覺好麻煩。
Monte Carlo 樓上都基本解釋清楚了,最主要的問題就是慢,提高準確度所需要增加的sample量是平方級的好像。
現在市場上感覺實際肯定不可能用BSmodel了,好像聽說至少也要jump diffusion model起步,當然還有很多更加複雜的model。但是我覺得BSmodel對於quantitative finance和option pricing的開創性地位還是不可否認的。
這個看了很久得書,也來回答一下吧,雖然肯定不及樓上的博士們高大上。
BSM這個可以說不僅僅是一個model,而已經是一個framework了。為什麼,因為看看BSmodel的思想:
1.首先假設股票(或者收益)服從某種分布,再推出分布的過程,得到一個SDE;
2.這個SDE有漂移項,有隨機項,我們通過無套利組合把隨機項給對衝掉得到一個無風險組合;
3.對沖的過程可以列出一個等式,這個等式可以變形為一個PDE;
其中股票的隨機過程可以設立不同假設的,標的物也可以不是股票,在BSM里時lognormal,我們完全可以假設成別的東西,服從別的分布。所以我第一眼看到那些利率模型比如什麼CIR的方程的時候,脫口而出:這不就是BSM嘛。
雖然BSM本身有許多硬傷比如假設過於理想,波動率不好確定,但是這個框架是可用的。
那麼BS解決不了什麼問題呢?
實際中,我們不能光考慮股票價格的隨機過程。波動率和利率這些都是有期限結構的!
這個時候如果列出PDE,那就是高維PDE,求得解析解異常的困難。這個時候我們不能去追求精確地解析解了,我們去尋找數值解。
於是就有了二叉數,monte carlo, finite difference這些數值法。
二差數的優點:模型離散,節點可控,對於強路徑依賴衍生品效果顯著
因為二叉數是由節點和路徑構成,所以當你對某一些節點有特殊要求的時候,二叉數可以簡化問題。比如可轉債,當你確定在一某一個節點把債券轉換成股票對你有利時,這個點的定價就變成了股票價格*轉換數(題外話,業內人士告訴過我,可轉債合同對於行權時間和條件必須有嚴格規定,否則就會出現在某一節點上,對買方和賣方的有利條件完全不同從而導致定價困難或者合同糾紛)
而二叉樹的缺點,上文高大上的 @鄭寧 已經說過了,維度災難。因為一切運算全部基於節點,當維度一高,約束條件一多,計算量不可想像。(上面說的可轉債定價困難就可以算作一種維度困擾)
這個時候我們就要使用Monte carlo配合一些有用的vairant reduction方法比如控制變數了。Monte Carlo的另一個小有點是在matlab實現簡單快捷。因為matlab支持矩陣運算,我們可以先產生所需的所及變數矩陣,然後直接對矩陣進行點運算,在根據所需加入現值條件。不會編程的人也能很快寫出,當然,跑得慢, 慢到什麼程度呢?
6*10^5
我同學用C++努力了一下
10秒
交易員:靠,10秒,我都做多少筆了!
我用matlab
一分鐘
一分鐘
一分鐘
交易員:……
BS模型:幾乎所有的期權都可以通過BS模型推導出相應的PDE,然後可以細分成有閉解(比如普通vanilla)和沒有閉解(比如算術平均亞式)。對於沒有閉解的,採用逼近的方法近似得出payoff分布的一階矩和二階矩,然後再放回去BS模型里求出近似解(比如亞式的curran定價公式)。
二叉樹:簡單直觀,適用於帶有提前終止條款的期權,比如美式、百慕大、障礙。
蒙特卡羅:幾乎所有的期權都可以通過蒙特卡羅來定價,適用於高維情況以及各種路徑依賴型,比如多標的。
在現實世界中,比期初定價更重要的是存續期間的定價,這涉及到Greeks的計算正確與否,而Greeks的計算又會影響到對沖。
上述方法中,實際對沖交易中,計算速度是一個大問題。對於一些多資產期權Greeks的計算,實際對沖交易中用蒙特卡羅,算出結果來估計都收盤了。所以,有閉解的請盡量用閉解。實際上以B-S模型的精神來推導,可以定價任何一種期權,只是其推導的偏微分方程是很難解的,而且邊界條件有不等式約束。
數值解PDE經常會很吃力(廢話!),例如美式那個叫超鬆弛迭代法,我至今還是一頭霧水。
二叉樹簡單易懂,可以推導出BS模型,詳見John Hull聖經。
至於另外兩種。舉個栗子,假設你想算一個圓的面積,那一個辦法是用數學家推導出來的公式,即S=πr^2,這個辦法的好處是非常精確,缺點是理解起來需要數學基礎。
另一個辦法,你給圓畫一個外接正方形(設其面積為s),然後不停地用小球轟擊這個正方形,轟到圓內就記一個數。最後統計一下轟到圓的概率P,就可算出圓的面積,即s*P。這個辦法的好處是非常直觀易懂,缺點是需要大量實驗才能確保精確度。
那麼,BS模型就好比是πR^2算面積,它來自伊藤引理對期權機制的應用,非常精確(當股票價格滿足某些前提條件的情況下),但是理解起來需要一定數學基礎。蒙特卡洛就好比是拿小球轟正方形來算面積,很直觀的道理,但是需要大量實驗來確保精確性。
樓上很多分析都很高大上,之前做過這樣的課程作業,就依靠個人理解來說一下Monte Carlo。
其實是一種數值方法,其實通過對某個資產價格進行大樣本的模擬,進而得到該資產的預期價格(收益率),接著進一步分析該基於這種基礎資產的金融衍生資產(期權)。因而對於期權的定價來說,Monte Carlo其實是一種萬能定價的方法,因為只要通過大樣本的數據模擬,了解未來時刻甚至是未來任意時刻的價格走勢,自然可以知道期權的價值。
Monte Carlo需要模擬出資產的價格,而價格的得出最為重要的即是資產價格路徑,通過生成以ε的隨機數來來模擬資產價格,第一個缺點就在於ε分布的選擇是否準確,一般假設是標準正態分布。以股票價格路徑為例
自然,第二缺點就在於資產的價格路徑是否可靠。
第三,Monte Carlo 模擬的精確度與模擬的次數有關,一般是呈平方的遞增,如果想將精度提高一倍,需要將模擬次數提高4倍,而將精度提高10倍,則需要將模擬次數提高100倍。
另外,對於一個標的資產的期權可以由Monte Carlo的資產價格路徑較為容易的得出來,但是對於如果標的資產是多標的資產組合的期權而言,則還需要考慮標的資產之間的相關性,這時則需要喬里斯基分解的方法。以上是我的個人理解,如果有不當之處,歡迎大家指正!
突然看到朋友圈分享,因為之前做過SP 100 INDEX OPTIONS (OEX)的定價研究,大晚上閑著沒事兒自告奮勇答一下,數學不好所以還是側重應用之類的。。。可能會跑偏,各位見諒。
Black-Scholes (BS) model的數學推導之前的各位大神已經說得很詳細了,由於推導太長我就不貼圖了 有興趣的留言信箱我可以發你我之前financial math的教材關於BS的推導等等。
這裡提一下BS model 的 assumption:
這是non-modified BS model的 assumption, 從裡面可以看出來對distribution的assumption (Brownian motion,lognormal distribution) 是一個導致BS model 出現估值不準的最主要的問題,這也是為什麼後面出現了諸如jump diffusion 等等extended model。
No dividends 的 assumption在後來的modified version中有調整 所以不是什麼問題。
sigma在現實生活中的選取同樣決定了估值的準確性,由於volatility smile的出現, historical volatility是嚴重失準的,那麼現在普遍都用implied volatility, 這個implied又是建立在model上面逆向計算出來的,所以不同的options,implied volatility的計算是不一樣的,這個需要針對不同的options做區分 比如SPX的implied volatility可以用VIX來替代,計算方法CBOE網站上面有。當然是approximately。
由於BS model不能capture early exercising feature of American style option, 所以BS最好是用來pricing European style options, 或者用來pricing American style option who is never optimal to early exercise, 什麼樣的American option不會被early exercise呢, 舉個例子:the All Ordinaries (AO) Share Price Index (SPI) options on futures,這是因為他的margin requirement 以及non-dividend paying 兩項決定的.
下面扯扯Binomial Tree (BT) model。他的推導是建立在no riskless arbitrage opportunities,跟BS model一樣。同樣,數學推導這裡不寫了,有興趣留言郵箱我發你。這裡提一下BT model和BS model的關係,當Binomial tree model中steps approach to infinite 的時候, 算出來的結果約等於Black-scholes model的結果。由於Binomial Tree model能有capture early exercising feature, 所以更適合來pricing有這樣特點的American Style options,比如SP 100 INDEX OPTIONS (OEX)。下面貼一個BT model的VBA code:Function AmericanCall(s, x, rf, sigma, t, n)
deltat = t / n
up = Exp(sigma * Sqr(deltat))
down = Exp(-sigma * Sqr(deltat))
R = Exp(rf * deltat)
p = (R - down) / (R * (up - down))
q = 1 / R - p
Dim OptionReturnEnd() As Double
Dim OptionReturnMiddle() As Double
ReDim OptionReturnEnd(n + 1)
For State = 0 To n
OptionReturnEnd(State) = Application.Max(s * _
up ^ State * down ^ (n - State) - x, 0)
Next State
For Index = n - 1 To 0 Step -1
ReDim OptionReturnMiddle(Index)
For State = 0 To Index
OptionReturnMiddle(State) = Application.Max(s * _
up ^ State * down ^ (Index - State) - x, _
q * OptionReturnEnd(State) + _
p * OptionReturnEnd(State + 1))
Next State
ReDim OptionReturnEnd(Index)
For State = 0 To Index
OptionReturnEnd(State) = OptionReturnMiddle(State)
Next State
Next Index
AmericanCall = OptionReturnMiddle(0)
End Function
PS:BT model坑啊, 坑就坑在計算機慢的能跑死你, steps是根據term to maturity來的(OEX為例)所以steps越長,算起來越慢,這點就非常不feasible,當時做research差點跑死我的電腦,兩三天天不能動不能關機,而且VBA比較低端,C++估計效果會好很多吧,不過我比較low不會編啊。
接下來就是Monte Carlo Simulation, 其實simulation無非就是根據historical data然後drag一個distribution出來模擬,前提是你要對distribution做assumption,又來了,又是distribution的assumption。其實不是說assumption不好,而且option這種東西非常flexible, 如果硬要assume distribution的話,個人認為不是非常適合。
這三個BS, BT, MONTE CARLO相對常常說起,那麼下面我額外提一下,由於feasibility的問題 雖然這仨模型有種種問題,但是還是常常被trader使用的,因為快,因為簡單,不需要測很多東西。
下面扯扯閑話,現在還有很多用non-parametric的流派,比如我導師之前用的artificial neural network (ANN), 準是准,尤其在data availability非常豐富的情況下(比如deep in the money, deep out of the money), 但是這種non-parametric模型建起來非常複雜,有很多因子需要根據sample data來決定,而且threshold也是個問題,所以並沒有流傳非常廣泛。
看模型是否在option pricing 方面useful, 可以通過「delta" hedging 來檢驗這個model在hedging方面的profitability。
暫時想到這麼多,水平有限,歡迎各種拍磚各種砸場各種口水....
順便看我大半夜寫得這麼辛苦....給個讚唄 T-T....蟹腰。
BS模型用來算普通歐式期權(plain vanilla european option)的理論價格。
Binomial Model現在作為教學演示BS模型和風險中性概率的推導,沒有什麼實際用途。如果真要鑽牛角尖,簡單的蒙特卡洛模擬用的演算法就是binomial model。
蒙特卡洛模擬主要用於各種奇異期權(比如障礙期權、彩虹期權,accumulator)的理論價格計算,屬於「笨辦法」,但也是無公式或公式過於複雜情況下的唯一解決方案,何樂而不為呢~
這三種方法算出來的都是我在這個問題(金融衍生品如何定價? )里說過的期權均衡價格,只能作為實際價格的一個指引。當然,如果採用了改良後的模型或者隱含波動率之類的empirical parameter,算出來的價格會進一步向現實價格靠攏。
就這麼簡單。這裡樓主混淆了幾個概念,
Black - Scholes是一種期權定價模型。簡單地說,它給出了期權價格的運行機制。但是本身它不是一個計算方法。實際上你後面所說的二叉樹方法,蒙特卡洛方法都可以應用於基於Black - Scholes模型的期權產品定價。
回到二叉樹方法以及蒙特卡洛方法。這兩個是具體的數值方法,他們本身不一定是模型(有些時候,某些模型會直接以二叉樹的形式提出)。實際上這兩種方法都可以應用於不同的模型,例如:
- 二叉樹:CIR模型,BDT模型,Black-Scholes模型
- 蒙特卡洛:Libor Market模型等。
所以我想告訴題主的觀點,BS模型和二叉樹以及蒙特卡洛計算演算法是兩個不同層面的東西。模型可以使用不同的計算演算法去求解,例如BS模型也可能需要使用二叉樹(例如,美式期權),也可能需要使用蒙特卡洛演算法(例如,回望期權)。而同一種計算演算法,例如二叉樹,可以應用於不同的模型,例如:CIR,BS,BDT。
我覺得樓主這裡所說的Black-Scholes模型應該是指BS模型的解析演算法。
所以我覺得這個問題更正確的提法應該是:
關於Black - Scholes模型,解析演算法、二叉樹演算法以及蒙特卡洛演算法,各自的優劣勢在哪裡?
關於這個問題,我覺得這裡很多回答已經給的很充分了。這三種模型,我覺得代表了三種思考期權的思想。對於BS公式而言,核心就是Brownian Motion,在處理期權的時候,要優先考慮如何去處理Brown Motion,以及通過變換measure 和 numerair 使得複雜的期權可以通過簡單的Brownian表示出來。對於binomial tree而言,核心是期權最後in the money的概率,我們要通過各種方法去求這樣的概率,比如用binomial tree定價digital option的時候,我們就會用BS中的dual delta來估算probability。如果是單純的Montez-Carlo simulation,我們更加關注的的價格的趨勢,也就是說,我們會模擬很多的價格,考慮到基本上所有的可能性,期權價格就是所有最後支付的一個平均。
可以看出,三種方法的從數學難度上是BS&>binomial tree&>Monte Carlo。從計算複雜程度上是Monte Carlo≈binomial tree &>&>BS。不過,可以證明binomial tree的極限就是BS,Monte Carlo也只是BS公式的一個運用。隨著期權卻來卻複雜,以及計算機運算速度的提高,用隨機分析能找到的顯示解越來越難,但是,卻可以通過binomial Tree 和Monte Carlo得到較為精確的解。這也就是為什麼這兩種方法依舊非常流行的原因。
一瓶底醋也來晃蕩一下。。。
Binomial tree 的話這學期寫過一個用它來給options 定價的小程序,拋開我的代碼效率不高這點因素之外,能夠明顯感覺到運算的速度很慢,而且最後也不過是得到一個BS 公式的近似解。
BS的話方便快捷,而且也是可以用在美式期權上的。最近在看的一本某個trader 寫的書(《Volatility Trading》)裡面作者提到雖然有些過時了但他還是一直在用,因為雖然糙了點但是非常robust。而且這個作者還提到一般BS 公式不是用來直接定價的而是逆向用來得出implied volatility ,再與用各種統計方法得出的realized volatility 相比較進行交易。此外上次Chicago Trading Company 的一個director 校友來我們學校info session 的時候貌似提到過他們還是會用BS 進行快速估值的(貌似是某次值夜班的時候他看到了某條breaking news之後立刻進行的)。不過他們是market maker 所以不知道和普通的trader 會不會方法不同。啊我還是個小本科對實際應用完全不了解要是說錯了還請見諒。
至於鼎鼎大名的Monte Carlo 我懂得實在是不多就不來獻醜了。。。簡單的說:BS簡單粗暴,但適用範圍最有限,只能用於歐式期權;二叉樹的優勢在於可以算美式期權;MC最暴力也最費時,優勢在於可以計算path-dependent的期權。
半瓶子醋來晃悠一下。
先說簡單的——Binomial Model (二叉樹模型)
寫過程序的對二叉樹肯定印象深刻,這個模型的思路簡單來說就是把股價的變動用二叉樹來模擬。針對每一個時間間隔,該模型認為有一定幾率漲一定額度、有一定幾率跌一定額度,只有這兩種可能性。許多時間間隔累加起來就近似出了股價變動的模式。當你設置足夠短的時間間隔的時候(比如1s甚至1s以下),幾乎可以平滑地體現股價變動的軌跡。然後其定價原理就是期望收益,畢竟到到期日的時候期權的回報將會確定,針對每種可能的 scenario、或者說每個二叉樹的最末那一層的所有結點,可以求得期權的回報。然後,每個父結點的期望收益就由其兩個子結點的收益關於概率的加權平均決定,再考慮上貨幣的時間價值。最後層層回推,就能推得你希望定價的時點期權的價值。
舉例:當前股價100,1個時間單位之後有50%概率變成200,有50%概率變成50. 有一個1個時間單位之後到期的call,執行價80. 這1個時間單位內可以取得的無風險收益為20%.
到期時,期權價值可能為120(股價200),可能為0(股價50),期望收益是60,再考慮貨幣的時間價值,現在這個期權,在這個簡單得離譜的二叉樹模型假設下,價值為50.
然後就是無人不知無人不曉的Black-Scholes了……
任何的衍生品課程、金融工程課程都會詳細介紹這個模型,偏數學一些的課程還會介紹完整推導過程,我在這裡就不贅述了。簡單介紹可以看Wiki:http://en.wikipedia.org/wiki/Black%E2%80%93Scholes_model 對具體過程更感興趣的可以去看那篇拿了諾貝爾獎的論文:http://srv02.planchet.net/EXT/ISFA/1226.nsf/fba3680ef04627c2c1256e430032c822/b4201161b37873d6c1256f56002dfc30/$FILE/Merton%20%5B1976%5D%20Option%20pricing%20when.pdf
一句話介紹的話,就是把股價變動看作一個具有特定性質的隨機過程,期權的價值由這個隨機過程決定,可以通過解一個隨機微分方程得到顯式解(微分方程有顯式解很不容易的!),解就是經典的 Black-Scholes 公式。
B-S公式在剛發表的時候各種假設還比較理想化,但很快被市場接受並用來對期權定價。後人在B和S的基礎上還進行了許許多多的改進,有很多衍生的模型。本人並不太了解當前市場中期權的定價具體在用什麼模型(各量化交易基金肯定有自己獨特的一套定價系統),希望有從業人員能指點一二。
最後來說Monte Carlo吧。前面本人也提到了,微分方程有顯式解的情況是比較罕有的,很多衍生品的價值並不能那麼簡單地用一個公式就求出來。這種時候,Monte Carlo就是一種模擬的方法。該方法的思路就是,隨機模擬若干(為了準確怎麼也得幾百萬次吧)次標的物價格的變化,對應地看衍生品的價格變化,然後作平均,最後就能得到衍生品的期望價值。
舉個腦殘的例子:我特別想知道硬幣扔出來是正面的概率,然後我就找了個硬幣,扔了兩萬次,得到10032次正面(向御坂致敬),9968次反面。這樣我這次Monte Carlo模擬的結果就是,硬幣扔出來正面的概率大約為0.5016
當然現在這樣的模擬主要是電腦在做。估衍生品價值,估隨機變數的分布函數都很方便,居家旅行,殺人放火都好使。
嗯……如果想進一步學習,熟悉具體的推導過程,還是去找本經典教材啃啃吧。衍生品的話推薦 John Hull 的 Options, Futures, and Other Derivatives
B-S是模型。
Binomial是玩具模型。
MC是數值方法。
有了模型怎麼解出定價公式?
- 手動解PDE,得到封閉形式解。
- PDE解不出來怎麼辦?Finite Difference去解。
- PDE解不出來怎麼辦?MC去模擬它的麻麻SDE。
- etc etc
所以只要你有MC你可以得到所有模型的解,但是巨慢無比解出來也就沒有用了。
高票答案貌似沒有簡明扼要地說人話啊。。。
簡單地說,binomial tree是思想啟蒙,是最intuitive的模型,給小孩子都講得明白。Black Scholes是binomial tree的進階版,把時間間距縮到無窮小之後的極限,是定價的理論值。Monte Carlo是最簡單粗暴的實踐,直接模擬出大量假設數據,再根據這些「假」數據做統計
稍微補充一點點。二叉樹和蒙特卡洛方法各位大神已經說的很詳細了,我補充一點點關於對BS model的理解。儘管BS的假設比較理想化,像constant volatility,constant interest rate,geometric brownian motion等,這些假設已經被各種更加複雜細緻的model所修正,因此BS在實際運用上不是很準確,可能只是作為一個參照而已。但是BS Model最核心的部分個人覺得是它提供了一個思想: 複製。例如,一個歐式期權可以看做是股票和債券的組合。無論再複雜的衍生產品,其收益在一定條件下都可以運用其他的產品組合複製出來,以複製思想為基礎,從而可以進一步對衍生品進行定價。BS Model儘管不是那麼完美,但是其提供的分析框架和複製的思想才是其最核心的最值得去思考的東西。
個人愚見,不喜勿噴,謝謝。
bs是假設underlying服從lognormal分布的期權模型,其他模型有local volatility,stochastic volatility等。tree,monte carlo是數值方法,工業界優先用的其實是finite difference,俗稱解pde方程。上述三種數值方法都可以用於解bs模型,以及其他模型
推薦閱讀:
※程序員為了期權加入創業公司,值得嗎?
※如何通俗地解釋期權的概念和特點?
※研究衍生品的時候為什麼用幾何布朗運動來模擬股票價格的運行軌跡?
※為什麼平值期權的時間價值最大?
TAG:金融 | 蒙特卡洛方法 | 期權 | Black-Scholes-Merton模型 | 二叉樹期權定價模型 |