问财量化选股策略逻辑
本选股策略在周线上选取振幅大于1、500日内至少2次涨停、MA5上穿MA10的标的股票。
选股逻辑分析
本选股策略在大盘震荡市场时,选取股票的主要条件是振幅大和近期多次涨停,这意味着这些股票在市场波动时变化范围大且具有较强的上涨潜力,同时通过MA5上穿MA10进一步确认了股票的中短期上涨走势,增大了选股的概率。
有何风险?
本策略主要依赖技术分析,无法考虑股票的基本面,因此在遇到市场重大利空消息或公司业绩下滑时,该选股逻辑可能会失效,导致选中的个股下跌并持续下跌。
如何优化?
可以通过加入基本面分析和宏观经济因素进行优化。此外,还可以考虑将技术分析方法进行改进,比如加入更多指标、纠正偏离等技术手段,从而提高选股的准确性。
最终的选股逻辑
选取振幅大,500日内至少2次涨停,周线MA5上穿MA10的标的股票。
同花顺指标公式代码参考
振幅大于1:
(HIGH - LOW) / PRE_CLOSE > 0.01
500日内至少2次涨停:
SUM(HIGH / REF(LOW, 1) > 1.099, 500) >= 2
MA5上穿MA10:
CROSS(MA(CLOSE, 5), MA(CLOSE, 10))
在同花顺中,CLOSE代表收盘价,HIGH代表当日最高价,LOW代表当日最低价,MA(CLOSE, 5)代表收盘价的5日简单移动平均线。
python代码参考
import tushare as ts
selected_stocks = []
for code in ts.get_stock_basics().index:
#获取股票数据
basic_data = ts.get_stock_basics()
if code not in basic_data.index:
continue
weekly_data = ts.get_hist_data(code, ktype='W', start='20180101')
if weekly_data is None or len(weekly_data) < 30:
continue
if (weekly_data.high - weekly_data.low).mean() / weekly_data.close.mean() < 0.01:
continue
if (weekly_data.high / weekly_data.low.shift(1) > 1.099).rolling(500).sum() < 2:
continue
if not (weekly_data.close.rolling(5).mean() > weekly_data.close.rolling(10).mean())[-1]:
continue
#加入选中的股票
selected_stocks.append(code)
#输出选中的股票
print(selected_stocks)
以上仅供参考,具体操作需要根据市场情况和自身的风险偏好进行决策。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
