在金融数据分析中,K 线图是一种非常重要的可视化工具,它能够直观地展示股票价格的波动情况。通过 K 线图,投资者可以快速了解股票的开盘价、收盘价、最高价和最低价,从而判断股票的走势。本文将介绍如何使用 Python 读取股票数据,并利用 Matplotlib 和 Mplfinance 库绘制 K 线图。

一、股票数据的读取在 Python 中,有多种方式可以读取股票数据。常见的方法包括使用   tushare  、  akshare   和   yfinance   等库。这些库提供了丰富的接口,可以方便地获取股票的历史数据和实时行情。

使用Tushare库获取股票的基本数据:使用   tushare   获取股票数据  tushare   是一个强大的金融数据接口库,支持多种金融数据的获取,包括股票、基金、期货等。

import tushare as ts
import mplfinance as mpf
from pylab import mpl
import pandas as pd

pro = ts.pro_api('')  #
#https://tushare.pro/user/token
df = pro.daily(ts_code='600519.SH', start_date='20200101', end_date='20250319')

#df  编辑器会显示股票信息
#df.sort_values(by='trade_date',ascending=False)
#取所有行数据,后面取date列,open列等数据
data = df.loc[:, ['trade_date', 'open', 'close', 'high', 'low', 'vol']]
data = data.rename(columns={'trade_date': 'Date', 'open': 'Open', 'close': 'Close', 'high': 'High', 'low': 'Low', 'vol': 'Volume'})  #更换列名,为后面函数变量做准备
#设置date列为索引,覆盖原来索引,这个时候索引还是 object 类型,就是字符串类型。
data.set_index('Date', inplace=True)
#将object类型转化成 DateIndex 类型,pd.DatetimeIndex 是把某一列进行转换,同时把该列的数据设置为索引 index。
data.index = pd.DatetimeIndex(data.index)

二、K 线图的绘制K 线图是一种用于展示股票价格波动的图表,它通过蜡烛图的形式直观地展示股票的开盘价、收盘价、最高价和最低价。在 Python 中,可以使用   mplfinance   库来绘制 K 线图.

#将时间顺序升序,符合时间序列
data = data.sort_index(ascending=True)
pd.set_option('expand_frame_repr', False)#True就是可以换行显示。设置成False的时候不允许换行
pd.set_option('display.max_columns', None)# 显示所有列
#pd.set_option('display.max_rows', None)# 显示所有行
pd.set_option('colheader_justify', 'centre')# 显示居中
#%%
mpl.rcParams['font.sans-serif'] = ['SimHei']  # 指定默认字体
mpl.rcParams["figure.figsize"] = [6.4, 4.8]
mpl.rcParams['axes.unicode_minus'] = False  # 解决保存图像是负号'-'显示为方块的问题

mpf.plot(data, type='candle', mav=(5, 10, 20), volume=True, show_nontrading=False)

三、运行结果运行上述代码后,你将看到一个 K 线图,其中蜡烛图展示了股票的开盘价、收盘价、最高价和最低价,成交量柱状图显示了每日的成交量。此外,自定义的移动平均线也清晰地显示在图表上。

四、总结

通过 Python 的   tushare库,我们可以方便地获取股票数据。而使用   mplfinance   库,我们可以轻松地绘制出美观且功能丰富的 K 线图。K 线图是金融分析中不可或缺的工具,通过它,投资者可以更直观地了解股票价格的波动情况,从而做出更明智的投资决策。 

Logo

更多推荐