python:mplfinance 画K线图+布林线

pip install mplfinance ;

python 安装使用 TA-lib 
安装主要在 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 
这个网站找到
TA_Lib-0.4.24-cp310-cp310-win_amd64.whl

pip install /pypi/TA_Lib-0.4.24-cp310-cp310-win_amd64.whl
编写 mpf_kline_boll.py  如下

# -*- coding: utf-8 -*-
import os
import sys
import matplotlib.pyplot as plt
import mplfinance as mpf
import pandas as pd
import tushare as ts
import talibif len(sys.argv) ==2:code = sys.argv[1]
else:print('usage: python mpf_kline_boll.py stockcode ')sys.exit(1)if len(code) !=6:print('stock code length: 6')sys.exit(2)# help(ts.get_k_data) 了解参数
df = ts.get_k_data(code, start='2023-01-01')
if len(df) <30:print(" len(df) <30 ")sys.exit(2)# 取收盘价
close = df['close'].values
# 计算布林线
df['upper'], df['mid20'], df['lower'] = talib.BBANDS(close, timeperiod=20, nbdevup=2, nbdevdn=2, matype=0)df.index = pd.to_datetime(df.date)
# 取样 近期的数据
df2 = df[ df['date'] >'2023-05-01']
print(df2.tail(5))my_color = mpf.make_marketcolors(up='red', down='green', edge='black', wick='black')
my_style = mpf.make_mpf_style(marketcolors=my_color, gridaxis='both', gridstyle='-.', y_on_right=True)
#fig = mpf.figure(style=my_style, figsize=(12,6), facecolor=(0.82, 0.83, 0.85))
# 加画3条布林线
ap = mpf.make_addplot(df2[['upper','mid20','lower']])
# 绘画K线图
mpf.plot(df2, type='candle', style='charles', addplot=ap, volume=True, title=code)
#mpf.plot(df2, type='candle', style=my_style, addplot=ap, volume=True, title=code)

运行 python mpf_kline_boll.py 002594

参考:mplfinance最佳实践:动态交互式高级K线图(蜡烛图)

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

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

相关文章

英语口语练习(背诵老友记)

There is nothing to tell! 这没什么好说的&#xff01; Hes just some guy I work with. 他不过是我的同事。 Cmon, youre going out with the guy! 少来了&#xff0c;你们都在约会了&#xff01; Theres gotta be something wrong with him! 这个男人一定有什么问题&…

华为OD机试真题-快递员的烦恼-2023年OD统一考试(C卷)

题目描述: 快递公司每日早晨,给每位快递员推送需要送到客户手中的快递以及路线信息,快递员自己又查找了一些客户与客户之间的路线距离信息,请你依据这些信息,给快递员设计一条最短路径,告诉他最短路径的距离。 注意: 1. 不限制快递包裹送到客户手中的顺序,但必须保证都…

【VRTK】【VR开发】【Unity】12-占位身体

课程配套学习资源下载 https://download.csdn.net/download/weixin_41697242/88485426?spm=1001.2014.3001.5503 【概要】 目前你会发现,就算存在非Trigger Collider的墙壁屏障等,也能够正常穿过,这会导致不沉浸的体验。你需要一个占位身体来实现让墙壁等碰撞并挡住自己…

基于java的贪吃蛇小游戏

贪吃蛇游戏需要做两点&#xff1a;图形界面和游戏逻辑。在 Java 中&#xff0c;可以使用 Swing 或 JavaFX 来创建图形界面。下面代码创建了一个简单的 Swing 窗口&#xff0c;实现了一个基本的贪吃蛇游戏。在游戏中&#xff0c;使用方向键控制贪吃蛇的移动&#xff0c;吃到食物…

`Numpy`数组中 数据的修改(第10讲)

