VeighNa (formerly vnpy) is a mature, open-source quantitative trading framework written in Python. It provides a complete ecosystem for developing, backtesting, and executing algorithmic trading strategies across multiple asset classes including Chinese futures, stocks, options, and global markets via interfaces like CTP, XTP, Interactive Brokers, and more. The system is built on an event-driven architecture with a central MainEngine that orchestrates gateways (exchange connections), apps (strategy modules), and engines (services such as order management, logging, email, and WeChat notifications). It offers both a full-featured PySide6 desktop GUI and headless/scriptable operation, making it suitable for both manual and automated trading. The framework includes a dedicated alpha research module (vnpy.alpha) for factor-based strategy development, featuring built-in factor datasets (Alpha101, Alpha158), machine learning models (Lasso, LightGBM, MLP), and a backtesting engine. This gives the repository a hybrid character: primarily an application framework for trading, but with significant data/research capabilities for quantitative analysis. The codebase demonstrates strong engineering practices with plugin-based design, abstract interfaces for databases and datafeeds, and reusable utility classes like BarGenerator, ArrayManager, and OffsetConverter. However, some modules are monolithic and tightly coupled, and the large ecosystem of external gateway packages introduces version compatibility risks.
Fincept Terminal is a native C++20/Qt6 desktop financial intelligence platform, open-sourced under AGPL-3.0, with a proprietary Enterprise edition. It functions as a comprehensive trading, research, and analytics terminal supporting equities, options, futures, crypto, forex, and prediction markets. The architecture is a modular monolith: a single Qt Widgets process with embedded Python 3.11 for scripting, SQLite for persistence, and a DataHub pub/sub system for real-time data flows. Key entry points are the main window (WindowFrame) and screen router (DockScreenRouter), with over 100 data connectors, 20+ broker integrations, backtesting engines (QuantConnect/LEAN compatibility), AI agents (LangGraph/Agno-based), and extensive analytics (corporate finance, portfolio optimization, options pricing, economic indicators). The repository is actively maintained with a monthly release cycle, but contains a very large codebase with some boilerplate and incomplete features, making it powerful but complex to reuse partially.
Qlib is an open-source, AI-oriented quantitative investment platform developed by Microsoft. It covers the full pipeline for quantitative research and trading: data ingestion and feature engineering (Alpha158, Alpha360, high-frequency), model training (traditional ML like LightGBM/XGBoost, deep learning in PyTorch including LSTM, GRU, Transformer, GATs, and reinforcement learning), backtesting with realistic costs and slippage, portfolio optimization, and online serving for production-like deployment. The platform is highly modular and config-driven, with a core library (qlib) and a separate contrib layer for community extensions. It includes a CLI (qrun) for running full workflows from YAML configs, extensive experiment tracking via MLflow, and a rich set of evaluation metrics. While primarily a library/application, it also functions as a research benchmark suite with many example models and data collectors for global markets. The codebase is active and well-maintained, though some components (e.g., TFT model, older RL code) show signs of technical drift due to dependency version locks and deprecated patterns.
This is a Python library for quantitative finance, specifically portfolio optimization and risk management. It implements Conditional Value-at-Risk (CVaR) optimization using Benders decomposition, mean-variance optimization via quadratic programming, and entropy pooling for adjusting scenario probabilities under user-defined views and stress tests. The library also includes fully flexible resampling (FFR) for simulation, Black's model for option pricing, and a set of helper functions for financial statistics. It is designed as a monolithic Python package with a clean API, extensive tests (100% coverage), and 14 Jupyter notebooks that serve as reproducible examples. While the primary character is an application library, it has a strong research and educational orientation, referencing academic papers and providing walkthroughs. The code is well-structured, but domain-specific and depends on cvxopt with GLPK for linear programming, which may limit portability.