f/overrides/event-backup/dfapx-dividend.csv
Greg Pomerantz bb8e39605e Event-history protection: backup dir, empty-download fallback, docs
Yahoo's 2026 event-feed change (capitalGain events dropped for some
funds; no events at all for terminated tickers) can wipe good event
history on re-download. Defense in depth:

- overrides/event-backup/: last-known-good copy of every dividend/
  capitalGain file (8,192 files, 58 MB); refresh with
  scripts/backup_events.py after each dump update
- data.py event_file(): frozen > data-root (while populated) > backup;
  used by panel reads, verify_official, and the double-listing scanner
- README: capital-gain files are mutual-fund-only in this dump; Yahoo
  has no LT/ST split (tax.py taxes capg at lt_rate; the per-fund split
  would come from fund-company annual tax statements or commercial feeds)
- tests: exact Timestamp .loc keys (pandas 3.x string matching returns a
  Series on large DatetimeIndex)
2026-08-31 21:59:25 -04:00

1.2 KiB

1DateDividends
22012-09-100.063000
32014-03-100.043000
42013-12-120.085000
52018-09-270.069000
62021-12-150.160000
72025-03-280.048000
82014-12-160.089000
92023-09-280.070000
102023-12-130.136000
112012-06-080.065000
122019-04-290.016000
132024-03-270.052000
142015-06-080.063000
152021-03-300.039000
162012-03-080.037000
172016-09-290.046000
182021-09-290.060000
192025-09-290.095000
202022-06-290.065000
212026-03-300.045000
222011-12-130.094000
232017-12-150.079000
242018-12-180.095000
252020-06-290.042000
262020-09-290.069000
272020-03-300.061000
282022-03-300.053000
292022-09-290.066000
302012-12-130.094000
312014-09-090.061000
322016-12-150.070000
332019-03-280.052000
342019-12-170.094000
352023-03-300.061000
362024-06-270.090000
372024-12-130.147000
382014-06-090.067000
392018-03-280.045000
402020-12-160.085000
412022-12-140.071000
422024-09-270.085000
432011-09-080.069000
442018-06-280.071000
452015-09-090.063000
462026-06-290.109000
472016-06-290.054000
482017-06-290.061000
492025-06-270.084000
502013-03-080.031000
512015-03-090.039000
522016-03-300.057000
532019-06-270.076000
542019-09-270.069000
552013-06-100.066000
562015-12-160.097000
572021-06-290.057000
582025-12-150.157000
592013-09-100.056000
602017-03-300.056000
612017-09-280.044000
622023-06-290.065000