EU MAR Insider Transactions Tracker (IT+NL+ES+BE)
Pricing
from $100.00 / 1,000 insider transactions
EU MAR Insider Transactions Tracker (IT+NL+ES+BE)
Pan-European insider transactions feed across four National Competent Authorities (Italy CONSOB, Netherlands AFM, Spain CNMV, Belgium FSMA) in one normalized schema. EU MAR Article 19 same-day senior-manager disclosures. Bloomberg European insider tracker alternative.
Pricing
from $100.00 / 1,000 insider transactions
Rating
0.0
(0)
Developer
NexGenData
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
2 days ago
Last modified
Share
🇪🇺 EU MAR Insider Transactions — Italy + Netherlands + Spain + Belgium
EU MAR Article 19 insider-transaction feed in ONE normalized schema, straight from the National Competent Authority registers.
Pricing: $0.10 per insider transaction delivered (Pay-Per-Event), plus the standard Actor-start event ($0.005). Blocked sources and empty results are never charged.
EU MAR (Market Abuse Regulation) Article 19 requires every senior executive of a listed European issuer to disclose their personal trades in the issuer's shares within 3 business days. Each NCA publishes those disclosures on its own portal — in its own language, on its own schedule, with its own column layout. This actor scrapes four of the most-watched NCAs at once and merges them into a single dataset row schema you can stream into a backtest, an alert pipeline, or a screener.
| Country | NCA | Source register | Status |
|---|---|---|---|
| 🇳🇱 Netherlands | AFM | Managers' transactions MAR 19 | Live — full register export plus the per-notification detail lines (instrument, ISIN, price, quantity, venue) |
| 🇮🇹 Italy | CONSOB | Internal Dealing | Currently unavailable — the page no longer serves a transaction table |
| 🇪🇸 Spain | CNMV | Notificaciones de Transacciones de Ejecutivos | Currently unavailable — the portal answers HTTP 403 to datacenter IPs |
| 🇧🇪 Belgium | FSMA | Transactions by Senior Executives | Currently unavailable — HTTP 404; the FSMA no longer hosts this list |
Each run reports per-NCA status. A country you select that cannot be read makes the run fail with the reason rather than returning a silent empty dataset, and nothing is charged for it. Only real, parsed transactions are billed.
France AMF is intentionally NOT included. The AMF BDIF API geo-blocks non-French IPs with HTTP 500. If you need French dirigeants declarations, use the dedicated france-amf-insider-trades actor (it ships with the right residential-proxy defaults).
📊 Sample Output

