Methodology

PnL Breakdown & Custom Composite Benchmarks

Institutional standards for decomposing net portfolio performance into 4 independent sources and constructing custom composite benchmarks.

1. PnL Breakdown Engine

Traditional retail tools reduce performance to a single net PnL figure. In institutional portfolio management, and in Firewire, total return is decomposed into 4 components:

$$\text{Total PnL} = \text{Asset PnL} + \text{FX PnL} + \text{Yield Income} - \text{Costs}$$

All components are in rubles over the whole observation period. Where:

  • $\text{Total PnL}$ — total financial result: position revaluation (current value minus value at balance price — the portfolio summary's total change) plus received payouts $\text{Yield Income}$ minus $\text{Costs}$.
  • $\text{FX PnL}$ — unrealized result of foreign-currency positions (in rubles).
  • $\text{Yield Income}$ — passive income actually received: dividends and bond coupons credited to the account (accrued interest not yet paid out is not included).
  • $\text{Costs}$ — fees and taxes from cash flows: trade commissions, other broker fees and withheld taxes (rubles). The widget labels this line “Fees & Taxes (Costs)”.
  • $\text{Asset PnL} = \text{Total PnL} - \text{FX PnL} - \text{Yield Income} + \text{Costs}$ — price revaluation of the ruble part, i.e. position revaluation without the FX component.

2. Custom Composite Benchmarks

Comparing a multi-asset portfolio against a single index is insufficient. Composite benchmarks allow weighted combinations of base indices:

$$R_{\text{composite}} = \sum_{i=1}^{n} w_i \cdot R_i, \quad \sum_{i=1}^{n} w_i = 1$$

Where $\alpha = R_{\text{portfolio}} - R_{\text{composite}}$ evaluates portfolio excess return (Alpha). Index rates are annual, so $R_{\text{portfolio}}$ is the cumulative portfolio return (TWR) annualized with compounding; for observation periods shorter than 30 days alpha is not shown.