Report Reference¶
HTML, Excel, and research report export utilities.
Strategy report facade.
Reporter ¶
Build report-ready summaries and series from backtest stats.
from_returns
classmethod
¶
from_returns(*, returns: Series, positions: DataFrame | None = None, transactions: DataFrame | None = None, benchmark: Series | None = None, market_data: DataFrame | None = None, periods: int = 252, strategy_name: str = 'external-returns') -> Reporter
Create a reporter from external return series and optional holdings.
__init__ ¶
__init__(stats: Any, periods: int = 252, market_data: DataFrame | None = None) -> None
Create a reporter from a Stats-like object or mapping.
summary ¶
summary(benchmark: Series | None = None) -> dict[str, float | int | str]
Return report summary statistics.
monthly_heatmap ¶
monthly_heatmap() -> pd.DataFrame
Return monthly returns matrix with yearly and monthly totals.
rolling_volatility ¶
rolling_volatility(window: int = 126) -> pd.Series
Return annualized rolling volatility.
rolling_beta ¶
rolling_beta(benchmark: Series, window: int = 126) -> pd.Series
Return rolling beta to a benchmark.
active_returns ¶
active_returns(benchmark: Series) -> pd.Series
Return daily active returns against a benchmark.
tracking_error ¶
tracking_error(benchmark: Series) -> float
Return annualized tracking error against a benchmark.
active_weights ¶
active_weights(benchmark_weights: DataFrame | Series | None = None) -> pd.DataFrame
Return active exposure weights against optional benchmark weights.
performance_attribution ¶
performance_attribution(benchmark: Series) -> pd.DataFrame
Return benchmark-relative return attribution rows.
top_drawdowns ¶
top_drawdowns(limit: int = 10) -> pd.DataFrame
Return the largest drawdown episodes.
trade_distribution ¶
trade_distribution(bins: int = 20) -> pd.DataFrame
Return trade PnL histogram bins.
correlation_matrix ¶
correlation_matrix() -> pd.DataFrame
Return multi-asset exposure correlation matrix.
factor_quantile_returns ¶
factor_quantile_returns() -> pd.DataFrame
Return factor quantile cumulative returns from analyzers.
factor_quantile_stats ¶
factor_quantile_stats() -> pd.DataFrame
Return factor quantile statistics from analyzers.
factor_quantile_spread ¶
factor_quantile_spread() -> pd.Series
Return factor top-minus-bottom quantile spread from analyzers.
factor_quantile_counts ¶
factor_quantile_counts() -> pd.DataFrame
Return factor quantile membership counts from analyzers.
factor_quantile_forward_returns ¶
factor_quantile_forward_returns() -> pd.DataFrame
Return raw forward returns by factor quantile from analyzers.
factor_long_short_returns ¶
factor_long_short_returns() -> pd.DataFrame
Return factor long-short cumulative returns from analyzers.
factor_rank_ic ¶
factor_rank_ic() -> pd.Series
Return factor rank information coefficient series from analyzers.
factor_autocorrelation ¶
factor_autocorrelation() -> pd.Series
Return factor autocorrelation series from analyzers.
factor_events_distribution ¶
factor_events_distribution() -> pd.DataFrame
Return factor event rows from analyzers.
equity_curve_chart ¶
equity_curve_chart(benchmark: Series | None = None)
Return a Bokeh equity curve chart.
monthly_returns_distribution_chart ¶
monthly_returns_distribution_chart()
Return a Bokeh monthly returns distribution chart.
monthly_returns_timeseries_chart ¶
monthly_returns_timeseries_chart()
Return a Bokeh monthly returns time series chart.
rolling_volatility_chart ¶
rolling_volatility_chart(window: int = 126)
Return a Bokeh rolling volatility chart.
rolling_beta_chart ¶
rolling_beta_chart(benchmark: Series, window: int = 126)
Return a Bokeh rolling beta chart.
trade_distribution_chart ¶
trade_distribution_chart(bins: int = 20)
Return a Bokeh trade distribution chart.
price_trades_chart ¶
price_trades_chart()
Return the market replay chart; kept as an internal compatibility alias.
position_concentration_chart ¶
position_concentration_chart()
Return a Bokeh position concentration chart.
transaction_time_histogram_chart ¶
transaction_time_histogram_chart()
Return a Bokeh transaction time histogram.
factor_quantile_returns_chart ¶
factor_quantile_returns_chart()
Return a Bokeh factor quantile returns chart.
factor_quantile_returns_bar_chart ¶
factor_quantile_returns_bar_chart()
Return a Bokeh factor quantile mean returns bar chart.
factor_quantile_spread_chart ¶
factor_quantile_spread_chart()
Return a Bokeh factor quantile spread chart.
factor_quantile_counts_chart ¶
factor_quantile_counts_chart()
Return a Bokeh factor quantile counts chart.
factor_quantile_returns_violin_chart ¶
factor_quantile_returns_violin_chart()
Return a Bokeh factor quantile return distribution chart.
factor_long_short_returns_chart ¶
factor_long_short_returns_chart()
Return a Bokeh factor long-short returns chart.
factor_turnover_chart ¶
factor_turnover_chart()
Return a Bokeh factor turnover/autocorrelation chart.
factor_events_distribution_chart ¶
factor_events_distribution_chart()
Return a Bokeh factor events distribution chart.
excel ¶
excel(path: str, benchmark: Series | None = None, sections: list[Any] | tuple[Any, ...] | None = None) -> Any
Write an Excel report.
html ¶
html(path: str, benchmark: Series | None = None, sections: list[Any] | tuple[Any, ...] | None = None) -> Any
Write an HTML report.
report ¶
report(path: str | Path, benchmark: Series | None = None, format: str | None = None, sections: list[Any] | tuple[Any, ...] | None = None) -> Any
Write a report, dispatching to HTML or Excel from suffix/format.
ReportContext
dataclass
¶
Context passed to custom report sections.