country | issuer_name | insider_name | position | transaction_date | transaction_type |
|---|---|---|---|---|---|
| Netherlands | Stellantis N.V. | Gilles R.V. | Head of Design | 2026-09-18 | Vervreemding Verkoop |
| Netherlands | argenx SE | Borgions F. | Chief Technology Innovation | 2026-09-18 | Vervreemding Verkoop |
| Netherlands | argenx SE | Borgions F. | Chief Technology Innovation | 2026-09-18 | Verwerving Omwisseling i.v.m. uitoefening |
Real rows from run KP9SsP94ZdTTJ5dQc on build 0.0.4 (2026-09-24), unedited apart from masked emails/phones and shortened long text; fields the source does not publish are empty.
🔧 Input reference
| Field | Type | Default | What it does |
|---|---|---|---|
country (required) | string (all, italy, netherlands, spain, belgium) | "netherlands" | Which EU National Competent Authority register to query. netherlands (AFM Managers' transactions MAR 19) is the live register today. all walks all four and reports which answe… |
issuer_filter | string | "" | Optional case-insensitive substring filter on the issuer (listed company) name — e.g. Unicredit, ASML, Banco Santander, KBC. Leave empty to return every insider transactio… |
days_back | integer | 7 | Look at insider transactions published/notified within the last N days. EU MAR Article 19 requires disclosure within 3 business days of the trade, so 30 days catches roughly the l… |
transaction_direction | string (any, buy, sell) | "any" | Filter by trade direction. buy keeps only insider purchases (the bullish signal event-driven funds care about). sell keeps only insider sales (the short-seller signal). any… |
max_transactions | integer | 3 | Hard cap on total normalized transaction rows pushed to the dataset (and metered for billing). Typical CONSOB+AFM+CNMV+FSMA combined flow is 200-600 notifications per month. |
proxyConfiguration | object | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]… | Apify proxy configuration. The four NCA portals are publicly accessible from most regions; the default Apify proxy with country=EU is sufficient. Override only if you observe rate… |
🧾 JSON sample record
One real record from run KP9SsP94ZdTTJ5dQc (emails/phones masked, long text shortened):
{"country": "Netherlands","nca": "AFM","issuer_name": "Stellantis N.V.","insider_name": "Gilles R.V.","position": "Head of Design","transaction_date": "2026-09-18","transaction_type": "Vervreemding Verkoop","transaction_direction": "sell","volume": 90000,"price": 4.83,"currency": "USD","total_value_eur": null,"notification_url": "https://www.afm.nl/en/sector/registers/meldingenregisters/transacties-leidinggevenden-mar19-/details?id=202609185B9FF39E-E91E-4E6F-8982-AA6E840BFCD3","data_source": "AFM (EU MAR Article 19)","_raw": {"melding_id": "202609185B9FF39E-E91E-4E6F-8982-AA6E840BFCD3","lei": "549300LKT9PW7ZIBDF31","isin": "NL00150001Q9","instrument_type": "Gewoon aandeel","trading_place": "NEW YORK STOCK EXCHANGE, INC."}}
💰 Pricing
| Event | Price (USD) | When it is charged |
|---|---|---|
Actor Start (apify-actor-start) | $0.005 | Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). |
Insider transaction (insider-transaction) | $0.1 | Per MAR Article 19 insider transaction extracted (Italy/Netherlands/Spain/Belgium) |
Pay-per-event: you pay only for what the run delivers. A run that delivers nothing bills no result events (only the actor-start event, when the actor defines one). Example: a run that delivers 100 results costs 100 × $0.1 = $10.00 plus the start fee.
🔗 Related Actors
More from the NexGenData SEC & US filings family:
- Earnings Estimate Revisions Tracker — EPS Changes API
- Earnings Call Transcripts — Parsed Q&A & Metrics API
- ETF Holdings Tracker — Daily Constituents & Weights API
- HKEX Insider & Short Tracker — 內幕權益 API
- SEC Insider Cluster Detector — Coordinated Form 4 Buys
- IPO Tracker — Upcoming & Priced US IPOs API
48 more in this family on the NexGenData Store page.
🎯 Who buys this data
European long-only portfolio managers
You're running a fundamental Europe book and you want to know when the CFO of a name you own (or are about to own) sold €5M of their own stock at the same time as the company was guiding to a "strong outlook." Insider buys in the same window are an stronger data point. The AFM MAR-19 register alone covers every Dutch-listed issuer, including the Euronext Amsterdam large caps.
Activist short funds
The classic European short setup is: management pumping the story while quietly cashing out. This actor surfaces the cashing-out side automatically, with transaction_direction = "sell" and the EUR value of every disposal, normalized across four jurisdictions. Run daily; alert on dispositions over a size threshold.
ESG & governance teams
Section 27 of the EU SRD II and most major ESG screens flag executive selling clusters around critical disclosures (earnings, M&A, guidance revisions). This actor gives you the structured input to those screens without paying a Big Four data provider €40K/year for the same underlying public records.
⚙️ Sample input
{"country": "netherlands","issuer_filter": "","days_back": 7,"transaction_direction": "any","max_transactions": 3}
Filter to Italian sells in Unicredit over the last 60 days
{"country": "italy","issuer_filter": "UniCredit","days_back": 60,"transaction_direction": "sell","max_transactions": 200}
📊 Sample output
Real row from a live run (2026-09-05):
{"country": "Netherlands","nca": "AFM","issuer_name": "MPC Energy Solutions N.V.","insider_name": "Meichsner S.H.A.","position": "CFO","transaction_date": "2026-09-02","transaction_type": "Vervreemding Verkoop","transaction_direction": "sell","volume": 37000.0,"price": 2.22,"currency": "NOK","total_value_eur": null,"notification_url": "https://www.afm.nl/en/sector/registers/meldingenregisters/transacties-leidinggevenden-mar19-/details?id=...","data_source": "AFM (EU MAR Article 19)"}
Every row carries:
country&nca— so you can pivot the dataset back to jurisdictionissuer_name&insider_name&position(CEO / CFO / Board member / PCA)transaction_date(ISO-8601, normalized fromdd/mm/yyyyand similar)transaction_typein the source language, plus a derivedtransaction_direction(buy/sell/other)volume,priceandcurrencyas the NCA published them;total_value_euris filled only when the trade settled in EUR (never a converted guess)notification_url— deep link back to the source filing for audit
🚀 Run it
From the Apify UI
- Open the actor → Start
- Pick a
country(netherlandsis live today;allwalks every NCA and reports which ones answered) - Set
days_back(default 30) and optionalissuer_filter - Hit Start. Results land in the run's default dataset.
From Python (Apify SDK)
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("nexgendata/eu-mar-insider-transactions-tracker").call(run_input={"country": "netherlands","days_back": 30,"transaction_direction": "sell","max_transactions": 500,})for row in client.dataset(run["defaultDatasetId"]).iterate_items():print(row["country"], row["issuer_name"], row["transaction_type"],row.get("total_value_eur"))
From cURL
curl -X POST "https://api.apify.com/v2/acts/nexgendata~eu-mar-insider-transactions-tracker/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"country": "netherlands", "days_back": 14, "transaction_direction": "buy"}'
🧩 What it does NOT do
- No France AMF. Use the dedicated
france-amf-insider-tradesactor — AMF geo-blocks non-FR IPs. - No Germany BaFin / DGAP — BaFin runs the disclosures through a separate publisher pipeline (DGAP); we may add it in a future release.
- No UK FCA / Investegate — use
investegate-rns-aggregatorfor the LSE/AIM RNS feed. - No Form 4-style insider derivative grants beyond what the NCAs publish — MAR Article 19 covers PDMR personal trades, not 10b5-1 plans, lock-ups, or company-side buybacks.
⚖️ Legal posture
Every record this actor returns is published by the issuer's competent NCA under EU MAR Article 19 — these are public regulatory disclosures by design. The actor reads pages exposed to anonymous browsers, uses a polite User-Agent that identifies the operator and a contact email (hello@thenextgennexus.com), and respects each portal's robots posture. We do not log in, bypass auth, or hit any non-public endpoint.
🔗 Related Actors
Building a multi-jurisdiction insider-trading research stack? These pair naturally with this EU MAR feed:
| Actor | What it covers |
|---|---|
| SEC Form 4 Insider Trading Scraper | US side — every Form 4 PDMR trade on Edgar, same normalized schema philosophy |
| Investegate RNS Aggregator | UK LSE / AIM regulatory news — PDMR notifications, holding announcements |
| China A-Share Insider Trades | SSE+SZSE Chinese insider disclosures — covers the other major EM equity book |
Combine them and you have global insider flow in one stack at a fraction of a Bloomberg/Refinitiv contract.
🙋 Support
Issues, missing NCAs, schema requests, data quality bugs — email hello@thenextgennexus.com. We reply within one business day.
Factual public data — not financial or investment advice.