2026-03-23 14:45:43 +01:00

Vault Dashboard

A real-time options hedging dashboard for Lombard loan protection strategies.

Features

  • Live Options Data: Integration with Interactive Brokers and free data sources
  • Hedge Calculations: Black-Scholes pricing, Greeks, strategy comparisons
  • Interactive Charts: TradingView-quality visualizations with Lightweight Charts
  • Strategy Analysis: Protective puts, collars, laddered positions
  • Real-time Updates: WebSocket-based live data streaming

Quick Start

Local Development

# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -r requirements.txt

# Run development server
python -m uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Docker

# Build
docker build -t vault-dash .

# Run
docker run -p 8000:8000 vault-dash

Docker Compose

docker-compose up -d

Architecture

┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   IBKR      │────▶│   FastAPI   │────▶│   Redis     │
│   Gateway   │     │   Backend   │     │   (cache)   │
└─────────────┘     └─────────────┘     └─────────────┘
                          │
                          ▼
                    ┌─────────────────────────────┐
                    │     NiceGUI Dashboard       │
                    │   (WebSocket client)        │
                    └─────────────────────────────┘

Configuration

Copy config/settings.example.yaml to config/settings.yaml and configure:

# Broker settings
broker:
  type: ibkr  # or alpaca, yfinance
  
# IBKR settings
ibkr:
  host: 127.0.0.1
  port: 7497  # TWS: 7497, Gateway: 4001
  client_id: 1
  
# Portfolio defaults
portfolio:
  gold_value: 1000000
  loan_amount: 600000
  ltv_ratio: 0.60
  margin_call_threshold: 0.75
  
# Data sources
data:
  primary: yfinance  # or ibkr, alpaca
  cache_ttl: 300

Deployment

See DEPLOYMENT.md for GitLab CI/CD and VPS deployment instructions.

License

MIT

Description
No description provided
Readme MIT 782 KiB
Languages
Python 98.9%
Shell 0.9%
Dockerfile 0.1%