问财量化选股策略逻辑
选择振幅大于1、股票均价站在五日均线之上、非科创的股票。
选股逻辑分析
振幅大于1表示股票价格较为波动,在波动中可能存在价格上涨的机会,同时股票均价站在五日均线之上也说明股价较为稳定;非科创则限制股票的范围,有利于减少不必要的风险。
有何风险?
振幅大的股票本身可能存在风险,同时非科创股票也不一定都是优质的,需要注意选择。
如何优化?
可以加入其他指标来筛选出更优质的股票,例如可以结合市值、ROE等因素进行综合分析,做到更加全面的选股分析。
最终的选股逻辑
选取振幅大于1、股票均价站在五日均线之上、非科创的股票。
同花顺指标公式代码参考
// 挑选振幅大于1的股票
amplitude = (HIGH - LOW) / REF(CLOSE,1)
amplitude_bool = amplitude >= 1
// 挑选股票均价站在5日均线之上的股票
ma5 = MA(CLOSE, 5)
price_over_ma5 = CLOSE > ma5
// 挑选非科创股票
non_cy_bool = INDUSTRY != 'C银行' AND INDUSTRY != 'C非银'
// 综合条件挑选出合适的股票
result = amplitude_bool AND price_over_ma5 AND non_cy_bool
// 输出筛选结果
result
python代码参考
import tushare as ts
# 挑选振幅大于1的股票
today_data = ts.get_today_all()
amplitude = (today_data['high'] - today_data['low']) / today_data['pre_close']
amplitude_bool = amplitude >= 0.01
# 挑选股票均价站在5日均线之上的股票
hist_data = ts.get_hist_data('600519')
ma5 = hist_data['close'].rolling(window=5).mean()
price_over_ma5 = hist_data['close'].iloc[-1] > ma5.iloc[-1]
# 挑选非科创股票
industry_data = ts.get_stock_basics()
non_cy_bool = ~industry_data['industry'].str.startswith('银行') & ~industry_data['industry'].str.startswith('非银行')
# 综合条件挑选出合适的股票
final_result = today_data[amplitude_bool & price_over_ma5 & non_cy_bool]
# 输出筛选结果
print(final_result)
注:以上代码仅供参考,具体实现还需要根据实际情况进行适度修改。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
