问财量化选股策略逻辑
选股逻辑:元宇宙行业、量比大于1.5、量比小于6、前日实际换手率大于等于3%且小于等于28%。
选股逻辑分析
在已有的元宇宙行业、量比等指标的基础上,加入了前日实际换手率的条件,进一步筛选了具有一定市场活力和业绩表现的标的股票。
有何风险?
该选股逻辑仍然忽略了标的股票的基本面因素,如盈利状况、估值等因素,存在一定的盲目性。同时,该选股逻辑所依据的换手率指标可能受到市场情绪和流动性的影响,具有一定的感性成分。
如何优化?
可以加入其他基本面因素指标的考虑,如市盈率、市净率等,以及加入技术面指标的考虑,如KDJ、MACD等,提高选股的准确性。同时,应根据市场情况和标的股票的实际情况对选股策略进行适时调整,尽可能减小感性因素的影响。
最终的选股逻辑
选股逻辑:元宇宙行业、量比大于1.5、量比小于6、前日实际换手率大于等于3%且小于等于28%、60日均线大于120日均线。
同花顺指标公式代码参考
REF1 := REF(CLOSE,1);
AVG120 := MA(CLOSE,120);
AVG60 := MA(CLOSE,60);
COND1 := VOL_RATIO > 1.5;
COND2 := VOL_RATIO < 6;
COND3 := (TURNOVER > 0.03) AND (TURNOVER < 0.28);
COND4 := CLOSE > AVG120 AND REF1 < AVG120;
SELECTED := COND1 AND COND2 AND COND3 AND COND4;
python代码参考
import tushare as ts
gg_stocks = ts.get_zz500s()
gg_stocks = gg_stocks[gg_stocks['industry'] == '元宇宙']
selected_stocks = []
for stock in gg_stocks['code']:
# 判断股票是否停牌等
...
# 判断量比和前日实际换手率的条件
if stock.startswith(('688', '900')):
continue
if ts.get_realtime_quotes(stock)['pre_close'].iloc[0] == '0.00':
continue
turnover_data = ts.get_k_data(stock, start='20210101', end=ts.get_today()['date'], ktype='D')['turnover']
if (turnover_data.iloc[-2] / 100) < 0.03 or (turnover_data.iloc[-2] / 100) > 0.28:
continue
price_data = ts.get_k_data(stock, start='20200101', end=ts.get_today()['date'], ktype='D')
ma_120 = price_data['close'].rolling(window=120).mean().iloc[-1]
ma_60 = price_data['close'].rolling(window=60).mean().iloc[-1]
if ts.inst_detail(stock).iloc[0]['bamount'] <= ts.inst_detail(stock).iloc[0]['samount'] or price_data['close'].iloc[-2] < ma_120 or ma_60 < ma_120:
continue
# 判断其他因素,如PE、PB等指标
...
display_name = ts.get_stock_basics().loc[stock]['name']
selected_stocks.append((stock, display_name, ts.get_realtime_quotes(stock)['price'].iloc[0]))
# 输出名称
selected_stocks = [x[1] for x in selected_stocks]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


