必威体育Betway必威体育官网
当前位置:首页 > IT技术

自己做量化交易软件(17)通过基本面建立自己的股票池

时间:2019-07-06 09:43:15来源:IT技术作者:seo实验室小编阅读:80次「手机版」
 

股票池

自己做量化交易软件(17)通过基本面建立自己的股票池

自动交易不能随便选股进行买卖,因此需要预先建立自己的股票池。

一般我们通过基本面来建立股票池,至少避免购买业绩非常差的股票。

我们主要关注的基本面参数主要有3个,市盈率,市净率,流通盘。

股票的内在价值核心由2部分组成:每股资产净值,每股收益率。

市净率=股价/每股净资产

市盈率=股价/每股收益。

选股流程如下:

(1)获取沪深上市公司的实时数据,其中包含股票代码,市盈率,市净率。

其中,删除业绩较差的ST股票,删除业绩亏算的股票, 删除净资产为负的股票。

(2)选取市盈率前100名股票。

(3)选取市净率前100名股票。

(4)对所选取的股票代码进行运算,选取同时满足的股票代码,建立股票池.

实盘中只在股票池中寻找买卖时机.

下面直接给出源代码,大家可以参考来进行改进为自己的选股策略.使用了tushare 数据。

# -*- coding: utf-8 -*-
#通过基本面选股,建立股票池
import tushare as ts

#获取最新股票数据
df=ts.get_today_all()

df1=df.copy()  #建立一个备份
n=100  #选择前n个数据

#删除业绩较差的ST股票
df1['a']=[('ST' in x )for x in df1.name.astype(str)]  #先给ST股票做标记a
df1=df1.set_index('a')  #将a设置为索引 
df1=df1.drop(index=[True]) #删除ST股票
df1=df1.reset_index(drop=True) #重建默认索引

#删除业绩亏损的股票
df1=df1[df1.per >0]

#删除净资产为负的股票
df1=df1[df1.pb >0]

#选取市盈率前100名股票
df2=df1.sort_values(by=['per'],ascending=True).head(n)

#选取市净率100名股票
df3=df1.sort_values(by=['pb'],ascending=True).head(n)

#生成股票代码集合,进行集合运算
g2=set(df2.code) #低市盈率股票代码
g3=set(df3.code) #低市净率股票代码
g=g2&g3 #集合交运算
zxg1=list(g)  #把集合转为列表
print()
print('基本面选股结果:',zxg1)

参照上面例子,根据经验作自己的选股程序

相关阅读

35岁,领高薪,拿股票:那些职业竞争力强的人,活得太爽了!

点击“技术领导

巴菲特旗下公司减持苹果股票 苹果是其最大股票投资对

A5创业网(公众号:iadmin5)2月15日报道,美国股神沃伦·巴菲特执掌的伯克希尔哈撒韦公司削减了在iPhone制造商苹果的股份,据悉,苹果

“志青云”特殊股票激励计划实施 ,百度的机制更新吹响

体制、制度、机制,是现代企业经营管理的黄金三角,其中打造合适的“机制”是企业管理的核心,所谓“机制”,最重要

暴风集团停牌,筹划非公开股票事项

A5创业网(公众号:iadmin5)5月29日报道,暴风集团在昨日晚间发出公告,宣布公司筹划非公开发行股票事项,预计融资金额不会超过5000万元,经申

【我的开源】股票软件简介+源码(蜗牛股票软件)

简介 蜗牛股票软件是博主在业余时间开发的一款股票软件,运行于Windows环境,目前已经开源到GitHub上,界面使用VC++/MFC开发,IDE选用Vi

分享到:

栏目导航

推荐阅读

热门阅读