1. 计算收盘价常用统计量
收盘价是股票分析中最常用的数据之一,我们先来计算它的几个关键统计量:均值、中位数、中位数所在位置和方差。
import numpy as np
closing_price = np.loadtxt(
"stock.csv",
encoding="utf-8",
delimiter=",",
dtype=np.float64,
usecols=(2)
)
print("收盘价: ", closing_price)
# 均值 中位数 中位数所在索引 方差
print("收盘价的均值为: ", closing_price.mean())
mid = np.median(closing_price)
print("收盘价的中位数为: ", mid)
print("收盘价中位数的索引位置为: ", np.where(mid))
print("收盘价的方差为: ", closing_price.var())
2. 计算股价的高低值相关指标
除了收盘价,最高价和最低价也是分析股票波动的重要指标:
# 2. 计算股价的最高值和最低值
high_price, low_price = np.loadtxt(
"stock.csv",
encoding="utf-8",
delimiter=",",
dtype=np.float64,
usecols=(3, 4),
unpack=True
)
# 最高值 最低值 中间值 波动范围
print("该股票的最高值为: ", high_price.max())
print("该股票的最低值为: ", low_price.min())
print("该股票的中间值为: ", (high_price.max() + low_price.min()) / 2)
print("该股票最高价的波动范围为: ", np.ptp(high_price))
print("该股票最低价的波动范围为: ", np.ptp(high_price
3. 计算股票的成交量加权平均值
成交量加权平均价 (VWAP) 是一个重要的技术指标,它考虑了成交量对价格的影响,
3. 计算股票的加权平均值
# 读取收盘价
volume = np.loadtxt(
"stock.csv",
encoding="utf-8",
delimiter=",",
dtype=np.int64,
usecols=(10)
)
print("成交量为:\n",volume)
vwap = np.average(closing_price, weights=volume)
print("该股票的成交量加权平均值为:", vwap)
4 . 计算股票的时间加权平均值
# 4. 计算股票的时间加权平均值
# 时间序列
# t = np.average (closing_price, weights=t)
t = np.arange(closing_price.shape[0])
vwap = np.average (closing_price, weights=t)
print("该股票的时间加权平均值为:", vwap)
总结
本文展示了如何使用 NumPy 对股票数据进行基本的统计分析,包括:
- 基本统计量(均值、中位数、方差)的计算
- 价格波动指标(最高价、最低价、波动范围)的提取
- 成交量加权平均值的计算
- 时间加权平均值的计算