Skip to content

alfredcho91-ux/Quant-Lab

Repository files navigation

Quant-Lab

Tests React FastAPI Python TypeScript

Quant-Lab is a quantitative research and strategy analysis platform for crypto and stock markets. The project turns raw hypothesis testing into an operable product: typed APIs, modular quant logic, reusable indicator pipelines, multi-page React workflows, and documentation that makes implementation decisions traceable.

Keywords: quant finance, crypto, stocks, stock trading, algorithmic trading, backtesting, AI-assisted strategy analysis.

Portfolio lens: this repository is intentionally positioned as an Implementation PM case study. It demonstrates how quant research is translated into a maintainable software system with delivery structure, architecture boundaries, execution artifacts, and a clear roadmap.

Executive Snapshot

  • Product scope: 14 frontend route pages, 11 backend modules, 4 feature-sliced frontend domains, and 20 backend test files supporting research, scanning, backtesting, journaling, and AI-assisted exploration.
  • Quant focus: streak analysis, hybrid filters, MTF trend judgment, pattern scanning, and AI-assisted strategy drafting.
  • Engineering focus: React + TypeScript frontend, FastAPI backend, pure indicator/core layers, short-lived live OHLCV snapshot caching, and explicit documentation for architecture, install flow, and feature-to-backend mapping.

Screenshots

AI Strategy Lab

Natural-language strategy drafting, indicator selection, and execution parameter setup in a single workbench.

AI Strategy Lab

Streak Analysis

Pattern-driven streak analysis workflow with EMA filtering, conditional breakdowns, and execution-ready controls.

Streak Analysis

Combo Filter

Rule-combination backtest page for composing MA, Bollinger, and pattern-based entry filters.

Combo Filter

What This Repository Proves

  • I can decompose a quant product into bounded modules instead of growing a monolithic script pile.
  • I can move from research logic to implementation artifacts: API contracts, UI workflows, startup scripts, and validation docs.
  • I can manage technical execution as an Implementation PM, not just write isolated code, by making system decisions explicit and repeatable.

Core Capabilities

1. Streak And Conditional Probability Analysis

  • Evaluates bullish and bearish streak behavior with follow-through statistics.
  • Surfaces confidence intervals, conditional splits, and significance-aware reporting rather than raw hit rates alone.

2. Multi-Timeframe Trend Judgment

  • Aggregates directional evidence across multiple intervals to reduce single-timeframe bias.
  • Uses indicators such as EMA, MACD, Supertrend, and stochastic context to frame regime-level decisions.

3. Hybrid Strategy And Pattern Workflows

  • Supports combined indicator filters, scan-first workflows, and backtest-ready parameterization.
  • Organizes strategy-specific logic under bounded backend modules so features can evolve independently.

4. AI Quant Lab

  • Converts natural-language research prompts into structured analysis conditions.
  • Separates LLM parsing, rule normalization, statistical evaluation, and frontend presentation so AI features remain auditable.

Architecture Decisions

  • core/: Pure quant primitives and indicator pipelines with no HTTP or UI awareness.
  • backend/strategy/: Strategy-specific business logic for streak, hybrid, combo filter, and related domains.
  • backend/modules/: API-facing orchestration, schemas, and service boundaries, with response envelopes and centralized exception wrapping.
  • backend/utils/data_loader.py: Shared OHLCV entry point with CSV fallback and short-lived live-data snapshot caching to avoid redundant market fetches.
  • frontend/src/api/: Centralized API clients that normalize envelopes and throw typed errors so React Query can handle failures consistently.
  • frontend/src/features/: Feature-sliced UI modules that keep complex workflows localized instead of spreading logic across generic components.
  • frontend/src/store/: Persisted Zustand state for shared coin/timeframe context and backtest defaults, kept aligned across pages.

Architecture details live in ARCHITECTURE.md.

Implementation PM Evidence

Quality Gates

  • GitHub Actions runs backend tests, frontend lint/build, and architecture guard scripts on every push to main.
  • The current backend suite collects 124 tests across 20 files, covering quant math, AI orchestration, cache behavior, auth flow, and architecture invariants.
  • The repository includes explicit import guards to prevent core/ and router layers from accumulating cross-layer coupling.
  • Public repo hygiene is enforced via ignore rules that exclude logs, local caches, agent artifacts, and large market data files.

Quick Start

Prerequisites

  • Python 3.9+
  • Node.js 18+
  • Optional local Binance CSV cache under binance_klines/

Run Locally

git clone https://github.com/alfredcho91-ux/Quant-Lab.git
cd Quant-Lab
chmod +x start.sh
./start.sh
  • Frontend: http://localhost:5173
  • Backend API: http://localhost:8000
  • API docs: http://localhost:8000/docs
  • Local development bypasses HTTP Basic auth by default. Basic auth is enforced only when APP_ENV=production.

Runtime Notes

  • Market data can come from local CSV files under binance_klines/ or live Binance fetches through the backend data loader.
  • Live OHLCV requests are snapshot-cached briefly in the backend so repeated multi-page analysis runs do not refetch the same candles immediately.
  • Frontend analysis mutations now rely on typed API errors instead of silent null returns, so error UI and retry flows stay consistent.

Delivery Principles

  • Quant logic is isolated from transport and presentation layers.
  • New features are documented with implementation maps so the repository stays understandable as scope grows.
  • Local startup and recovery are scripted to reduce friction when onboarding or restoring the project.

Public Release

Roadmap

  • Phase 1: Core analytics, backtesting workflows, and architectural modularization
  • Phase 2: Execution-ready live trading integration and portfolio state management
  • Phase 3: Natural-language indicator customization, user-defined strategy composition, and ML-assisted ranking
  • Phase 4: CI/CD, containerization, and cloud deployment hardening

Designed and implemented by Geunwoo Cho, focused on the intersection of Quant Finance and Software Implementation.