Python+Tushare,自制A股筛选器

Python+Tushare,自制A股筛选器

互联网时代,金融行业的海量的数据不再依靠人工来分析,统计,越来越多的数据处理工作被大数据,AI,机器学习取代,出现了量化交易、程序化交易、量化投资。散户面对海量的数据,掌握的信息往往是沧海一粟,难以在数据的海洋中快速发现机会。

本文介绍利用Python和免费的Tushare金融大数据对A股股票的信息进行筛选,快速准确地找到符合自己理想的股票。

1. Tushare简介

Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集清洗加工数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据。

使用前提

  • 安装Python(建议使用Anaconda集成python开发环境)
  • 安装pandas
pip install panda
  • 安装tushare
pip install tushare
  • 注册tushare社区用户(https://tushare.pro/register?reg=416966)
  • 获取tushare token(具体操作请参考tushare社区说明,或留言)

Python+Tushare,自制A股筛选器

调用tushare数据

  • 导入tushare 并设置token
import tushare as ts
ts.set_token('your token here')  #token的获取方法参考tushare社区说明,或留言
pro = ts.pro_api()

或者

import tushare as ts
pro = ts.pro_api('your token')
  • 数据调取
df = pro.trade_cal(exchange='', start_date='20180901', end_date='20181001', fields='exchange,cal_date,is_open,pretrade_date', is_open='0')

调取结果

Python+Tushare,自制A股筛选器

股票筛选

  • 示例1(筛选当前股价是今年最高点70%以下的股票)
#查询结果存储list
securityNeeded=[]
#查询当前所有正常上市交易的股票列表
data = pro.query('stock_basic', exchange='', list_status='L', fields='ts_code,symbol,name,area,industry')
#遍历所有股票,将符合条件的存入SecurityNeeded
i=1
for code in data['ts_code']:
    print('{0}/{1}\t{2}:'.format(i,len(data),code),end='')
    i+=1
    df=ts.pro_bar(ts_code=code,adj='qfq',start_date='20210101',end_date='20210630',limit=10)
    if (df.loc[0,'close']/df['pre_close'].max())<0.7:
        print('符合要求')
        securityNeeded.append(code)
    else:
        print('不符合要求')
print(securityNeeded)
  • 示例2(筛选近10个交易日内,涨幅超过20%的股票)
#查询结果存储list
securityNeeded=[]
#查询当前所有正常上市交易的股票列表
data = pro.query('stock_basic', exchange='', list_status='L', fields='ts_code,symbol,name,area,industry')
#遍历所有股票,将符合条件的存入SecurityNeeded
i=1
for code in data['ts_code']:
    print('{0}/{1}\t{2}:'.format(i,len(data),code),end='')
    i+=1
    df=ts.pro_bar(ts_code=code,adj='qfq',start_date='20210101',end_date='20210630',limit=10)
    if df.loc[0,'close']/df.loc[9,'pre_close'].max()>1.2:
        print('符合要求')
        securityNeeded.append(code)
    else:
        print('不符合要求')
print(securityNeeded)

同学们还可以加入更多的条件,对股票数据进行多方位筛选。

筛选数据仅对股票投资形成参考,不能作为股票的交易依据。股市有风险,投资需谨慎。

如果你对金融量化或Python感兴趣,请关注我,持续带给您更多工具与信息。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络安全那些事

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值