Black-Scholes

投影具有 Black Scholes 收益的 Thiele 微分方程

  • October 6, 2017

我正在嘗試求解方程

$ \frac{d}{dt}V(t)=r(t)V(t)+\pi-\mu(x+t)(b_d-V(t)) $

數值上使用 R 函式“ode”。這是具有保費率的人壽保險準備金的 Thiele 微分方程 $ \pi $ , 死亡率強度 $ \mu $ (為 $ x+t $ 歲),死亡撫卹金 $ b_d $ 和利率流程 $ r $ .

我想在所謂的單位關聯設置中執行此操作,其中保單的回報是由股票投資產生的,因此為了簡單起見,我假設了 Black Scholes 模型。

我生成幾何布朗運動。如圖所示,時間間隔為 40 年,模擬的步長為 $ 40/100000 $ . 對於每個模擬點,我將回報計算為

$ r[i]=\frac{S[i+1]-S[i]}{S[i]} $

這樣我有 $ 100000 $ 返回值。為兩個非常不同的場景繪製這兩個會產生

方案 1

方案 2

我的問題是,我希望保留過程會有更多變化,就像模擬的幾何布朗運動一樣。本質上,我認為它太光滑了。此外,如果我生成的 GBM 軌跡分別以 500 和 10 的值結束,則儲備最終值的差異變化很小。

有誰知道這是為什麼,我做錯了什麼嗎?附上 R 程式碼。

maturity <- 40
simulation.length <- 100001
dt <-  maturity/(simulation.length-1)

timeline <- seq(0,maturity, dt)

BM <- GBM <- EV <- rep(0, times=simulation.length)
EV[1] <- GBM[1] <- S0

for(i in 2:simulation.length){
 BM[i] <- BM[i-1]+sqrt(dt)*rnorm(1)
 GBM[i] <- GBM[1]*exp((mu-(sigma^2)/2)*(i-1)*dt+sigma*BM[i])
 EV[i] <- EV[1]*exp(mu*(i-1)*dt)
}

return <- rep(0,length(GBM))
returns[1] <- 0
for (i in 2:length(GBM)-1)
{
 returns[i] <- (GBM[i+1] - GBM[i]) / GBM[i]
}

dV <- function(t,V, parms)
{
 list(returns[t/0.0004+1] * V + premiumRate - mortalityIntensity(t+25) * 
(deathBenefit - V))
}

out <- ode(y = 0, times = timeline, func = dV, parms = NULL)

interpolatedReserve <- approxfun(times,out[,2], method="linear")

問題不在於approxfun功能不夠好,因為我在GBM上使用它來繪製綠色軌跡。

我使用 60000 作為保費率(每月支付大約 1000 美元的養老金)和 1.000.000 的死亡撫卹金(丹麥克朗的實際數字)。是不是因為回報 $ r\cdot V $ 與每年的保費率相比,太小而無法引起注意?我只是懷疑儲備地塊大致跟隨GBM的運動?

我找到了解決方案,但我不確定為什麼我做錯了。

無論如何,解決方案是使用 R 包 Sim.DiffProc 來模擬隨機擴散過程

$ dV(t)=\alpha(t,V(t))dt+\sigma(t,V(t))dW(t)\=(\alpha V(t)+\pi-\mu(x+t)(b_d-V(t)))dt+\sigma V(t)dW(t) $

感謝 Quantuple 引導我朝著正確的方向前進。

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