f/fundlab/nport_cache/lcrix.json
Greg Pomerantz 54d26939dc Fund Lab: N-PORT holdings page for the 16-fund shortlist
- fundlab/nport.py: parse the fund's own category/percentage lines,
  as-of date, net assets and dollar-valued positions from N-PORT
  schedules of investments (handles per-fund and combined multi-fund
  family filings; conservative keyword bucketing of positions)
- fundlab/nport_cache/<sym>.json: parsed snapshots for 15 of 16 funds
  (raw SOI HTML kept locally, gitignored; source URLs + filing dates in
  nport_manifest.json, md5-verified against EDGAR)
- atesx: no current SOI found (Anchor's recent filings cover the Income
  fund) - listed with an honest note
- app.py: new 'Fund Lab' tab - pick a fund, see objective, reported
  composition (bar + table), rough keyword buckets, top positions, and
  the prospectus strategy excerpt
- tests: parser unit tests (section finding, category regex, buckets)
2026-08-26 09:59:24 -04:00

35 lines
606 B
JSON

{
"sym": "lcrix",
"as_of": "December 31, 2025",
"net_assets": 69463709.0,
"n_positions": 2,
"categories": [
{
"name": "EXCHANGE TRADED FUNDS",
"pct": 91.7
},
{
"name": "Money Market Deposit Account",
"pct": 8.4
}
],
"buckets": [
{
"name": "Fund holdings",
"value": 110547276.0,
"pct": 100.0
}
],
"top": [
{
"text": "TOTAL EXCHANGE TRADED FUNDS (Cost $55,273,638)",
"value": 55273638.0,
"cat": "EXCHANGE TRADED FUNDS"
},
{
"text": "TOTAL INVESTMENTS - 91.7% ( Cost $55,273,638 )",
"value": 55273638.0,
"cat": "EXCHANGE TRADED FUNDS"
}
]
}