量化交易入门到大师_基于numpy股价统计分析实战

简介:

在这里插入图片描述

专栏简介:本专栏是本人系统化学习与整理量化交易相关知识内容,而开设的专栏,并定期在里面更新文章。个人学习方法多为看视频教程、个人实践、看书等,在此基础上,持续撰写相关技术文章,进而促进个人学习,同时分享学习资源,普惠大众。

作者简介:工程师,金融、图像、电子、互联网领域多年经验,爱好涉猎广泛。


谢谢大家!!!
在这里插入图片描述

一、基于numpy股价统计分析实战

通过NumPy实现股价统计分析,主要从数据样本说明和常用股价指标两个方向展开,后续将进入编码环节。

1.股价统计分析

股价统计分析包含数据基本结构说明和常用指标算法介绍,具体实现将通过代码演示完成。

1) 数据样本

数据样本包含7列字段:

  • 股票代码(下标0)
  • 交易日期(下标1)
  • 收盘价(下标2)
  • 开盘价(下标3)
  • 最高价(下标4)
  • 最低价(下标5)
  • 成交量(下标6)
  • 示例数据为平安银行(代码000001)2019年初7个交易日的截取数据,交易日期字段对时间序列分析至关重要。
2) 股价常用指标

核心指标包括:

  • 极差:最高价最大值与最低价最小值的差值,反映股价波动幅度
  • 成交量加权平均价格(VWAP):金融资产平均价格的加权计算指标,权重为成交量
  • 收益率
    • 对数收益率:用于波动率计算,取对数后两点差值
    • 简单收益率:即涨跌幅,本次未展开
  • 波动率
    • 年波动率:对数收益率标准差除以均值,按250个交易日计算
    • 月波动率:算法同年波动率,样本空间为12个月
3) 测试代码

已预置基础测试用例,后续将逐步实现核心功能。

  • 读取文件

使用numpy.loadtxt读取CSV文件,关键参数包括:

  • fname:文件路径
  • delimiter:分隔符(逗号)
  • usecols:指定读取列(如收盘价、成交量)
  • unpack:默认为True
    • 示例代码读取第三列(收盘价)和最后一列(成交量),输出单位为元和手。
  • 计算最大值与最小值

通过numpy.max和numpy.min计算最高价/最低价极值:

  • 最高价对应数组下标4
  • 最低价对应数组下标5
  • 结果通过格式化输出显示,反映股价波动区间。
  • 计算极差

极差计算采用numpy.ptp函数,分别对最高价和最低价数组求极差,结果反映平安银行股价稳定性。

  • 计算成交量加权平均价格

VWAP实现步骤:

  • 计算简单平均价格(numpy.average)
  • 添加成交量权重参数(weights)
  • 对比结果显示加权后价格( - 768)低于算术均值( - 01),中位数计算使用numpy.median函数。
  • 计算方差

方差计算两种方式:

  • numpy.var函数
  • 数组对象内置var方法
  • 计算结果一致( - 335217),为后续波动率计算提供基础。
  • 计算股票收益率、年波动率及月波动率
  • 对数收益率的计算需使用numpy的diff函数取差值,再取对数
  • 年度波动率计算步骤
    • 取标准差
    • 除以均值
    • 乘以250个交易日的平方根
  • 月度波动率计算采用与年度波动率相同的函数结构
  • 实际计算结果对比显示:年化波动率数值显著大于月度波动率,零波动率表示价格无变化
2.小结
  • 股票数据样本标准字段包含:股票代码、交易日期、收盘价、开盘价、最高价、最低价、成交量

  • 基础股价分析指标

    涵盖:

    • 均值、最大值、最小值
    • 极差
    • 收益率与波动率(含年度/月度波动率)
  • 实践应用建议:可通过示例数据重复计算过程进行巩固练习

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱因大脑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值