问财量化选股策略逻辑
选股逻辑:振幅大于1%, 北京A股除外,15分钟周期MACD绿柱变短。
选股逻辑分析
该选股策略以振幅、地域和技术指标作为筛选条件,振幅是选股的关键条件,地域风险受限,技术指标则是判断股票的投资领域。该选股策略旨在发掘有较大涨势潜力的股票。
有何风险?
该选股逻辑可能存在以下风险:
- 忽略公司基本面、行业发展趋势和财务状况等因素,可能导致错误判断股票的投资价值;
- 过于依赖技术指标,在一些特殊情况下容易产生错误信号,导致股票选择错误。
如何优化?
为了改进该选股策略,可以考虑以下方面:
- 引入公司财务指标、行业趋势和管理能力等多因素分析,以提高选股的综合性和判断力;
- 添加其他技术指标以及基本面等多方位数据,以提高选股策略精度和可靠性;
- 基于机器学习算法建立预测模型,为选股提供有效参考;
- 在技术指标不足以判断股票趋势时,加入其他手段辅助判断。
最终的选股逻辑
经过改进后的选股逻辑如下:
- 振幅大于1%,北京A股除外;
- 选择15分钟周期MACD绿柱变短的股票;
- 引入公司财务指标、行业趋势和管理能力等多因素分析,以提高选股的综合性和判断力;
- 增加风控措施,通过设置止盈止损限制风险。
同花顺指标公式代码参考
选股逻辑的同花顺指标公式如下:
振幅:ABS((HIGH-LOW)/REF(CLOSE,1))>0.01;
MACD:(DIFF<DEA) AND (REF(DIFF,1)>REF(DEA,1)) AND (DIFF<REF(DIFF,1));
非北京A股:(AREA!='北京') AND (BOARD!='创业板') AND (BOARD!='科创板');
选股公式:振幅 AND MACD AND 非北京A股;
python代码参考
选股逻辑的python代码如下:
def momentum_picker(context):
# 振幅大于1%,北京A股除外,绿柱变短
narrow_stocks = context.narrow_stocks[((context.narrow_stocks.high / context.narrow_stocks.low) - 1) > 0.01]
exclude_bj_stocks = narrow_stocks[(narrow_stocks.area != '北京') & (narrow_stocks.board != '创业板') & (narrow_stocks.board != '科创板')]
macd_dif, macd_dea, macd_bar = ta.MACD(exclude_bj_stocks.close, fastperiod=12, slowperiod=26, signalperiod=9)
green_macd = macd_bar > 0 # 绿柱
macd_shorten = (macd_bar.diff() < 0).rolling(26).sum().fillna(0) > 0 # 绿柱变短
rule_1 = (green_macd & macd_shorten)
selected = exclude_bj_stocks[rule_1]
# 添加风控措施
selected = selected[selected.pe_ratio > 0] # 去掉特别糟糕的
selected = selected[selected.pb_ratio > 0]
val_score = selected.pe_ratio.rank(pct=True) + selected.pb_ratio.rank(pct=True)
selected = selected[(selected.pe_ratio < selected.pe_ratio.quantile(rate)) &
(selected.pb_ratio < selected.pb_ratio.quantile(rate)) & (val_score >= 60)]
return selected.index.tolist()
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
