问财量化选股策略逻辑
选股逻辑:振幅大于1,底部抬高,收益>0。
选股逻辑分析
该选股策略同样考虑了技术面和基本面的指标,同时也加入了对股票盈利能力的关注。振幅大于1旨在排除波动性过小的股票,底部抬高则是关注价格底部构筑逐渐高起的迹象,收益>0则是筛选盈利能力好的股票。这些指标综合考虑,选取的股票更有可能具有较好的投资机会和较高的回报。
有何风险?
与上一个选股逻辑相比,该策略考虑了收益情况,但是这里并没有界定时间范围,可能会出现一些短期收益较高但长期收益较低的股票。另外,这里的收益指标没有进行归一化处理,可能会受到股票本身价格水平的影响。因此,还需要综合考虑其他基本面指标、技术指标等因素,并对股票自身的特征进行分析,才能准确找到投资机会。
如何优化?
除了上述风险提示,可以进一步加入其他基本面指标和技术指标,如市盈率、市净率、均线系统、MACD等。对于收益指标,可以采用更加科学合理的收益率计算方法,如年化收益率、收益率波动率等指标。另外,可以加入一些风控指标,如股价止损、市场情绪指标等,避免因市场变化而产生较大的风险。
最终的选股逻辑
基于以上分析,完善的选股逻辑如下:
1.振幅大于1;
2.底部抬高;
3.较长时间段内收益率大于0;
4.加入市盈率、市净率、均线系统、MACD等基本面指标和技术指标;
5.采用年化收益率、收益率波动率等更加科学合理的收益率指标;
6.加入一定的风控指标,如股价止损、市场情绪指标等。
同花顺指标公式代码参考
以下是同花顺实现该选股策略的指标公式代码:
C1 = AMP() > 1;
C2 = BOTTOM(HIGH, C1) > BOTTOM(HIGH, C1 + 1);
C3 = ((CLOSE / REF(CLOSE, 240)) - 1) > 0;
SELECTOR = C1 AND C2 AND C3;
RESULT = SELECTOR;
python代码参考
以下是Python实现该选股策略的部分代码:
# 筛选符合条件的股票
selected_stocks = []
for stock in stocks:
# 获取该股票的历史K线数据
df = get_price(stock, start_date=start_date, end_date=end_date, frequency='daily', fields=['open', 'high', 'low', 'close', 'volume'], skip_paused=True, fq='pre')
# 计算收益率,判断是否符合选股逻辑
ret = (df['close'].iloc[-1] / df['close'].iloc[0]) - 1
c1 = df['high'].std() > 1
c2 = BOTTOM(df['high'], 2) > BOTTOM(df['high'], 3) > BOTTOM(df['high'], 4)
c3 = ret > 0
# 选取符合条件的股票,加入结果列表中
if c1 and c2 and c3:
selected_stocks.append(stock)
return selected_stocks
以上代码仅供参考,具体实现还需要根据自身需求进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
