Overview
Investify is a full-stack market intelligence platform built around ticker discovery, historical price ingestion, technical feature generation, and ML-backed predictions. It separates the production API, model service, and web dashboard so market data workflows can run independently from the user-facing experience.
Investify Architecture
Investify connects a Next.js dashboard to a Go API, Postgres data layer, and FastAPI ML service for daily prediction and portfolio intelligence workflows.
web
Next.js Dashboard
Ticker browsing, holdings management, charts, confidence gauges, and admin controls.
api
Go API
Chi router with auth, holdings, ticker, price, feature, and admin endpoints.
market
Market Data Providers
Twelve Data integration with a synthetic development provider fallback.
features
Feature Pipeline
Backfills historical prices and computes SMA, EMA, RSI, MACD, momentum, and volatility features.
ml
FastAPI ML Service
Prediction and training routes powered by pandas, scikit-learn, and stored model artifacts.
db
PostgreSQL
Stores users, tickers, holdings, prices, features, credentials, and pipeline jobs.
Service / Data Flow
What I built
- Go backend with JWT auth, role-aware admin routes, holdings CRUD, ticker management, market data ingestion, and encrypted provider credentials
- FastAPI ML service with model training jobs, prediction endpoints, rule-based fallback logic, and stored scikit-learn artifacts
- Technical analysis pipeline for SMA, EMA, RSI, MACD, momentum, volatility, historical prices, and feature snapshots
- Next.js dashboard for active tickers, ticker detail pages, holdings, training controls, price charts, confidence gauges, and feature visibility
- Postgres-backed migrations covering users, API credentials, ticker metadata, constraints, roles, and pipeline jobs
- Dockerized service boundaries for the API, ML service, and web app