手里有一点点公司的股票, 拿不准在什么时机抛售, 程序员也没时间天天盯着看,不如动手写个小程序, 把股票趋势每天早上发到邮箱里,用 python 的 pandas, matplotlib 写起来很容易, 几十行代码搞定。

准备环境

python3 -m venv venv
source ./venv/bin/activate
pip install pandas
pip install pandas_datareader
pip install matplotlib

代码如下

绘制 2019 年到今天2019-02-15 的我司 ( Cisco ) 的股票趋势 ( open:开盘价, close: 收盘价, high 最高价:, low: 最低价,单位为美元)

$ vi stock.py

import matplotlib.pyplot as plt
import pandas as pd
pd.core.common.is_list_like = pd.api.types.is_list_like
import pandas_datareader.data as web
import matplotlib
import time
import matplotlib.pyplot as plt
import argparsedef drawStockTrend(inc, startDate, endDate, pngFile):fig = matplotlib.pyplot.gcf()fig.set_size_inches(18.5, 10.5)df = web.DataReader(name=inc, data_source='iex', start=startDate, end=endDate)print(df)plt.style.use('seaborn-whitegrid')plt.xticks(rotation=30)plt.plot(df.index, df['open'], label='open', marker='o', linestyle=':', linewidth=1, markersize=3, color='gray')plt.plot(df.index, df['high'], label='high', marker='o', linestyle=':', linewidth=1, markersize=3, color='green')plt.plot(df.index, df['low'], label='low', marker='o', linestyle=':', linewidth=1, markersize=3, color='blue')plt.plot(df.index, df['close'], label='close', marker='o', linestyle='-', linewidth=2, markersize=6, color='red')for x, y in zip(df.index, df['close']):plt.text(x, y + 0.3, '%.2f' % y, ha='center', va='bottom', color='red')plt.legend()plt.title("%s' stock trend" % company)plt.show(block=True)time.sleep(1)if(not pngFile):fig.savefig(pngFile)plt.close()if __name__ == "__main__":parser = argparse.ArgumentParser()parser.add_argument('-c', action='store', dest='company', help='specify company')parser.add_argument('-s', action='store', dest='start', help='specify start date')parser.add_argument('-e', action='store', dest='end', help='specify end date')parser.add_argument('-f', action='store', dest='file', help='specify the filename')args = parser.parse_args()company = 'CSCO'startDate = '2019-01-01'endDate = '2019-02-19'pngFile = Noneif(args.company):company = args.companyif (args.start):startDate = args.startif (args.end):endDate = args.endif (args.file):pngFile = args.filedrawStockTrend(company, startDate, endDate, pngFile)#example# python stock.py -c GOOGL -s 2019-01-01 -e 2019-02-19 -f google_stock_trend.png# python stock.py -c CSCO -s 2019-01-01 -e 2019-02-19 -f cisco_stock_trend.png# python stock.py -c SINA -s 2019-01-01 -e 2019-02-19 -f sina_stock_trend.png# python stock.py -c BIDU -s 2019-01-01 -e 2019-02-19 -f baidu_stock_trend.png# python stock.py -c NTES -s 2019-01-01 -e 2019-02-19 -f netease_stock_trend.png

运行命令如下

python stock.py -c CSCO -s 2019-01-01 -e 2019-02-19 -f cisco_stock_trend.png

图表如下

cisco

看来最近股价涨势不错。

再看看其他公司

  • Google
python stock.py -c GOOGL -s 2019-01-01 -e 2019-02-19 -f google_stock_trend.png

google

  • Baidu
python stock.py -c BIDU -s 2019-01-01 -e 2019-02-19 -f baidu_stock_trend.png

baidu

  • Netease
python stock.py -c NTES -s 2019-01-01 -e 2019-02-19 -f netease_stock_trend.png

作者:瓦尔特有范
链接:https://www.jianshu.com/p/ca3f5008c55c
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

