问财量化选股策略逻辑
选股逻辑为:在换手率3%到12%范围内,选择连续七天下跌且10天内涨停天数大于2的股票。
选股逻辑分析
该选股逻辑侧重于选取市场情绪比较低迷的股票,高涨之后的调整空间和回升潜力比较大。选股条件包括换手率、连续七天下跌和短时期内涨停天数大于2。
有何风险?
选股逻辑条件较为单一,主要关注于短期市场情绪和调整的空间,存在错过长期趋势和未来潜力的风险。
如何优化?
可以尝试加入其他技术指标筛选优质股票,如增加ROE、净利润等指标,同时可使用动态调整的方法来筛选股票。
最终的选股逻辑
根据以上的分析和风险提示,可以考虑修正选股条件,选择市值较大、ROE较高、股价波动较小等质地相对优良的股票,并加入其他技术指标来进一步筛选。
最终选股逻辑为:在换手率3%到12%范围内,选择市值大于100亿、ROE大于15%、连续七天下跌且10天内涨停天数大于2,同时股价波动较小的股票。
同花顺指标公式代码参考
以下是通达信选股公式:
选股公式:
选股条件:TURNOVERRATE > 3 AND TURNOVERRATE < 12 AND COUNT(TRAVEL(CLOSE,1) < 0, 7) = 7 AND COUNT(IF((LAST(MA(CLOSE, 10), 1) > 1.087 * REF(YESTCLOSE,1)) AND (LAST(MA(CLOSE, 10), 1) < 1.093 * REF(YESTCLOSE,1)), 1, 0), 10) > 2 AND CAP >= 100000 AND ROE >= 15
注:CAP为总股本,ROE为净资产收益率。旨在选择满足市值、ROE等基础条件,且连续七天下跌,且10天内涨停天数大于2,同时股价波动较小的股票。
python代码参考
import pandas as pd
from typing import List
def select_stock(data: pd.DataFrame) -> List[str]:
selected_stocks = []
for code, df in data.groupby(level=0):
if (df['turnoverratio'].iloc[-1] > 3 and df['turnoverratio'].iloc[-1] < 12 and \
df['close'].rolling(window=7).apply(lambda x: (x[:-1] > x[-1]).all()).iloc[-1] and \
(df['ma10'].rolling(window=10).apply(lambda x: ((x[1:] > 1.087 * x[0]) & (x[1:] < 1.093 * x[0])).sum()) > 2) and \
df['total_mv'].iloc[-1] >= 1e10 and df['roe'].iloc[-1] >= 0.15):
selected_stocks.append(code)
return selected_stocks
其中,total_mv为总市值,roe为净资产收益率,股价波动可以使用其他指标计算。同样需要注意数据源指标名称的相应修改,对于更细节的配置和特殊情况的处理,可以根据实际需求进行程序优化。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


