【python技术】使用akshare、pandas、mplfinance绘制红绿色K线图简单示例

news2024/10/5 19:09:46

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", "文灿股份");

运行结果
在这里插入图片描述

其他方法这里就不一一演示了

绘制布林带指标图

mpf.plot(stock_hfq_df, type=‘candle’, addplot=mpf.make_addplot(

stock_hfq_df[[‘Bollinger_High’, ‘Bollinger_Low’]]))

绘制MACD指标图

mpf.plot(stock_hfq_df, type=‘candle’, addplot=mpf.make_addplot

(stock_hfq_df[[‘MACD’, ‘MACD_Signal’, ‘MACD_Histogram’]]))

绘制KDJ指标图

mpf.plot(stock_hfq_df, type=‘candle’, addplot=mpf.make_addplot(

stock_hfq_df[[‘K’, ‘D’, ‘J’]]))



如果觉得我的分享对你有所帮助,不吝啬点个赞给个关注。

原文链接:【python技术】使用akshare、pandas、mplfinance绘制红绿色K线图简单示例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1627647.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端提高篇(二十四)JS进阶18对象属性的高级用法

x:1, y:2, } Object.defineProperty(obj1, ‘z’,{ value:3, writable:true, enumerable:true, configurable:true, }) for (var i in obj1){ console.log(i ’ : ’ obj1[i]); } 运行效果: 不可枚举时: var obj1 { x:1, y:2, } Obj…

笔记:编写程序,分别采用面向对象和 pyplot 快捷函数的方式绘制正弦曲线 和余弦曲线。 提示:使用 sin()或 cos()函数生成正弦值或余弦值。

文章目录 前言一、面向对象和 pyplot 快捷函数的方式是什么?二、编写代码面向对象的方法:使用 pyplot 快捷函数的方法: 总结 前言 本文将探讨如何使用编程语言编写程序,通过两种不同的方法绘制正弦曲线和余弦曲线。我们将分别采用…

DRF JWT认证进阶

