Kairos Docs / Introduction
Overview · Alpha

Welcome to Kairos.

A local-first trading terminal built as a desktop app. Real-time candlestick charts, options analytics with dealer Greeks, orderflow footprint visualization, a trade journal for performance tracking, and research tools for fundamental analysis — all running offline once data is cached to your local DuckDB.

Alpha
v1 has no live trading. Kairos is a data visualization and research tool. Order entry, broker connectivity, and live position tracking arrive in a future version — the data-source layer is architected to support it.
What Kairos is

A market data + analysis platform for traders. Charts with live tick updates and technical indicators, options chains with gamma exposure mapping, footprint candles showing bid/ask volume imbalance, economic calendars, sector heatmaps, macro dashboards, a backtester, a trade journal with replay, and custom research workspaces. Everything persists to a local columnar database.

What Kairos is not
  • Not a brokerage. Order execution will go through a connected broker API in a later version; v1 is read-only.
  • Not a signal service. There are no recommendations, alerts, or trading signals generated by the platform.
  • Not a cloud service. Once data is populated, the app runs entirely against your local DuckDB — no cloud connectivity required.
Core modules
  • Chart View — real-time candlestick charts on TradingView lightweight-charts v5; technical indicators; live tick updates.
  • Order Flow — footprint candles (bid/ask volume per price level), CVD line, planned DOM heatmap via dxFeed Level 2.
  • Options Chain — full chain with calls, puts, Greeks (delta, gamma, theta, vega, vanna, charm), MenthorQ dealer levels, IV surface, max pain.
  • Journal — six-tab system: Dashboard, Trades, Daily Notes, Calendar, Reports, Playbook. Click any trade to replay the chart from entry to exit.
  • Research — fundamentals, peers, screening across 32 endpoints.
  • Backtester & Bots — strategy editor, historical backtests, and bot stats panel.
Kairos Docs / Getting Started
Overview · Setup

Getting started.

Kairos is a local desktop app — Python/FastAPI backend, React/TypeScript frontend, Electron renderer. Clone, install, run ./start.sh, done. First run boots the backend, opens the Terminal workspace, and begins caching market data to data/terminal.duckdb.

System requirements
  • macOS (Darwin 25+) — Intel and Apple Silicon tested, with native fullscreen support.
  • Python 3.13 at /usr/local/bin/python3 (Homebrew) or /Library/Frameworks/Python.framework/Versions/3.13/bin/python3.
  • Node.js 20+ and npm for the React frontend.
  • Optional — Interactive Brokers Gateway on 127.0.0.1:7497 for future trading connectors.
First run

From the repo root, install dependencies and start the app:

# Backend pip install -r requirements.txt # Frontend npm install # Boot everything (FastAPI on :8000, Electron renderer) ./start.sh

On first run, data sources auto-connect — yFinance is always available (15-min delayed); dxFeed activates if keyed for futures and Level 2. The default Terminal workspace opens with watchlist, chart, and analysis tabs.

Tip
Data sources are configured in .env. yFinance is the free fallback; dxFeed is optional and required only for futures tick data.
Data folder

All cached state — bars, ticks, options chains, journal entries, watchlists, workspace layouts — persists to data/terminal.duckdb. DuckDB is columnar and serverless, so the file is self-contained. Back it up by copying the file.

Kairos Docs / Workstation
The Workstation · Interface

Interface overview.

Kairos uses a workspace + panel model built on Dockview. Each workspace is a persistent, named arrangement of resizable panels. The default Terminal workspace has a watchlist sidebar, a center chart area, and tabbed analysis panels at the bottom. Drag any tab out to tear it into an independent Electron window — panels snap back on drop.

The panel system
  • Workspaces — persistent Dockview layouts (Terminal, Research, Market, Options, or multi-chart grids with 2/4/6/8/12/16 charts). Each workspace is a tab; state auto-saves.
  • Panels — 47 reusable UI modules. Chart, Watchlist, Journal, Options Chain, Backtester, News, Macro, and more. Drag to resize or pop out; search via Command Palette.
  • Link Groups (A–F) — symbol routing. Change the symbol in one linked panel and all others in the group update. Visible as a pill on each tab.
  • Multi-window — tear off any tab into an independent Electron window. Each window has its own Dockview state and persists across restarts.
Command palette

Press ⌘ K (macOS) or Ctrl K (Windows / Linux) to open the command palette. It searches across tickers, panels, and workspaces. Type a symbol to navigate to Research; type a panel name (e.g. chart, journal, macro) to insert it into the active workspace.

Kairos Docs / Chart View
The Workstation · Chart View

Chart view.

Real-time candlestick charts on TradingView lightweight-charts v5 — 60 fps even with hundreds of thousands of bars. Live ticks update the rightmost candle in place. Bars are cached in DuckDB; re-downloads only fill gaps in your local store.

Timeframes & data
  • UI timeframes: 1m, 5m, 15m, 1h, 4h, 1d, 1w.
  • Custom intervals: any OHLCV interval is storable via the backend API.
  • Live updates: ticks stream over WebSocket; the current candle updates without redraw lag.
  • Storage: all bars cached in data/terminal.duckdb; re-downloads only fill gaps.
Technical indicators

Indicators overlay the chart as colored lines, computed via pandas-ta or hand-rolled numpy fallback for speed.

  • EMA 9 / EMA 21
  • SMA 20 / SMA 50
  • Bollinger Bands (BB)
  • VWAP
  • RSI
  • MACD
GEX overlays

Gamma exposure per strike is plotted as horizontal price levels derived from the options chain. Use these to locate dealer flip zones and significant gamma-driven support / resistance bands directly on the chart.

Note
Drawing tools (trendlines, fib, rectangles, annotations) are Soon — the canvas is ready to accept them.
Kairos Docs / Order Flow
The Workstation · Order Flow

