问财量化选股策略逻辑
选股逻辑:振幅大于1,反包出现,竞价主力净买大于0。
选股逻辑分析
该选股逻辑综合了技术分析和基本面分析,振幅与反包合理地判断了股价的趋势,筛选出股价有上升趋势的股票。竞价主力买入是市场前景良好的一个信号,当主力资金大量流入时说明市场人气高涨。如果股票在当日成交时期的竞买队列里,有大量资金集中流入,那么就说明投资者对这只股票的买入意愿非常强烈。
有何风险?
由于该选股策略更依赖于短期市场趋势,可能会忽略了企业的长期价值。对于那些财务数据表现不佳但走势令人瞩目的企业,该策略可能会误判。另外,竞价主力带来的大量资金流入也可能不一定代表更为积极的买入信号,因此不应过于依赖。
如何优化?
可以通过加强企业基本面分析和技术分析相结合的方式,来减少一些股价波动较大的股票。确定上涨趋势之后,依据公司的盈利情况和行业分析等因素,更准确地判断是否具有投资价值。
最终的选股逻辑
基于上述分析,我们提出改进后的股票筛选逻辑:
- 振幅大于1
- 反包出现
- 当日竞价主力净买大于0
同花顺指标公式代码参考
以下是通达信指标的公式代码示例:
F01:HIGH / LOW - 1 > 0.01; // 振幅大于1
F02:NOT(SIGN(CLOSE-REF(CLOSE, 1)) == SIGN(REF(CLOSE, 1) - REF(CLOSE, 2))); // 反包
F03:DMFI(INDEX), DMFOUT; // 竞价主力净买
FILTER:F01 AND F02 AND F03 > 0;
SYMBOL_SORT("热点板块", SORT_DESCEND);
SELECT(IF(F03, 1, 0), "诊股"); // 输出文本信息:选股
python代码参考
以下是 Python 实现该策略的选股逻辑:
def stock_filter(dv, symbol):
# 获取数据,计算指标
high = dv.get_ts("high", symbol=symbol)
low = dv.get_ts("low", symbol=symbol)
close = dv.get_ts("close", symbol=symbol)
dmf = dv.get_ts("DMF", symbol=symbol)
dmf = dmf.fillna(0)
dmf_sign = np.sign(dmf.diff().fillna(0))
dmfo = ((close - low) - (high - close))/(high - low) * dmf_sign
dmfo = dmfo.fillna(0)
dmfo_trend = (dmfo > 0).iloc[-1]
amplitude = high / low - 1
reverse_pattern = (Ta('CDL2CROWS', 0, open, high, low, close) == 100)
# 筛选符合条件的股票并按照热度排序
selected_stocks = (amplitude > 0.01) & reverse_pattern & dmfo_trend
selected_stocks = selected_stocks[selected_stocks].sort_values(by="heat_rank", ascending=False)
return selected_stocks.index.tolist()
选股逻辑中,我们采用 Python 的 pandas 库和 TA-Lib(Technical Analysis Library) 库,进行技术分析和数据处理,我们用其计算振幅指标和反包指标,并将指标进行筛选操作,最终得到我们需要选择的股票。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
