赞
踩
python中的mplfinance库是基于matplotlib库开发的一个专门用于绘制股票数据的图表的第三方库,它提供了一系列函数和类,用于绘制各种类型的股票图表,包括K线图、成交量图和技术指标图等。
这里简单写个示例,我用的mac系统,字体采用STHeiti。如果你是
windows系统,字体可以采用SimHei 解决中文乱码。
from datetime import datetime import matplotlib.pyplot as plt import akshare as ak # 升级到最新版 import pandas as pd import mplfinance as mpf #解决中文乱码 plt.rcParams["font.sans-serif"] = ["STHeiti"] plt.rcParams["axes.unicode_minus"] = False def kline(symbol, start_time, end_time, stock_name): # 利用 AKShare 获取股票的后复权数据,这里只获取前 6 列 stock_hfq_df = ak.stock_zh_a_hist(symbol, adjust="hfq").iloc[:, :6] # 处理字段命名 stock_hfq_df.columns = [ 'date', 'open', 'close', 'high', 'low', 'volume', ] # 把 date 作为日期索引 stock_hfq_df.index = pd.to_datetime(stock_hfq_df['date']) stock_hfq_df = stock_hfq_df[start_time:end_time] #print(stock_hfq_df) # 创建一个marketcolors对象,并设置颜色参数 marketcolors = mpf.make_marketcolors(up='r', down='g', volume='inherit') # 创建一个style对象,并将marketcolors对象传递给它 style = mpf.make_mpf_style( marketcolors=marketcolors, edgecolor='k', rc={'font.family': 'STHeiti'}) # 添加图表 mpf.plot(stock_hfq_df, type='candle', style=style, title= stock_name + "K线图" , ylabel="价格", ylabel_lower="成交量", mav=(5, 10, 20), volume=True, show_nontrading=False) if __name__ == '__main__': kline("603348", "2024-01-01", "2024-04-26", "文灿股份");
运行结果
其他方法这里就不一一演示了
stock_hfq_df[[‘Bollinger_High’, ‘Bollinger_Low’]]))
(stock_hfq_df[[‘MACD’, ‘MACD_Signal’, ‘MACD_Histogram’]]))
stock_hfq_df[[‘K’, ‘D’, ‘J’]]))
如果觉得我的分享对你有所帮助,不吝啬点个赞给个关注。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。