← All Articles
Disclosure documents connected to a transaction chart and holdings table.

NexusTrade · Open Data

Free historical insider trading data. Institutional holdings, too.

Download SEC disclosures, inspect the filings, and test a strategy before you follow it.

Austin Starks Austin Starks ✦ Founder, NexusTrade ✦ October 3, 2026 ✦ 10 min read

Download SEC insider disclosures back to 2006 and institutional holdings back to 2013, then query them on your laptop.

A simulated insider strategy turning $100,000 into $781,454 is hard to scroll past. That's the result on Nuvectis's company profile, and below I'll show you the curve, the rules, and the filings behind it.

I made the underlying insider disclosures and institutional holdings available as free downloads so you can investigate these ideas yourself. One command turns the published files into a local SQLite database.

Download the complete dataset

Run this command to download the full published history of both insider disclosures and institutional holdings, including their filing tables, into one SQLite database:

Shell
npx sec-ownership-disclosures@latest download --sqlite

The database is saved at ./sec-ownership-data/sec-ownership.db. You need Node.js 22.5 or newer. The download requires no API key or SEC credentials.

If you prefer Parquet files for notebooks or a data warehouse, use:

Shell
npx sec-ownership-disclosures@latest download

Both commands fetch all published years and all four tables. The October 3, 2026 snapshot totals 2.68 GB of compressed Parquet files across 70 files. Institutional holdings account for 2.42 GB of that download. The SQLite command retains those files and creates an additional database, so its total disk usage will be larger than 2.68 GB.

Download the free SEC ownership datasetBrowse the Parquet files and snapshot receipt, or use the commands above to download the full published history.huggingface.co/datasets/austin-starks/sec-ownership-disclosures →

You can use the rows yourself, or open NexusTrade to search the disclosures and compare strategies built from them. You can also combine disclosure signals with technical indicators, company fundamentals, and economic conditions in a custom strategy.

Research insider activity without writing SQL

Start with the insider research page. The Companies view combines each company's officers and directors into one strategy. Switch to People to follow a reporting owner across the companies where they file. You can search by company or ticker, then narrow the people view by reporting owner and role.

Those views answer different questions. A company's strategy asks what happened when its officers and directors reported acquisitions in that company. A person's strategy follows that owner across their reporting history. The company model excludes 10% holders, which keeps a fund's ownership activity from becoming an officer-and-director signal.

Open a profile to see the strategy rules, performance curve, comparison with SPY, and maximum drawdown. The filing section separates the transaction date from the public date and lets you inspect the evidence behind a signal.

Nuvectis insider strategy showing its performance curve, 681.5 percent simulated return, 88.1 percent SPY return, and 71.2 percent maximum drawdown.
Nuvectis's company profile, captured October 3, 2026, shows the simulated return and the loss experienced along the way. Click the screenshot to inspect the strategy.

A 681.5% gain is an extraordinary result. The Nuvectis follower strategy turned $100,000 into $781,454 over roughly five years, while the same starting investment in SPY grew to about $188,100. That's almost eight times the starting capital and more than four times SPY's ending value. This is the simulated result shown on October 3, 2026, with fees included.

That is the kind of result that makes these disclosures worth investigating. You can open the strategy, inspect its rules, and test your own variation. Its 71.2% maximum drawdown also tells you how rough the ride was: the remarkable ending value came with a severe loss along the way.

The insider model treats public purchases and issuer awards as separate acquisition signals. An award is compensation, so it is kept distinct from a purchase; a purchase-only strategy like the Aurora example below excludes awards. The follower rules can select shares or modeled yearly at-the-money options, held for a 45-day window. A public sale blocks the corresponding stock, call, or put position. Those options are modeled substitutions, rather than a reconstruction of the insider's actual account.

You can also switch the leaderboard to strategies that trailed SPY. That gives you a way to examine where the same rules failed, rather than choosing only the most impressive historical winner.

Explore insider strategiesSearch companies and reporting owners, compare their modeled strategies with SPY, and inspect public filings.nexustrade.io/research/insiders →

Inspect institutional holdings and test a follower strategy

The institutional research page ranks modeled strategies built from managers' public 13F disclosures. Search a manager by name or CIK, open its profile, and inspect the disclosed positions alongside the strategy result. The leaderboard also lets you examine strategies that trailed SPY.

