以下代码导致cp_exact未定义错误。我无法弄清楚原因。
基本上,错误是在最终行中的一般情况 print("%10.6f,%10.6f,%10.6f"%(a,b,c))。为什么不思考工作? a,b,c,已定义,但它会抛出一个" a未定义"错误。
def print_result():
#Exact call and put based on Black Scholes
exact_call = V_c(0.75, 0.025, 1, 0, 100, 100, 0.03)
exact_put = V_p(0.75, 0.025, 1, 0, 100, 100, 0.03)
#Put these into an array
cp_exact = [exact_call, exact_put]
#Euler call and put prices
cp_euler = CP_Euler(100, 0.08, 0.03, 0.75, 1, 100, 100, 1000)
#Compute error in call and put prices
cp_error = Error_Euler(100, 0.08, 0.03, 0.75, 1, 100, 100, 1000, 0.025)
print("Black-Scholes Euler Discretization Comparison\n\
with the following parameters: Stock = $100, Strike = $100\n\
mu = 0.08, r = 0.03, delta = 0.025, sigma = 0.75, T = 1\n\
dt = 0.01, N = 1000")
print("Exact Call Euler Call Error")
print("%10.6f %10.6f %10.6f" % (cp_exact[0], cp_euler[0], cp_error[0]))