【发布时间】:2023-03-18 22:40:02
【问题描述】:
我已尝试解决此问题,但无法解决。 我正在尝试确定金融领域的标准差,我的意思是:
Pr = Prob are equal [0.3, 0.4, 0.3]
r = Return are equal [0.10 ,0.05, 0.30]
所以,首先我计算我的平均值
E(r) = 0.10*0.3 + 0.4*0.05 + 0.3*0.3 = 0.14
其次,计算我的方差:
Var = 0.3*(0.1-0.14)^2 + 0.4*(0.05-0.14)^2 + 0.3*(0.3 - 0.14)^2 = 0.0114
第三,我的标准差是
Var^(1/2) = 0.10677078 rounded to 0.10677
在 Python 中,我尝试使用基本算法求解,但我做不到。 我的代码是:
import math
def dev_stan(prob, ret):
Pro = 0
Des_Stan = 0
Var = 0
for i in range(len(ret)):
Pro += prob[i]*ret[i]
Var += (ret[i] - Pro)**2*prob[i]
Des_Stan = (math.sqrt(Var))
return Des_Stan, Var, Pro, ret, prob
x = [0.30,0.4,0.30]
y = [0.10,0.05,0.30]
print(dev_stan(x,y))
此代码导致:0.0956556 但这不是答案。
【问题讨论】:
标签: python finance standard-deviation