About this project
Nordic Insider Signal is an event-driven quantitative trading system focused on Swedish equities listed on Nasdaq Stockholm and First North. Its core trigger is insider cluster detection: a configurable minimum number of distinct insiders buying the same stock within a short lookback window. Before capital is deployed, an LLM confirmation layer using Groq Llama, Anthropic Haiku, or local Ollama acts as a sanity gate.
Signal scoring combines four independent layers on a 0–100 point scale: insider activity (cluster size, role seniority, net SEK bought versus recent sells), fundamentals (revenue trend, profitability, balance sheet quality), macro conditions (SEK/USD momentum, OMX regime filter), and sector strength. Hard vetoes apply for earnings windows, lock-up expirations, and recent rights issues, with a minimum conviction score of 65 required to trade. Thresholds are fixed in config/strategy.yaml and are not adjusted after backtesting.
Risk management uses half-Kelly position sizing, with position value capped by both a maximum portfolio percentage and a maximum percentage of average daily volume. A liquidity ceiling of 2% of 20-day ADV in SEK limits market impact on small-cap names. Exits include a configurable trailing stop, time-based stop, and profit target, evaluated nightly.
The backtesting engine is event-driven and walk-forward, entering trades at day d+1 close to model realistic publication lag. It is point-in-time correct, with the price universe resolved via OpenFIGI before the validation window opens. Documented limitations include no transaction costs in v1, survivorship bias in the downloaded universe, and yfinance coverage gaps treated as held positions.
Data sources include Finansinspektionen for Swedish insider filings, yfinance for OHLCV price history, OpenFIGI for ISIN-to-ticker resolution, and Groq, Anthropic, or Ollama for the LLM confirmation gate. The project is organized into modules for agents, backtesting, configuration, data collection, execution via Nordnet, monitoring, risk, and signals. It is built with Python 3.11, pandas, yfinance, SQLite, PyYAML, and the OpenFIGI API.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.