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

3.7 KiB

1DateDividends
22012-02-290.028000
32020-12-100.005000
42021-09-300.020000
52022-09-300.022000
62024-05-310.024000
72014-08-290.021000
82014-09-300.024000
92019-08-300.026000
102021-05-280.021000
112024-02-290.023000
122024-09-300.024000
132017-12-140.011000
142019-02-280.025000
152019-07-310.025000
162021-02-260.021000
172023-08-310.023000
182020-01-310.025000
192020-12-310.022000
202023-11-300.023000
212012-01-310.030000
222012-09-280.028000
232017-05-310.025000
242018-12-130.008000
252019-09-300.024000
262013-09-300.025000
272018-05-310.026000
282019-05-310.025000
292024-10-310.024000
302023-03-310.023000
312023-04-280.022000
322023-06-300.023000
332013-07-310.024000
342016-11-300.023000
352020-10-300.022000
362021-12-310.021000
372022-06-300.021000
382025-12-110.013000
392025-12-310.026000
402026-05-290.027000
412022-03-310.021000
422022-12-150.010000
432016-05-310.025000
442017-03-310.026000
452017-06-300.025000
462020-05-290.026000
472021-01-290.022000
482014-11-280.024000
492018-09-280.025000
502026-04-300.026000
512012-05-310.029000
522012-06-290.029000
532013-01-310.029000
542020-08-310.023000
552025-10-310.026000
562021-10-290.021000
572013-10-310.025000
582014-12-290.006000
592018-04-300.025000
602020-03-310.025000
612021-07-300.021000
622017-07-310.026000
632018-03-290.025000
642018-12-310.026000
652013-06-280.020000
662013-11-290.025000
672015-09-300.017000
682015-10-300.016000
692017-01-310.024000
702024-12-120.012000
712025-11-280.026000
722015-02-270.023000
732018-08-310.025000
742019-12-310.025000
752021-11-300.021000
762023-12-290.024000
772019-10-310.025000
782024-11-290.024000
792011-10-310.001000
802012-03-300.029000
812017-09-290.025000
822018-02-280.024000
832018-10-310.026000
842013-12-310.027000
852016-12-300.024000
862020-06-300.023000
872024-03-280.024000
882025-02-280.024000
892016-07-290.025000
902016-08-310.025000
912020-02-280.024000
922015-03-310.025000
932015-06-300.024000
942017-08-310.026000
952023-01-310.023000
962024-08-300.024000
972025-01-310.025000
982026-07-310.027000
992013-05-310.025000
1002014-03-310.023000
1012019-11-290.024000
1022022-10-310.022000
1032022-12-300.023000
1042012-10-310.026000
1052014-04-300.024000
1062021-06-300.021000
1072022-05-310.021000
1082022-07-290.021000
1092021-04-300.022000
1102025-08-290.026000
1112026-06-300.027000
1122013-03-280.026000
1132014-10-310.023000
1142015-12-170.008000
1152016-04-290.025000
1162020-07-310.023000
1172013-04-300.025000
1182014-02-280.022000
1192016-01-290.024000
1202022-02-280.020000
1212022-01-310.021000
1222023-12-140.010000
1232012-07-310.029000
1242012-08-310.029000
1252013-02-280.026000
1262015-11-300.016000
1272021-12-160.012000
1282014-01-310.025000
1292017-10-310.025000
1302026-02-270.025000
1312016-02-290.024000
1322023-09-290.023000
1332015-12-310.024000
1342024-01-310.024000
1352024-04-300.024000
1362021-08-310.021000
1372025-04-300.025000
1382012-04-300.029000
1392015-01-300.020000
1402017-11-300.025000
1412018-07-310.025000
1422018-11-300.026000
1432023-05-310.023000
1442012-12-310.027000
1452014-12-310.026000
1462019-04-300.026000
1472019-06-280.025000
1482022-11-300.022000
1492023-10-310.023000
1502025-06-300.025000
1512026-01-300.026000
1522012-11-300.028000
1532013-08-300.020000
1542014-07-310.023000
1552019-03-290.026000
1562021-03-310.022000
1572024-07-310.024000
1582025-05-300.025000
1592015-07-310.024000
1602016-03-310.026000
1612017-12-290.025000
1622019-12-120.009000
1632020-04-300.024000
1642015-04-300.025000
1652016-06-300.025000
1662025-03-310.025000
1672025-07-310.025000
1682022-04-290.021000
1692023-02-280.022000
1702014-05-300.023000
1712014-06-300.022000
1722015-08-310.017000
1732018-06-290.025000
1742020-09-300.022000
1752024-06-280.024000
1762025-09-300.025000
1772015-05-290.024000
1782016-10-310.024000
1792017-04-280.025000
1802019-01-310.026000
1812023-07-310.023000
1822022-08-310.022000
1832024-12-310.025000
1842026-03-310.027000
1852016-09-300.025000
1862016-12-150.008000
1872017-02-280.024000
1882018-01-310.029000
1892020-11-300.021000