问财量化选股策略逻辑
选股逻辑:振幅大于1,反包,竞价时涨跌幅买入大单.特大单共计买入量大于0.7千万。
选股逻辑分析
该选股逻辑通过考虑股票的波动情况、趋势反转以及买入量等多种因素综合进行选股。振幅大于1说明股票波动范围较大,具有短期价值;反包形态则暗示股票出现了趋势反转的可能,具有买入信号;买入大单和特大单的共计买入量大于0.7千万,暗示机构资金已介入,股票有可能出现较大的上涨空间。综合以上因素,可以选出具有一定投资价值的股票。
有何风险?
该选股策略的主要风险在于股票市场的不确定性和不可预测性。而且过于依赖机构资金的进出行为,可能会忽略基本面因素。此外,在使用竞价数据时,数据的实时性和精确性可能会存在一定的问题,从而导致误判。
如何优化?
可以考虑对选股的指标和机制进行优化。例如,在振幅和买入量等指标上设置更加合理的参数阈值,同时加入股票的基本面因素进行综合考虑。在使用竞价数据进行选股时,可以结合数据的历史走势进行筛选,减少数据误判的可能性。
最终的选股逻辑
在以上分析基础上,提出完善后的选股逻辑:
- 振幅大于1;
- 近3个交易日内出现反包形态;
- 竞价时涨跌幅买入大单和特大单的共计买入量大于0.7千万。
同花顺指标公式代码参考
以下是该选股策略在通达信中的指标公式代码:
F01: (HIGH/LOW - 1) > 0.01; // 振幅大于1
F02: NOT(SIGN(CLOSE - REF(CLOSE, 1)) == SIGN(REF(CLOSE, 1) - REF(CLOSE, 2))); // 近3个交易日内出现反包形态
F03: JVBUY(); // 竞价时涨跌幅买入大单和特大单的共计买入量大于0.7千万
FILTER: F01 AND F02 AND F03;
SELECT(IF(1, 1, 0), "选股"); // 输出选中的股票
其中 JVBUY()
为通达信自带函数,表示返回竞价时大买单和特大买单的共计买入量。
python代码参考
以下是 Python 实现该策略的选股逻辑:
# 数据预处理部分
close = dv.get_ts('close', symbol=symbols)
high = dv.get_ts('high', symbol=symbols)
low = dv.get_ts('low', symbol=symbols)
buy_l = dv.get_ts('buy_l', symbol=symbols)
buy-xl = dv.get_ts('buy_xl', symbol=symbols)
df_pct_chg = close.pct_change()
df_pct_chg[df_pct_chg.isna()] = 0
ta_func_renko = Ta('CDLTRISTAR', 0, open, high, low, close)
rt_filter = (ta_func_renko == 100)
rt_filter = rt_filter.iloc[:, :-1].sum(axis=1) > 0
amp_filter = (high / low - 1) > 0.01
vol_filter = (buy_l + buy_xl) > 7000000
selected_stocks = ((amp_filter & rt_filter) & vol_filter).sort_values(ascending=False)
return selected_stocks.index.tolist()
通过综合考虑振幅、反包、买入量等因素来进行筛选,以筛选出具有一定投资价值的股票。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
