问财量化选股策略逻辑
选股逻辑:振幅大于1,反包,北京A股除外。
选股逻辑分析
该选股逻辑在技术指标的基础上,增加了地域因素的考虑,排除了北京A股。通过这一筛选条件,可以在保证股票质量的同时,降低区域风险。
有何风险?
该选股逻辑可能会错失一些北京地区的优质股票,同时也不能完全排除其他地区的投资风险。此外,如果只依赖技术指标的筛选,也可能忽略了公司的基本面,存在一定的风险。
如何优化?
可以通过加入更多的市场因素和行业动态等方面的数据进行筛选,并适当放宽条件以便获取更多的优质投资机会。此外,也可以通过增加对基本面指标的考虑,例如利润率和资产负债率等指标,提高选股的准确性和稳定性。
最终的选股逻辑
在以上分析基础上,提出完善后的选股逻辑:
- 振幅大于1;
- 近3天内出现反包形态;
- 排除北京A股。
同花顺指标公式代码参考
以下是该选股策略在通达信中的指标公式代码:
F01: HIGH/LOW - 1 > 0.01; // 振幅大于1
F02: NOT(SIGN(CLOSE - REF(CLOSE, 1)) == SIGN(REF(CLOSE, 1) - REF(CLOSE, 2))); // 反包
F03: GET_SECTOR(MARKET,MarketID) != "北京A股"; // 排除北京A股
FILTER: F01 AND F02 AND F03;
SELECT(IF(1, 1, 0), "选股"); // 输出选中的股票
python代码参考
以下是 Python 实现该策略的选股逻辑:
# 数据预处理部分
close = dv.get_ts('close', symbol=symbols)
high = dv.get_ts('high', symbol=symbols)
low = dv.get_ts('low', symbol=symbols)
# 计算技术指标
amp = (close / close.shift(1) - 1).abs() > 0.01
ta_func_renko = Ta('CDLTRISTAR', 0, dv.get_ts('open', symbol=symbols), high, low, close)
rt_filter = (ta_func_renko == 100)
rt_filter = rt_filter.iloc[:, :-1].sum(axis=1) > 0
# 排除北京A股
market = dv.get_symbol(['Market'], symbol=symbols)
beijing_stocks = market[market['Market'] == '北京A股'].index.tolist()
selected_stocks = ((amp & rt_filter) & ~close.index.isin(beijing_stocks)).sort_values(ascending=False)
return selected_stocks.index.tolist()
该代码实现了选股策略的核心部分,通过使用 CDLTRISTAR 指标计算反包形态,并排除北京A股,以便选出优质股票。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
