多因素 Ornstein Uhlenbeck 的蒙特卡羅
我大致遵循 Glasserman 在“金融工程中的蒙地卡羅方法”中給出的闡述。
對於多因素 OU 流程:
$ dX(t)=C(b-X(t))dt+DdW(t) $
其中 C 和 D 是 d*d 矩陣,b 和 X(t) 是長度為 d 的向量,W 是 ad 維布朗運動。
他指出,這可用於定義類似於一維情況的“精確”離散化(如下所示)
一維案例:
$ dr(t)=\alpha(b-r(t))dt+\sigma dW(t) $
有解決方案
$ r(t)=exp^{-\alpha(t-u)}r(u)+\alpha\int_u^t \exp^{- \alpha(t-s)}b(s) ds+ \sigma \int_u^t \exp^{- \alpha(t-s)}dW(s) $
並且可以模擬為
$ r(t+1)=exp^{-\alpha(t_{i+1}-t_i)}r(t_i)+\mu(t_i,t_{t+1})+\sigma_r(t_i,t_{i+1})Z_{i_1} $ - EQ1
在哪裡 $ \mu(u,t)=\alpha \int_u^t \exp^{-\alpha(t-s)}b(s)ds $
如果 b 是常數 $ \mu=b(1-\exp^{-\alpha(t_{i+1}-t_i)}) $
和
$ \sigma_r^2(u,t)=\sigma^2 \int_u^t \exp^{-2\alpha(t-s)}ds=\frac{\sigma^2}{2 \alpha}(1-exp^{-2 \alpha(t-u)}) $
回到多因素案例
一般的解決方案是
$ X(t)=exp^{-C(t-u)}X(u)+\int_u^t \exp^{- C(t-s)}b ds+ \int_u^t \exp^{- C(t-s)}DdW(s) $ – EQ2
然而,他還繼續表明,當 C 可以使用 $ VCV^{-1}=\Delta $
$ dY(t)=VX(t) $
簡化後變成
$ dY(t)=\Delta(\tilde{b}-Y(t))dt+d \tilde W(t) $
和 $ \tilde{W} $ 一種 $ BM(0,\Sigma) $ 在哪裡 $ \Sigma=VDD’T’ $
這可以建模為
$ Y_j(t+1)=exp^{-\lambda_j (t_{i+1}-t_i)}Y_j(t_i)+(\exp^{\lambda_j(t_{i+1}-t_i)}-1)\tilde{b}j +\sqrt{\frac{1}{2 \lambda_j}(1-exp^{(-2\lambda_j(t{i+1}-t_i)})}\xi_j(i+1) $ EQ3
在哪裡 $ \xi(1), \xi(2) $ 是獨立的 $ N(0,\Sigma) $ .
簡化為標量模擬系統
然後,您可以恢復 $ X(t) $ 使用 $ X(t)=V(t)^{-1}Y(t) $
我的問題是
1.) 我能否在不進行對角化的情況下執行多因素 OU 過程,即使用一般解 Eq2 和 EQ1 中所示的離散化方案?(如果不是為什麼不呢?)
我意識到使用對角化的第二種解決方案更簡潔(更快),但我希望能夠以兩種方式模擬該過程,以便我可以相互測試模型。
2.) 如果問題 1 的答案是否定的,那麼我如何對我的模型進行基準測試以確保它是正確的。
EQ1 是單變數情況。EQ2 是多元情況,在這種情況下,您必須使用相關 $ X_t $ . 他的做法是製作 $ Y_t $ 獨立,以便您可以自由模擬。他通過在 $ \Delta $ . 或者,您可以生成相關的 $ X_t $ 在你的模擬中。
要對您的模型/程式碼進行基準測試,您應該首先測試並重現給定的多元 OU 範例,並查看您是否匹配解決方案。有多種方法可以使用精確解多變數精確解,另一個由 Gillespie 提出,上升到雙變數情況,這是在 Matlab 中實現的 Gillespie