Numpy数组中 数据的修改(第10讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ…

YOLOv5独家原创改进:SPPF自研创新 | 可变形大核注意力(D-LKA Attention),大卷积核提升不同特征感受野的注意力机制

💡💡💡本文自研创新改进: 可变形大核注意力(D-LKA Attention)高效结合SPPF进行二次创新,大卷积核提升不同特征感受野的注意力机制。 收录 YOLOv5原创自研 https://blog.csdn.net/m0_63774211/category_12511931.html 💡💡💡全网独家首发创新(原创),适合p…

Python学习路线 - Python语言基础入门 - 函数使用

Python学习路线 - Python语言基础入门 - 函数使用 函数介绍函数函数的快速体验 函数的定义函数的定义 函数的参数函数的传入参数函数的传入参数 - 传参定义函数的传入参数 - 语法解析练习案例&#xff1a;升级版自动查询核酸 函数的返回值函数返回值的定义返回值的语法None类型…

Python----异常

1、什么是异常 当检测到一个错误时&#xff0c;解释器就无法继续执行了&#xff0c;反而出现了一些错误的提示&#xff0c;这就是所谓的"异常"。 2、异常演示 # 运算符 # print(10/0) # 文件异常 f open(python.txt, r) content f.readlines() print(content) 3…

vue中el-upload结合vuedraggable实现图片的上传、排序、删除以及预览等功能

实现效果&#xff1a; 功能实现&#xff1a; 要实现图片的拖拽功能首先需要安装vuedraggable库 npm install vuedraggable --save在组件中引入并注册 vuedraggable <script>import draggable from "vuedraggable";export default {// 注册组件components: {…

SI24R03 高度集成低功耗SOC 2.4G 收发一体芯片

今天给大家介绍一款Soc 2.4G 收发一体模块-SI24R03 Si24R03是一款高度集成的低功耗无线SOC芯片&#xff0c;芯片为QFN32 5x5mm封装&#xff0c;集成了资源丰富的MCU内核与2.4G收发器模块&#xff0c;最低功耗可达1.6uA&#xff0c;极少外围器件&#xff0c;大幅降低系统应用成本…

详解Android单元测试最佳实践

目的 充分的单元测试就是提高代码质量最有效的手段之一&#xff0c;而单元测试严重依赖代码的可测试性&#xff0c;本文主要通过一个简单的DEMO演示如何对Android原生应用进行单元测试&#xff0c;同时示例代码采用MVP模式以提高代码的可读性和可测试性 简介 在Android原生应…

mmdetection测试保存到新的文件夹,无需标签

这个是用demo这个代码测试的&#xff0c;需要先训练一个pth文件夹&#xff0c;训练之后再调用pth文件夹进行测试。测试的代码文件名是&#xff1a;image_demo_new.py&#xff0c;代码如系所示&#xff1a; # Copyright (c) OpenMMLab. All rights reserved. import asyncio fr…

使用selenium的edge浏览器登录某为

互联网上基本都是某哥的用法&#xff0c;其实edge和某哥的用法是一样的就有一下参数不一样。 一、运行环境 Python&#xff1a;3.7 Selenium&#xff1a;4.11.2 Edge&#xff1a;版本 120.0.2210.61 (正式版本) (64 位) 二、执行代码 from time import sleepfrom selenium…

调新浪分享

前端写一个按钮,通过按钮来调出新浪界面, window.location.href http://service.weibo.com/share/share.php?url 这行代码调出新浪分享界面,要是想要添加一些图片和文字 使用: window.location.href http://service.weibo.com/share/share.php?url encodeURIComponent…

P2 Qt Creator创建第一个Qt程序

前言 &#x1f3ac; 个人主页&#xff1a;ChenPi &#x1f43b;推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ &#x1f525; 推荐专栏2: 《LLinux C应用编程&#xff08;概念类&#xff09;_ChenPi的博客-CSDN博客》✨✨✨ &#x1f33a;本篇简介 &#xff1a;这一章我们学…

Python基础——两个常用且容易忘记的知识点

1. replace函数的第三个参数 replace 方法提供了一个可选的参数 count&#xff0c;可以用于指定替换的次数。你可以将 count 设置为 1 来限制替换的次数&#xff0c;只替换第一个匹配项。 下面是使用 replace 方法限制替换次数的示例&#xff1a; date_str "2023/05/1…

二百一十一、Flume——Flume实时采集Linux中的Hive日志写入到HDFS中(亲测、附截图)

一、目的 为了实现用Flume实时采集Hive的操作日志到HDFS中&#xff0c;于是进行了一场实验 二、前期准备 &#xff08;一&#xff09;安装好Hadoop、Hive、Flume等工具 &#xff08;二&#xff09;查看Hive的日志在Linux系统中的文件路径 [roothurys23 conf]# find / -name…

smarty模版 [BJDCTF2020]The mystery of ip 1

打开题目 点击flag给了我们一个ip 点击hint&#xff0c;查看源代码处告诉了我们要利用这个ip bp抓包&#xff0c;并添加X-Forward-For头 所以这道题是XFF可控 本来联想到XFF漏洞引起的sql注入&#xff0c;但是我们无论输入什么都会正常回显&#xff0c;就联想到ssti注入 我们…

C/C++指针操作整理

C/C指针操作整理 面向曾经学习过指针的人&#xff0c;并非针对究极初学者。 一维指针 数据类型存储的地址&#xff0c;指向数据存储的地址&#xff0c;可以使用 &运算符取变量的地址&#xff0c;将其赋给指针变量。 int a 2; int *p &a;同时因为C/C中数组是连续存储…

Java实现插入排序算法

插入排序算法 &#xff08;1&#xff09;概念&#xff1a;通过构建有序序列&#xff0c;对于未排序数据&#xff0c;在已排序序列中从后向前扫描&#xff0c;找到相应的位置并插入。 &#xff08;2&#xff09;一个通俗的比喻&#xff1a; 插入排序就类似于斗地主时&#xf…