我一直收到这个错误,我不知道我做错了什么?希望有人可以帮助我。我的代码是:
file="path"; name=$(cat "$file")
我的价值观是:
def bmsim_vec(T, N, X0, mu, sigma, numsim):
np.random.seed(0)
deltaT = float(T)/N
tvec = np.linspace(0, T, N+1)
z = np.random.randn(numsim, N+1)
dX = mu*deltaT + sigma*np.sqrt(deltaT)*z
dX[:, 0] = 0.
X = np.cumsum(dX, axis=1)
X += X0
return tvec, X
def certificate(S0, T, R, sigma, delta, numsim=3):
N = T
r = np.log(1+R)
X0 = np.log(S0)
nu = (r-delta)-0.5*sigma**2
_, X = bmsim_vec(T, N, X0, nu, sigma, numsim)
S = np.exp(X)
pay = np.zeros_like(S)
payoffs = np.zeros(numsim)
for i in xrange(numsim):
for j in xrange(1, T+1):
pay[i, j] = np.maximum((1+(S[i, j]-S[i, j-1])/S[i, j-1]), (1+R))
payoffs[i] = pay[i,1:].mean()
g = np.exp(-r*T)*(payoffs)**T*S0
C = g.mean(); s = g.std()
zq = norm.ppf(0.975)
Cl = C - zq/np.sqrt(numsim)*s
Cu = C + zq/np.sqrt(numsim)*s
return C, Cl, Cu
我不断得到的错误就是这个:
S0=11.;T=10.;R=0.02;sigma=0.3;delta=.01
certificate(S0, T, R, sigma, delta, numsim=3)
TypeError:'float'对象不能解释为索引
希望有人看到我的错误。谢谢!