統計中常用標準差衡量隨機變量離散程度,在金融市場中標準差被稱之爲波動率。
所以首先需要先從excel中導入交易數據
引入Shibor1,Libor2 , Hibor3 的概念。
- 使用lambda函數求平均值
- 使用def語法求波動率
Notice:
1
import xlrd
2
data= xlrd.open_workbook('SLH.xlsx')
table = data.sheet_by_name(u'Sheet1')
3
col_values(列數,起點,終點)左閉右開
Full code
import xlrd
data= xlrd.open_workbook('SLH.xlsx')
table = data.sheet_by_name(u'Sheet1')
#print(table.row_values(2))
Shibor=table.col_values(1,1,16)
Libor=table.col_values(2,1,16)
Hibor=table.col_values(3,1,16)
print(Shibor)
print(Libor)
print(Hibor)
f_mean=lambda x: sum(x)/len(x)
Shibor_mean=f_mean(x=Shibor)
Libor_mean=f_mean(x=Libor)
Hibor_mean=f_mean(x=Hibor)
# print(round(Shibor_mean,6))
# print(round(Libor_mean,6))
# print(round(Hibor_mean,6))
def f_sigma(x):
n=len(x)
u_mean=sum(x)/n;z=[]
for t in range(n):
z.append((x[t]-u_mean)**2)
return (sum(z)/(n-1))**0.5
Shibor_sigma=f_sigma(x=Shibor)
Libor_sigma=f_sigma(x=Libor)
Hibor_sigma=f_sigma(x=Hibor)
print(round(Shibor_sigma,6))
print(round(Libor_sigma,6))
print(round(Hibor_sigma,6))