问财量化选股策略逻辑
本选股策略选取振幅大于1、500日内至少2次涨停和前日实际换手率在3%~28%之间的股票。
选股逻辑分析
该选股策略在技术面上注重股票价格波动和市场热度,并考虑了实际换手率的大小,有望筛选出关注度较高的且有一定市场活跃度的个股,能够指导投资者更好地把握市场动向。
有何风险?
由于该选股策略只考虑了技术面和市场活跃度等部分因素,并未充分考虑公司的基本面,可能会忽略股票的风险因素而在投资过程中带来风险。另外,该选股策略直接选取换手率在3%~28%之间的股票,但没有对部分股票的实际情况进行分析,可能有一定人为干扰,在一定程度上影响了选股的准确性。
如何优化?
可以在常规的技术面和市场活跃度筛选的基础上,加强对公司基本面的关注,如增加对公司业绩、估值、竞争优势等方面的考虑,以此做出更准确的股票筛选。同时,可以综合考虑多个指标,如资金面、行业环境等等,对异常的行情进行判断,提高选股策略的准确性和稳定性。
最终的选股逻辑
挑选振幅大、至少2次涨停,且前日实际换手率在3%~28%之间的股票。
同花顺指标公式代码参考
振幅大于1:
(HIGH - LOW) / PRE_CLOSE > 0.01
500日内至少2次涨停:
SUM(HIGH / REF(LOW,1) > 1.099,500) >= 2
前日实际换手率:
3 <= ACTIVETRADERATIO && ACTIVETRADERATIO < 28
排序:
SORT('振幅×2+涨停次数+实际换手率', False)
python代码参考
import tushare as ts
selected_stocks = []
for code in ts.get_stock_basics().index:
#获取股票数据
daily_data = ts.get_today_ticks(code)
if daily_data is None or len(daily_data) < 30:
continue
#判断振幅和涨停次数
if (daily_data.price.max() - daily_data.price.min()) / daily_data.price.mean() < 0.01:
continue
if (daily_data.price / daily_data.price.shift(1) > 1.099).rolling(500).sum() < 2:
continue
#判断实际换手率是否符合要求
if daily_data.ACTIVETRADERATIO.iloc[-2] < 3 or daily_data.ACTIVETRADERATIO.iloc[-2] >= 28:
continue
selected_stocks.append(code)
#输出选中的股票
print(selected_stocks)
因市场行情随时变化,以上内容仅供参考,具体操作需要根据市场情况和风险规避策略自行决定。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
