python 获取股市数据 baostock + 画K线图 mpl_finance
python 获取股市数据 baostock + 画K线图 mpl_finance
- 获取股票数据
- 安装baostock库
- baostock库的特性
- 获取A股K线数据
- 核心代码如下
- 完整代码如下
- 画K线图
- 安装mpl_finance库
- mpl_finance库的特性
- 最简单的使用
获取股票数据
安装baostock库
pip install baostock
baostock库的特性
- 证券宝www.baostock.com是一个免费、开源的证券数据平台(无需注册)
- 返回的数据格式是pandas DataFrame类型,以便于用pandas/NumPy/Matplotlib进行数据分析和可视化
- 当前交易日17:30,完成日K线数据入库
- 当前交易日20:30,完成分钟K线数据入库
- 第二自然日1:30,完成前交易日“其它财务报告数据”入库
获取A股K线数据
注意:baostock库除了获取K线数据之外,还能获取估值指标、盈利能力、营运能力、成长能力、偿债能力等信息,但因为本文聚焦于对K线图的绘制,因此不涉及这些函数的使用。
核心代码如下
import baostock as bslg = bs.login()
rs = bs.query_history_k_data_plus("sh.000001", "date,code,open,high,low,close",start_date='2020-07-01', end_date='2020-07-29',frequency="d", adjustflag="3")
第一个参数指定要获取K线数据的股票的代码,上证综指是“sh.000001”,深证成指是“sz.399001”,而创业板指是“sz.399006”,也可以是各个股票的代码,例如浦发银行“sh.600000”。
第二个参数指定要提取的数据,例子中的“date,code,open,high,low,close”分别对应日期、代码、开盘价、最高价、最低价、收盘价。其余可以指定的数据和含义如下
参数名称 | 参数描述 | 说明 |
---|---|---|
date | 交易所行情日期 | 格式:YYYY-MM-DD |
code | 证券代码 | 格式:sh.600000。sh:上海,sz:深圳 |
open | 今开盘价格 | 精度:小数点后4位;单位:人民币元 |
high | 最高价 | 精度:小数点后4位;单位:人民币元 |
low | 最低价 | 精度:小数点后4位;单位:人民币元 |
close | 今收盘价 | 精度:小数点后4位;单位:人民币元 |
preclose | 昨日收盘价 | 精度:小数点后4位;单位:人民币元 |
volume | 成交数量 | 单位:股 |
amount | 成交金额 | 精度:小数点后4位;单位:人民币元 |
adjustflag | 复权状态 | 不复权、前复权、后复权 |
turn | 换手率 | 精度:小数点后6位;单位:% |
tradestatus | 交易状态 | 1:正常交易 0:停牌 |
pctChg | 涨跌幅(百分比) | 精度:小数点后6位 |
peTTM | 滚动市盈率 | 精度:小数点后6位 |
psTTM | 滚动市销率 | 精度:小数点后6位 |
pcfNcfTTM | 滚动市现率 | 精度:小数点后6位 |
pbMRQ | 市净率 | 精度:小数点后6位 |
isST | 是否ST | 1是,0否 |
第三个参数start_date指定数据的开始日期(包含),为空时取2015-01-01。
第四个参数end_date指定数据的结束日期(包含),为空时取最近一个交易日。
第五个参数frequency指定数据类型,默认为d,日k线;d=日k线、w=周、m=月、5=5分钟、15=15分钟、30=30分钟、60=60分钟k线数据,不区分大小写。
第六个参数adjustflag指定复权类型,默认不复权:3;1:后复权;2:前复权。已支持分钟线、日线、周线、月线前后复权。 对于指数来说,该参数没有任何影响。
完整代码如下
import baostock as bs
import pandas as pd# 登陆系统
lg = bs.login()# 获取沪深A股历史K线数据
rs = bs.query_history_k_data_plus("sh.000001","date,code,open,high,low,close",start_date='2020-07-01', end_date='2020-07-29',frequency="d", adjustflag="3")# 输出结果
data_list = []
while (rs.error_code == '0') & rs.next():# 获取一条记录,将记录合并在一起data_list.append(rs.get_row_data())
result = pd.DataFrame(data_list, columns=rs.fields)# 结果集输出到csv文件
result.to_csv("szzz.csv", index=False)
print(result)# 退出系统
bs.logout()
画K线图
安装mpl_finance库
pip install --upgrade mplfinance
mpl_finance库的特性
mpl_finance库提供了对财务数据进行可视化和分析的工具。
最简单的使用
import pandas as pd
import mplfinance as mpf# 读取刚刚保存的数据
daily = pd.read_csv('szzz.csv', index_col=0, parse_dates=True, usecols=[0, 2, 3, 4, 5])mpf.plot(daily)
咦?怎么和平常见的不一样?加入一些参数即可!
mpf.plot(daily, type='candle')
敢不敢再丑一点?
mpf.plot(daily, type='candle', style='charles')
mpf.plot(daily, type='candle', style='yahoo')
mpf.plot(daily, type='candle', style='starsandstripes')
python 获取股市数据 baostock + 画K线图 mpl_finance相关推荐
- python绘制动态k线及均线,python : pyecharts 1.1.0 画K线图
pip install pyecharts ; 会安装 pyecharts-1.1.0 画K线图 kline1.py # coding: utf-8 import os, sys from pyech ...
- python画k线图_python自动获取行情数据,并画k线图
1.概述 本例子为画k线图,同时画出5日,10日,30日均线,且鼠标移动到上面会显示当前交易日,开盘价,收盘价,最高价,最低价. 移动平均线:Moving Average,简称MA,MA是用统计分析的 ...
- 【转】Python之获取每日涨停板股票数据并绘制K线图!
利用tushare财经数据接口获取股市进行数据分析.并可视化的案例 1.导入所需要的库 import os import pandas as pd import tushare as ts impor ...
- Python之获取每日涨停板股票数据并绘制K线图!
利用tushare财经数据接口获取股市进行数据分析.并可视化的案例 1.导入所需要的库 import os import pandas as pd import tushare as ts impor ...
- Python之数据分析(Numpy中读取与保存数据文件、将数据文件制成K线图)
文章目录 一.读取与保存文件 二.将数据文件制成K线图 一.读取与保存文件 1.读取文件格式 numpy.loadtxt(文件名,delimiter = 分割符,usecols = 选择列,unpac ...
- python画k线图_python画k线图
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! import datetime import pandas_datareader ...
- python 画k线图_matplotlib画k线图
画k线需要的包和环境: python36 import tushare as ts import re import matplotlib.pyplot as plt import mpl_finan ...
- python能画k线图吗_python画k线图(一天的k线图怎么画)
1.大智慧软件在日线窗口的左上角标有主图的公式名称,(如ma sar bbi )等, 如果不是ma指标,请输入ma,回车.2.如果输入ma后还是没有均线,请按 f7 键,弹出 最好能举个例子的.非常感 ...
- 使用python画K线图(蜡烛图)
#画K线图 import pandas as pd import matplotlib.pyplot as plt import mplfinance as mpf#金融画图库 from pylab ...
最新文章
- 5MB的神经网络也高效,Facebook新压缩算法造福嵌入式设备
- FoxMail的25号端口被占用问题
- Numpy基础学习与总结
- Python基础09 面向对象的进一步拓展
- spring源码分析之@ImportSelector、@Import、ImportResource工作原理分析
- 3d 根据弧长算角度_三分钟带你了解三姆森3D玻璃厚度及轮廓度检测
- macOS Monterey值得升级吗?Monterey 与 Big Sur的对比
- Manjaro下显卡相关的命令搜集
- 解决iTnues对PC授权,连接不上iTnues的问题
- 《Java技术》预备作业总结
- 《斯坦福算法博弈论二十讲》学习笔记(持续更新)
- 甘肃暴雨强度公式_甘肃暴雨强度公式
- 罗马音平假名片假名转换器_平假名与片假名
- 华为紧盯Android专利战: 置身事外几无可能
- 【NOIP2006】【Luogu1063】能量项链
- bilibili弹幕爬虫, 2019-1-10
- grub2引导linux内核,启动流程、模块管理、BootLoader(Grub2)
- ssm报错:Invalid bound statement (not found): mapper.UserMapper.findAllUser
- 技术支撑团队技术支持工程师的技能要求
- Symbian S60v5 编程中的程序图标更换问题
热门文章
- RS-232实现双机通信
- 重磅丨数据+场景双重互联,有米广告完成程序化场景营销升级
- 面试经历---网易(2016年01月19日下午面试)
- android room 主线程,Android Jetpack之Room篇
- Html中如何自定义Video显示的长宽比
- 移动端判断手机横竖屏状态及加载相应样式或内容的解决方案
- Android刷机备忘录
- Win10踩坑-开机0xc0000225
- WPS服务器维护,wps卸载云服务器
- 四足机器人|机器狗|仿生机器人|多足机器人|Adams仿真|Simulink仿真|基于CPG的四足机器人Simulink与Adams虚拟样机|源码可直接执行|绝对干货!需要资料及指导的可以联系我!