Python数据可视化:如何用mplfinance创建蜡烛图

Python数据可视化:如何用mplfinance创建蜡烛图

一图胜千言,使用Python的matplotlib库,可以快速创建高质量的图形。

我们团队推出一个新的系列教程:Python数据可视化,针对初级和中级用户,将理论和示例代码相结合,使用matplotlib, seaborn, plotly等工具实现可视化。

本文的主题是如何创建蜡烛图。

蜡烛图在金融领域的应用非常广泛,蜡烛图包含了证券价格的开盘价,最高价,最低价,收盘价和成交量,是技术分析的基础。

创建蜡烛图需要先安装一个三方库:mplfinance,这原本是Matplotlib的子模块,现被剥离成为一个独立的库。

在终端运行命令:pip install mplfinance

import os

import requests

import pandas as pd

import matplotlib.pyplot as plt

import mplfinance as mpf

%matplotlib inline

先从蜂鸟数据获取股票历史K线,蜂鸟数据提供沪深A股,港股,美股,期货,外汇,数字货币的实时报价和历史数据。查看API文档。

登录蜂鸟官网,注册即可获得API密钥,免费获取金融数据。

# 获取微软(MSFT)的日图历史K线

data = requests.get('https://api.trochil.cn/v1/usstock/history',

params={

'symbol': 'MSFT',

'start_date': '2020-01-01',

'end_date': '2020-08-31',

'apikey': os.getenv("TROCHIL_API") # 使用您的API密钥

})

df = pd.DataFrame.from_records(data.json()["data"])

df["datetime"] = pd.to_datetime(df["datetime"])

df.set_index("datetime", inplace=True)

df.head()

open

high

low

close

volume

datetime

2020-01-02

158.78

160.730

158.3300

160.62

22634546.0

2020-01-03

158.32

159.945

158.0600

158.62

21121681.0

2020-01-06

157.08

159.100

156.5100

159.03

20826702.0

2020-01-07

159.32

159.670

157.3200

157.58

21881740.0

2020-01-08

158.93

160.800

157.9491

160.09

27762026.0

要创建蜡烛图,只需要调用mpf.plot接口。

mpf.plot(data, type, title, ylabel, style, volume, ylabel_lower, show_nontrading, figratio, mav)

data: pd.DataFrame, 包含’Open’,‘High’,‘Low’,‘Close’字段,如果要显示成交量,还要提供’Volume’,默认时间序列索引(DatetimeIndex)

type: 图表类型,可选值包含:‘ohlc’, ‘candle’, ‘line’, ‘renko’, ‘pnf’

title: 标题

ylabel: 纵轴标签

style: 蜡烛图样式,mplfinance提供了很多内置样式

volume: True表示添加成交量,默认False

ylabel_lower: 成交量的Y轴标签

show_nontrading: True显示非交易日,默认False

figratio: 控制图表大小的元组

mav: 整数或包含整数的元组,是否在图表中添加移动平均线

df2 = df["2020-08"]

mpf.plot(df2, type="candle", title="Candlestick for MSFT", ylabel="price($)")

mplfinance提供了很多内置样式,便于用户快速创建美观的蜡烛图。

mpf.available_styles()

['binance',

'blueskies',

'brasil',

'charles',

'checkers',

'classic',

'default',

'mike',

'nightclouds',

'sas',

'starsandstripes',

'yahoo']

mpf.plot(df2, type="candle", title="Candlestick for MSFT", ylabel="price($)", style="binance")

mpf.plot(

data=df2,

type="candle",

title="Candlestick for MSFT",

ylabel="price($)",

style="binance",

volume=True,

ylabel_lower="volume(shares)"

)

mpf.plot(

data=df2,

type="candle",

title="Candlestick for MSFT",

ylabel="price($)",

show_nontrading=True

)

如果内置样式不满足需求,可以自定义样式,并提供给style参数。

# 调用make_marketcolors函数,定义K线颜色

mc = mpf.make_marketcolors(

up="red", # 上涨K线的颜色

down="green", # 下跌K线的颜色

edge="black", # 蜡烛图箱体的颜色

volume="blue", # 成交量柱子的颜色

wick="black" # 蜡烛图影线的颜色

)

# 调用make_mpf_style函数,自定义图表样式

# 函数返回一个字典,查看字典包含的数据,按照需求和规范调整参数

style = mpf.make_mpf_style(base_mpl_style="ggplot", marketcolors=mc)

# print(style)

mpf.plot(

data=df2,

type="candle",

title="Candlestick for MSFT",

ylabel="price($)",

style=style,

volume=True

)

mpf.plot(

data=df2,

type="candle",

title="Candlestick for MSFT",

ylabel="price($)",

style="binance",

figratio=(12, 6)

)

mpf.plot(

data=df,

type="candle",

title="Candlestick for MSFT",

ylabel="price($)",

style="binance",

figratio=(12, 6),

mav=(10, 20, 50) # 整数,或包含整数的列表/元组

)

如果喜欢我们的文章,记得点赞和收藏哦,我们每天都会为大家带来Python,数据科学和量化交易的精品内容。

【关于我们】

蜂鸟数据:国内领先的金融数据API提供商。

蜂鸟数据团队由业界顶尖的数据工程师,数据科学家和宽客组成,我们正努力构建一个强大的金融数据库,并提供API接口,目标是令金融数据开源化和平民化。

浏览并测试我们接口吧,目前覆盖股票,外汇,商品期货,数字货币和宏观经济领域,包括实时报价(tick)和历史数据(分钟),提供REST API和Websocket两种接入方式,能够满足金融分析师,量化交易和理财app的需求。

需要金融数据?利用蜂鸟API将数据整合到您的应用

