基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解


Posted in Python onJune 08, 2020

我就废话不多说了,大家还是直接看代码吧!

# -*- coding: utf-8 -*-
"""
Created on Thu Apr 12 11:23:46 2018
@author: henbile
"""
 
#计算滚动波动率可以使用专门做技术分析的talib包里面的函数,也可以使用pandas包里面的滚动函数。
#但是两个函数对于分母的选择,就是使用N还是N-1作为分母这件事情上是有分歧的。
#另一个差异在于:talib包计算基于numpy,而pd.rolling是基于Series或者DataFrame的。
 
import pandas as pd
import numpy as np
import talib as tb
 
a = tb.VAR(closeFull[:,0], timeperiod = 12, nbdev =1)
b = tb.VAR(closeFull[:,0], timeperiod = 12, nbdev =0)
 
#我以为nbdev是涉及分母的数量,发现其实不是。nbdev = -1也没有改变。
 
c = pd.Series(closeFull[:,0]).rolling(window = 12, center = False).var()
#tb基于np数据,pd基于pd包的两个类型的数据。
 
d = pd.rolling_var(pd.Series(closeFull[:,0]), window= 12, min_periods=None, freq=None, center=False, how=None)
#__main__:1: FutureWarning: pd.rolling_var is deprecated for Series and will be removed in a future version, replace with 
#    Series.rolling(window=12,center=False).var()
 
#以前的公式是d,现在运行d会报错,所以改正成c的形式。
 
closeFull[0:12,0].var(ddof =1)
#Out[28]: 0.30576590909090895
 
#ddof参数的意义:分母是N-ddof
 
closeFull[0:12,0].var(ddof =0)
#Out[29]: 0.28028541666666656
 
#因为window是12,所以选第11个print
print(a[11],b[11],c[11],d[11])
#0.28028541666667195 0.28028541666667195 0.3057659090909086 0.3057659090909086
 
#计算都是var的计算,大胆的推测std的计算也是适用的。
#talib包的std运算的公式是tb.STDDEV
#pd.rolling就是var换成std
#谨慎起见,还是计算一下,看一看。
#最后发现大胆的推测是正确的。
 
e = tb.STDDEV(closeFull[:,0], timeperiod = fastPeriod, nbdev = 1)
f = pd.Series(closeFull[:,0]).rolling(window = fastPeriod, center = False).std()
 
closeFull[0:12,0].std(ddof =1)
#Out[45]: 0.5529610375884624
 
closeFull[0:12,0].std(ddof =0)
#Out[46]: 0.5294198869202653
 
print(e[11], f[11])
#0.5294198869202704 0.5529610375884622

补充知识:python —— .rolling(20).std()

#在这里我们取20天内的标准差

基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解

以上这篇基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python写的图片蜘蛛人代码
Aug 27 Python
Python写的Discuz7.2版faq.php注入漏洞工具
Aug 06 Python
python使用threading获取线程函数返回值的实现方法
Nov 15 Python
分分钟入门python语言
Mar 20 Python
Python3基于sax解析xml操作示例
May 22 Python
pandas使用get_dummies进行one-hot编码的方法
Jul 10 Python
对Python强大的可变参数传递机制详解
Jun 13 Python
一篇文章了解Python中常见的序列化操作
Jun 20 Python
Django Aggregation聚合使用方法解析
Aug 01 Python
python调用c++返回带成员指针的类指针实例
Dec 12 Python
使用Django和Postgres进行全文搜索的实例代码
Feb 13 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
Dec 09 Python
Python实现查找数据库最接近的数据
Jun 08 #Python
python numpy库np.percentile用法说明
Jun 08 #Python
python thrift 实现 单端口多服务的过程
Jun 08 #Python
Python astype(np.float)函数使用方法解析
Jun 08 #Python
python opencv 实现读取、显示、写入图像的方法
Jun 08 #Python
python:删除离群值操作(每一行为一类数据)
Jun 08 #Python
pyecharts在数据可视化中的应用详解
Jun 08 #Python
You might like
全国FM电台频率大全 - 23 四川省
2020/03/11 无线电
PHP与SQL注入攻击[一]
2007/04/17 PHP
php zend 相对路径问题
2009/01/12 PHP
关于php unset对json_encode的影响详解
2018/11/14 PHP
PHP封装的分页类与简单用法示例
2019/02/25 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
jquery调用asp.net 页面后台的实现代码
2011/04/27 Javascript
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
jquery全选/全不选/反选另一种实现方法(配合原生js)
2013/04/07 Javascript
改变文件域的样式实现思路同时兼容ie、firefox
2013/10/23 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
Jquery的基本对象转换和文档加载用法实例
2015/02/25 Javascript
javascript实现简单的on事件绑定
2016/08/23 Javascript
jQuery select自动选中功能实现方法分析
2016/11/28 Javascript
JavaScript实现经典排序算法之插入排序
2016/12/28 Javascript
深入理解基于vue-cli的vuex配置
2017/07/24 Javascript
js运算符的一些特殊用法
2018/07/29 Javascript
JavaScript数据结构与算法之二叉树插入节点、生成二叉树示例
2019/02/21 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
JS highcharts动态柱状图原理及实现
2020/10/16 Javascript
vue-cli3配置favicon.ico和title的流程
2020/10/27 Javascript
浅谈Vue static 静态资源路径 和 style问题
2020/11/07 Javascript
Python的Flask框架中实现简单的登录功能的教程
2015/04/20 Python
python脚本后台执行方式
2019/12/21 Python
python实现一个猜拳游戏
2020/04/05 Python
python爬虫用scrapy获取影片的实例分析
2020/11/23 Python
GOLFINO英国官网:高尔夫服装
2020/04/11 全球购物
你经历的项目中的SCM配置项主要有哪些?什么是配置项?
2013/11/04 面试题
银行实习人员自我鉴定
2013/09/22 职场文书
行政文员岗位职责
2013/11/08 职场文书
网上开店必备创业计划书
2014/01/26 职场文书
学生会竞选演讲稿怎么写
2014/08/26 职场文书
学校四风对照检查材料
2014/08/28 职场文书
2014年全国法制宣传日宣传活动方案
2014/11/02 职场文书
2016教师读书思廉心得体会
2016/01/23 职场文书
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