股票分析及利用tushare查看股票部分数据

观前提示:本文面向和我一样不懂炒股的投资小白

本文涉及

  • 利用python调用tushare最基础的少量操作(查看股价及可类推的基本数据、将多支股票数据放到一个DataFrame并作图)

  • 可能存在逻辑错误、涉及权益投资基本知识的股价分析

  • 来源于财经网站的股价截图以及参考了其他一些优秀作者的观点(文中有水印或标注)

  • 不构成任何购买建议的理论分析(虽然写完当天就15块买了杭州银行的股票)

本文写于2021年的一月份
初学Python,然后事实上这篇文章是根据学校布置的作业改编的,发表这篇文章一方面是可以在tushare社区赚取积分啦,另外期末辛苦写的东西虽然很幼稚但比起烂在电脑里还是想着发出来吧。
如果你也在纠结于有关股票分析的期末作业,或者对股票分析感兴趣,想看看我调用的tushare代码,那么这篇文章或许能有一点点帮助。另外这也是第一次把自己写的东西发布出来,那么文中的代码随意参考,关于文章中的逻辑错误或者是代码问题欢迎在评论区指正~

正文部分(作图的Python代码在下方贴出)

公司简介

杭州银行成立于1996年9月,总部位于杭州。目前,全行拥有200余家分支机构,网点覆盖长三角、珠三角、环渤海湾等发达经济圈。此外还发起设立了杭银消费金融股份有限公司,全资设立了杭银理财有限责任公司,并投资入股了石嘴山银行。2016年10月27日,首次公开发行A股在上海证券交易所成功上市,股票代码600926。

历史走势

#用tushare获取股价并直接调用pandas自带的图片生成画图
import tushare as ts#393575
import pandas as pd
pro=ts.pro_api()
df=pro.daily(ts_code='600926.SH')
df.index=pd.to_datetime(df.trade_date)
df.close.plot(title='600926.SH')
#有关tushare的调用语法可以在tushare官网中找到

股价分析

首先根据传统的股利贴现模型对股票走势进行分析,根据股利贴现模型,一家公司的股票价格等于其未来所有返还给股东的现金流的贴现值。因为股东可以得到的回报等于公司的盈利减去各种成本,那么公司经营的情况及融资结构会对股东的潜在收益产生巨大影响,从而影响投资者对于该股票的需求,进而影响股票的价格。

所以,从公司的经营情况和融资结构两方面进行分析。

首先考察经营情况。

一个简单的方法来看公司的盈利程度就是用收入减支出。考虑到营业外收入与支出的不可持续性导致投资者对股票未来盈利能力的预期判断与其关系不大,所以将其刨除。那么可以考察一下杭州银行每年的营业收入减去营业支出的变化对于股票价格的影响。鉴于公司财务数据随财报的发布定期披露更新,假设市场不是强势有效市场,则实时的财务数据属于内幕信息,对股价的影响可忽略不计,所以主要看财务数据在该期财报发布日及以后与股价的关系。

import tushare as ts
import pandas as pd
pro=ts.pro_api()
df=pro.income(ts_code='600926.SH')
df.index=pd.to_datetime(df.ann_date)
pic=df.operate_profit.plot(title='600926.SH')
fig=pic.get_figure()
fig.savefig('fig.png')
#如果想要放大的话可以在第四行加入时间

从tushare导入该股票的财务数据用Python作图得,可以发现财报反应公司的主营业务盈利能力在2016年上市之前有一个十分明显的上升阶段。在上市之后其波动较以前变大,主营业务盈利从最低的1.5亿到最高的7.3亿。

将股票上市(2016.10.27)后的部分放大与股票数据进行对比。


从左图来看,杭州银行的盈利能力具有季节性波动的特点,但整体呈上升趋势。反观股价趋势并没有与左图有十分密切的联系。

显然,这样单看杭州银行一只股票没有多大意义。所以,再选取同类型的城商行进行对比。由于杭州银行主营业务主要在浙江地区,所以也选取同地区的在沪市上市的南京银行(601009.SH)和上海银行(601229.SH)进行对比。

#将三家银行的数据进行对比
x=pd.DataFrame()
a={'HZYH':'600926.SH','NJYH':'601009.SH','SZYH':'601838.SH'}
for code,number in a.items():#循环将各支股票数据导入df
df=pro.income(ts_code=number,fields='operate_profit,ann_date')
x.insert(column='op',value=df['operate_profit'],loc=len(x.columns))
x.rename(columns={'op':code},inplace=True)
x['date']=df['ann_date']#导入时间序列
x.index=pd.to_datetime(x['date'])#转换格式后将时间序列设成索引
pic=x.plot(title='industry comparation by operate income')#作图
fig=pic.get_figure()
fig.savefig('fig5.png')

