问财量化选股策略逻辑
选股逻辑:振幅大于1,rsi小于65,买一量>卖一量。
选股逻辑分析
该选股逻辑主要考虑了技术指标和市场买卖力量的影响。振幅反映了股票价格的波动,rsi是一种相对强弱指标,可以发现超买超卖的情况。同时筛选买卖量达成平衡或买入量较大的个股,可以更好地挖掘市场的热点和资金流向。
有何风险?
由于市场行情波动和交易量变化,买卖量情况可能经常变化,选股策略也会出现较大的不确定性。此外,该选股逻辑也没有考虑公司基本面因素的影响,仅仅依赖于技术指标和市场数据进行选股,存在选股品质不够高等风险。
如何优化?
可考虑在该选股逻辑基础上,引入更多的行情数据如成交金额、资金流向等进行筛选,同时应重视公司基本面因素的影响,如财务指标(营收、净利润、资产负债率等)和公司治理情况(高管履历、业绩考核等)等,提高选股策略的有效性和盈利能力。
最终的选股逻辑
选股逻辑为:振幅大于1,rsi小于65,考虑市场买卖力量(买入量大于卖出量)。同时,也要综合考虑公司基本面情况,如财务指标、行业前景等。
同花顺指标公式代码参考
振幅:(HIGH-LOW)/REF(CLOSE,1)*100
RSI:SMA(MAX(CLOSE-REF(CLOSE,1),0),N,1)/SMA(ABS(CLOSE-REF(CLOSE,1)),N,1)*100
买卖量筛选:BUYVOL > SELLVOL or BUYVOL > SELLVOL * 1.5
Python代码参考
# 振幅
amplitude = (high - low) / ref(close, 1) * 100
# RSI
up = max(close - ref(close, 1), 0)
down = abs(close - ref(close, 1))
rs = sma(up, N, 1) / sma(down, N, 1)
rsi = rs / (1 + rs) * 100
# 买卖量比值
buy_sell_ratio = BUYVOL / SELLVOL
# 选取符合条件的股票
selected_stocks = selector(amplitude > 1, rsi < 65, buy_sell_ratio > 1)
# 筛选出股票的相对强度并选取强度最强的前20%
rps = (close - sma(close, N)) / sma(close, N)
top20 = int(len(context.selected_stocks) * 0.2)
sorted_stocks = sorted(selected_stocks, key=lambda s: rps.loc[s].iloc[-1], reverse=True)
selected_stocks = sorted_stocks[:top20]
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。