跳转至

Report Reference

HTML, Excel, and research report export utilities.

Back to API Reference

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.

equity_curve

equity_curve() -> pd.Series

Return normalized equity curve starting at 1.0.

drawdown

drawdown() -> pd.Series

Return drawdown series.

monthly_heatmap

monthly_heatmap() -> pd.DataFrame

Return monthly returns matrix with yearly and monthly totals.

annual_returns

annual_returns() -> pd.Series

Return annual compounded returns.

rolling_returns

rolling_returns() -> pd.Series

Return cumulative rolling returns.

rolling_volatility

rolling_volatility(window: int = 126) -> pd.Series

Return annualized rolling volatility.

rolling_sharpe

rolling_sharpe(window: int = 126) -> pd.Series

Return rolling Sharpe ratio.

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.

exposure

exposure() -> pd.DataFrame

Return daily symbol exposure weights.

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_ic

factor_ic() -> pd.Series

Return factor information coefficient series from analyzers.

factor_rank_ic

factor_rank_ic() -> pd.Series

Return factor rank information coefficient series from analyzers.

factor_turnover

factor_turnover() -> pd.Series

Return factor turnover 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.

drawdown_chart

drawdown_chart()

Return a Bokeh drawdown chart.

monthly_heatmap_chart

monthly_heatmap_chart()

Return a Bokeh monthly heatmap chart.

annual_returns_chart

annual_returns_chart()

Return a Bokeh annual returns 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_returns_chart

rolling_returns_chart()

Return a Bokeh rolling returns chart.

rolling_volatility_chart

rolling_volatility_chart(window: int = 126)

Return a Bokeh rolling volatility chart.

return_quantiles_chart

return_quantiles_chart()

Return a Bokeh return quantiles chart.

rolling_sharpe_chart

rolling_sharpe_chart(window: int = 126)

Return a Bokeh rolling Sharpe 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.

market_replay_chart

market_replay_chart()

Return a market replay chart when market data exists.

price_trades_chart

price_trades_chart()

Return the market replay chart; kept as an internal compatibility alias.

exposure_chart

exposure_chart()

Return a Bokeh exposure chart.

holdings_chart

holdings_chart()

Return a Bokeh holdings chart.

long_short_holdings_chart

long_short_holdings_chart()

Return a Bokeh long/short holdings chart.

gross_leverage_chart

gross_leverage_chart()

Return a Bokeh gross leverage chart.

position_concentration_chart

position_concentration_chart()

Return a Bokeh position concentration chart.

turnover_chart

turnover_chart()

Return a Bokeh turnover chart.

daily_volume_chart

daily_volume_chart()

Return a Bokeh daily transaction volume chart.

transaction_time_histogram_chart

transaction_time_histogram_chart()

Return a Bokeh transaction time histogram.

correlation_matrix_chart

correlation_matrix_chart()

Return a Bokeh correlation matrix chart.

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_ic_chart

factor_ic_chart()

Return a Bokeh factor IC chart.

factor_ic_histogram_chart

factor_ic_histogram_chart()

Return a Bokeh factor IC histogram chart.

factor_ic_qq_chart

factor_ic_qq_chart()

Return a Bokeh factor IC QQ chart.

factor_rank_ic_chart

factor_rank_ic_chart()

Return a Bokeh factor rank IC 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.

explore

explore() -> Any

Open an interactive pygwalker explorer for trades.

ReportContext dataclass

Context passed to custom report sections.

ReportSection

Protocol for user-defined report sections.

html

html(ctx: ReportContext) -> str | None

Return HTML to append to an HTML report.

excel

excel(ctx: ReportContext) -> Mapping[str, Any] | pd.DataFrame | pd.Series | None

Return sheets to append to an Excel report.