Python 语言 用 Tushare 获取股票历史数据 复权处理 + 技术指标计算

Python阿木 发布于 23 小时前 1 次阅读


阿木博主一句话概括:使用Tushare和Python获取股票历史数据并进行技术指标计算

阿木博主为你简单介绍:
本文将介绍如何使用Python编程语言和Tushare库来获取股票历史数据,并进行复权处理以及计算常见的技术指标。通过本文的学习,读者可以掌握如何利用Tushare获取数据,以及如何进行数据处理和技术分析。

一、
股票市场是一个复杂且动态的环境,投资者需要通过各种技术指标来分析股票走势,做出投资决策。Python作为一种功能强大的编程语言,结合Tushare库,可以方便地获取股票数据并进行技术分析。本文将详细介绍如何使用Python和Tushare获取股票历史数据,并进行复权处理和技术指标计算。

二、准备工作
1. 安装Python环境
2. 安装Tushare库
使用pip命令安装Tushare库:

pip install tushare

三、获取股票历史数据
1. 注册Tushare账号并获取token
在Tushare官网注册账号并获取token,用于后续的数据获取。

2. 导入Tushare库
python
import tushare as ts

3. 设置Tushare token
python
ts.set_token('你的token')
pro = ts.pro_api()

4. 获取股票历史数据
使用`pro.daily`函数获取股票的历史数据,其中`ts_code`为股票代码,`start_date`和`end_date`为起始和结束日期。
python
df = pro.daily(ts_code='000001.SZ', start_date='20210101', end_date='20210131')

四、复权处理
复权处理是为了消除股票分红、送股、配股等事件对股票价格的影响,使股票价格能够反映真实的市场情况。

1. 计算复权因子
使用`pro.daily`函数获取股票的复权因子数据。
python
df_factor = pro.daily(ts_code='000001.SZ', start_date='20210101', end_date='20210131')

2. 计算复权价格
使用复权因子计算复权价格,公式为:复权价格 = 当前价格 / 复权因子。
python
df['price'] = df['close'] / df_factor['factor']

五、技术指标计算
1. 移动平均线(MA)
移动平均线是衡量股票价格趋势的重要指标,常用的有5日、10日、20日等。
python
df['ma5'] = df['price'].rolling(window=5).mean()
df['ma10'] = df['price'].rolling(window=10).mean()
df['ma20'] = df['price'].rolling(window=20).mean()

2. 相对强弱指数(RSI)
RSI指标用于衡量股票的超买或超卖状态,常用的参数为6日和14日。
python
def rsi(data, window=14):
delta = data.diff()
gain = (delta.where(delta > 0, 0)).rolling(window=window).mean()
loss = (-delta.where(delta < 0, 0)).rolling(window=window).mean()
rs = gain / loss
return 100.0 - (100.0 / (1.0 + rs))

df['rsi6'] = rsi(df['price'], window=6)
df['rsi14'] = rsi(df['price'], window=14)

3. 成交量(VOL)
成交量是衡量股票活跃程度的重要指标,可以用来判断市场情绪。
python
df['vol'] = df['volume']

六、总结
本文介绍了如何使用Python和Tushare库获取股票历史数据,并进行复权处理和技术指标计算。通过本文的学习,读者可以掌握如何利用Tushare获取数据,以及如何进行数据处理和技术分析。在实际应用中,可以根据需要调整技术指标参数,以更好地分析股票走势。

注意:本文所涉及的技术指标仅供参考,投资者在实际操作中需结合自身情况和市场环境进行综合判断。