A manager profile shows the reporting period and the date the filing became public. Its holdings table includes issuer names, security identifiers, reported values, and share amounts, with a link to the official SEC filing.

BML Capital Management holdings table with its June 30, 2026 reporting period, August 8 public filing date, issuer names, tickers, CUSIPs, and SEC filing link.
BML Capital Management's profile keeps the reporting period and public filing date above the disclosed positions. Click the screenshot to open the holdings and official source.

NexusTrade follows each quarterly book after publication and models disclosed stock positions with shares. Disclosed calls and puts become modeled yearly at-the-money options because a 13F does not provide the original strike or expiration. The reported underlying value determines their relative budgets; it does not tell you the option premium the manager paid.

The profile's curve, SPY comparison, and risk statistics describe that follower simulation, with fees. They do not establish the manager's actual fund performance. This matters especially when a leaderboard result looks extraordinary: inspect the holdings and model assumptions before deciding the approach belongs in your own portfolio.

Explore institutional strategiesFind a manager, inspect its public holdings, and compare the modeled follower strategy with the S&P 500.nexustrade.io/research/institutions →

Build a custom strategy with technical, fundamental, economic, and alternative data

NexusTrade lets you describe investing rules in plain English and use Aurora to turn them into a strategy you can backtest. Insider disclosures and institutional holdings add another set of inputs to the technical, fundamental, and economic data already available in the platform.

Each type of data can answer a different question:

Data What you can use it for
Technical indicators You can use moving averages or RSI to define price trends, entry conditions, and exits.
Company fundamentals You can filter companies by valuation or revenue growth before deciding what to buy.
Economic indicators You can make a rule depend on conditions such as the unemployment rate or Treasury yields.
Insider and institutional disclosures You can use reported insider purchases, the number of distinct buyers, institutional holder counts, or changes in disclosed holdings as signals.

For example, insider purchases might identify a company worth investigating. A fundamental filter can narrow that list to companies meeting your valuation criteria. A moving average can control when you enter, and an economic condition can determine when the strategy is allowed to hold risk.

Here is a concrete research request you can give Aurora:

Build a stock strategy that requires at least two distinct officers or directors to report purchases in the past 90 days, a positive trailing P/E below 25, and a price above its 200-day moving average. Allow new entries only when the unemployment rate is below 5%. Hold at most 10 stocks with equal weights. Backtest it against SPY and show maximum drawdown.

Open this prompt in Aurora ↗

The request opens in Aurora ready for you to review and send.

This request combines all four data types in one strategy. Its 90-day purchase window starts when the filings become public. Aurora can build and backtest those specific rules so you can inspect the result.

Fundamental and economic indicators require a paid subscription. The public dataset download is free.

You can take the same approach with institutions. Ask Aurora to start with disclosed institutional ownership, add your valuation and trend rules, and test the resulting portfolio. An increase between 13F snapshots tells you how reported holdings changed; it does not reveal the dates of trades between reports.

On the research pages, Build a strategy opens Aurora with the relevant disclosure context. Open a company or manager profile first if you want the request to start with that specific source. For a narrower variation, ask:

Build a stock-only version of the BML Capital Management institutional follower strategy (manager CIK 0001616824) with at most 10 holdings. Require each stock to be above its 200-day moving average. Backtest it and compare its return and maximum drawdown with the original NexusTrade follower strategy.

Open this prompt in Aurora ↗

The request opens in Aurora ready for you to review and send.

On an eligible profile, Fork this strategy creates an independent, inactive paper portfolio with the saved rules. You can inspect that starting portfolio before changing it. Forking does not place a live order or automatically mirror the reporting owner's future trades and rule changes.

A useful first pass is to inspect a profile's worst drawdown, read its rules, and follow the source filing. Then build or fork the version you want to test. Compare the changed strategy with both the original and SPY before deciding to run it.

Create a custom strategy with AuroraDescribe your disclosure signals, technical rules, valuation filters, and economic conditions, then backtest the resulting strategy.nexustrade.io/agent →

What is included in the free download

Table Each row represents Historical coverage
insider_transactions A reported derivative or non-derivative transaction leg. The documented backfill covers 2006 Q1 through 2026 Q2.
insider_filings A filing and reporting-owner combination. The documented backfill covers 2006 Q1 through 2026 Q2.
institutional_holdings A reported 13F information-table holding leg. The documented backfill begins in 2013 Q2.
institutional_filings A 13F submission, including its reporting-period and amendment metadata. The documented backfill begins in 2013 Q2.

