tushare pro接口_如何使用tushare进行条件选股(量化投资入门)

大家好,上次讲到了如何从tushare读取交易数据并写入到mysql数据库,今天讲解两个案例,简单的条件选股以及对交易数据可视化。

第一个案例简单查询股价涨幅和跌幅并可视化。

第二个案例结合选股策略(不要ST股、动态市盈率大于0、流通市值小于10亿)对数据进行查询和提取。

话不多说,直接上代码。

案例一:

#先引入后面分析、可视化等可能用到的库import tushare as tsimport pandas as pdimport numpy as npfrom sqlalchemy import create_engine#连接数据库engine = create_engine('mysql+pymysql://root:123456@localhost/tushare_db')#设置token(大家去tushare上免费注册就可以获取了)#tushare的注册地址  https://tushare.pro/register?reg=232583token='f7886c15001489a3e784a9e9ede719967a6f745e785ab39a9c10f6a5'pro = ts.pro_api(token)
#接下来说下如何读取数据库的数据和可视化#构建数据查询和可视化函数:def plot_data(condition,title):    #导入pyecharts绘图模块,案例使用的是V1版本。    from pyecharts.charts import Bar    from pyecharts import options as opts    #查询语句    data=pd.read_sql("select * from stock_data where+"+ condition,engine)    #使用pandas.groupby分组计数生成Series格式    count_=data.groupby('trade_date')['ts_code'].count()    #索引日期列转换成列表    attr=count_.index.tolist()    #数值转换成列表    v1=count_.values.tolist()    #添加柱状图    bar=Bar()    bar.add_xaxis(attr)    bar.add_yaxis("",v1)    bar.set_global_opts(title_opts=opts.TitleOpts(title=title))    #render()把图形生成一个.html文件    return bar.render()#查询股价低于2元个股数据分布c1="close<2"t1="股价低于2元个股时间分布"plot_data(c1,t1)
f8bcd469275732d5846e2114ec5a7f5d.png

股价低于2元个股时间分布

#查询股价日涨幅超过9.5%个股数据分布:c2="pct_chg>9.5"t2="股价涨幅超过9.5%个股时间分布"plot_data(c2,t2)
9bd1a276c1b5de896f63d8d842dae4e8.png

股价涨幅超过9.5%个股时间分布

#查询股价日跌幅超过-9.5%个股数据分布:c3="pct_chg
24c33569c56c8775a907a9d1345f4ae1.png

股价跌幅超过9.5%个股时间分布

案例二:

#通过tushare的两个API接口调用def get_new_code(date):    #stock_basic 获取当前所有交易股票代码    df0 =pro.stock_basic(exchange='', list_status='L')    #daily_basic 获取每日指标,这个需要300积分才可以调取    df1 =pro.daily_basic(trade_date=date)    #merge合并df0和df1的查询结果    df=pd.merge(df0,df1,on='ts_code')    #剔除2018年以后上市的新股次新股    df=df[df['list_date'].apply(int).values<20180101]    #剔除st股    df=df[-df['name'].apply(lambda x:x.startswith('*ST'))]    #剔除动态市盈率为负的    df=df[df.pe_ttm>0]    #剔除大市值股票,只要流通市值小于10亿    df=df[df.circ_mv<10**5]    codes=df.ts_code.values    return codesprint(get_new_code('20200310'))
79a384f3e92f4f866aab939ff7b92cd0.png

结果

好了,今天两个案例就讲到这里,欢迎大家关注

下次给大家讲解简单的均线的交易策略

希望能和大家一起每天进步一点点。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值