Order flow.

Orderflow consists of three pieces: footprint candles (bid/ask volume at each price level within a candle), a cumulative volume delta line tracking aggressor pressure, and a planned DOM heatmap. Footprint is computed server-side from tick data and cached; live ticks update the current candle in real time.

Footprint candles
  • Customizable timeframe — bid/ask volume split at each price level inside each bar.
  • Custom canvas rendering for high performance on dense intraday data.
  • Color logic: cells colored by delta (green = ask-side volume, red = bid-side volume).
  • Auto tick size: ES / NQ = 0.25, RTY = 0.10, YM = 1.0; custom tick sizes configurable per instrument.
CVD

The cumulative volume delta line tracks net buy/sell pressure (ask-trade volume minus bid-trade volume, running total). Rendered alongside the chart, it shows whether each move is being absorbed or confirmed by aggressors.

Soon
DOM heatmap — Level 2 depth visualization is planned and requires a dxFeed subscription for high-frequency depth data.
Kairos Docs / Options Chain
The Workstation · Options

Options chain.

The Options workspace shows a full chain with calls, puts, strikes, expiries, and Greeks. The left rail has 12 sections covering MenthorQ dealer levels, GEX, dealer flows, IV surface and skew, max pain and OPEX dates, and per-strike heatmaps. Chain data caches with a 15-min refresh during RTH and 24-hour after-hours.

Chain columns

Configurable columns on the chain table:

  • strike
  • call bid / ask, volume / OI
  • call delta / gamma / theta / vega
  • put bid / ask, volume / OI
  • put delta / gamma / theta / vega
  • IV, GEX regime
Greeks (Black-Scholes)
  • delta, gamma, theta, vega, rho — first-order standard.
  • vanna (∂Δ/∂σ) — delta sensitivity to vol changes.
  • charm (∂Δ/∂t) — delta decay over time.
  • Vectorized for 500-row chains in milliseconds.
Dealer analytics
  • GEX — gamma exposure per strike.
  • PCR — put/call ratio, both OI-weighted and volume-weighted.
  • DEX — net dealer delta in $ notional.
  • VEX — $ vanna per 1 vol point.
  • CEX — $ charm per day.
Soon
Real-time options flow scanner is a placeholder — full integration requires a paid live-tape data feed.
Kairos Docs / Journal
The Journal · Methodology

The journal.

A six-tab trade logging system. Manual entry, NinjaTrader CSV import, and (post-v1) auto-journaling from broker fills. All data persists to DuckDB. The killer feature: click any trade row or calendar day and re-watch the chart between entry and exit.

The six tabs
  • Dashboard — cumulative P&L, win rate, equity curve.
  • Trades — filterable log with entry / exit price, size, commission, profit, date, tags, notes.
  • Daily Notes — freeform per-day journal with a 1–10 self-grade.
  • Calendar — heatmap of daily P&L; click a day to open the Replay modal.
  • Reports — aggregate by symbol, tag, day-of-week, hour-of-day.
  • Playbook — saved trade setups: entry signal, exit rule, risk rule, notes.
Manual entry

The Trade form takes entry price, exit price, size, commission, tags, and notes — posted to the backend via the form modal. Tags drive the Reports rollups.

NinjaTrader import

Bulk-upload historical trades from NinjaTrader CSV via the nt_import service. Useful for backfilling years of execution history before adopting Kairos as a daily journal.

Chart replay

Click any trade row or calendar day to load the Replay modal. It renders the chart between entry and exit candle with annotations — the single most useful review tool in the journal.

Why it matters
A profitable session with a low process score is more concerning than a losing session with a high score. The journal is calibrated around that principle.
Kairos Docs / Keyboard Shortcuts
Reference · Shortcuts

Keyboard shortcuts.

Navigation is intentionally simple in v1 — most flows route through the command palette. Custom chord bindings via settings.json are planned but not yet wired.

Global
Open command palette
K
Fullscreen (workspace windows)
F
Quit the app
Q
Tear off a tab
Drag
Soon
App-specific chord bindings (e.g. quick chart actions, journal entry, palette filters) configurable in settings.json.
Kairos Docs / API Reference
Reference · API

API reference.

The backend is a FastAPI app exposing ~147 REST endpoints across 18 routers, mounted at /api/<router>/<endpoint>. A single WebSocket at /ws carries live data (prices, bars, alerts, bot stats, news). No auth in v1 — Kairos is a local single-user app.

Router map
  • /api/charts/ — bars, indicators, footprint, quote
  • /api/options/ — chain, GEX, PCR, DEX, vol, structure
  • /api/research/ — fundamentals, peers, screening (32 endpoints)
  • /api/journal/ — CRUD on trades, playbooks, notes (22 endpoints)
  • /api/watchlist/, /api/backtest/, /api/strategies/, /api/bots/, /api/alerts/
  • /api/news/, /api/macro/, /api/market/, /api/calendar/, /api/etf/
  • /api/search/, /api/data_feed/
WebSocket

Single connection at /ws. Subscribe to event types:

  • PRICE_UPDATE — live last-trade ticks
  • BAR_UPDATE — bar close / update for the current candle
  • ALERT_TRIGGERED — fired when an alert condition is met
  • BOT_STAT — per-bot performance updates
  • NEWS_UPDATE — newly ingested news items
Examples
# Get bars GET /api/charts/bars/SPY?timeframe=5m # Get an options chain GET /api/options/chain/SPY?expiry=2026-06-20 # Create a journal trade POST /api/journal/trades # Health check (used by Electron to verify backend) GET /health
Not yet
Official SDK, published OpenAPI schema, third-party integrations, and cloud sync — all on the roadmap, none shipping in v1.