问财量化选股策略逻辑
本选股策略在日线上选取以下股票:振幅大于1、500日内至少2次涨停和PE大于0。
选股逻辑分析
本选股策略要求股票的振幅大于1和500日内至少2次涨停反映出了股票的短期强势,而PE大于0则代表了标的股票的基本面未被市场过度消极看待。这三项指标结合在一起选股,通过短期强势和基本面的综合考量来减少投资风险。
有何风险?
由于PE值只是对股票的静态估值,不能完全反映公司的盈利情况,同时基础数据的准确性也存在一定的不确定性。另外,该选股策略仍然是短期炒作,对于中长期的投资来说,缺少更多的基本面考量。
如何优化?
可以将PE指标分别设置上限和下限值,加强对公司基本面的筛选。同时,可以结合其他指标来综合考虑股票的估值和成长性等因素,进一步提高选择的准确度。
最终的选股逻辑
选取振幅大于1、500日内至少2次涨停,PE大于0的标的股票。
同花顺指标公式代码参考
振幅大于1:
VAR2:=(2*CLOSE-LOW-HIGH)/(HIGH-LOW)100;
VAR3:=MA(VAR2,M);
VAR4:=1.5STD(VAR2,M);
VAR5:=MA(VAR4,N);
STICKLINE(VAR2>VAR3+VAR5 AND VOLUME>1,VAR2,0,0,BLUE);
其中M和N分别代表周期数,可根据实际需要值动态调整。
500日内至少2次涨停:
REF(CLOSE>REF(HIGH, 1), K) AND REF(CLOSE>REF(HIGH, 2), K)>0
其中K代表时间间隔,即500日。
PE大于0:
PE > 0
python代码参考
import tushare as ts
selected_stocks = []
for code in ts.get_stock_basics().index:
#获取股票数据
daily_data = ts.get_hist_data(code, start='20180101')
if daily_data is None or len(daily_data) < 500:
continue
if (daily_data.high - daily_data.low).mean() / daily_data.close.mean() < 0.01:
continue
if (daily_data.high / daily_data.low.shift(1) > 1.099).rolling(500).sum() < 2:
continue
if daily_data.pe.iloc[-1] <= 0:
continue
#加入选中的股票
selected_stocks.append(code)
#输出选中的股票
print(selected_stocks)
以上代码仅供参考,投资者可以根据自身需求和市场情况进行调整和验证。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
