《金融學與經濟學中的數值方法——基於MATLAB編程(原書第2版)》這個書是我和志勇大概4、5年前就著手進行翻譯的書籍,幾經周折,現在總算得以出版上市。想要深入研究金融與經濟中的數值算法以及期權定價算法實現的朋友,強烈推薦這本書。尤其是又伴隨著3月31日豆粕期權的上市,未來期權會慢慢繁榮起來,現在正是自我充電學習提升的時候。
本書旨在幫助讀者建立紮實的數值理論基礎,以便學習更專業的金融理論。本書分為5部分:第1部分介紹理論背景,包括編寫背景和金融理論等內容;第2部分介紹數值方法,包括數值分析基礎、數值積分、偏微分方程的有限差分法和凸優化等內容;第3部分介紹權益期權定價,包括期權定價的二叉樹與三叉樹模型、期權定價的蒙特卡羅方法和期權定價的有限差分法;第4部分介紹高級優化模型與方法,包括動態規劃、有追索權的線性隨機規劃模型和非凸優化等內容,第5部分為附錄。本書使用MATLAB為軟體工具。
本書可作為金融學和經濟學專業高年級本科生和研究生的教材,同時也可作為從事金融特別是金融工程領域工作的專業人員的參考書。
內容簡介
第1章為讀者介紹數值方法的需求與MATLAB數值計算環境。
第2章概述金融理論。目標讀者為工程學、數學或運籌學專業的學生,他們或許對本書感興趣,但是缺乏與金融相關的背景知識。
第3章介紹經典數值方法的基本知識。在某種意義上,這是對第2章的補充,目標讀者為缺乏數值分析相關背景知識的經濟學專業學生。本書由於受篇幅的限制,加之在後面章節不涉及這些數值方法,一些基本的數值方法被省略了。事實上,本書沒有涉及計算矩陣特徵值與特徵向量以及與常微分方程相關的內容。
第4章介紹數值積分方法,包括求積公式與蒙特卡羅方法。在第1版中,求積公式放在了數值分析的章節中,而蒙特卡羅方法則作為單獨一章。在第2版中將這兩部分內容放在一章中,有助於兩種方法應用的比較,其中包括期權定價與隨機優化的情景模擬。將蒙特卡羅方法作為一種積分方法而不是模擬方法,有助於正確理解低差異序列(或稱為擬蒙特卡羅模擬)的應用。增加了關於高斯求積的內容,高斯求積方法可以擴展為一種方差降低技術,通常應用於簡單期權定價。關於方差降低技術的更複雜的示例放在第8章。
第5章介紹偏微分方程的基本有限差分方法。主要內容為求解熱傳導方程(其為拋物線方程的典型示例)。布萊克-斯科爾斯方程也屬於拋物線方程。在這個簡化的框架中,我們可以理解解偏微分方程的顯式和隱式的方法之間的關係,以及相關的收斂性和數值穩定性的問題。相對於第1版,增加了交替方向隱式方法求解二維熱傳導方程的內容,這對二維期權定價非常有幫助。
第6章介紹有限維(靜態)優化方法。讀者如果對第7~9章的期權定價感興趣可以跳過此章。本章對於經濟學專業學生或許有幫助,如果需要更專業的優化模型與方法,可以參考第10~12章。
第7章為新增加的章節,主要介紹二叉樹與三叉樹模型,這些內容在第1版中沒有涉及。本章的主要內容為二叉樹與三叉樹模型計算與存儲樹結構的內存管理。
第8章與第4章內容相關,介紹蒙特卡羅與低差異序列對於奇異期權更專業的應用,例如障礙式期權與亞式期權。還簡單介紹了基於蒙特卡羅方法的期權敏感性(Greeks)估計,重點為歐式期權;基於蒙特卡羅方法的美式期權定價為另外一個專業問題,將在第10章進行講解。
第9章在第5章內容的基礎上,介紹了基於有限差分方法的期權定價。
第10章主要介紹動態數值規劃。本章的主要內容為基於蒙特卡羅方法的美式期權定價, 在第1版中尚未涉及這些內容,但是美式期權定價越來越重要。我們將基於一個適當的框架(動態隨機優化)來介紹美式期權定價。本章僅介紹主要方法,即基於離散時間與有限時間的動態規劃方法。此外,我們試圖通過一個恰當的案例來幫助讀者充分理解此方法。不僅因為它們在經濟學中的重要性,也因為理解動態規劃有助於學習隨機動態規劃,這些將是下一章的內容。
第11章主要介紹線性隨機規劃模型。在運籌學中,這是一個標準的研究方法,但是經濟學專業學生更熟悉動態規劃。從方法論的角度來看,將這些方法與動態規划進行比較非常重要;從實際的角度而言,隨機規劃對於動態組合管理與不完備市場中的期權對衝非常有意義。
第12章講解非凸優化的相關內容。本章主要介紹混合整數規劃,它主要應用在具有邏輯決策變量約束的投資組合管理中。我們同時介紹全局優化問題,如連續非凸優化。當我們「遠離」簡單優化問題(凸的成本函數最小化或凹的效用函數最大化)的可行域時,連續非凸優化非常重要。同時,將簡要概述啟發式方法,如局部搜索算法與遺傳算法。這些算法在集成模擬與優化模型中非常有用,經常用在計量經濟學中。
書籍目錄
目錄
譯者的話
第2版前言
第1版前言
第1部分理論背景
第1章編寫背景3
1.1數值分析方法的需求4
1.2關於數值計算平臺的需求:為何選擇MATLAB?8
1.3理論的需求11
進階閱讀17
參考文獻18
第2章金融理論19
2.1不確定性建模21
2.2基礎金融資產及相關問題24
2.2.1債券24
2.2.2股票26
2.2.3衍生品27
2.2.4資產定價、投資組合優化、風險管理31
2.3固定收益證券: 價值分析與組合免疫策略36
2.3.1基礎利息理論: 複利和現值36
2.3.2固定收益證券的基礎定價42
2.3.3利率敏感性與投資組合免疫48
2.3.4與固定收益證券相關的MATLAB函數51
2.3.5小結55
2.4股票投資組合管理56
2.4.1效用理論56
2.4.2均值-方差投資組合優化62
2.4.3MATLAB 計算均值-方差投資組合優化模型的函數64
2.4.4小結70
2.4.5其他風險測度:在險價值與分位數法71
2.5資產價格的動態建模76
2.5.1從離散時間到連續時間76
2.5.2標準維納過程78
2.5.3隨機積分與隨機微分方程80
2.5.4伊藤引理83
2.5.5小結86
2.6衍生品定價87
2.6.1期權定價的二叉樹模型90
2.6.2布萊克-斯科爾斯模型(Black-Scholes model)92
2.6.3風險中性期望與費曼-卡茨(Feynman-ka)公式95
2.6.4布萊克-斯科爾斯模型的MATLAB計算96
2.6.5關於布萊克-斯科爾斯公式的註解99
2.6.6美式期權的定價100
2.7奇異期權與路徑依賴期權簡介101
2.7.1障礙期權101
2.7.2亞式期權105
2.7.3回望期權106
2.8利率衍生品概述106
2.8.1利率動態模型107
2.8.2不完備市場和風險市場價格108
進階閱讀110
參考文獻111
第2部分數值方法
第3章數值分析基礎115
3.1數值計算的性質115
3.1.1數值的表示、四捨五入和截斷115
3.1.2誤差的產生、條件與不穩定性118
3.1.3收斂階數與計算複雜度120
3.2求解線性方程121
3.2.1向量與矩陣的範數122
3.2.2矩陣的條件數125
3.2.3線性方程組求解的直接方法129
3.2.4三對角矩陣134
3.2.5求解線性方程組的迭代方法135
3.3函數逼近和插值146
3.3.1特殊逼近149
3.3.2初等多項式插值150
3.3.3三次樣條插值154
3.3.4最小二乘的函數逼近理論158
3.4非線性方程組求解161
3.4.1二分法162
3.4.2牛頓法164
3.4.3基於優化的非線性方程求解167
3.4.4求解方程組的複合方法172
3.4.5同倫連續法172
進階閱讀174
參考文獻174
第4章數值積分:定性分析與蒙特卡羅模擬177
4.1確定性求積179
4.1.1經典插值公式179
4.1.2高斯求積法181
4.1.3擴展與乘法法則186
4.1.4MATLAB 中的數值積分186
4.2蒙特卡羅積分187
4.3生成偽隨機變量191
4.3.1生成偽隨機數191
4.3.2逆變換方法196
4.3.3取捨法198
4.3.4通過極坐標方法生成正態隨機變量199
4.4設置重複次數203
4.5降低方差技術206
4.5.1對偶抽樣206
4.5.2公共隨機數技術213
4.5.3控制變量214
4.5.4通過條件降低方差216
4.5.5分層抽樣220
4.5.6重要性抽樣222
4.6擬蒙特卡羅模擬228
4.6.1生成哈爾頓低差異序列229
4.6.2生成索博爾低差異序列239
進階閱讀243
參考文獻244
第5章偏微分方程的有限差分法245
5.1偏微分方程的介紹和分類246
5.2有限差分法的數值解248
5.2.1一個有限差分法的錯誤例子250
5.2.2有限差分法的不穩定性251
5.3熱傳導方程的顯式和隱式方法256
5.3.1使用顯式方法求解熱傳導方程257
5.3.2使用全隱式方法求解熱傳導方程261
5.3.3熱傳導方程的克蘭克-尼科爾森(Crank-Nicolson)方法264
5.4求解二維熱傳導方程266
5.5收斂性、一致性和穩定性272
進階閱讀273
參考文獻273
第6章凸優化275
6.1優化問題的分類276
6.1.1有限維與無限維問題276
6.1.2無約束與約束問題280
6.1.3凸問題與非凸問題280
6.1.4線性與非線性問題282
6.1.5連續與離散問題283
6.1.6確定性與隨機性問題284
6.2無約束優化的數值方法284
6.2.1最速下降法285
6.2.2梯度法286
6.2.3牛頓法與信賴域法286
6.2.4非導數算法: 擬牛頓法與單純形搜索287
6.2.5非約束問題的MATLAB編程288
6.3約束問題的優化方法290
6.3.1罰函數法291
6.3.2庫恩-塔克(Kuhn-Tucker)條件29
6.3.3對偶理論299
6.3.4凱利(Kelley)切平面法303
6.3.5有效集法304
6.4線性規劃306
6.4.1線性規劃的幾何與代數特徵307
6.4.2單純形法308
6.4.3線性規劃的對偶性310
6.4.4內點法312
6.5約束優化問題的MATLAB編程314
6.5.1線性規劃的MATLAB編程315
6.5.2債券投資組合管理的LP模型317
6.5.3使用二次規劃構建投資組合的有效前沿320
6.5.4非線性規劃的MATLAB編程322
ⅩⅤ
ⅩⅥ
6.6模擬與優化324
附錄凸分析基礎325
附錄6.1優化問題中的凸性326
附錄6.2凸多面體328
進階閱讀330
參考文獻330
第3部分權益期權定價
第7章期權定價的二叉樹與三叉樹模型335
7.1二叉樹定價模型335
7.1.1校準二叉樹模型336
7.1.2後付期權的定價341
7.1.3一種二叉樹模型的改進343
7.2美式期權的二叉樹定價方法345
7.3二維期權的二叉樹定價方法347
7.4三叉樹定價期權352
7.5總結355
進階閱讀356
參考文獻356
第8章期權定價的蒙特卡羅方法357
8.1路徑生成358
8.1.1模擬幾何布朗運動359
8.1.2模擬對衝策略361
8.1.3布朗橋366
8.2交換期權定價369
8.3向下敲出式看跌期權的定價371
8.3.1簡單蒙特卡羅模擬371
8.3.2條件蒙特卡羅模擬372
8.3.3重要性抽樣375
8.4算術平均亞式期權的定價379
8.4.1控制變量法379
8.4.2哈爾頓序列的應用383
8.5蒙特卡羅抽樣法計算期權Greeks391
進階閱讀395
參考文獻395
第9章期權定價的有限差分法397
9.1有限差分法在布萊克-斯科爾斯方程中的應用397
9.2普通歐式期權的顯式方法定價399
9.3普通歐式期權的全隱式方法定價403
9.4 障礙期權的克蘭克-尼科爾森方法定價405
9.5 美式期權的處理407
進階閱讀411
參考文獻411
第4部分高級優化模型與方法
第10章動態規劃415
10.1最短路問題416
10.2連續的決策過程418
10.2.1最優化原理和解函數方程419
10.3用動態規劃解決隨機決策問題421
10.4美式期權定價的蒙特卡羅模擬427
10.4.1一個用MATLAB實現的最小二乘方法431
10.4.2一些研究與替代方法434
進階閱讀435
參考文獻435
第11章有追索權的線性隨機規劃模型437
11.1線性隨機規劃模型437
11.2投資組合管理的多階段隨機規劃模型440
11.2.1分離變量模型442
11.2.2緊模型448
11.2.3有交易成本的資產和債務管理452
11.3多階段隨機規劃方案的生成453
11.3.1方案樹生成的採樣454
11.3.2無套利方案的生成456
11.4二階段線性隨機規劃的L形方法460
11.5與動態規劃的比較463
進階閱讀464
參考文獻464
第12章非凸優化467
12.1混合整數規劃模型468
12.1.1邏輯變量建模469
12.1.2混合整數組合優化模型472
12.2基於全局優化的固定混合模型477
12.3非凸優化的分支定界方法478
12.4非凸優化的啟發式算法488
進階閱讀492
參考文獻493
ⅩⅦ
第5部分附錄
附錄AMATLAB編程介紹497
A.1MATLAB 環境497
A.2MATLAB 圖形508
A.3MATLAB 編程510
附錄B概率論與數理統計相關基礎知識515
B.1樣本空間、事件與概率515
B.2隨機變量、期望與方差516
B.3聯合分布隨機變量522
B.4獨立性、協方差與條件期望523
B.5參數估計526
B.6線性回歸530
進階閱讀533
參考文獻533
附錄CAMPL介紹535
C.1使用AMPL運行優化模型535
C.2在AMPL中求解均值-方差有效組合536
C.3在AMPL中求解背包模型539
C.4現金流匹配模型541
進階閱讀542
參考文獻542
更多內容請點擊「閱讀原文」,本公眾號由李洋(微信faruto)維護。
更多量化投資、MATLAB應用內容可以關注:
MATLAB技術論壇:
http://www.matlabsky.com/
李洋(faruto)的微博、博客
http://weibo.com/faruto
http://blog.sina.com.cn/faruto
===分享給朋友===
點擊右上角,在彈出菜單中選擇「發送給朋友」或「分享到朋友圈」
===訂閱FQuantStudio公眾號===
點擊右上角,在彈出菜單中選擇「查看公眾號」,點擊「關注」。還可以微信上搜索「FQuantStudio」或掃描下面的二維碼進行關注(點擊下面的二維碼,點擊右上角,在彈出菜單中選擇「識別圖中二維碼」,即可完成)。