f/overrides/event-backup/fmbpx-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

2.8 KiB

1DateDividends
22019-11-290.024000
32020-03-310.025000
42025-08-290.037000
52026-02-270.041000
62014-12-310.024000
72016-08-310.023000
82017-02-280.022000
92018-03-290.021000
102020-10-300.021000
112021-04-300.020000
122024-02-290.038000
132025-04-300.033000
142015-06-300.023000
152025-06-300.035000
162022-03-310.016000
172019-05-310.028000
182015-08-310.023000
192018-02-280.023000
202019-06-280.028000
212026-01-300.035000
222015-01-300.023000
232017-08-310.024000
242017-10-310.024000
252018-10-310.028000
262023-01-310.028000
272016-03-310.025000
282021-02-260.020000
292023-04-280.030000
302018-07-310.026000
312023-02-280.027000
322017-03-310.023000
332021-03-310.020000
342022-01-310.018000
352023-07-310.030000
362024-01-310.030000
372025-02-280.032000
382019-09-300.026000
392021-06-300.019000
402022-05-310.020000
412022-12-300.028000
422019-10-310.026000
432017-05-310.024000
442017-06-300.023000
452018-09-280.027000
462019-07-310.027000
472019-12-310.023000
482023-10-310.030000
492025-01-310.033000
502016-11-300.023000
512026-03-310.034000
522019-08-300.028000
532020-12-310.023000
542022-10-310.024000
552024-05-310.033000
562016-12-300.020000
572018-01-310.024000
582024-06-280.033000
592026-04-300.034000
602017-11-300.024000
612018-04-300.025000
622020-02-280.025000
632023-05-310.029000
642024-04-300.031000
652025-05-300.035000
662016-02-290.022000
672021-01-290.022000
682021-12-310.018000
692025-07-310.035000
702020-11-300.018000
712018-06-290.025000
722023-11-300.033000
732025-10-310.036000
742017-07-310.023000
752016-10-310.021000
762017-04-280.024000
772018-11-300.026000
782019-01-310.028000
792020-04-300.021000
802021-08-310.016000
812021-11-300.017000
822016-04-290.023000
832022-08-310.024000
842015-10-300.026000
852016-01-290.024000
862020-06-300.022000
872022-09-300.024000
882024-09-300.029000
892026-07-310.035000
902015-07-310.024000
912023-03-310.028000
922024-10-310.022000
932010-08-310.043000
942025-12-310.034000
952021-09-300.015000
962017-09-290.023000
972026-05-290.035000
982015-09-300.022000
992023-08-310.030000
1002019-04-300.028000
1012020-01-310.026000
1022020-05-290.024000
1032024-12-310.039000
1042018-08-310.026000
1052022-07-290.023000
1062015-12-310.025000
1072015-05-290.024000
1082016-06-300.023000
1092021-07-300.019000
1102015-03-310.025000
1112017-01-310.023000
1122017-12-290.024000
1132022-11-300.027000
1142025-03-310.033000
1152015-02-270.023000
1162016-09-300.022000
1172021-05-280.020000
1182022-04-290.020000
1192024-08-300.033000
1202015-04-300.025000
1212021-06-030.012000
1222023-09-290.031000
1232020-07-310.024000
1242020-09-300.022000
1252022-06-300.021000
1262023-12-290.030000
1272016-07-290.022000
1282018-12-310.029000
1292019-02-280.028000
1302019-03-290.028000
1312022-02-280.017000
1322016-05-310.023000
1332018-05-310.026000
1342021-10-290.017000
1352024-11-290.034000
1362026-06-300.034000
1372015-11-300.024000
1382023-06-300.029000
1392024-03-280.032000
1402024-07-310.034000
1412025-09-300.036000
1422025-11-280.034000
1432020-08-310.022000