Portfolio Backtester and Analyzer
OpenAlgo provides two authenticated, read-only portfolio workflows:
Portfolio Backtester simulates a target allocation over a historical window.
Portfolio Analyzer reads the holdings currently reported by the connected broker, weights them by current market value, and tests how that allocation would have behaved over a selected lookback.
Neither workflow places, modifies, or cancels an order.
Before You Start
Create an OpenAlgo API key.
For the default Historify source, ingest daily history for every holding and the selected benchmark.
For the Broker API source, log in to the broker and confirm that its history API covers the required symbols and dates.
The engine supports long-only NSE/BSE cash equities and ETFs. It does not model derivatives, short positions, or a separate cash sleeve.
Backtest a Portfolio
Open
/portfolio-backtester.Add up to 50 unique NSE/BSE holdings and assign a positive weight to each. Weights can be percentages or fractions; OpenAlgo normalizes their ratio.
Choose the date range and optional index benchmark.
Choose a history source:
dbreads the local Historify store in one multi-symbol query.apicalls the active broker's history service sequentially.
Select
never,monthly,quarterly, oryearlyrebalancing. An optional drift band can trigger an earlier rebalance.Configure capital, risk-free rate, slippage, and either the Indian delivery-cost schedule or a flat basis-point cost.
Run the backtest. The results page uses one internally consistent result object; changing tabs does not rerun the simulation.
Understand the Results
The analysis can include:
portfolio and benchmark equity curves;
returns, volatility, drawdown, Sharpe/Sortino, capture, and rolling statistics;
holding contributions and trailing returns;
correlation, effective-holdings concentration, co-movement groups, and allocation drift;
realized trading costs, turnover, and rebalancing dates;
walk-forward windows, Monte Carlo paths, crisis periods, attribution, and seasonality;
a portfolio-health grade whose inputs, formulas, and pillar weights are returned with the score.
Use Download tearsheet to export the same model as a self-contained portfolio-tearsheet.html file.
Analyze Current Holdings
Log in to the broker.
Open
/portfolio-analyzer.Choose a 60-3650 day lookback, history source, benchmark, and risk-free rate.
OpenAlgo loads usable broker holdings, calculates market-value weights, and runs the same analytics engine.
Unsupported exchanges remain visible in the holdings summary and are listed as skipped. This is a current-allocation historical scenario, not an account-performance report: holdings data does not reveal when each lot was bought or the investor's cash flows.
Limits
Results use close-to-close price returns. Dividends are absent unless the selected history source embeds an adjusted series.
Missing holding history fails the run instead of silently dropping the asset.
Missing benchmark history degrades benchmark-relative sections but does not invalidate the portfolio calculation.
Results depend on history quality, the chosen allocation, and cost assumptions. They are not a forecast or investment advice.
See the Portfolio API for automation and Portfolio Analytics Architecture for implementation boundaries.
Last updated