如何找到股市某一行业中最优质的股票--通过Python和Tushare编程实现

43 篇文章 22 订阅
7 篇文章 1 订阅

本文的主要目的是通过Python和Tushare编程,发掘出股市某一行业中最优质的股票。

评价一只股票是否优质的标准有很多,本文以演示为目的,就以市盈率作为评价标准进行演示。在股市中摸爬滚打的朋友肯定知道最近IT行业比较热,本文就以IT产业中的“印制电路板”行业作为选取行业,看看在“印制电路板”这个行业中,那些股票是最优质的,也就是哪只股票的市盈率是最低的。步骤如下:

一、获取行业指数代码

要想了解某个行业的具体情况,第一步当然是要了解股票市场中关于行业的分类。tushare提供了申万行业的分类,接口为index_classify,通过该接口可以获取股市中所有行业的分类情况。以pro.index_classify(level='L3', src='SW')为例,该语句将会获得申万(参数SW),行业分类Level 3(‘L3’)的所有具体分类信息。具体代码如下:

import pandas as pd
import tushare as ts
TOKEN = 'c*******8c'
pro = ts.pro_api(token=TOKEN)
df3 = pro.index_classify(level='L3', src='SW')
print(df3)

输出结果如下:

此时将打印所有的,level 3行业分类的所有情况,共有227个分类。大家可以浏览所有情况找出‘印制电路板’对应的代码。也可以使用df3[df3['industry_name'] == '印制电路板'],获取出具体的条目。输入如下:

通过上图可以清晰看到,'印制电路板'行业对应的代码为‘850822.SI’。好的,步骤一到现在就完成了,接下来进行我们的第二部。

二、找到该行业所有股票

找到行业代码后,下一步就是找到该行业所有的股票。tushare提供了申万行业代码对应的所有股票代码。接口为pro.index_member(index_code='850822.SI')。形参表示为行业代码为‘850822.SI’的所有股票。代码如下:

df4 = pro.index_member(index_code='850822.SI')
print(df4)

.输出如下:

这是就可以看到该行业中所有的股票代码了,进行下一步,将获取筛选出股票的名字。

三、获取筛选出股票的名字

获取到行业中所有股票的代码后,也不知道这些股票的名字啊,只有代码太枯燥了,印象也不直接,下面就先获取所属行业的所有股票的名字。代码如下:

df5 = pro.stock_basic()
df6 = pd.merge(df4, df5, left_on = 'con_code', right_on = 'ts_code' )

结果输出如下:

好了,是不是感觉好多了。现在我们已经筛选出属于“印制电路板”行业的所有股票名称了。可以进行下一步了。

四、获取股票的市盈率并排序

筛选出所属行业的所有股票后,就是获取这些股票的市盈率了。代码如下:

df9 = df8[['name', 'pb','pe_ttm', 'dv_ratio', 'turnover_rate']]
df9.sort_values('pe_ttm')

输出结果如下:

从输出结果来看,依顿电子、超声电子、崇达技术,是市盈率考前的三只股票。当然股票的市盈率是随着股价的变动而变化的,大家可以根据具体的行情自行进行计算。这个筛选行业优质股票的编程分析实现就到这里了。

五、如何使用tushare?

使用图share获取股票相关数据,需要首先进行注册,大家可以点击点击免费注册获取token或者https://tushare.pro/register?reg=287337,免费注册,获取token。 就到这里了,希望大家早日实现财务自由。

 

 

  • 7
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值