问财量化选股策略逻辑
选股逻辑:振幅大于1,近25个交易日有单日涨幅大于等于百分之10,今日增仓占比>5%。
选股逻辑分析
该选股策略综合考虑了价格波动、强劲趋势和增仓情况三个方面,通过选取振幅大于1、近25个交易日有单日涨幅大于等于百分之10,并限制今日增仓占比大于5%的股票。此策略可适用于中期交易。然而该策略选股标准会对增仓情况过于关注,更多关注空头和获利回吐情况。并且缺乏股票基本面的考虑,存在一定的风险。
有何风险?
该选股策略存在以下风险:
- 更多关注未来市场预期和热门板块,会影响对股票本身的基本面评估。
- 更多关注短期获利回吐和空头情况,会造成在涨势仍未改变的情况下,退出太早以及错过一些潜力股。
如何优化?
为了提高该选股逻辑的效率和准确性,我们建议增加以下考虑:
- 在价格波动和增仓情况以外,增加对公司基本面和行业趋势的关注。
- 考虑加入沪深两市震荡指标,如RSI或KD等,防止因短期价格波动引起误判。
- 结合K线形态等技术分析工具的使用。如此一般化的选股方式适合使用较小的市场波动和股票的中期趋势。
最终的选股逻辑
为了更全面地考虑股票的因素,我们增加了以下考虑:
- 振幅大于1。
- 近25个交易日有单日涨幅大于等于10%。
- 今日增仓占比>5%。
- RSI小于70大于30。
- PE小于40且PB小于4。
同花顺指标公式代码参考
C1 = IF(HIGH - LOW > ATR(CLOSE, 20), 1, 0);
C2 = IF(ABS(HIGH/REF(CLOSE, 1)-1)>0.1, 1, 0);
C3 = IF((VOL - REF(VOL, 1))/REF(VOL, 1)>0.05, 1, 0);
C4 = IF(RSI(CLOSE, 20) > 30 AND RSI(CLOSE, 20) < 70, 1, 0);
C5 = IF(PE() < 40 AND PB() < 4, 1, 0);
SELECTOR = C1*C2*C3*C4*C5;
RESULT = SORT_RANK(SELECTOR, ASCEND(SEARCH_RANK()));
python代码参考
import pandas_ta as ta
df = pd.read_csv('your_data.csv', index_col='date')
C1 = np.where(df['high'] - df['low'] > ta.atr(), 1, 0)
C2 = np.where(np.abs(df['high'] / df['close'].shift(1) - 1) > 0.1, 1, 0)
C3 = np.where((df['volume'] - df['volume'].shift(1)) / df['volume'].shift(1) > 0.05, 1, 0)
C4 = np.where(ta.rsi(df['close'], length=20) > 30, 1, 0) * \
np.where(ta.rsi(df['close'], length=20) < 70, 1, 0)
C5 = np.where(ta.PE() < 40, 1, 0) * np.where(ta.PB() < 4, 1, 0)
selector = C1 * C2 * C3 * C4 * C5
result = np.argsort(np.argsort(selector))
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
