f/fundlab/nport_manifest.json
Greg Pomerantz a09861f39f N-PORT cross-check: verify top candidates' actual holdings
fundlab/xcheck.py - for each screen candidate, resolve the fund's OWN
registrant CIK (browse-edgar; the 497-cover CIK is the family/trust),
get the exact series name for the ticker (the only reliable
disambiguator between sibling funds), walk the 4 most recent NPORT-P
filing dates, and parse holdings from the interactive NPORT XML
(primary_doc.xml at the accession root - NOT the XSL-rendered view the
submissions API points at). Exact seriesName match > best htm exhibit
parse. Buckets from the authoritative assetCat+issuerCat codes (ABS-O,
ABS-CBDO, DBT+UST/CORP/MUN/NUSS, LON, STIV, RA, EC+RF=fund, ...), not
position-name keywords. Resumable; raw filings cached under
nport_cache/raw/ (gitignored).

nport.py - _SECTION gains the "INVESTMENT PORTFOLIO (unaudited)"
variant (NPORT-EX Sch-F files); find_section/build gain a frac
token-tolerance param (Yahoo names drift from filing names); CMBS/ABS
bucket gains CLO/CBDO/DAC terms.

app Fund Lab - "N-PORT cross-check" expander: per-candidate table
(as-of, n, t5, top code-bucket, #1 position) + per-fund holdings
detail.

RESEARCH.md - cross-check verdicts. 21/22 resolved (qcmmrx is an MMF,
no holdings). The screen's top names are REAL:
- hmezx/mervx = genuine merger arb (equity in deal targets + escrow)
- egrix = 100% wrapper in one macro managed portfolio (underlying not
  NPORT-disclosed); etsix = fund of EV internal multi-strat accounts
- wmnux = discounted/zero-coupon corporate bonds + equity swaps (the
  "equity names" are bond issuers/swap underlyings)
- scfzx/rctix/aflix = securitized credit/CLO/distressed/levered loans
- hicox/fhmix/usmsx/btmix (munis), aguax/femdx (EM sovereign), anglx
  (agency MBS), lpxax (rotated out of prefs into bank/financial debt)
  = genuine missing-factor exposures the 35-sleeve model lacks
- fhcox/dultx/safex = short-duration carry (a short-duration sleeve
  would explain them)

tests/test_fundlab.py - test_xcheck (14 checks): parse_interactive,
code buckets, name-match normalization, series-name disambiguation.
Also: untrack fundlab/streamlit.log; gitignore raw/ + xcheck_run.log.

84 fundlab / 32 app / 14 data tests pass.
2026-08-27 12:43:17 -04:00

151 lines
5.2 KiB
JSON

{
"mbxix": {
"url": "https://www.sec.gov/Archives/edgar/data/0001355064/000175272424272710/catalyst-nqs.htm",
"filed": "2024-11-27"
},
"atrfx": {
"url": "https://www.sec.gov/Archives/edgar/data/0001355064/000091047226008781/catalyst_combined-nqs.htm",
"filed": "2026-06-01"
},
"cvsix": {
"url": "https://www.sec.gov/Archives/edgar/data/0000826732/000141036826034378/NPORT_CVXM_73904120_0126.htm",
"filed": "2026-03-31"
},
"jlpsx": {
"url": "https://www.sec.gov/Archives/edgar/data/0001217286/000207169126012768/JPMUSLCCPF.htm",
"filed": "2026-05-29"
},
"pmaix": {
"url": "https://www.sec.gov/Archives/edgar/data/0002042316/000094040026007873/AAPI030AMU123125.htm",
"filed": "2026-02-25"
},
"pmorx": {
"url": "https://www.sec.gov/Archives/edgar/data/0001005942/000207169126008603/PMOF.htm",
"filed": "2026-04-23"
},
"qspnx": {
"url": "https://www.sec.gov/Archives/edgar/data/1444822/000207169126010957/primary-document.htm",
"filed": "2026-05-22"
},
"svarx": {
"url": "https://www.sec.gov/Archives/edgar/data/0001556505/000091047226011625/spectrum_nport.htm",
"filed": "2026-08-14"
},
"cosix": {
"url": "https://www.sec.gov/Archives/edgar/data/0000773757/000141036826076621/NPORT_652000_94123773_0526.htm",
"filed": "2026-07-29"
},
"eagmx": {
"url": "https://www.sec.gov/Archives/edgar/data/0001493214/000141036825012467/NPORT_FS8A_89608502_0725.htm",
"filed": "2025-09-26"
},
"lcorx": {
"url": "https://www.sec.gov/Archives/edgar/data/0001511699/000089418926004505/core-etf.htm",
"filed": "2026-02-24"
},
"lamhx": {
"url": "https://www.sec.gov/Archives/edgar/data/0000887194/000141036826041319/NPORT_FDC7_25625056_0226.htm",
"filed": "2026-04-28"
},
"pmfkx": {
"url": "https://www.sec.gov/Archives/edgar/data/0002042316/000094040026007873/AAPI030AMU123125.htm",
"filed": "2026-02-25"
},
"lcrix": {
"url": "https://www.sec.gov/Archives/edgar/data/0001511699/000089418926004505/core-etf.htm",
"filed": "2026-02-24"
},
"egrsx": {
"url": "https://www.sec.gov/Archives/edgar/data/0001493214/000141036825012467/NPORT_FS8A_89608502_0725.htm",
"filed": "2025-09-26"
},
"atesx": {
"url": "https://anchor-capital.com/wp-content/uploads/2024/10/anchor-soi-5.31.26.pdf",
"filed": "2026-05-31",
"note": "Schedule of Investments (unaudited) from the adviser's website; the fund's own recent EDGAR N-PORTs cover only the Income fund. Composition: QQQ 65.2% + SPY 29.3% + MMF 0.6%; 'other assets in excess of liabilities' 4.9% indicates an options overlay."
},
"hmezx": {
"url": "https://www.sec.gov/Archives/edgar/data/1354917/000204825126004762/primary_doc.xml",
"filed": "2026-06-01"
},
"egrix": {
"url": "https://www.sec.gov/Archives/edgar/data/745463/000141036826064358/primary_doc.xml",
"filed": "2026-06-24"
},
"hicox": {
"url": "https://www.sec.gov/Archives/edgar/data/810744/000119312526247714/primary_doc.xml",
"filed": "2026-05-29"
},
"scfzx": {
"url": "https://www.sec.gov/Archives/edgar/data/887991/000094040026034728/primary_doc.xml",
"filed": "2026-08-26"
},
"etsix": {
"url": "https://www.sec.gov/Archives/edgar/data/745463/000141036826064371/primary_doc.xml",
"filed": "2026-06-24"
},
"wmnux": {
"url": "https://www.sec.gov/Archives/edgar/data/1545440/000091047226009666/primary_doc.xml",
"filed": "2026-06-25"
},
"coiax": {
"url": "https://www.sec.gov/Archives/edgar/data/804239/000204825126004571/primary_doc.xml",
"filed": "2026-05-29"
},
"fhcox": {
"url": "https://www.sec.gov/Archives/edgar/data/1707560/000170756026000148/primary_doc.xml",
"filed": "2026-07-27"
},
"rctix": {
"url": "https://www.sec.gov/Archives/edgar/data/1516523/000206657826001957/primary_doc.xml",
"filed": "2026-05-29"
},
"aflix": {
"url": "https://www.sec.gov/Archives/edgar/data/1552947/000091047226010046/primary_doc.xml",
"filed": "2026-06-29"
},
"fhmix": {
"url": "https://www.sec.gov/Archives/edgar/data/1707560/000170756026000149/primary_doc.xml",
"filed": "2026-07-27"
},
"dultx": {
"url": "https://www.sec.gov/Archives/edgar/data/230173/000094040026034423/primary_doc.xml",
"filed": "2026-08-26"
},
"usmsx": {
"url": "https://www.sec.gov/Archives/edgar/data/1659326/000207169126017013/primary_doc.xml",
"filed": "2026-07-28"
},
"btmix": {
"url": "https://www.sec.gov/Archives/edgar/data/1282693/000119312526351309/primary_doc.xml",
"filed": "2026-08-14"
},
"safex": {
"url": "https://www.sec.gov/Archives/edgar/data/1257927/000100472626004071/primary_doc.xml",
"filed": "2026-05-28"
},
"mervx": {
"url": "https://www.sec.gov/Archives/edgar/data/1208133/000094040026022206/primary_doc.xml",
"filed": "2026-05-29"
},
"aguax": {
"url": "https://www.sec.gov/Archives/edgar/data/809593/000141036826067719/primary_doc.xml",
"filed": "2026-06-26"
},
"dmszx": {
"url": "https://www.sec.gov/Archives/edgar/data/1688680/000100371526002697/primary_doc.xml",
"filed": "2026-07-20"
},
"anglx": {
"url": "https://www.sec.gov/Archives/edgar/data/1612930/000119312526285138/primary_doc.xml",
"filed": "2026-06-26"
},
"femdx": {
"url": "https://www.sec.gov/Archives/edgar/data/1124459/000207169126014416/primary_doc.xml",
"filed": "2026-06-24"
},
"lpxax": {
"url": "https://www.sec.gov/Archives/edgar/data/1652200/000141036826065480/primary_doc.xml",
"filed": "2026-06-24"
}
}