Per-share financial-highlights parser (cef_annual.py) now reconciles divs+gains+ROC==distributions and the full NAV chain per column for 48 of 50 shortlist funds, from three layout families (inline, transposed, + repair rules for footnotes/split-decimals/sign- magnitude/combined-rows). DXYZ is a correct zero-distribution result; STEW is a documented columnar-stream exception. cef_merged.json character column now uses actual data. 123/123 tests.
1 line
604 B
JSON
1 line
604 B
JSON
{"sym": "NXG", "cik": 1506488, "name": "NXG NextGen Infrastructure Income Fund", "bdc": false, "n_tender": 0, "ticker": "NXG", "report_filed": "2026-08-06", "ncols": 6, "nav_beg": [50.52, 51.3, 39.85, 54.75, 53.25, 45.87], "nav_end": [63.04, 50.52, 51.3, 39.85, 54.75, 53.25], "mkt_end": [], "dist_tot": [3.24, 6.48, 6.48, 3.94, 2.56, 2.56], "divs": [0.0, 0.5, 0.62, 2.18, 0.0, 0.0], "gains": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "roc": [3.24, 5.98, 5.86, 1.76, 2.56, 2.56], "ops": [15.76, 5.7, 17.93, -10.96, 4.06, 9.94], "share_div": 0.13064133016627077, "share_gains": 0.0, "share_roc": 0.8693586698337292} |