compute_statistics
function backtide.analysis.compute_statistics(data, price_col="adj_close", risk_free_rate=0.0, periods_per_year=None)
Compute per-symbol summary statistics.
Calculates key performance and risk metrics for each symbol in data.
All metrics are annualized based on the detected or specified trading
frequency.
See Also
Create a returns distribution histogram.
Create a drawdown chart.
Plot Maximum Adverse Excursion vs Maximum Favourable Excursion per trade.
Example
>>> from backtide.storage import query_bars
>>> from backtide.analysis import compute_statistics
>>> df = query_bars(["AAPL", "MSFT"], "1d")
>>> stats = compute_statistics(df)
>>> print(stats.head())
symbol sharpe cagr ... ann_volatility sortino total_bars
0 AAPL 0.626087 0.192999 ... 0.436982 0.860772 11514
1 MSFT 0.836758 0.249557 ... 0.332699 1.175650 10188
[2 rows x 8 columns]