Explore more topics
Market-data lake

lake.institutional_filings dataset schema

Column types and research semantics for NexusTrade’s lake.institutional_filings dataset. Read the supported schema before submitting a bounded SQL query.

Query name
lake.institutional_filings
Storage partition
year
Columns
15
Jump to a section

Columns and types

VARCHAR

  • accession
  • availabilitySource
  • submissionType
  • cik
  • managerName
  • reportCalendarOrQuarter
  • amendmentNo
  • amendmentType

DATE

  • filingDate
  • periodOfReport

TIMESTAMP

  • availableAt

BOOLEAN

  • isAmendment

Showing 12 of 15 recorded rows. The complete table is below.

Current logical schema for lake.institutional_filings

Inspect the complete lake.institutional_filings schema

Scroll sideways to compare all columns. Select a heading to sort.

accessionVARCHAR
filingDateDATE
availableAtTIMESTAMP
availabilitySourceVARCHAR
submissionTypeVARCHAR
cikVARCHAR
managerNameVARCHAR
periodOfReportDATE
reportCalendarOrQuarterVARCHAR
isAmendmentBOOLEAN
amendmentNoVARCHAR
amendmentTypeVARCHAR
dateReportedDATE
rawArchiveKeyVARCHAR
sourceUrlVARCHAR

Current logical schema for lake.institutional_filings

Query lake.institutional_filings using the column names and types below. The query validator and engine use this logical catalog; a field absent from an older shard returns typed NULL.

What this table contains

The logical view is backed by canonical manifest-resolved data. Query this name rather than guessing a physical database collection or object-storage path.

Read 13F filing timing and amendment identity

Query example, not executed here. The dates and filters define the proposed research scope; returned rows and current coverage must be checked in your workspace.

periodOfReport is the holdings snapshot date; availableAt is when the filing may inform a decision. Notices do not contain holdings. Inspect amendments before assembling one manager-period book.

SQL
SELECT accession, cik, managerName, availableAt, periodOfReport,
       submissionType, isAmendment, amendmentType, sourceUrl
FROM lake.institutional_filings
WHERE availableAt >= TIMESTAMP '2026-09-01'
  AND availableAt < TIMESTAMP '2026-09-19'
ORDER BY availableAt, cik, accession
LIMIT 20;

Submit the institutional_filings example and read back its parts

Run the exact SQL through the Python SDK

Save this page's SQL as query.sql and the runner below as query.py. Use a registered key with lake scope from Developers. The runner submits the displayed institutional_filings query once, saves its operation, waits on that same ID, saves the returned manifest and downloads its Parquet parts.

This submission has not been executed for the reference page. Inspect the SQL, dates and resource limits before running it. Reuse the request key only for this identical SQL and limits; use a new key when changing them.

Shell
python3 -m pip install nexustrade==1.42.0
export NEXUSTRADE_API_KEY="YOUR_LAKE_SCOPED_KEY"
python3 query.py

Python
import json
from pathlib import Path
from nexustrade import NexusTradeClient

# Save the SQL displayed on this page as query.sql.
sql = Path("query.sql").read_text()
client = NexusTradeClient.from_environment()
operation = client.create_lake_query(
    {"query": sql, "limits": {"timeoutSeconds": 30, "maxRows": 50,
                              "maxResultBytes": 1048576}},
    idempotency_key="reference-institutional_filings-20261012-v1",
)
Path("query-operation.json").write_text(json.dumps(operation, indent=2))
finished = client.wait_for_lake_query(operation["id"])
if finished["status"] != "completed":
    raise RuntimeError(finished)
manifest = client.get_lake_query_manifest(operation["id"])["result"]
Path("query-manifest.json").write_text(json.dumps(manifest, indent=2))
print(json.dumps(manifest, indent=2))
for part in manifest["parts"]:
    Path(f"query-{part['part']}.parquet").write_bytes(
        client.download_lake_query_part(operation["id"], part["part"], max_bytes=1048576)
    )

Coverage and timing

Inspect source coverage and timing before using the rows

The logical view is backed by canonical manifest-resolved data. Query this name rather than guessing a physical database collection or object-storage path.

`availableAt` is the point-in-time column: a row may inform a decision only when `availableAt <= as_of`. It is the end of the SEC filing date in America/New_York. Never use `periodOfReport` as availability — originals file at p50 42 days after period-end (the 45-day rule, measured).

One row per 13F submission: `submissionType` is 13F-HR, 13F-HR/A (amendment), 13F-NT (notice, no holdings) or 13F-NT/A. Amendments are versioned rows with their own `availableAt`; originals are never overwritten. `isAmendment`, `amendmentNo`, `amendmentType` carry the chain.

`cik` is the filing manager's CIK and `managerName` their name as filed. `periodOfReport` is the holdings snapshot date — what the manager held then, not when anyone could know.

`sourceUrl` is the filing's SEC EDGAR index page keyed by manager `cik` (not an issuer): https://www.sec.gov/Archives/edgar/data/{cik without leading zeros}/{accession without dashes}/{accession}-index.htm.

Discussion

Sign in or create a free account to join the discussion.

No comments yet.