蒙特卡羅

Heston MC Simulations - 在 Matlab 中加速

  • June 24, 2013

目前,我正在執行一台配備 12GB RAM 的四核 Xeon PC,它正在執行具有 10k 場景和 1000 個時間步長的原始 MC。並且使用 fminsearch 進行校準,大約需要半小時到一個小時才能完成這項工作。

現在,假設 MC 是唯一可行的方法(我知道這裡的文章還有其他方法,感謝 StackExchange 的偉大人物:校準赫斯頓模型的其他方法),有什麼方法可以加快速度嗎?小的?我已經在使用 Matlabpool open 進行並行計算,我希望我的程式碼足夠靈活,以便我仍然可以執行沒有簡單分析解決方案的 Heston 模型(比如 Chan 模型)的其他替代方案。

謝謝!

不同的優化可能會有所幫助。

  • 如果每個計算由於成本而足夠快,則並行計算會變得更糟。因此,最好使用分析器來獲得可以改進的地方。通常它有助於將更大的問題發送到並行計算核心。
  • Matlab 非常擅長矩陣運算,如果可能的話,最好將 MC 的不同繪製視為一個矩陣。回到第一點,可以將一個矩陣中的多個場景發送到並行計算並提高性能。
  • 主要原則:使用更少的記憶體分配操作和更少的並行計算呼叫。有時,執行多個非並行程式碼實例甚至比在不同的 matlabpool 核心上使用並行計算還要快。

引用自:https://quant.stackexchange.com/questions/8245