当前位置: 首页 > news >正文

股票价、量走势图绘制

在证券投资分析领域中价、量走势分布图是投资者常用的一个参考方面。本案例主要介绍股票每日收盘价格、成交量的走势图以及月交易量分布饼图的绘制技能,并进一步介绍了子图的绘制方法

今有股票代码600000行情交易数据表(trd.xlsx),其表结构如表7-7所示。数据来源于国泰安CSMAR数据库

问题如下:

1)绘制股票代码600000,日期为2017-01-032017-01-20日的收盘价格走势图.

2)绘制股票代码600000,日期为2017-01-032017-01-24日的交易量柱状图.

3)计算股票代码60000020171月至11月的交易量,并绘制其饼图。

4)将以上的价格走势图、柱状图、饼图在同一个figure上以子图的形式绘制出来。

本节主要计算获得绘图所需的横轴和纵轴指标数据,包括股票代码600000的2017-01-03至2017-01-20日的收盘价格数据,2017-01-03至2017-01-24日的交易量数据和2017年1月至11月的交易量统计数据D,这里主要涉及数据的筛选及简单循环计算的编程技能。示例代码如下:

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

data=pd.read_excel('trd.xlsx')

dt=data.loc[data['股票代码']==600000,['交易日期','收盘价','交易量']]

I1=dt['交易日期'].values>='2017-01-03'

I2=dt['交易日期'].values<='2017-01-20

dta=dt.iloc[I1&I2,:]

y1=dta['收盘价']

x1=range(len(y1))

I3=dt['交易日期'].values>='2017-01-03'

I4=dt['交易日期'].values<='2017-01-24'

dta=dt.iloc[I3&I4,:]

y2=dta['交易量']

x2=range(len(y2))

D=np.zeros((11))

list1=list()

for m in range(11):

    m=m+1

    if m<10:

        m1='2017-0'+str(m)+'-01'

        m2='2017-0'+str(m)+'-31'

        mon='0'+str(m)

    else:

        m1='2017-'+str(m)+'-01'

        m2='2017-'+str(m)+'-31'

        mon=str(m)

    I1=dt['交易日期'].values>=m1

    I2=dt['交易日期'].values<=m2

    D[m-1]=dt.iloc[I1&I2,[2]].sum()[0]

    list1.append(mon)

plt.figure(1)

plt.plot(x1,y1)

plt.xlabel(u'日期',fontproperties='SimHei')

plt.ylabel(u'收盘价',fontproperties='SimHei')

plt.title(u'收盘价走势图',fontproperties='SimHei')

plt.savefig('1')

plt.figure(1)

plt.plot(x1,y1)

plt.xlabel(u'日期',fontproperties='SimHei')

plt.ylabel(u'收盘价',fontproperties='SimHei')

plt.title(u'收盘价走势图',fontproperties='SimHei')

plt.savefig('1')

plt.figure(2)

plt.bar(x2,y2)

plt.xlabel(u'日期',fontproperties='SimHei')

plt.ylabel(u'交易量 ',fontproperties='SimHei')

plt.title(u'交易量趋势图',fontproperties='SimHei')

plt.savefig('2')

plt.figure(3)

plt.pie(D,labels=list1,autopct='%1.2f%%') #保留小数点后两位

plt.title(u'月交易量分布图',fontproperties='SimHei')

plt.savefig('3')

plt.figure(4)

plt.figure(figsize=(14,6))

plt.subplot(1,3,1)

plt.plot(x1,y1)

plt.xlabel(u'日期',fontproperties='SimHei')

plt.ylabel(u'收盘价',fontproperties='SimHei')

plt.title(u'收盘价走势图',fontproperties='SimHei')

plt.subplot(1,3,2)

plt.bar(x2,y2)

plt.xlabel(u'日期',fontproperties='SimHei')

plt.ylabel(u'交易量',fontproperties='SimHei')

plt.title(u'交易量趋势图',fontproperties='SimHei')

plt.subplot(1,3,3)

plt.pie(D,labels=list1,autopct='%1.2f%%') #保留小数点后两位

plt.title(u'月交易量分布图',fontproperties='SimHei')

plt.savefig('4')

 

相关文章:

  • 淄博网站制作培训/北京疫情最新情况
  • 网站百度知道怎么做推广/小程序seo推广技巧
  • 网站制作体会/seo薪酬如何
  • wordpress无法重新安装/阿亮seo技术
  • 长春做网站seo/品牌营销策划机构
  • 像百度重新提交网站/it培训班出来现状
  • 线性杂双功能PEG试剂Biotin-PEG-Silane,Silane-PEG-Biotin,生物素-PEG-硅烷
  • P-IoT自组网模式研究
  • 一文搞懂Linux内核initrd和Debian实例
  • webgl—将多组点传给webgl系统中
  • Meta CTO专访:2023年AR/VR、元宇宙的下一步怎么走
  • EBS调用webservice
  • 大白话式粗浅地聊聊NLP语言模型
  • 【Java】Java开发工程师面试题目
  • 【自用】VUE项目 宝塔部署 上线阿里云服务器CentOS7.6
  • 计算机网络期末重点考点总复习
  • 基于Servlet 的Java Web项目的CSRF防御概念
  • SpringBoot+Vue项目实践课程教学管理平台