These coverage descriptions come from the project documentation checked October 3, 2026. Consult the public snapshot receipt for the files currently available.

Separate insider purchases from compensation

Insider disclosures include purchases, sales, grants, option exercises, and other changes in ownership. A research question about purchases needs to distinguish those activities.

The SEC defines transaction code P as an open-market or private purchase. Filtering for that code is a useful first step, but the code alone does not establish that a purchase occurred on an exchange or explain the insider's motivation.

If you have the SQLite command-line tool installed, open the insider database with sqlite3 ./sec-ownership-data/sec-ownership.db. Paste this query to count disclosed purchase legs by resolved ticker within the downloaded table:

SQLite
SELECT resolvedTicker,
       COUNT(*) AS reported_purchase_legs
FROM insider_transactions
WHERE transactionCode = 'P'
  AND availableAt >= '2024-01-01'
  AND availableAt < '2025-01-01'
  AND resolvedTicker IS NOT NULL
GROUP BY resolvedTicker
ORDER BY reported_purchase_legs DESC, resolvedTicker
LIMIT 10;

The result counts rows. Amendments, multiple reporting owners, and multiple transaction legs require additional handling before interpreting those counts as unique economic purchases. The result also says nothing about subsequent investment returns.

Read the SEC's guide to Forms 3, 4, and 5 for the reporting framework and transaction-code definitions.

Understand what institutional holdings reveal

13F disclosures let you inspect the reportable securities a manager held at a reporting date. Comparing successive reports can reveal changes in disclosed positions.

Those reports do not reveal every trade between quarters. A manager could buy and sell a position between reporting dates without that round trip appearing in either snapshot. Short positions are excluded, and the filing covers securities subject to the 13F reporting framework.

The same database includes institutional holdings. This query shows the latest holding rows available before January 1, 2025:

SQLite
SELECT accession, availableAt, issuerName,
       cusip, sharesAmount
FROM institutional_holdings
WHERE availableAt < '2025-01-01'
ORDER BY availableAt DESC, accession, cusip
LIMIT 10;

The full download also includes institutional_filings for manager names and reporting periods. Join the holdings and filing tables on accession.

Read the SEC's Form 13F FAQ for the reporting scope, deadlines, and treatment of short positions.

Research starts when the filing becomes available

A transaction date tells you when an insider acted. A reporting period tells you when a manager held a position. Neither establishes when you could have learned about it.

Each dataset row includes an availableAt timestamp. For the quarterly SEC datasets, the package assigns availability to the end of the filing date in America/New_York. That gives daily research a conservative filing-day convention; it does not provide an exact intraday publication timestamp.

Suppose a manager reports December holdings in February. A strategy using that filing can react after the disclosure becomes available in February. Giving the strategy those holdings in December would introduce future information into the test.

Availability filtering is one part of a credible backtest. You also need to handle amendments, historical security identifiers, price coverage, and execution timing. Keep unresolved symbols visible rather than silently substituting a current ticker.

Verify the download or rebuild from the SEC

The downloader verifies each file against the SHA-256 checksum recorded in snapshot.json. Files already present with the expected digest are reused.

Inspect the public snapshot receipt before describing a download as current or complete.

The open-source package also provides a separate path for downloading official SEC archives, parsing them, and auditing the result. Its audit re-parses archived source files and checks relationships and row identities. Researchers can inspect and extend that process themselves.

Read or fork the extraction softwareInspect the download commands, separate insider and institutional backfill paths, and integrity checks in the open-source repository.github.com/austin-starks/sec-ownership-disclosures →

Use the rows for your own research

The download gives you a starting point for questions about reported insider purchases and institutional ownership. You can query the rows locally, inspect disclosure timing, and join the records to your own market data.

Open the insider workspace or institutional workspace to inspect the evidence and test your own strategy. The free dataset remains available for research in your own tools.

Inspect a strategy before you follow it

Open the insider workspace to compare modeled results, read the rules, and build your own paper portfolio.

Explore insider research

Build the strategy this article describes

Create a free account to backtest ideas against market history, inspect the risk, and deploy to paper or live markets when you're ready.

or

Free to browse. No credit card required.

Discussion

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

No comments yet.