Files
Hermes-Skills/dividend-investing/references/min-yield-5pct-filter-2026-09-14.md
T

1.5 KiB
Raw Blame History

股息率过滤 MIN_YIELD (2026-09-14)

用户原话: "这个股息率低于5的,过滤掉,不要了"

规则

  • 三个市场 (A股/港股/美股) 统一: 股息率 < 5.0% 的除权票直接丢弃, 不进推送
  • 阈值是脚本内常量 MIN_YIELD = 5.0 (dividend_alert.py 排序后过滤段)
  • 过滤发生在排序之后 (sorted by yield desc), 所以留下的仍是高→低排
  • 全部低于 5% 时整条推送 silent (stdout 空, no_agent cron 不推) — 延续 silent-on-no-data 规则
  • 用户没要求把 MIN_YIELD 放 config; 目前是硬常量, 用户调阈值时直接改这一个数字

代码位置

dividend_alert.py 主流程, 排序段之后:

# 4.6. 股息率过滤 - 低于 5% 的丢弃 (用户 2026-09-14)
MIN_YIELD = 5.0
a_h = [r for r in a_h if _yr_a(r) >= MIN_YIELD]
hk_h = [r for r in hk_h if _yr_hk(r) >= MIN_YIELD]
us_h = [r for r in us_h if _yr_us(r) >= MIN_YIELD]

yield 函数按市场不同:

  • A股 _yr_a: (div/10) / price × 100 (div 是每10股派)
  • 港股 _yr_hk: 同 A股公式
  • 美股 _yr_us: ann / price × 100 (ann 是年派估算)

实证 (2026-09-14)

  • 9/15 除权日: A股最高 民生银行 3.17%, 港股最高 优品360 0.61% → 全滤掉, silent 不推 ✓
  • 美股同日: STRD 13.21% / STRK 10.53% / QQQX 9.72% → 正常显示 ✓

触发词

  • "股息率低于X的过滤掉" / "X% 以下的不要" → 改 MIN_YIELD 常量
  • 用户后续若要求把阈值配置化 → 移到 config.json / 脚本参数