如果您准备好了,请登录蜂鸟官网,注册免费获取API密钥,然后开始探索我们的金融数据库吧。

Python数据可视化:如何用mplfinance创建蜡烛图相关教程

蜡烛图plotly_Python数据可视化:如何用mplfinance创建蜡烛图相关推荐

  1. python蜡烛图预测_Python数据可视化:如何用mplfinance创建蜡烛图

    一图胜千言,使用Python的matplotlib库,可以快速创建高质量的图形. 我们团队推出一个新的系列教程:Python数据可视化,针对初级和中级用户,将理论和示例代码相结合,使用matplotl ...

  2. Python数据可视化:如何用mplfinance创建蜡烛图

    一图胜千言,使用Python的matplotlib库,可以快速创建高质量的图形. 我们团队推出一个新的系列教程:Python数据可视化,针对初级和中级用户,将理论和示例代码相结合,使用matplotl ...

  3. python excel数据分析画直方图 饼状图_Excel数据可视化应用(直方图、折线图、饼状图)...

    直方图:对比关系 直方图是一种统计报告图,是表示资料变化情况的主要工具.直方图由一系列高度不等的的纵向条纹或线段表示数据分布的情况.一般用横轴表示数据类型,纵轴表示分布情况. 例1: 1.右键单击图表 ...

  4. matlab 折线图 柱状图,数据可视化分析(柱状图、折线图、热力图、柱状图)

    分析文件'集美大学各省录取分数.xlsx',完成以下功能: 1)集美大学2015-2018年间不同省份在本一批的平均分数,柱状图展示排名前10的省份, 2)分析福建省这3年各批次成绩情况,使用折线图展 ...

  5. Py之seaborn:数据可视化seaborn库(二)的组合图可视化之密度图/核密度图分布可视化、箱型图/散点图、小提琴图/散点图组合可视化的简介、使用方法之最强攻略(建议收藏)

    Py之seaborn:数据可视化seaborn库(二)的组合图可视化之密度图/核密度图分布可视化.箱型图/散点图.小提琴图/散点图组合可视化的简介.使用方法之最强攻略(建议收藏) 目录 二.组合图可视 ...

  6. c++可视化_数据可视化——如何让你的信息图被记住

    原标题:数据可视化--如何让你的信息图被记住 我们生活在这个图文音像并茂的世界中,每天接触的信息数不胜数,而人类的记忆也是个很奇怪的东西,认知科学家发现,我们的大脑所捕捉的视觉细节比曾经所认为的要多得 ...

  7. 可视化框架、Axure原型、大屏可视化、图表组件、图表元件库、统计图表、数据可视化模板、条形图、折线图、散点图、时间轴、仪表盘、饼图、散点图、雷达图、高山图、登录模板、弹窗、弹幕、预警、散点图

    可视化框架.数据可视化综合管理平台.大屏可视化.图表组件.图表元件库.统计图表.数据可视化模板.条形图.折线图.散点图.时间轴.仪表盘.饼图.散点图.雷达图.高山图.登录模板.弹窗.弹幕.预警.散点图 ...

  8. 数据可视化—D3直方图二叉树饼状图等(持续更新...)

    文章目录 前言 一.JSBin实现直方图 二.JSBin实现二叉树&文字二叉树 1.二叉树: 2.文字二叉树 三. D3实现直方图 四.D3实现饼状图 五.力导向图 前言 数据可视化小组作业整 ...

  9. python数据可视化之简单绘制简单折线图

    python数据可视化之简单绘制简单折线图 1. 首先安装matplotlib liunx安装命令: $ sudo apt-get install python3-matplotlib windows ...

最新文章

  1. 我国的人工智能芯片的市场规模及发展前景
  2. Linux下利用backtrace追踪函数调用堆栈以及定位段错误
  3. Android之okdownload下载提示奔溃Expected URL scheme ‘http‘ or ‘https‘ but was ‘data‘
  4. Java充电宝模型设计_继续探讨点赞功能模块设计
  5. 七大新品集中亮相,腾讯云AI大数据全线升级!
  6. php框架 swoop_PHP Form Validation
  7. 基于类的软件复用技术
  8. hdu1202解题报告
  9. PHP的学习--可变函数
  10. php抽奖概率怎么设计,php编写抽奖后台实现抽奖概率计算
  11. java execlp_Linux下的C程序,使用函数execlp运行Shell命令
  12. Java中的恒等于号怎么输入_Java---java基础语法03---运算符
  13. 筛选法求素数-c++
  14. 笔记| 计算机数据表示实验(HUST)| 汉字机内码获取实验
  15. 生成arp报文的verilog实现
  16. lq到底是什么意思_LQ网络用语是什么意思?
  17. 【SAP消息号KI344】
  18. 高清硬盘录像机市场分析
  19. 镇魂歌~Qt5容器类_1
  20. linux 中的零拷贝技术,第 2 部分,Linux的零拷贝技术

热门文章

  1. 七零年代摄影师Robert Mapplethorpe
  2. logback异步输出日志详解
  3. unicode 生僻字_生僻字打不出来怎么办?教你一招轻松应对!
  4. 打印_battery_status.scale
  5. 内网渗透之Socks代理简介
  6. repost 懊悔自己没能在本科和研究生期间邂逅ACM
  7. 局域网文件共享需要打开服务器,局域网共享工具有什么用怎么开启
  8. 显卡mx150和230哪个好_MX150和GTX1050哪个好?MX150与GTX1050性能天梯图对比
  9. php利用飞信api给好友发短信
  10. 如何用键盘打开设备管理器里计算机的属性,技巧:在Windows10系统中使用键盘打开设备管理器的三种方法...