请你作为一个python量化交易师,利用tushare的pro版本,写出一个关于股票筛选的python代码
时间: 2024-05-13 17:20:47 浏览: 9
以下是一个基本的股票筛选代码示例,使用tushare的pro接口获取股票数据和财务数据。在这个示例中,我们将筛选出符合以下条件的股票:
1. 市值在100亿以上;
2. 过去5年内连续5年净利润增长率均大于10%;
3. 过去5年内每年的ROE均大于15%。
代码如下:
```python
import tushare as ts
# 初始化tushare pro接口
pro = ts.pro_api('YOUR_TOKEN')
# 获取所有A股的股票代码
stocks = pro.stock_basic(exchange='', list_status='L', fields='ts_code')
# 筛选市值在100亿以上的股票
stocks = stocks[stocks['total_mv'] > 100000]
# 筛选过去5年内连续5年净利润增长率均大于10%的股票
for stock in stocks['ts_code']:
# 获取过去5年的财务数据
fin_data = pro.income(ts_code=stock, start_date='20160101', end_date='20201231')
if len(fin_data) < 5:
continue
growth_rates = fin_data['nprg'].tail(5).tolist()
if all(rate > 10 for rate in growth_rates):
# 筛选过去5年内每年的ROE均大于15%的股票
fin_data = pro.fina_indicator(ts_code=stock, start_date='20160101', end_date='20201231')
if len(fin_data) < 5:
continue
roe_rates = fin_data['roe'].tail(5).tolist()
if all(rate > 15 for rate in roe_rates):
print(stock)
```
需要注意的是,这只是一个基本的示例,实际的筛选条件可能更加复杂,需要根据具体的需求进行调整。同时,股票筛选只是量化交易中的一部分,还需要进行风险控制、资金管理等方面的考虑。