6.2 相对行业波动率

 

过去 N 日, 股票相对行业指数的收益波动率, 相对收益波动率越大, 股票相对行业指数越容易走出不同走势。
相对行业波动率 =(股票涨幅 - 行业涨幅)的 N 日标准差 * sqrt(N 日)
行业涨幅 = 行业收盘价 / 昨日行业收盘价 -1
行业收盘价取当前股票所在一级行业或二级行业内所有股票的当日收盘价的中位数

以代码 600000 的股票数据为例,计算其 250 日相对行业波动率

A
1 250
2 =directory@p(“D://*.csv”)
3 = A2.(T(~).keys(日期).select(收盘价 >0))
4 =A3.len().(“A3(”/~/“)”).concat(“;”)
5 =join@f(${A4})
6 =A3.len().(“_”/~/“. 收盘价”).concat(“,”)
7 =A5.new(_1. 日期: 日期,[${A6}].delete([${A6}].pos@a(null)).median():hmed_ 收盘价)
8 =A7.keys(日期)
9 =T(“D://600000.csv”).keys( 日期).select(收盘价 >0)
10 =join@1(A9;A7)
11 =A10.new(_1. 日期,_1. 收盘价,_2.hmed_ 收盘价).sort(日期)
12 =A11.derive((收盘价 / 收盘价 [-1]-1)- (hmed_ 收盘价 /hmed_ 收盘价 -1): 相对日涨幅 )
13 =A12.new(日期,sqrt(var@s( 相对日涨幅 [1-A1:0]))*sqrt(A1): 相对行业波动率 )

A2 返回目标路径下的所有 csv 文件名,此处为行业内所有股票文件名称
A3 循环 A2,导入所有股票数据,并将日期设为主键,剔除收盘价为 0 的日期
A4 生成字符串,用作 A5 的参数
A5 将所有股票数据按照日期进行全连接
A6 生成字符串,取所有股票收盘价

imagepng

A7 取所有股票的每日收盘价放入序列,剔除空值后,计算每日收盘价的中位数,得到行业收盘价“hmed_ 收盘价”
A8 将 A7 日期设为主键
A9 导入 600000 股票数据
A10 将 A9 和 A7 进行左连接
A11 在 A10 中取日期,收盘价和行业收盘价
A12 股票涨幅 - 行业涨幅,得到相对涨幅
A13 取 N 日相对涨幅,带入公式计算相对行业波动率