Files
Hermes-Skills/dividend-investing/references/fill-gap-timing.md
T
mike 657dc41c46 Initial commit: Trading skills collection
- OKX交易自动化 (okx-auto-position, okx-crypto, okx-exchange)
- 交易信号处理 (signal-confirmation-templates, trading-signal-aggregator)
- 量化因子挖掘 (quant-factor-mining)
- 长桥集成 (longbridge-cli, longbridge-python-sdk)
- 六合彩分析 (lottery-hk)
- 股息投资 (dividend-investing, dividend-scanner)
- 日内交易 (intraday-trading)
- 同花顺 (tonghuashun)
2026-07-05 02:39:41 -04:00

99 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 填权 (Gap Fill) Timing Reference
## What is 填权?
After ex-dividend, the stock price drops by approximately the dividend amount. "填权" means the stock price recovers back to (or above) the pre-ex-dividend level over time.
**填权 ≠ immediate.** The market doesn't give away free money — the ex-div price drop is a mechanical adjustment. Whether and how fast the gap fills depends on ongoing supply/demand for the stock.
## Historical Fill Speeds for A-share Dividend Stocks
### 华特达因 (000915) — High-dividend healthcare stock
| Year | Ex-div | Dividend | Pre-close | Ex-close | Fill Time | Notes |
|------|--------|----------|-----------|----------|-----------|-------|
| 2025 | Jun 11 | 2.00元 | 32.39 | 29.49 | **~10 days** (31.15, +5.6%) | Fast fill; stock was in uptrend |
| 2024 | May 16 | 2.00元 | 35.30 | 33.48 | **Did not fill in 60 days** (30→27) | Bear market dragged it down |
**Key insight:** 2025 filled fast because the stock was in a healthy trend. 2024 didn't fill because the overall market was falling. Stock quality matters but macro conditions dominate.
### 同仁堂 (600085) — Blue-chip TCM
(Add data here when available from analysis.)
## Factors That Determine Fill Speed
### 1. Stock Price Position (Most Important)
```
Stock at 52-week low: High fill probability (already "cheap")
Stock at 52-week high: Low fill probability (due for pullback)
Example: 华特达因 2025 → ex-div at 32 → near YTD high → fast fill anyway (good stock)
华特达因 2024 → ex-div at 35 → at YTD high → no fill (bad timing + bad market)
```
### 2. Market Direction
- **Bull market / 结构性牛市**: Most quality stocks fill within 1-3 weeks
- **Bear market / 熊市**: Can take months or never — the dividend is "eaten" by the falling price
- **Sideways market**: Depends on stock-specific catalysts
### 3. Dividend Size Relative to Price
| Dividend/Price ratio | Impact |
|---------------------|--------|
| < 2% | Small gap, easy to fill (days) |
| 2-5% | Moderate, 1-3 weeks typical |
| > 5% | Large gap, may take months; better to wait for natural dip before buying |
### 4. Company Fundamentals
- **Growing dividends** (e.g., 华特达因 2021: 0.35 → 2025: 2.50/share) → faster fill (market rewards increasing payouts)
- **Stable/declining dividends** → slower fill
- **High payout ratio** (>80%) → risk of cut → may never fill
- **Cash-rich** (>30% market cap in cash) → faster fill (dividend is safe)
## Practical Rules for Dividend Capture
```
If you MUST try dividend capture (buy pre-ex-div, sell post):
1. Only attempt on stocks near their 52-week LOW
→ The ex-div gap is less damaging when already near support
2. Only attempt when market is in uptrend
→ Check: is the SH/SZ index above its 50-day MA?
3. Plan to hold MINIMUM 2-4 weeks post-ex-div
→ Selling the next day guarantees a loss (tax + gap)
4. Calculate your break-even price:
BreakEven = ExDivPrice + (Tax_Rate × Dividend)
Example: 28元 stock, 2元 dividend, 20% tax:
BreakEven = 26.00 + 0.40 = 26.40
→ Stock must rally 1.5% from ex-div just to break even
5. Consider buying AFTER ex-div instead:
- No dividend → no tax → no gap risk
- Lower entry price → higher yield on cost
- Same future dividends
→ Often the better move for pure yield investors
```
## Data Source
To calculate 填权 timing for any stock:
```python
import akshare as ak
# Use unadjusted prices (adjust='') to see the real ex-div gap
df = ak.stock_zh_a_hist(symbol='000915', period='daily',
start_date='20250601', end_date='20251001', adjust='')
# Find ex-div day by looking for the big drop on the expected date
# Then scan forward to see how many days to recover
```