(supermind策略)task16/a/macd零轴以上、PE>0、剔除昨日涨停

用户头像神盾局量子研究部
2023-08-30 发布

问财量化选股策略逻辑

选股逻辑为MACD零轴以上,PE大于0,并剔除昨日有涨停的股票。选股时间为每个交易日收盘后。

选股逻辑分析

MACD是一种趋势追踪指标,红柱代表上涨趋势,当MACD在零轴以上时,说明当前股票处于强势状态,有较大的上涨空间。同样,通过PE大于0可以筛选出当前股票的估值较合理。

在此基础上,剔除昨日有涨停的股票,可以避免过度追高杀跌,有效规避风险。

综合以上选股条件,可以筛选出趋势较强,估值较合理,资金较为活跃的潜在投资标的。

有何风险?

  1. 过于依赖技术指标和过去市场表现,忽略了基本面数据带来的投资风险;
  2. 只剔除昨日的涨停股票,还是存在过度追涨杀跌的风险;
  3. 可能忽略掉有良好基本面数据但昨日刚涨停的优质股票。

如何优化?

  1. 引入其他技术指标和基本面数据来拓宽选股预判条件,提高精准度和投资成功率;
  2. 将涨停板统计的时间周期做有针对性的调整,避免盲目追涨杀跌;
  3. 考虑将昨日涨停的股票加入监控列表,优先在未来交易日里进行关注。

最终的选股逻辑

选股逻辑为MACD零轴以上,PE大于0,并剔除昨日有涨停的股票。选股时间为每个交易日收盘后。

同花顺指标公式代码参考

MACD指标:

DIF: EMA(CLOSE, 12) - EMA(CLOSE, 26);
DEA: EMA(DIF, 9);
MACD: (DIF - DEA) * 2;

PE指标:

PE: FIELD('pe_ttm', 0);

昨日涨停板统计指标:

UP_LIMIT: (CLOSE / REF(CLOSE, 1)) > 1.095;

选股筛选公式:

MACD > 0 AND PE > 0 AND NOT UP_LIMIT;

排序公式:

默认按照个股市值排序,这里不做展示。

Python代码参考

以下为python的选股筛选代码、排序代码,仅供参考:

import akshare as ak

# 获取股票列表并计算选股筛选条件
data = ak.stock_zh_a_daily_tx(symbol="", trade_date="")
up_limit = (data['close'] / data['close'].shift(1) > 1.095).fillna(False)
condition = (data['macd'] > 0) & (data['pe_ttm'] > 0) & (~up_limit)
result = data[condition]

# 按照市值排序
result_sorted = result.sort_values(by=['circ_mv'], ascending=False).head(5)
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

    select_sentence = '市值小于100亿' #选股语句。

    模板如何使用?

    点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。


    ## 如果有任何问题请添加 下方的二维码进群提问。
    ![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
收益&风险
源码

评论