股票波动率 python_如何统计投资品种波动率(python)?

目前正在网H股ETF,进行了接近一年了还没出清,虽然已盈利,但相对于50ETF来说现在想它还真不是好品种,不考虑强周期、通胀、流动性等因素,仅就网格的最大影响因素波动性来讲,它就比不上50ETF。以前不会统计,现在学了点Python,自己写了小程序计算了下,先上结果:

0babd3e15a240fa5d80413453c16ec54.png

volatility(510050vs510900).png

图中蓝色为50ETF,可以看出,过去三年来它的日波动性明显强于H股ETF。

下面就以50ETF和H股ETF为例,统计这两个投资品种的日波动率,其他品种、其他周期类似处理即可。附上代码:

# -- coding: utf-8 --

"""

Created on Sat Jul 09 12:03:03 2016

@author: forestgumpgg(雪球ID、聚宽ID),欢迎关注,共同讨论量化分析之道

比较上证50ETF(510050)和H股ETF(510900)的日波动率

日波动率=sqrt[(最高值-收盘值)^2 + (最低值- 收盘值) ^2]

"""

import pandas as pd

import matplotlib.pyplot as plt

import tushare as ts

import math

ts.set_token('********') #此次隐去了自己用的token

start_date = '2013-07-01'

end_date = '2016-06-30'

info510050 = ts.get_hist_data('510050', start= start_date, end=end_date)

info510050 = info510050.sort_index(axis = 'index', ascending = True)

info510050['day_volatility'] = (pow(info510050['high'] -info510050['close'] , 2) +

pow(info510050['low'] -info510050['close'] , 2) )

for i in range(0,len(info510050.index)):

info510050['day_volatility'][i] = math.sqrt(info510050['day_volatility'][i])

info510900 = ts.get_hist_data('510900', start=start_date, end=end_date)

info510900 = info510900.sort_index(axis = 'index', ascending = True)

info510900['day_volatility'] = (pow(info510900['high'] -info510900['close'] , 2) +

pow(info510900['low'] -info510900['close'] , 2) )

for i in range(0,len(info510900.index)):

info510900['day_volatility'][i] = math.sqrt(info510900['day_volatility'][i])

plt_title = 'volatility(50ETF vs H_ETF)'

plt_figsize = (16, 9) #unit is inch

plt.figure()

info510050['day_volatility'].plot(figsize = plt_figsize, title = plt_title, grid = True, legend =True)

info510900['day_volatility'].plot(figsize = plt_figsize, title = plt_title, grid = True, legend =True)

plt.legend(['50ETF','H_ETF'])

plt.savefig("volatility(510050vs510900).png")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值