Repository navigation
Home
AlgoQuant is a framework for studying, simulating, researching and applying quantitative strategies. Start with the tutorials to learn its APIs; tutorial numerical results are incidental to their teaching purpose.
-
Release and downloads; Maven:
tech.nmfin:algoquant-dist:3.3.2. - Yahoo, Sina and Eastmoney stock/index history and CSV ZIP caching.
- Updated CSI300 data-loading tutorial.
- Complete compatibility survey and known limitations: 84 main sources compile, 31 tests pass; 49 demos completed cleanly, four returned with errors/warnings, one failed, one needed credentials, one aggregate timed out, and the web app passed dedicated checks. Release promotion reused validation without rerunning test suites.
These observations concern execution, not financial validity. CSI300 completed both default baselines but skipped some constituent histories and reported NaN correlation measures. The 990-optimizer grid was not run.
AlgoQuant is a framework and a host/hub for studying, simulating, researching and applying quantitative strategies. It provides the building blocks for data handling, strategy logic, orders, execution, portfolio construction and performance analysis. You can bring your own quantitative models, adapt the supplied implementations and compare alternatives within the same framework.
These examples are tutorials that teach how to use AlgoQuant. Their numerical results are incidental and irrelevant to their teaching purpose. Use them to learn API calls, simulation setup, data flow and reporting. The technical examples use synthetic quick-mode data. Read a result here as an illustration of a library call, not as investment evidence.
Start with SMA2Demo010, then explore strategy configuration, indicators, simulation workflows and portfolio APIs.
| Example | What to study |
|---|---|
| SMA2Demo010 | Build a first SMA crossover simulation and read its report. |
| SMA2Demo011 | Explore another SMA strategy configuration. |
| SMA2Demo020 | Configure signals, execution and performance measures. |
| SMA2DynamicDemo | Run parameter/rebalance experiments and export reports. |
| AccumulationDistributionLineDemo | Use a price/volume indicator in a simulation. |
| ChaikinMoneyFlowDemo | Configure a rolling volume-flow indicator. |
| Example | What to study |
|---|---|
| TutorialStrategyDemo | Follow market events, orders, fills and reporting. |
| BootstrapSimulationDemo | Use resampling and repeated simulations; a framework lesson. |
| GMA12Demo | Call return-model and analytical-rule APIs. |
| CoinBacktestDemo | Apply backtesting infrastructure to a crypto dataset. |
| CSI300SimulationDemo | Configure a constituent universe and historical-data simulation. |
| Example | What to study |
|---|---|
| PortfolioOptimizationAlgorithmDemo | Call an optimizer and map weights to products. |
| PortfolioOptimizationBacktestDemo | Connect rolling weight estimation with simulation. |
| PortfolioOptimComparisons1Demo | Compare allocation algorithms on common generated inputs. |
| PortfolioOptimComparisons2Demo | Compare allocation workflows, reports and rebalancing. |
| SOCPMarkowitzComparisonDemo | Compare solver formulations and numerical outputs. |
| CovarianceComparisonDemo | Compare covariance estimators and inspect numerical diagnostics. |
| MarkowitzBigDemo | Exercise optimizer scaling on generated high-dimensional inputs. |
| PerformanceOptimizedYahooEODPortfolioDemo | Assemble a search objective from performance measures. |
We provide quantitative model implementations as references for study, further research, actual usage and application. They offer starting points for understanding published ideas, testing assumptions and developing your own strategies. Each page explains the underlying idea, its publication where identified, the Java adaptation, and the recorded outputs. Allocation methods, statistical models and trading policies are identified by their role; they are not all standalone trading systems.
| Example | What to study |
|---|---|
| Dai2011LongOnlyDemo | Dai–Zhang–Zhu regime-switching trend following. |
| Example | What to study |
|---|---|
| KagiMRBasketSimulationDemo | Sparse mean-reverting basket construction with a Kagi trading adaptation. |
| MultiPeriodKagiMRStrategyDemo | Repeated-period basket estimation and simulation. |
| Elliott2005StrategyDemo1 | Latent-spread pairs-trading model and signal customization. |
| Elliott2005StrategyDemo2 | Alternative pairs-trading configuration. |
| MeanReversionBasedOnSpreadQuantileDemo | Spread-quantile rule related to pairs trading. |
| OULogSpreadCRRASignalDemo | OU spread dynamics and CRRA allocation calculations. |
| Example | What to study |
|---|---|
| Infantino2010ParamAnalysisDemo | PCA-based accumulated-return forecasts and parameter sensitivity. |
| Infantino2010PredictionAnalysisDemo | Analyze forecasts against observed returns. |
| EconomicModelStrategyDemo | Construct a strategy using economic factor inputs. |
| FundamentalModelStrategyDemo | Construct a strategy using fundamental factor inputs. |
| Example | What to study |
|---|---|
| MarkowitzDemo | Mean–variance allocation in a historical simulation. |
| Corvalan2005Demo | Diversification among nearly equivalent risk–return allocations. |
| Lai2010NPEBModelDemo | Allocation accounting for uncertain estimates through resampling. |
| Example | What to study |
|---|---|
| KnightSatchellTran1995MLEDemo | Fit an asymmetric return-distribution model; a statistical foundation. |
| JanuaryEffectStrategyDemo | Study an explicitly configured calendar-seasonality policy. |
| Example | What to study |
|---|---|
| MRModelFixedGridDemo | Fixed-grid inventory policy. |
| MRModelFixedGridOnSGXDataDemo | Fixed-grid policy applied to SGX observations. |
| MRModelPeriodicDemo | Periodically updated mean-reversion policy. |
| MRModelRanged1Demo | Range-based mean-reversion policy. |
| MRModelRanged2Demo | Alternative range-based policy. |
| MeanReversionPortfolioDemo | Simulate a portfolio of mean-reversion components. |
Use the framework to connect data → model/signal → position sizing → orders/execution → account valuation → performance analysis. Compare assumptions and implementations, reproduce a calculation, and extend it with your own data and evaluation design. Research-oriented adaptations and policies without an identified paper are labelled on their pages.
Open the AlgoQuant apps directory to explore interactive applications built with the framework, directly in your browser.
- SMA2 Strategy Lab: configure a moving-average crossover backtest and compare its portfolio history and performance measures with buy-and-hold and the S&P 500.
- Performance Analyzer: import daily NAV or price data from a public Google Sheet or CSV, compare accounts and benchmarks, and export reports.
These applications illustrate how AlgoQuant supports strategy research, simulation and performance analysis. Their outputs depend on the chosen data and assumptions and do not establish future investment performance.