Python绘制股票趋势图相关推荐

  1. python 股票图表_k线图分析法_【趣味案例】用Python绘制K线图,一眼看清股市状况...

    本文介绍关于[趣味案例]用Python绘制K线图,一眼看清股市状况及神一般的裸k交易法,精髓就这三步,一目了然!精髓就这三步,一目了然!(附图解析)的相关内容. [趣味案例]用Python绘制K线图, ...

  2. Python绘制股票K线图

    目录 1 股票K线图知识了解 2 用Python绘制股票K线图 2.1 安装绘制K线图的mpl_finance库 2.2 引入相关库 2.3 用Tushare库获取股票基本数据 2.4 日期格式调整及 ...

  3. python pyqtgraph绘制股票kline图类封装(tcy)

    用途:绘制股票kline图 说明: 绘制基本的股票kline图及相关指标图如ma移动平均线等,绘制其他指标只需传入相关数据及线的颜色即可. 绘制鼠标移动显示交易时间及open,high,low,clo ...

  4. Python绘制股票日K图(九)给折线图加标签

    股票当日成交额在股市的排名说明了市场对它的关注度,也是一个很好的指标. 免费获取更多最新股市数据关注头像同名恭祝好! 相应的代码同Python绘制股票日K图(七)给柱状图加上标签差不多,只不过需要注意 ...

  5. python k线图和指标_期货k线图基础知识_一眼看清股市状况之用Python绘制K线图

    本文介绍关于一眼看清股市状况之用Python绘制K线图与cdp指标与期货大盘的分析周期选用有关吗?应该选用日线,还是60分钟.30分钟等时分线最为精确.与股票指标ovl是什么意思与股票均线怎么看与我想 ...

  6. python绘制雷达图代码实例-使用python绘制温度变化雷达图

    本文实例为大家分享了python绘制温度变化雷达图的具体代码,供大家参考,具体内容如下 假设某天某地每三个小时取样的气温为 针对温度变化趋势绘制雷达图: 代码如下: import numpy as n ...

  7. plotly基于dataframe数据绘制股票OHLC图

    plotly基于dataframe数据绘制股票OHLC图 # plotly绘制ohlc曲线 import plotly as py # 导入plotly库并命名为py import plotly.gr ...

  8. plotly基于dataframe数据绘制股票蜡烛图(Candlestick)

    plotly基于dataframe数据绘制股票蜡烛图(Candlestick) # 股票蜡烛图(Candlestick) import plotly as py # 导入plotly库并命名为py i ...

  9. python画动图-Python绘制动态水球图过程详解

    先来看看绘制的动态水球图: 没有安装PyEcharts的,先安装PyEcharts: # 安装pyecharts模块,直接安装就是最新的版本pip install pyecharts 安装好PyEch ...

最新文章

  1. Java项目:农业计算工具(java+swing)
  2. taskset -pc PID 查看线程占用cpu核
  3. 统计内表行数常用的三种方法
  4. jQuery-1.9.1源码分析系列(十六)ajax——ajax处理流程以及核心函数
  5. 一文学会,胶位偏移、缺胶、断胶、溢胶检测
  6. HDFS(名称节点与数据节点)简介
  7. js方法写在html中,在js中写html代码怎么写
  8. leetcode - 617. 合并二叉树
  9. mysql连接命令行,从命令行连接到MySQL
  10. windows 2012 非pdc DC强行重置NTP
  11. 如何使用QGIS下载在线地图
  12. mysql驱动包放在ecplise哪里_eclipse导入mysql jdbc驱动包的具体步骤及注意事项
  13. 到外企应聘如何准备英文简历(Tips for Resume)
  14. 二年级上册计算题_小学二年级上册应用题500道
  15. 隐含表(状态对图)消消乐
  16. 程序员成为“备胎”的5年,我一直在等...(外包——字节跳动)
  17. 【程序】Marvell 88W8801 WiFi模块连接路由器,并使用lwip2.0.3建立http服务器(20180729版)
  18. 《数据结构学习笔记》-持续记录
  19. puppeteer在linux上模拟浏览器截图——截取微信公众号文章全文实例
  20. 【飞鱼科技】最新社招信息

热门文章

  1. 台式计算机小键盘,台式电脑软键盘在哪里,初学电脑
  2. iOS开发-自定义相机(仿微信)拍照、视频录制
  3. 深度学习 - 其本质是什么?
  4. 搭建自已的turn服务器
  5. 使用tar命令进行磁带备份的命令汇总
  6. 高并发点赞系统 梳理
  7. 登入拼多多显示服务器请求失败,拼多多商家后台登录打不开?
  8. 2022级东南大学935计算机考研经验分享
  9. 宽带,猫,路由器的关系是什么?
  10. Unity官方案例噩梦射手开发总结<一> 角色的攻击功能实现