注:

tushare接口已进行更新,之前的旧接口不可用,(新接口:https://tushare.pro/)。因此,课本中的部分操作已不可用。

股票基本面分析实际操作:

1、数据准备

利用tushare获取股票的相关数据,但因所需的数据不在同一个接口就能读取到,因此分两次获取。(ps:excel的合并没用Python)

import tushare as ts #引入tushare

ts.set_token('8fd9fa6fe51e5f0a0cbd5b18b6e8ffaea51002f32a1770acb69d9466') #执行一次在本机保存token,以后无需执行

pro= ts.pro_api() #初始化接口

data= pro.stock_basic() #读取相关股票数据

data.to_excel("上市公司基本面1.xlsx") #把数据读入到excel里

df = pro.daily_basic(ts_code='', trade_date='20201210', fields='ts_code,trade_date,total_mv,pe') 读取total_mv,pe数据

df.to_excel("上市公司基本面2.xlsx") #把数据读入到另一个excel里

2、数据类型转换

从excel中读取数据时,pandas会将数据自动转换为数值类型。因此,当股票代码前两位为00时,这两个数值就会丢失。故我们应将code字段设置为字符串。(此处提及的code是股票基本数据的一个字段,相关字段见补充)

df = pd.read_excel('上市公司基本面.xlsx',dtype={'code':'str'}) #读取excel表格,并把code设置字符串类型

print(df)

df.set_index('ts_code',inplace=True) #将code设为索引列

结果:

excel截图.png

excel截图2.png

3、相关数据

查看股票的基本信息

print(df.shape) #4083只股票

print(df.columns) #显示数据的相关字段

a = len(df.industry.unique()) #显示行业数

b = len(df.area.unique()) #显示股票归属的省份

c = df.groupby('area').area.count().sort_values(ascending=False) #按地区统计上市公司数量,体现地区经济实力

print(a)

print(b)

print(c)

结果:

运行结果部分截图.png

4、统计每年股票发行量并绘制折线图

year = df.list_date.astype('str').str[:4] #转换为字符串,提取年份

yearnum = df.groupby(year).name.count() #按年份统计,每年股票发行量

import matplotlib.pyplot as plt #引入绘图库

plt.rcParams['font.sans-serif']=['SimHei'] #设置中文

yearnum.plot(title='年IPO数量',marker='o',fontsize=16) #绘制图像

plt.show()

按年份统计股票的发行量,判断当年是牛市还是熊市

结果:

1990-2020年PIO数量.png

5、计算市场的平均市盈率

可以发现在这个excel表格中,有一些股票的pe(市盈率)是显示为0的,这是因为这些股票是亏损的,因此在计算市场平均市盈率时要剔除这一部分的数据。

pe_mean = df[df.pe > 0].pe.mean() #剔除亏损的股票后计算均值

print(pe_mean)

简单的算数平均.png

pe_mean2 = np.sum(df.pe * df.total_mv)/df.total_mv.sum() #以总市值为权重求加权的pe

print(pe_mean2)

加权平均.png

6、对每个版块进行统计

df['board'] = df.index.str[:2]

d = df.groupby('board').pe.agg([('pe均值','mean'),('股票数','count')])

print(d)

结果:

分版块统计结果.png

附:

名称 类型 描述

ts_code str TS代码

symbol str 股票代码

name str 股票名称

area str 所在地域

industry str 所属行业

list_date str 上市日期

price float Y 发行价格

pe float 市盈率(总市值/净利润, 亏损的PE为空)

total_mv float 总市值 (万元)

更多的字段可前往Tushare官网查询:https://waditu.com/

python股票基本面分析_股票基本面分析相关推荐

  1. 股票自动交易python下单接口_股票自动交易Python下单接口

    股票自动交易软件助手的 Order.dll 自动下单接口不仅仅能在大智慧,通达信,飞狐等软件公式里调用,也可以在windows程序里直接调用,支持 Python, C/C++/C#接口调用.有编程能力 ...

  2. python股票价格涨跌幅_股票涨跌幅的快速可视化

    股票每日的涨跌幅很不直观,比如下图,随便挑两个点,你能立刻说出涨跌幅是多少吗?具体点,从33到41,涨了多少?是不是要默默掏出计算器算一算. 有人可能会说,从收益率图里是不是能快速读出涨跌幅呢?比如下 ...

  3. python 股市 挂单_股票买入挂单高了,隔夜挂单技巧

    内容导航: Q1:股票挂单时不小心买价高于卖价怎么办 那就以12.2成交了! Q2:为什么股票成交价高出挂单价很多? 正常交易时间,正好有大买单,高价扫货,把你的卖单给吃了. 还有一种情况:开盘时的集 ...

  4. 分析mysql股票数据_股票数据分析(一)数据获取

    前段时间开始做股票数据分析的业余项目,希望能提高自己对大型数据量的处理能力.目前大致的想法是用python的tushare模块获取数据,用Java的框架做发布. 1.Tushare模块的说明 tush ...

  5. 股票数据:股票数据查询网站

    股票数据:股票数据查询网站可以查询股票历史数据,从股票上市日到最近一个交易日所有的交易数据,当然能查询也就能下载啦,也可以下载股票历史数据Excel,皆免费 只要两步就能下载: 填股票代码.邮箱 5分 ...

  6. python mysql股票分析_一颗韭菜的自我修养:用Python分析下股市,练练手

    股市跌宕起伏.7 月初 A 股飙升,股票瞬间成为大家的热门讨论话题,「现在入场还来得及吗?」几乎成为新的问候语. 然而,经历了连续近 10 个交易日的快牛行情后,上证指数上涨势头放缓.这是牛市,还是熊 ...

  7. 用python读取股票价格_使用Python写一个量化股票提醒系统

    大家在没有阅读本文之前先看下python的基本概念, Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开 ...

  8. python股票分析系统_熬了一晚上,小白用Python写了一个股票提醒系统

    码农小马七夕节去相亲了,见了一个不错的姑娘,长的非常甜美!聊着聊着很投缘!通过介绍人了解到,对方也很满意--想着自己单身多年的生活就要结束啦,心里满是欢喜,美美哒!但是突然想起年初还有几万块在股市里面 ...

  9. python量化股票源码_使用Python写一个量化股票提醒系统

    大家在没有阅读本文之前先看下python的基本概念, Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开 ...

最新文章

  1. springboot过滤器排除掉一些url_理解这9大内置过滤器,才算是精通Shiro
  2. 9个常用iptables配置实例
  3. 隐式马可夫模型(hidden markov model,HMM)
  4. 2006的最后一篇之学车大结局
  5. 继京东27亿买饭店之后 头条要花90亿买广场?张一鸣曾表示年轻人应住市区
  6. Spring Boot统一异常处理实践
  7. IIS 7.5 + PHP-5.6.3 + mysql-5.6.21.1
  8. aaynctask控制多个下载进度_做进度计划一路关卡困难重重?通关攻略了解一下!...
  9. Dreamweaver 8 jquery 代码提示
  10. Windows 更新阻止程序 v1.6
  11. excel数字小写转大写公式的教程
  12. C# SolidWorks二次开发-工程图-更换工程图图纸格式/模板
  13. windows下删除文件:提示无法删除文件,无法读源文件或磁盘
  14. ROVIO WowWee 路威小车
  15. 从零开始设计RISC-V处理器——五级流水线之控制冒险
  16. java清空购物车方法_Javaweb网上商城项目实战(21)删除和清空购物车
  17. photoshop快捷键大全
  18. 腾讯文智自然语言处理介绍与情感分析API调用
  19. 涨价、盈利、IPO?共享充电宝没你想象得好过!
  20. 代理服务器介绍及种类划分

热门文章

  1. hive 常用正则表达式
  2. 圣诞树html实现代码
  3. QT设置背景图片以及设置按钮
  4. 激活 MarkDownPad 2
  5. (转载)IDEO:以洞悉人性为设计主轴
  6. cf:B. Patchouli‘s Magical Talisman【数学贪心思维 + 奇偶分析】
  7. python用selenium 验证码图片_Python +Selenium解决图片验证码登录或注册问题(推荐)
  8. 百度推广引流一个成本多少?百度推广怎么预估成本?
  9. 如何一下清空微信好友_微信通讯录中的好友,怎样全部删除?
  10. JS之父再谈JS历史(一)