三种方法 python脚本获取出现上舍子线的股票
时间: 2024-03-18 22:42:22 浏览: 56
好的,以下是三种方法来获取出现上升趋势的股票:
方法一:使用tushare库
```python
import tushare as ts
# 获取所有股票的基本信息
stock_info = ts.get_stock_basics()
# 获取当前时间的前一天
date = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime('%Y-%m-%d')
# 遍历所有股票,筛选出出现上升趋势的股票
for code in stock_info.index:
# 获取股票的历史行情数据
df = ts.get_k_data(code, start='2021-01-01', end=date)
# 计算5日和10日均线
ma5 = df['close'].rolling(5).mean()
ma10 = df['close'].rolling(10).mean()
# 判断是否出现上升趋势
if ma5.iloc[-1] > ma10.iloc[-1] and ma5.iloc[-1] > ma5.iloc[-2] and ma10.iloc[-1] > ma10.iloc[-2]:
name = stock_info.loc[code]['name']
print(code, name)
```
方法二:使用pandas库
```python
import pandas as pd
import tushare as ts
# 获取所有股票的基本信息
stock_info = ts.get_stock_basics()
# 获取当前时间的前一天
date = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime('%Y-%m-%d')
# 遍历所有股票,筛选出出现上升趋势的股票
for code in stock_info.index:
# 获取股票的历史行情数据
df = ts.get_k_data(code, start='2021-01-01', end=date)
# 计算5日和10日均线
ma5 = pd.Series(df['close']).rolling(window=5).mean()
ma10 = pd.Series(df['close']).rolling(window=10).mean()
# 判断是否出现上升趋势
if ma5.iloc[-1] > ma10.iloc[-1] and ma5.iloc[-1] > ma5.iloc[-2] and ma10.iloc[-1] > ma10.iloc[-2]:
name = stock_info.loc[code]['name']
print(code, name)
```
方法三:使用numpy库
```python
import numpy as np
import tushare as ts
# 获取所有股票的基本信息
stock_info = ts.get_stock_basics()
# 获取当前时间的前一天
date = (datetime.datetime.now() - datetime.timedelta(days=1)).strftime('%Y-%m-%d')
# 遍历所有股票,筛选出出现上升趋势的股票
for code in stock_info.index:
# 获取股票的历史行情数据
df = ts.get_k_data(code, start='2021-01-01', end=date)
# 计算5日和10日均线
ma5 = np.convolve(df['close'], np.ones(5)/5, mode='valid')
ma10 = np.convolve(df['close'], np.ones(10)/10, mode='valid')
# 判断是否出现上升趋势
if ma5[-1] > ma10[-1] and ma5[-1] > ma5[-2] and ma10[-1] > ma10[-2]:
name = stock_info.loc[code]['name']
print(code, name)
```
以上三种方法都是基于TuShare库获取股票的历史行情数据,然后计算5日和10日均线,最后判断是否出现上升趋势。方法一使用了DataFrame的rolling函数,方法二使用了pandas的Series和rolling函数,方法三使用了numpy的convolve函数。请注意,以上代码仅作为参考,实际使用时需要根据自己的需求进行修改。
阅读全文