Insiders as a seventh factor in a multi-factor model
The canonical factors of an equity quant fund, value, momentum, quality, low-vol, size, profitability, are tired. They still work, but their signal-to-noise ratio decays each year. Adding a correctly constructed insider factor can deliver decorrelated alpha. Here's how to integrate the Sigma score into an existing pipeline in under a day, across 5 markets.
Data schema: what the API returns
Each Sigma filing is a normalised record: id, market (FR/US/DE/CH/UK), transaction and publication dates, ticker, ISIN, CIK (US only), insider name, harmonised role (CEO/CFO/Chairman/Director/Other), nature (Acquisition/Disposal/Option/Award), volume, unit price, total amount normalised to EUR and USD, % of market cap, 100-point composite score. Filings are served at `/api/v1/declarations` with filters `market`, `score_gte`, `pubDate_gte`.
Factor construction
Per ticker, aggregate net buys over the last 60 days, weighted by Sigma score. Normalise by market cap. Z-score cross-sectionally by market and sector (so that a single market or sector doesn't dominate). You get an InsiderZ factor per ticker, updated daily, comparable to your model's other z-scores. Combine linearly (or via a meta-learner) with value, momentum and quality. The filtered Sigma subset (signalScore ≥ 40, cluster, mid-cap, executive role, n=196) shows a T+90 win rate of 77% and a mean return of +13.2%/yr over 2022-2025; read as upper bound (Bailey-Lopez de Prado deflated Sharpe is negative, see /methodologie#disclosure).
Sizing and turnover
Insider buys are rare, a few hundred high-score filings per month across all 5 markets combined. Two implications: (1) keep the factor's weight modest in your meta-model (5–15% of total risk is reasonable), (2) lower turnover than for momentum. A 60–90-day carry per signal matches the window where most alpha shows up in our backtests. A high-score signal that hasn't performed by T+120 days should be exited, the post-filing run-up is typically consumed.
Pitfalls to avoid
Three classic biases. (1) Look-ahead: use `pubDate` (the public date), not `transactionDate` (the market didn't know yet). Sigma exposes both. (2) Survivorship: delisted companies must remain in the backtest at their last known price. Sigma keeps delisted entities in history. (3) Cluster trades: one insider splitting a buy across three days isn't three signals. Use the `insiderId` field to deduplicate.
Concrete integration
On the Quant tier (€99/mo), a daily 17:00 UTC cron pulls the last 24h of filings across the 5 markets in a single call, writes to your data lake, and feeds your morning scoring pipeline. Unlimited webhooks, bulk CSV/Parquet exports, 5 user seats, portfolio attribution. For structured funds, a custom Enterprise tier exposes a full historical Parquet dump (2020+) on S3, refreshed daily.
Getting started
Create a Free account to browse the site (15 pages/day, read-only). To reproduce our backtests and measure the InsiderZ factor's correlation with your model, API access starts on Pro (€19/mo, 10k req/mo, MCP, 5-year history). Quant (€99/mo) adds bulk Parquet exports and unlimited webhooks. Full methodology (formula, bounds, documented biases) on /methodologie. Any question: sales@insiders-trades-sigma.app.