问财量化选股策略逻辑
选股逻辑:振幅大于1,反包,七连阴。
选股逻辑分析
该选股逻辑主要考虑了股票价格波动、市场情绪和技术面因素。选股条件比较苛刻,从而可以避免一些噪声因素的影响。但如果市场趋势比较明朗时,该选股逻辑可能会错失一些好的投资机会。
有何风险?
该选股逻辑不考虑市场情况、政策变化等因素可能会影响股票的表现,而这些因素可能会引发股票行情的变化,从而导致选股失误。同时,过度追求连阴的股票,容易被机构利用而引发反击性行情。
如何优化?
可以增加其他技术指标,例如均线、乖离率、量比等,有利于更全面地捕捉股票价格走势。同时,应该增加对基础面和市场面的考虑,并可以采用机器学习等方法进行优化,提高选股效率和准确性。
最终的选股逻辑
基于以上分析,我们提出改进后的股票筛选逻辑:
- 振幅大于1;
- 反包出现;
- 近期七连阴;
- 均线多头排列;
- 量比大于1;
- 乖离率低于上限。
同花顺指标公式代码参考
以下是通达信指标的公式代码示例:
F01:HIGH / LOW - 1 > 0.01; // 振幅大于1
F02:NOT(SIGN(CLOSE-REF(CLOSE, 1)) == SIGN(REF(CLOSE, 1) - REF(CLOSE, 2))); // 反包
F03:REF(OPEN, 1) > REF(CLOSE, 1) AND REF(CLOSE, 1) > REF(CLOSE, 2) AND REF(CLOSE, 2) > REF(CLOSE, 3) AND REF(CLOSE, 3) > REF(CLOSE, 4) AND REF(CLOSE, 4) > REF(CLOSE, 5) AND REF(CLOSE, 5) > REF(CLOSE, 6) AND REF(CLOSE, 6) > REF(CLOSE, 7); // 七连阴
F04:CROSS(MA(CLOSE,5),MA(CLOSE,10)) AND CROSS(MA(CLOSE,10),MA(CLOSE,20)); // 均线多头排列
F05:(V / MA(V,5)) > 1; // 量比大于1
F06:(CLOSE - MA(CLOSE,60)) / MA(CLOSE,60) < 0.10; // 乖离率低于上限
FILTER:F01 AND F02 AND F03 AND F04 AND F05 AND F06;
SYMBOL_SORT("热点板块", SORT_DESCEND);
SELECT(IF(F06, 1, 0), "诊股"); // 输出文本信息:选股
python代码参考
以下是用 Python 实现该策略的选股逻辑:
def stock_filter(dv, symbol):
# 获取股票价格和成交量数据
high = dv.get_ts("high", symbol=symbol)
low = dv.get_ts("low", symbol=symbol)
close = dv.get_ts("close", symbol=symbol)
volume = dv.get_ts("volume", symbol=symbol)
# 计算其他指标
selected_stocks = (high / low - 1 > 0.01) & (Ta('CDL2CROWS', 0, open, high, low, close) == 100) & (close / REF(close, 1) < 1) & (CROSS(MA(close,5),MA(close,10)) & CROSS(MA(close,10),MA(close,20))) & (volume / MA(volume, 5) > 1) & ((close - MA(close, 60)) / MA(close, 60) < 0.10)
selected_stocks = selected_stocks[selected_stocks].sort_values(by="heat_rank", ascending=False)
return selected_stocks.index.tolist()
在 Python 中实现整个选股逻辑,需要先获取相关的股票数据,如行情、成交量等数据,并与选股条件进行比对,从而得到选股结果。在本例中,先用 TA-Lib 库计算反包指标和均线指标,再用其他指标计算选股结果,最后返回筛选结果。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
