问财量化选股策略逻辑
选股逻辑为RSI小于65、流通市值50亿-100亿、深证主板中市盈率0-29.01、市净率0-3.11的股票,选取估值合理、走势良好的股票。
选股逻辑分析
该选股策略在选取股票时,同时考虑了技术面因素、个股基本面因素和估值因素。选取符合RSI小于65、流通市值50亿-100亿、深证主板中市盈率0-29.01、市净率0-3.11的股票,涵盖了技术面、基本面和估值面因素,是一种技术面、基本面和估值综合考虑的选股策略。
有何风险?
该选股策略仍存在一定风险。在筛选深证主板市盈率和市净率时,可能会受到行业影响、财务造假等因素的影响,导致选取的股票不够准确。另外,单一的RSI指标可能掩盖了其他更为重要的技术面因素,也容易出现选错股票的情况。
如何优化?
可以在估值因素上加入更多关键的指标,如PEG、股息率等指标,以加强对个股质量的控制,减少风险的同时,进一步增加估值质量的判断。同时,在技术面上也可以加入更多技术指标来辅助判断个股的走势,以实现更为准确的选股。
最终的选股逻辑
选股逻辑为RSI小于65、流通市值50亿-100亿、深证主板中市盈率0-29.01、市净率0-3.11的股票。
同花顺指标公式代码参考
RSI指标公式
LC:=REF(CLOSE,1);
AA:=SMA(MAX(CLOSE-LC,0),N,1)/SMA(ABS(CLOSE-LC),N,1)*100;
RSI:EMA(AA,M);
python代码参考
# 计算RSI指标
def calc_rsi(close, n):
lc = close.shift(1)
aa = pd.Series(np.nan,index=close.index)
aa[n-1:] = close.sub(lc).clip(lower=0).rolling(n).mean() / close.sub(lc).abs().rolling(n).mean() * 100
rsi = aa.ewm(com=1.0/14, adjust=False).mean()
return rsi
# 选股函数
def stock_picking(data):
# 计算RSI指标
rsi = calc_rsi(data['close'], 14)
# 根据估值指标、市值和股价选取股票
cond = (data['negotiableMV'] >= 5e10) & (data['negotiableMV'] <= 1e11) & \
(data['peRatio'] <= 29.01) & (data['pbRatio'] <= 3.11) & (rsi < 65)
stock_list = []
if sum(cond) >= 5:
selected_data = data[cond]
selected_data = selected_data.sort_values(by='changePct', ascending=False)
for i in range(5):
stock_list.append(selected_data.index[i])
return stock_list
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


