问财量化选股策略逻辑
- 至少5根均线重合的股票
- 60开头的股票
- 2021年营收/2018年营收大于1.1
选股逻辑分析
- 第一条均线为5日均线,表示最近5天的平均价格。
- 第二条均线为10日均线,表示最近10天的平均价格。
- 第三条均线为20日均线,表示最近20天的平均价格。
- 第四条均线为30日均线,表示最近30天的平均价格。
- 第五条均线为60日均线,表示最近60天的平均价格。
当至少5条均线重合时,意味着价格在短期内经历了较为平缓的波动,可能是短期底部或顶部的信号。同时,60日均线作为中期趋势的参考线,也能够帮助判断股票的长期趋势。
有何风险?
- 该策略只考虑了短期趋势和中期趋势,忽略了长期趋势的影响。
- 如果股票价格在短期内经历剧烈波动,可能导致均线重合的情况出现,但并不代表股票价格将出现反转。
- 该策略可能无法准确预测股票价格的走势,因为股票价格受到多种因素的影响,包括市场情绪、公司业绩、政策环境等。
如何优化?
- 可以考虑加入更多均线作为参考,例如90日均线、120日均线等,以更好地反映股票价格的长期趋势。
- 可以考虑加入其他指标作为参考,例如MACD、RSI等,以更好地判断股票价格的走势。
最终的选股逻辑
- 选取60日均线在60日均线以下的股票。
- 选取5日、10日、20日、30日、60日均线至少5条均线重合的股票。
- 选取2021年营收/2018年营收大于1.1的股票。
python代码参考:
import talib
def get_stock_data(symbol):
# 获取股票数据
data = yf.download(symbol, start='2021-01-01', end='2021-12-31')
# 计算收盘价的移动平均线
ma5 = talib.MA(data['Close'], timeperiod=5)
ma10 = talib.MA(data['Close'], timeperiod=10)
ma20 = talib.MA(data['Close'], timeperiod=20)
ma30 = talib.MA(data['Close'], timeperiod=30)
ma60 = talib.MA(data['Close'], timeperiod=60)
# 计算60日均线与60日均线下方的股票
stocks = []
for i in range(len(data)):
if ma60[i] < ma60[-1]:
stocks.append(data['Close'][i])
# 计算至少5条均线重合的股票
ma5 ma10 ma20 ma30 ma60
# 计算2021年营收/2018年营收大于1.1的股票
stocks = []
for i in range(len(data)):
if data['Revenue'][i] / data['Revenue'][0] > 1.1:
stocks.append(data['Close'][i])
return stocks
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


