python 滚动体积加权标准差

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 滚动体积加权标准差相关的知识,希望对你有一定的参考价值。

def vw_std(ohlcv, window):
    data = ohlcv.copy()
    data['returns'] = data['close_price'].pct_change(1)
    data.drop(data.index[0], inplace=True)
    
    results = {}
    
    for i in range(len(data) - window + 1):
        date_idx = data.index[i:i+window]
        group = data.loc[date_idx, ['returns', 'volume']]
        
        dev_sq = ( group['returns'] - group['returns'].mean() )**2
        wtd_dev_sq = group['volume'] * dev_sq
        var = wtd_dev_sq.sum() / group['volume'].sum()
        std = np.sqrt(var)
        results[date_idx[-1]] = std

    return pd.Series(results)

以上是关于python 滚动体积加权标准差的主要内容,如果未能解决你的问题,请参考以下文章

NumPy 中的加权标准差

计算加权平均值和标准差

Python中的加权随机样本问题,怎么解决

标准差怎么计算 标准差的计算方法

pandas使用groupby函数计算dataframe数据中每个分组的N个数值的滚动标准差(rolling std)例如,计算某公司的多个店铺每N天(5天)的滚动销售额标准差

ggplot2将滚动平均值的标准差添加到散点图