我正在尝试求解一个函数,其中两个方程式中给出的值是隐式的。我必须使用迭代方法。 已经给出的值是V_DCL,障碍,us_r,时间。
我对该函数的代码是:
Test <- function(V_DCL, barrier, us_r, time, vola_A) {
V_A <- V_DCL/(pnorm(d_1, 0, 1)) + (barrier*exp(us_r*time)*pnorm(d_2, 0, 1))/(pnorm(d_1, 0, 1))
d_1 <- (log(V_A/barrier)+(us_r + 0.5*vola_A^2)*t)/(vola_A*sqrt(time))
d_2 <- d_1 - vola_A*sqrt(time)
outputs <- list(V_A, d_1, d_2, vola)
return(outputs)
}
我需要获取V_A和vola_A的值。 此功能类似于黑色的碎屑公式。但是我没有资产的价值,而是负债的价值,所以我重新安排了它。
到目前为止,我知道我必须对vola_A做一个初步的猜测,在所有方程式都适合之前,需要对其进行更改。
我已经研究了基本的repeat()
函数和simecol软件包。但是我没有弄清楚如何在我的代码中应用它。
你能给我一些想法吗?谢谢。
编辑(其他信息):
us_r
的给定数据为0.05,time
代表时间范围,我现在将使用1个周期。 barrier
的给定值为2.683782e + 13,V_DCL
的给定值为4.732741e + 11。