可以看出这三家银行的大致走势基本保持一致,在近两年有所上升且波动较大。前期也基本都有较稳定的上升,上海银行和南京银行的波动相较于杭州银行来说大了许多,但它们的主营业务盈利特别是上海银行相比之下也在大部分时间内显著高于杭州银行。而杭州银行的主营业务的盈利相比这两家银行增长速度较慢,波动幅度相对较小。

如果说上述数据真实有效,那么按照这样趋势可以推断出杭州银行的主营业务盈利能力并不突出。然而现实与上述表现有较大差异,虽然上海银行的股价与其在上述分析中表现出的盈利能力都排在三家银行之首,但杭州银行的股价一直高于南京银行。


通过同样的方法对比三家银行的ROE可以发现,杭州银行的这项指标并不一直低于南京银行,说明杭州银行利用资本的效率并不差。盈利较少可能是总资本较小导致的。

从财经网站上查看A股银行股的股指可以发现,在2020年7月和12月各有一个明显上涨的阶段,虽然随后有所回落,但2020年下半年银行股指还是比上半年回升了很多。不过,2020年银行股整体低迷,不同的银行股表现在2020年表现参差不齐。

据Wind数据显示,截至12月29日,A股37家上市银行中,有26家的股价相比年初有所下跌,其中5家银行跌幅超过20%,19家跌幅超过10%。除年内完成IPO的厦门银行(601187.SH)外,涨幅超过10%的银行仅有5家(分别是平安银行、招商银行、宁波银行、杭州银行和成都银行)。
摘自《银行股年终盘点:承压与期待》 https://finance.sina.com.cn/stock/hkstock/ggscyd/2020-12-30/doc-iiznctke9231579.shtml 作者:“大摩财经”

通过前面的股价图也可以发现,杭州银行在2020年中开始了一波逆势上扬(年初至今涨幅66.83%)的行情。那么,是什么因素在影响呢?

我认为中国抗击疫情的成果给了市场很大的信心。若中国在未来继续引领世界经济的复苏,市场预期可能更会偏向于乐观。银行股作为金融行业也可能会因此而继续复苏。

另外由于疫情期间央行为了刺激经济实行了宽松的货币政策与财政政策,在刺激消费之余也一定会导致投资的数量增加。在“房住不炒”与去杠杆的号召下,可能继续会有资金流向股市。当股市泡沫化程度逐渐上升时,稳定且有发展潜力的部分银行股可能会受到投资者的青睐。

个人认为2020年为数不多的大型商业银行与城商行的逆势上行就是一个很好的证明。那么顺着这样的思路,经营状况良好且估值较低的银行在2021年可能会继续上涨。对于经营状况的粗略分析已在上面展开,虽然结果不显著,但很有可能是分析方法过于原始,可以从不良资产率、利差和资产拨备率的角度出发以及用更为细致的Residual income analysis进行分析。

将目光转向市值方面。这里继续用tushare导入数据,对银行股的P/B进行行业横向对比和历史纵向对比。

x=pd.DataFrame()
a={'HZYH':'600926.SH','NJYH':'601009.SH','SHYH':'601229.SH'}
for code,number in a.items():df=pro.daily(ts_code=number,fields='close,trade_date')x.insert(column='price',value=df['close'],loc=len(x.columns))x.rename(columns={'price':code},inplace=True)x['date']=df['trade_date']
x.index=pd.to_datetime(x['date'])
pic=x.plot(title='industry comparation by price')
fig=pic.get_figure()
fig.savefig('fig6.png')
#下面的图换一下股票代码就可以了

由于杭州银行上市较晚,将从2017年初至今杭州银行和南京银行和上海银行这两只银行的市净率进行对比,还是可以发现从2017年到现在其市净率在不断下滑,虽然杭州银行由于近期股价的上升市净率快速回升,但也只在1.5左右,还未达到其刚上市的水平。

再将杭州银行的市净率与上面提到的2020年涨幅最大的另外四家银行进行对比。

这四家银行分别是平安银行,招商银行,宁波银行和成都银行。相较于这些银行的市净率,杭州银行目前的市净率显得就没那么高了。当然像招商银行的规模与杭州银行不是一个量级的,但宁波银行、平安银行和成都银行相对来说就更有可比性。这些银行的市盈率都普遍高于杭州银行,其中平安银行的市净率一直在2-3的范围徘徊,说明杭州银行目前的股价还可能有很大的上涨空间。

投资建议

总结来说,杭州银行的股价虽然在近期快速上扬,但其估值相较于业界同类还有上升的空间。具体的未来趋势从总量的数据出发不太好判断,需要深入研究。但市面上的投资研报几乎全部都给出了买入或增持的评级。在公募基金持仓方面,新进和增持的数量也占了绝大部分的交易,这说明机构对于这支股票还是比较看好的。所以综上来看,现在投资这支股票或许是一个不错的选择,看好未来A股行情的话不妨持有这支股票。
—结尾—

