问财量化选股策略逻辑
选股逻辑:振幅大于1,rsi小于65,今日上涨>1主板。
选股逻辑分析
该选股逻辑考虑了股票的价格波动情况、超买超卖情况以及市场涨跌情况,较好地结合了技术面和市场面。振幅和rsi指标用于评估股票的价格波动情况和超买超卖程度,今日上涨主板则代表了市场的整体情况。通过综合以上三个指标进行筛选,可以更好地找到具有较好涨势和技术面支撑的个股。
有何风险?
选股逻辑过于依赖技术面的指标,而忽略了公司基本面的因素,如公司财务状况、行业情况等。同时,在选择参考时间段和计算方式时,也可能存在数据突变或者数据波动的情况,会对选股策略造成一定的影响。
如何优化?
可考虑在该选股逻辑基础上,引入更多的基本面指标如市盈率、市净率等进行筛选,同时通过筛选行业龙头或优质公司等方式,更加全面地考虑股票的风险和收益特征。在选择参考时间段和计算方式时,也需要避免过短或过长的时间段和过度平滑的计算方式,增加筛选时段的鲁棒性和健壮性。
最终的选股逻辑
选股逻辑为:振幅大于1,rsi小于65,今日上涨>1主板。同时,还要考虑其他技术指标如KDJ、MACD等,以及其他基本面指标如市盈率、市净率等。
同花顺指标公式代码参考
振幅:(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
日涨幅比较:(CLOSE - REF(CLOSE,1)) / REF(CLOSE,1) * 100
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
# 日涨幅
daily_return = (close - ref(close, 1)) / ref(close, 1) * 100
# 选取符合条件的股票
selected_stocks = selector(amplitude > 1, rsi < 65, daily_return > 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亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。