从tushare获取任意股票数据,判断是否为连板,或者间隔一天连板
时间: 2023-12-08 21:06:58 浏览: 113
好的,我可以为您解答这个问题。首先,您需要从tushare获取股票数据,具体步骤如下:
1. 在tushare官网上注册账号,获取token。
2. 安装tushare库:`pip install tushare`。
3. 导入tushare库:`import tushare as ts`。
4. 使用token连接tushare:`ts.set_token('your_token')`。
5. 初始化pro接口:`pro = ts.pro_api()`。
接下来,您可以使用tushare提供的接口获取股票数据,例如:
```python
# 获取股票行情数据
df = pro.daily(ts_code='000001.SZ', start_date='20220101', end_date='20220131')
```
其中,`ts_code`是股票代码,`start_date`和`end_date`是数据的时间范围。
接下来,您可以根据股票数据判断是否为连板,或者间隔一天连板。具体判断方法如下:
```python
# 判断是否为连板
def is_limit_up(days):
return all(day['pct_chg'] > 9.9 for day in days)
# 判断是否为间隔一天连板
def is_limit_up_with_one_day_gap(days):
return len(days) == 3 and days[0]['pct_chg'] > 9.9 and days[1]['pct_chg'] > 9.9 and days[2]['pct_chg'] > 9.9 and days[0]['trade_date'] == days[2]['trade_date']
# 获取股票行情数据
df = pro.daily(ts_code='000001.SZ', start_date='20220101', end_date='20220131')
# 按日期分组
groups = df.groupby('trade_date')
# 判断每一天是否为连板或者间隔一天连板
for date, group in groups:
if len(group) == 3 and is_limit_up_with_one_day_gap(group.to_dict(orient='records')):
print(f'{date} 间隔一天连板')
elif is_limit_up(group.to_dict(orient='records')):
print(f'{date} 连板')
```
以上代码会输出每一天是否为连板或者间隔一天连板。注意,以上判断方法只是简单的示例,您可以根据实际需要修改判断条件。
阅读全文