JWT认证进阶 【0】准备工作 (1)模型准备 模型准备(继承django的auth_user表) from django.db import models from django.contrib.auth.models import AbstractUserclass UserInfo(AbstractUser):mobile models.CharField(ma…

论文解读-面向高效生成大语言模型服务:从算法到系统综述

一、简要介绍 在快速发展的人工智能(AI)领域中,生成式大型语言模型(llm)站在了最前沿,彻底改变了论文与数据交互的方式。然而,部署这些模型的计算强度和内存消耗在服务效率方面带来了重大挑战&a…

The Log-Structured Merge-Tree (LSM-Tree) 论文阅读笔记

原论文:The Log-Structured Merge-Tree (LSM-Tree) LSM-Tree的简介和关键技术要点 LSM-Tree(Log-Structured Merge-Tree)是一种为高吞吐量读写操作优化的数据结构,特别适用于写入密集型的应用场景。它由Patrick O’Neil等人开发…

20.Nacos集群搭建

模拟Nacos三个节点,同一个ip,启动三个不同的端口: 节点 nacos1, 端口:8845 节点 nacos2, 端口:8846 节点 nacos3, 端口:8847 1.搭建数据库,初始化数据库表结构 这里我们以单点的数据库为例 首先新建一…

Faust勒索病毒:了解变种faust,以及如何保护您的数据

导言: 近年来,网络安全问题日益严峻,其中勒索病毒成为了一种日益猖獗的威胁。在众多勒索病毒中,.faust勒索病毒以其高度的隐秘性和破坏性引起了广泛关注。本文91数据恢复将深入剖析.faust勒索病毒的威胁特点,并提出相…

Web前端一套全部清晰 ③ day2 HTML 标签综合案例

别让平淡生活&#xff0c;耗尽所有向往 —— 24.4.26 综合案例 —— 一切都会好的 网页制作思路&#xff1a;从上到下&#xff0c;先整体到局部&#xff0c;逐步分析制作 分析内容 ——> 写代码 ——>保存——>刷新浏览器&#xff0c;看效果 <!DOCTYPE html> &l…

Docker——数据管理和网络通信

目录 一、Docker的数据管理 1.数据卷 2.数据卷容器 3.容器互联 二、Docker镜像的创建 1.基于现有镜像创建 2.基于本地模板创建 3.基于Dockerfile 创建 3.1联合文件系统&#xff08;UnionFS&#xff09; 3.2镜像加载原理 3.3为什么Docker里的Centos大小才200M 4.Dcok…

表情识别 | 卷积神经网络(CNN)人脸表情识别(Matlab)

表情识别 | 卷积神经网络(CNN)人脸表情识别&#xff08;Matlab&#xff09; 目录 表情识别 | 卷积神经网络(CNN)人脸表情识别&#xff08;Matlab&#xff09;预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab使用卷积神经网络(CNN)&#xff0c;进行人脸表情情绪识别…

C++ 头文件/宏冲突问题解决?如何解决?

&#x1f3c6;本文收录于「Bug调优」专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收藏&&…

Git -- 运用总结

文章目录 1. Git2. 基础/查阅2.1 基础/查阅 - git2.2 仓库 - remote2.3 清理 - rm/clean2.4 版本回退 - reset 3. 分支3.1 分支基础 - branch3.2 分支暂存更改 - stash3.3 分支切换 - checkout 4. 代码提交/拉取4.1 代码提交 - push4.2 代码拉取 - pull 1. Git 2. 基础/查阅 2…

在PR中使用 obs 和 vokoscreen 录制的视频遇到的问题

1. obs 录制的视频 在 Adobe Premiere Pro CS6 中只有音频没有视频 2. vokoscreen 录制的视频&#xff0c;没有声音 这是是和视频录制的编码有关系&#xff0c;也和显卡驱动关系 首先 obs 点击 文件 ---> 设置 录制的视频都是可以正常播放的&#xff0c;在PR不行。更…

tomcat 配置支持 ssl 附效果图

1、修改tomcat配置文件server.xml: vim ./conf/server.xml 把配置文件&#xff1a; <Connector port"8088" Server" " protocol"HTTP/1.1"connectionTimeout"20000"redirectPort"8443" URIEncoding"UTF-8" …

【Day 9】Mybatis CURD + XML 映射 + 动态 SQL

1 Mybatis 基础操作 下面进行&#xff1a;增删改查——C(create)U(update)R(retrieve)D(delete) 1.1 删除&#xff08;删&#xff09; 根据主键 id 进行删除 注意 占位符 #{ } 返回值是删除的记录条数 测试&#xff1a; 可以在日志中看到 mybatis 具体的语句 预编译 SQL 的优…

Taro +vue3 中实现全局颜色css变量的设置和使用

当我们现在需要弄一个随时修改的页面颜色主题色 我们可以随时修改 我使用的是 Taro 框架 一般有一个app.less 文件 我们在这个里面 设置一个root 全局样式 :root {--primary-color: #028fd4;--secondary-color: #028fd6;/* 添加其他颜色变量 */ } 这样在全局我们就可以使用这…

调度问题变形的贪心算法分析与实现

调度问题变形的贪心算法分析与实现 一、问题背景与算法描述二、算法正确性证明三、算法实现与分析四、结论 一、问题背景与算法描述 带截止时间和惩罚的单位时间任务调度问题是一个典型的贪心算法应用场景。该问题的目标是最小化超过截止时间导致的惩罚总和。给定一组单位时间…

【python】语言学习笔记--用来记录总结

请问以下变量哪些是tuple类型&#xff1a; a ()b (1)c [2]d (3,)e (4,5,6)answer在Python中&#xff0c;元组&#xff08;tuple&#xff09;是由逗号分隔的一组值组成的有序序列&#xff0c;通常用圆括号括起来。让我们逐个检查变量&#xff0c;看哪些是元组类型&#xff…

python中怎么注释多行

多行代码注释 方法一&#xff1a;先选中要注释的段落&#xff0c;然后按下“ctrl/”&#xff0c;即可实现多行代码的注释。效果如下&#xff1a; 再一次按下“ctrl/”就可以取消注释。 方法二&#xff1a;跟注释单行一样在每一行前面输入“shift#”。 #r(i-arr[idx])*rat[idx]…

计算机网络大框架图形

如标题&#xff0c;精心画了一个计算机网络的框架性的图&#xff0c;包含了计算机网络的核心思想&#xff0c;在此分享和备份下。各层具体协议参考TCP/IP常用协议栈图解-CSDN博客