接触Python时间不久,很多东西还需要以后一步步的探索。不过个人感觉用tushare来看金融数据还是非常舒服的,因为教育优惠基本上用得着的大部分端口现在都免费,不过得主动说明你的学生身份。
如果你有Python基础,可以直接去官网看调用的语法和接口,贴一下官网链接:Tushare大数据开放社区。

股票分析及利用tushare查看股票部分信息相关推荐

  1. 利用Tushare进行股票因子计算

    利用Tushare进行股票因子计算 开发背景 一.获取沪深300成分股 1. 获取全部股票代码 2. 获取沪深300成分股代码 3. 根据沪深300股票代码,提取对应的ts代码 4. 根据ts代码获取 ...

  2. 项目练习_利用tushare下载股票行情【多线程】

    项目练习_利用tushare下载股票行情[多线程] tushare简介 代码 tushare简介 tushare是专业的金融数据开源接口,数据齐全(甚至包含宏观数据,石油数据,电影数据等等等),是金融 ...

  3. 利用tushare进行股票数据分析

    笔者tushare ID:476408 在经过了半年时间的学习中,对熟练的使用tushare进行股票数据分析方面具有一定的基础,能够基本掌握一些常用的算法编程,以下就以自己在校期间的分析报告为分享内容 ...

  4. 使用python语言,利用tushare进行股票筛选

    由于在2月18日之后,大盘产生剧烈波动,在此期间白马股对资金的反应十分平淡,存在白马股下跌的情形,所以想利用tushare筛选2-18日到3-9日这几十天内上涨的股票,并进一步分析其特征.基本思路如下 ...

  5. 股票分析,利用线性回归实时预测股价,只需要提供股票代码即可爬取相应股票数据并建模

    这里参考了别人的代码,并引用了tushare模块中定义的接口自动获取了依据 股票代码来获取数据 此篇文章提供了 1.一个简单通过接口爬取csv数据的方法 2.一个处理csv数据的简单方法 3.依据数据 ...

  6. python股票数据库_利用Python爬股票数据并存入数据库Mysql

    直接上代码,小白也能爬股票......... import tushare as ts import mysql.connector import re,time #创建所有股票的表格以及插入每支股票 ...

  7. R语言 | 利用tushare获取股票数据实例

    作者的tushare ID:456548 自学深度学习模型,因为本人热爱在支付宝上买基金,于是突发奇想,用深度学习预测涨跌. 首要要获取基金的数据,但是基金数据不好获取,就获取对应的行业指数数据用于分 ...

  8. R语言 | 利用tushare获取股票k线、市值、换手率,市盈率等指标

    作者的tushare ID:456548 作者在股市进行比较短线的投资,想开发一些高效的指标作为买卖的参考,于是需要k线.市值.换手率等数据进行研究,同花顺等软件上面大多数据不能导出,所以找到了tus ...

  9. 利用tushare选股票

    听完朋友的"天眼地量"选股理论后,热血沸腾,打算找一只股票试试.可以整个股票市场有3600+只股票怎么找呢?不急,我们有python3和tushare.先上代码 import ti ...

最新文章

  1. 如何使用Sublime Text 2重新格式化HTML代码?
  2. 质量属性六个常见属性场景(《淘宝网》为例) 15
  3. Neo4j 图创建1 以BiliBili粉丝UP主之间的关系为例
  4. 初识html 尝试图片标签 0907
  5. UCan下午茶武汉站,为你全面挖宝分布式存储
  6. python工资高还是java-未来Java、大数据、Python哪个前景更好,薪资更高?
  7. 科大讯飞离线语音识别安装与运行
  8. [Leetcode 18]四数之和 4 Sum
  9. 【渝粤教育】国家开放大学2018年秋季 1131t卫生经济学 参考试题
  10. 帆软JS获取控件扩展的值的两种方法
  11. 增值税发票税控开票软件 无法正常启动
  12. 【简单的小技巧】如何从网页上下载内嵌的PDF文件?
  13. 【git】小甲鱼Git教程《极客Python之Git实用教程》笔记二
  14. 如何用ChatGPT做一门课?(包含大纲、脚本、PPT文本)
  15. 查询毕业证书的(学信网查)
  16. PHP 重启 php-fpm 的几种方法
  17. Vue created() 里同步
  18. 基于NIO的Client/Server程序实践
  19. 关于html5的标签整理合集(二)
  20. 文件后缀名大全及其说明表

热门文章

  1. java线程池介绍(一)
  2. 嵌入式软件工程师面试题(九)
  3. 【示波器专题】示波器的频响方式
  4. Veloview阅读笔记1
  5. 用pygame实现一个简单的垃圾分类小游戏(已获校级二等奖)
  6. 【数据可视化】Antv L7给地图添加图例Legend
  7. 血战力扣752.打开转盘锁
  8. android 11.0 开机动画横屏显示
  9. Unity-技术美术 199-208
  10. 前端Q知识体系梳理与面试准备直播回顾