在python中有三个if条件语句根据60分钟周期30分钟周期15分钟周期中(MA60>MA120>MA250)均线多头排列选择A股所有股票,如果符合条件就print输出符合条件的股票代码和名称还有此股票所属的同花顺行业以及输出时的时间,这样的话应该怎么编写一个python代码
时间: 2024-05-11 07:17:47 浏览: 100
4、Python量化交易-双均线策略笔记
可以使用tushare库获取A股所有股票的数据,然后按照要求筛选符合条件的股票。具体代码如下:
```python
import tushare as ts
import datetime
# 获取A股所有股票代码和名称
stock_info = ts.get_stock_basics()
# 获取当前时间
now = datetime.datetime.now()
# 遍历所有股票
for code, info in stock_info.iterrows():
# 获取股票历史K线数据
k_data = ts.get_k_data(code)
# 只考虑最近3个小时的数据
recent_data = k_data[-180:]
# 计算MA60, MA120, MA250
ma60 = recent_data.tail(60)['close'].mean()
ma120 = recent_data.tail(120)['close'].mean()
ma250 = recent_data.tail(250)['close'].mean()
# 判断是否符合条件
if ma60 > ma120 and ma120 > ma250:
# 获取股票所属行业
industry = ts.get_industry_classified().set_index('code')
industry_name = industry.loc[code]['c_name']
# 输出符合条件的股票代码、名称、行业和时间
print(code, info['name'], industry_name, now)
```
需要注意的是,以上代码只是一个简单的示例,实际使用中需要考虑更多细节和优化。例如,需要对数据进行缺失值和异常值处理,需要考虑如何处理停牌和涨跌停等情况。另外,以上代码中使用了tushare库获取数据,需要先安装该库并获取相应的token。
阅读全文