问财量化选股策略逻辑
选股逻辑:振幅大于1,今日控盘>21,七连阴。
选股逻辑分析
该选股策略是一种逆势选股策略,通过选取近期出现连续下跌的股票,加上振幅较大、流动性较好的标准,捕捉股票中短期反弹的机会,以获取超额收益。
有何风险?
该选股策略存在明显的逆势风险,可能会因为股票的基本面或行业发展的不利情况而导致股票进一步的下跌,从而使选股策略的效果失效。同时,该选股策略的样本量可能较小,不具备太高的通用性。
如何优化?
为了更全面地考虑各类因素,可以对该选股策略进行如下优化:
- 在判断下跌天数的基础上,可以加入其他指标来判断股票的强度,如KDJ指标、RSI指标等,以排除一些技术面较差的股票;
- 加入基本面分析,综合考虑股票的财务数据、行业发展等因素,以获取更全面的股票评价;
- 若选股策略结果过少,可以将选股标准宽松一些,如将七连阴的要求降低至五连阴;
- 除了简单的技术指标和基本面指标,可以加入机器学习和深度学习算法,来提高模型的预测能力;
- 通过回测和实盘操作等方法,评估模型表现,并进行相应的调整和优化。
最终的选股逻辑
考虑风险和优化需求,得到完善后的选股逻辑:
- 振幅大于1;
- 今日控盘>21;
- 七连阴;
- 流通市值不低于30亿。
同花顺指标公式代码参考
以下是同花顺实现此策略的部分指标公式代码:
C1 = AMP() > 1;
C2 = ABS(CONTROLLING_SHARES_DAY_CHG()) > 21;
C3 = KLINE_UP(currdate) && EVERY(LOWER_CURR(kl), 7);
C4 = CAPITALIZATION() >= 30;
SELECTOR = C1 AND C2 AND C3 AND C4;
RESULT = REF(SORT(RANK(SELECTOR), 1), 0) == 0;
python代码参考
以下是Python实现此策略的部分代码:
def select_stocks():
selected_stocks = []
for stock in get_all_stocks():
c1 = get_price(stock, count=1, end_date=datetime.now(), frequency='1d', fields='amplitude')[0] > 0.01
c2 = abs(get_controlling_shareholders(stock, count=1, end_date=datetime.now(), frequency='1d')['controlling_shareholders_day_pct_change'][0]) > 0.21
c3 = is_consecutive_lower(stock, count=7, end_date=datetime.now(), frequency='1d')
c4 = get_market_cap(stock, count=1, end_date=datetime.now(), frequency='1d')['circulating_market_cap'][0] >= 30_0000_0000
if c1 and c2 and c3 and c4:
selected_stocks.append(stock)
selected_stocks = sorted(selected_stocks, key=lambda x: get_price_change(x, 1, datetime.now(), frequency='1d'), reverse=True)
return selected_stocks
result = select_stocks()
print(result)
以上Python代码仅供参考,具体实现还需要结合自身需求进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
