f/overrides/event-backup/nms-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
22024-11-150.074000
32015-03-110.069000
42017-09-140.060000
52019-11-140.049000
62020-07-140.049000
72022-09-140.048000
82020-05-140.045000
92021-05-130.053000
102024-12-130.074000
112025-11-140.067000
122016-12-130.069000
132018-02-140.060000
142018-04-120.060000
152020-02-130.049000
162022-05-120.053000
172015-01-130.069000
182021-06-140.053000
192021-11-120.053000
202026-03-130.067000
212018-09-130.051000
222015-04-130.069000
232016-04-130.067000
242017-07-120.064000
252018-03-140.060000
262025-01-150.074000
272026-07-150.063000
282017-01-110.067000
292018-01-110.060000
302018-11-140.051000
312020-01-140.049000
322024-04-120.050000
332018-07-120.055000
342021-01-140.053000
352017-04-110.064000
362020-03-120.045000
372021-04-140.053000
382021-10-140.053000
392023-12-140.041000
402017-12-140.071000
412021-09-140.053000
422022-01-130.053000
432020-06-120.049000
442026-01-150.067000
452016-08-110.067000
462017-02-130.067000
472018-10-120.051000
482019-07-120.049000
492021-03-120.053000
502026-02-130.067000
512015-02-110.069000
522016-06-130.067000
532017-11-140.060000
542019-05-140.049000
552024-09-130.074000
562023-02-140.036000
572023-11-140.041000
582025-06-130.074000
592015-11-100.067000
602016-01-130.067000
612017-08-110.064000
622019-01-140.051000
632021-08-120.053000
642026-05-150.067000
652023-03-140.036000
662025-02-140.074000
672025-12-150.067000
682016-07-130.067000
692016-09-130.067000
702016-10-120.067000
712018-08-140.055000
722019-03-140.049000
732026-04-150.067000
742020-04-140.045000
752022-10-130.044000
762023-05-120.036000
772023-08-140.036000
782026-06-150.063000
792015-06-110.069000
802019-12-120.049000
812021-07-140.053000
822022-11-140.044000
832023-07-130.036000
842015-07-130.069000
852020-11-120.053000
862020-12-140.053000
872022-04-130.053000
882023-06-140.036000
892025-10-150.067000
902023-10-120.036000
912025-08-150.074000
922016-05-110.067000
932017-06-130.064000
942019-06-130.049000
952020-09-140.049000
962023-01-120.036000
972015-08-120.069000
982018-05-140.060000
992021-12-140.053000
1002024-01-110.041000
1012024-08-150.074000
1022019-02-140.051000
1032019-08-140.049000
1042020-08-130.049000
1052023-09-140.036000
1062024-05-140.050000
1072015-05-130.069000
1082015-09-110.067000
1092024-03-140.050000
1102025-05-150.074000
1112025-07-150.074000
1122018-06-140.055000
1132018-12-130.051000
1142019-10-110.049000
1152022-12-140.044000
1162014-11-120.069000
1172017-03-130.064000
1182025-03-140.074000
1192014-12-110.069000
1202015-10-130.067000
1212017-05-110.064000
1222026-08-140.063000
1232017-10-120.060000
1242020-10-140.053000
1252022-08-120.048000
1262025-09-150.067000
1272019-09-120.049000
1282022-03-140.053000
1292024-02-140.041000
1302024-10-150.074000
1312025-04-150.074000
1322022-02-140.053000
1332024-06-140.074000
1342024-07-150.074000
1352016-03-110.067000
1362021-02-110.053000
1372022-07-140.048000
1382023-04-130.036000
1392015-12-110.067000
1402016-02-100.067000
1412016-11-100.067000
1422019-04-120.049000
1432022-06-140.053000