如何在tushare网站获取某只股票开盘价和收盘价数据后,当前收盘价大于过去20个交易日中的最高价
时间: 2024-05-03 16:17:48 浏览: 245
可以按照下面的步骤来实现:
1. 首先,你需要在tushare网站上注册账号,并获取到你的token。
2. 使用tushare库中的get_hist_data()函数获取股票的历史数据。例如,要获取股票代码为'600519'的茅台股票过去20个交易日的开盘价和收盘价数据,可以使用以下代码:
```python
import tushare as ts
# 设置token
ts.set_token('你的token')
# 获取历史数据
df = ts.get_hist_data('600519', ktype='D')
df = df.iloc[:20] # 取最近20个交易日的数据
df = df[['open', 'close']]
```
3. 使用pandas库中的rolling()和max()函数计算过去20个交易日的最高价。例如:
```python
df['max'] = df['close'].rolling(window=20).max()
```
4. 最后,筛选出当前收盘价大于过去20个交易日中的最高价的数据行。例如:
```python
df = df[df['close'] > df['max']]
```
这样,就可以得到当前收盘价大于过去20个交易日中的最高价的股票数据了。
相关问题
使用tushare的pro版本获取股票数据,包括开盘价、收盘价、最高价、最低价、成交量等数据,筛选合适买入的股票
以下是一个获取股票数据并筛选合适买入股票的示例代码:
```python
import tushare as ts
# 获取股票数据
pro = ts.pro_api("YOUR_TOKEN")
data = pro.daily(ts_code='000001.SZ', start_date='20200101', end_date='20211231')
# 筛选合适买入的股票
filtered_data = data[(data.open < data.close) & (data.high > data.close) & (data.low < data.open)]
# 输出符合条件的股票代码和日期
for index, row in filtered_data.iterrows():
print(row['ts_code'], row['trade_date'])
```
上述代码中,首先使用tushare的pro版本获取了股票代码为000001.SZ的股票在2020年1月1日到2021年12月31日之间的每日交易数据。然后,使用pandas库对数据进行筛选,只保留开盘价小于收盘价、最高价大于收盘价、最低价小于开盘价的数据。最后,通过循环输出符合条件的股票代码和日期。
当然,上述示例代码只是一个简单的示例,实际筛选股票需要考虑更多的因素,如财务指标、行业分析等。
使用python语言通过tushare接口获取华阳股份的交易日期、开盘价、收盘价、市值、转手率、成交量、最高价、最低价、周K线、月K线
以下是使用Python代码通过tushare接口获取华阳股份的交易日期、开盘价、收盘价、市值、转手率、成交量、最高价、最低价、周K线、月K线的示例:
```python
import tushare as ts
# 设置tushare的token
ts.set_token('your_token_here')
# 初始化pro接口
pro = ts.pro_api()
# 获取华阳股份的股票代码
stock_code = '600348.SH'
# 获取华阳股份的交易日期、开盘价、收盘价、市值、转手率、成交量、最高价、最低价等数据
df = pro.daily(ts_code=stock_code, start_date='20100101')
# 将日期列转换为datetime格式
df['trade_date'] = pd.to_datetime(df['trade_date'])
# 获取周K线数据
df_weekly = df.resample('W-MON', on='trade_date').agg({
'open': 'first',
'high': 'max',
'low': 'min',
'close': 'last',
'vol': 'sum'
})
# 获取月K线数据
df_monthly = df.resample('M', on='trade_date').agg({
'open': 'first',
'high': 'max',
'low': 'min',
'close': 'last',
'vol': 'sum'
})
# 打印数据
print('每日交易数据:')
print(df.head())
print('周K线数据:')
print(df_weekly.tail())
print('月K线数据:')
print(df_monthly.tail())
```
注意:在上述代码中,需要将`your_token_here`替换为自己的tushare token。此外,代码中使用了pandas库的`resample`函数来实现周K线和月K线的计算。
阅读全文