我想通过使用以下循环来计算呼叫选项的"到期时间".请注意,optionbidprice是电子表格上打印的数字,并且已正确读取.必须为每个新的重新计算期权价格T,因此也是如此function0.也functionderived被重新计算每次迭代.
optionPrice = BSMOptPrice(opT, S, sigma, K, rf, q, T)
functionDerived = (-1) * ((S * Nd1accent * sigma * Exp(-q * T)) / (2 * Sqr(T))) + (q * S * ND1 * Exp(-q * T)) - (rf * K * Exp(-rf * T) * ND2)
Do Until function0 = 0.1
function0 = optionBidPrice - optionPrice
Tnext = T - (function0 / functionDerived)
T = Tnext
Loop
calculateOptionExpiration = Tnext
Run Code Online (Sandbox Code Playgroud)
我猜这个0.1数字太不现实了,循环找不到合适的T价值.
你怎么看?