Rebalix is a discipline tool, not an adviser. It doesn't tell you what to do, doesn't judge whether your choices are good, doesn't predict returns. It calculates, shows, and flags deviations from the rules you set yourself.
The same principle applies to the savings-plan adjustment rules, which raise contributions during downturns according to the thresholds you set: they are a way to apply a decision of yours with discipline, not a forecast nor a strategy to achieve higher returns. Research does not show that modulating contributions based on downturns improves results compared with constant investing.
To do this job well, metrics must be comparable over time, reproducible, and based on definitions that don’t change silently. The formulas we use are the industry-standard ones — XIRR, TWR, Modified Dietz, drawdown from peak — not reinterpreted “Rebalix” versions.
What’s specific to Rebalix isn’t the formulas: it’s how, where and when these metrics enter your workflow. The formula for an XIRR you’ll find on Wikipedia. A Performance page that shows it next to the TWR, or a Projection that pairs the Required CAGR — updated to expected inflation — with the probability of reaching your goal, no.
Return, cumulative vs annualized, YTD vs Lifetime, nominal vs real
XIRR, MWR YTD, Required CAGR
TWR annualized and cumulative, 90-day threshold
Max Drawdown, Recovery, Volatility, Sharpe, Sortino
Hypothetical vs real contributions, 7 symmetric metrics, like-for-like
TER included in the NAV, broker fees
Nominal vs real return, backward and forward
ECB MRO as reference
Plan vs transactions, two-level targets, buy-only, withdrawal, glide
Deterministic projection, Required CAGR, Monte Carlo (bootstrap/parametric, real, glidepath)
Risk/return curve of your funds, Ledoit-Wolf, James-Stein, risk-parity
How we compute the coupon of a BTP€i and its European cousins, from the official coefficient
Primary sources, re-reading cadences, the dash rule
Automatic defences, quarantine, audits and golden tests
Calendar years, declared benchmark, Net vs Gross
The 12.5%/26% formula and the non-publisher rule
ESMA FIRDS, the MMF register, ECB and Eurostat
No “best of”, no invented data, source and date everywhere
If you’ve already internalized these words, skip to the next section. But if “cumulative”, “annualized”, “nominal”, “real” sound vaguely familiar yet you couldn’t explain the difference at dinner, read on: the 5 minutes you spend now make the rest of the page click.
You invested €100. A year later you have €110. You’ve earned €10 on the initial €100: your return is +10% for the year.
The formula is simple: return = (final value - initial value) / initial value. The result is expressed as a percentage to be comparable across investments of different sizes.
The first two returns are equal in %, different in €. The third is negative: you’ve lost 5% of the initial capital.
You invested €1,000. After 4 years you have €1,350. You’ve earned €350 on the capital: the cumulative return is +35%. This is the total sum of the period.
But “+35% over 4 years” isn’t immediately comparable with “+8% in 1 year”. That’s why we use the annualized return: the average annual rate that, compounded over 4 years, produces the same total result.
In our example: +35% cumulative over 4 years equals roughly +7.8% annualized. That is: 7.8% per year for 4 years, compounded, makes 35%. It’s not an arithmetic average, it’s a geometric one: it accounts for the fact that year 2’s return applies to the capital already grown in year 1.
YTD stands for “Year To Date”: from the start of the current year until today. If today is May 15, YTD covers four and a half months: Jan 1 → today.
Lifetime means “the whole life of the portfolio”: from the first transaction you entered until today. If you opened the portfolio in 2022, Lifetime covers 4 years.
YTD is the number you compare with the year’s benchmarks (“how is the market doing this year?”). Lifetime is the number that measures your discipline over time (“am I sticking to the plan since the start?”). You need both.
You invested €1,000 in 2022. Today you have €1,200. The nominal return is +20%. Mathematically correct, but incomplete.
Over the same period, inflation in Italy was about 16%. It means the same products that cost €1,000 in 2022 today cost ~€1,160. Your capital grew in number, but its real purchasing power grew much less.
The real return (= net of inflation) removes the effect of the loss of purchasing power. In our example: +20% nominal - 16% inflation = about +3.4% real. What you’ve really “earned” in terms of things you can buy with your money.
A BTP paying 4% nominal, with inflation at 5%, makes you lose purchasing power: real return -1%. Seeing green numbers isn’t enough: you need to see how much the value of your money really grows.
On Rebalix you turn on the “Inflation adjusted” toggle below the chart and in the metrics tables to see every number in its real version too.
Combining the concepts above, you get a matrix of metrics, all legitimate but with different purposes. Rebalix shows them all so you’re not forced to pick the “right” one: the choice depends on the question you’re asking.
| Methodology | Unit | Period | Nominal/Real |
|---|---|---|---|
| TWR | Annualized | Lifetime + YTD | Both |
| TWR | Cumulative | Lifetime + YTD | Both |
| MWR | Annualized (=XIRR) | Lifetime + YTD | Both |
| MWR | Cumulative | Lifetime + YTD | Both |
What TWR and MWR are is explained in sections 01 and 02 below. The difference between the two is the fundamental question for the retail investor.
Confusing the two is the number-one cause of disappointment for retail investors. A savings plan started two months before a 20% crash can have a terrible personal return for years — even if the strategy is doing exactly what it was meant to do.
“How much is my real money returning, accounting for when and how much I contributed?” Sensitive to the timing of your contributions.
“How is the plan I chose performing, regardless of my timing?” Measures the pure returns of the instruments.
Clicking a row in “Performance by instrument” opens the fund’s chart with the same two metrics, on two lines:
The distance between the two lines is how much your timing (and FX) brought you closer to or further from the fund. The axis is in percentage, so the two currencies coexist.
Accounting for exactly how much and when you contributed.
What it measures. XIRR (Internal Rate of Return on cash flows at irregular dates) is the annualized return that explains how €100 contributed on different dates became €X today. It’s the most honest metric of “how it’s going for you”.
Why it matters. Unlike an average return of your ETFs, XIRR correctly weights large contributions (= they count a lot) and recent ones (= they count little because they’ve had little time to grow). It’s the number you’d use to compare your savings plan with an alternative investment fund.
Marco runs a savings plan of €250/month into SWDA for 18 months. He's contributed €4,500 in total. Today the portfolio is worth €4,920.
What it measures. The money-weighted return from January 1 of the current year to today.
Why it matters. It’s the number you’ll probably compare with the YTD market benchmarks you find on financial sites. Careful: what you see on those sites is usually a time-weighted return of the index, while yours is money-weighted on your contributions. If you contributed heavily mid-year, the two numbers will differ even if your portfolio tracks the benchmark exactly.
The same Marco, on his SWDA savings plan. From January to today (8 months):
The difference isn’t “the portfolio is doing worse than the benchmark”. It’s that Marco contributed €250/month, so his money was exposed to the market on average for only ~4 months, not 8.
How an investment is taxed depends on the instrument (government bonds pay 12.5%, stocks and crypto 26% in Italy), on your country of residence and — for foreign securities — on withholding at source, double-taxation treaties and foreign tax credits. It’s a labyrinth that differs for every person, and estimating it for you would be tax advice: not our job, and we’d give you wrong numbers.
So we record FACTS, we don’t compute taxes. Income — dividends and coupons — enters NET: the amount you actually received, read from your statement or confirmed by you (your broker already applied your jurisdiction’s correct withholding). Capital gains from sales, instead, enter GROSS: the difference between purchase and sale price, before tax. We don’t compute stamp duty, capital-gains tax, or the tax loss-carryforward (offsetting losses against gains).
The upside: it works identically for an Italian resident and a foreign one, because we don’t bake any country’s rules into the maths — we read the net you received. The caveat to keep in mind: the return you see is net of withholding on income but gross of stamp duty and capital-gains tax.
Since July 2026, one extra helping hand: if you declare your tax residence (Italy only, for now), Rebalix PREFILLS an estimated net — 12.5% on white-list government bond coupons, 26% on Italian stock dividends and, for over 10,000 ETFs, the effective rate derived from the white-list share each issuer publishes every six months (the same source your broker uses for withholding). It remains an estimate of the standard withholding, not a computation of your taxes: the recorded figure is always the net you confirm, and without a declared residence — or without an issuer document for that period — the field stays empty, with only the gross shown.
What it measures. A variant of the annualized money-weighted return. Instead of solving a single XIRR equation over all the period’s flows, it splits the period into monthly sub-periods, computes the Modified Dietz of each month, and links them geometrically into a compounded return.
Why it matters. It’s the CFA / GIPS standard for presenting investment-fund returns. For a retail investor with a regular savings plan the two numbers (pure XIRR vs Linked Modified Dietz) are almost always close. The differences emerge with large, concentrated flows, where pure XIRR can be less stable while Linked Modified Dietz, breaking the problem into monthly windows, is numerically more robust.
Marco with his SWDA savings plan of €250/month over 18 months:
Typical difference for regular savings plans: a few tenths of a percentage point. On large, concentrated flows the delta can rise to 1-2 percentage points; the two metrics tell the same story from numerically different angles.
Rebalix's choice. For your numbers Rebalix uses pure XIRR because it models exactly when you invested, solving a single equation on your real flows. Linked Modified Dietz is the classic CFA/GIPS convention, optimal for managing thousands of standardized funds, but for a retail portfolio with a few hundred transactions the XIRR representation is more faithful to your real flow. The two metrics are in any case nearly identical for a regular savings plan (tenths of a percentage point).
What it measures. The Investor Gap is the mathematical difference between the personal return (MWR) and the strategy’s (TWR). It measures how much of your return depends on when you invested, as well as on what you chose as asset allocation.
Where it comes from. The concept comes from the Morningstar Mind the Gap and Dalbar QAIB industry studies, which systematically measure the difference between fund returns and those actually realized by investors. In Morningstar’s studies the average US investor realizes returns 1-2% per year lower than the funds they invest in, mainly due to contribution timing.
Formula. Investor Gap = annualized Lifetime MWR − annualized Lifetime TWR. A positive gap means your contributions were chronologically placed in favorable periods relative to the “equivalent lump sum” strategy. A negative gap, the opposite.
Rebalix shows the aggregate Investor Gap value only when |gap| exceeds a materiality threshold (4 percentage points). Below this threshold the gap is statistically noise: a few tenths aren’t distinguishable from normal calculation variability. Aggregating it into a single number would give false precision. Above the threshold the gap becomes material and is shown explicitly, always accompanied by the context of the two source metrics (MWR and TWR).
How to read it. The Investor Gap describes the past, it doesn’t predict the future. A positive gap doesn’t mean you’ll keep having favorable timing (regression to the mean). The gap can come from: conscious skill (buying when the market drops), luck (having started investing in a structurally favorable period), or mechanical effects (a regular savings plan automatically dilutes timing).
Rebalix doesn’t interpret the gap for you: it shows the number when it’s material and leaves the reflection to you. It’s an awareness tool, not a judgment.
What it measures. Given your current capital, the remaining time horizon, expected future contributions (savings plan) and your final goal in €, what is the annualized return your portfolio would need to generate to reach that goal. It’s a forward-looking metric: it looks ahead, not back. You’ll find it on the Projection page, alongside the Monte Carlo simulation (sec. 09).
Why it matters. It turns an abstract goal (“I want 500k at 60”) into a concrete parameter: an annual rate you can compare with the historical returns of global equity markets (~5% real annualized over the long run in the global historical data of Dimson-Marsh-Staunton — US equities returned ~6.5%, but that’s a historical exception, not the global norm). Rebalix shows the number without interpreting it: any assessment of compatibility with the goal is up to you and, if needed, a qualified financial adviser.
Marco has €80,000 today, wants €350,000 in 20 years, contributes €300/month.
The first says “if I have €350,000 nominal in 20 years I feel fine”. The second says “I want my capital to have purchasing power equivalent to €350,000 today”. Almost always the second is the relevant one.
Separate from your timing decisions.
What it measures. The return of your portfolio as if it were a single fund. It ignores your contributions and withdrawals: it focuses on the fact that, every day, the ETFs you hold returned X.
Why it matters. It answers the question “is the portfolio I built a good machine?” — a different question from “am I making money?”. Two investors who buy the same MSCI World ETF but contribute in different months will have the same TWR but different XIRR. It’s the same kind of return you see published as a fund’s official performance.
Marco and Giulia buy the same SWDA for 12 months. Marco contributes €250/month every month. Giulia contributes €3,000 in January in one lump sum.
The TWR is the same because the instrument is the same. The XIRRs differ because Giulia exposed €3,000 to the market for 12 full months, Marco gradually.
TWR is shown in two forms. Cumulative: the total growth of the period (e.g. +35% over 4 years). Annualized: the equivalent average annual rate (e.g. +7.8% per year for 4 years, which compounded makes the same +35%).
The cumulative matches the “Total change” of the chart in All mode. The annualized is comparable with the published returns of indices and funds. Same TWR, two units of measure for different purposes.
What it represents. The gold curve in the Performance chart. For each day it shows the cumulative money-weighted return up to that day, considering all the contributions you made up to that point.
Why it matters. The daily TWR (the green/red curve below) tells how the market instrument behaves day by day: it swings violently in drawdowns, recovers quickly. The Capital-Weighted MWR curve tells how your personal portfolio behaves: less volatile, because each new contribution widens the capital base and dilutes the percentage impact of the moves. Overlaid, the two curves answer two coexisting questions together: “how does the market move?” and “how does my money move?”.
Anna invests in MSCI World with a monthly savings plan for 3 years. In March the market crashes 12%. She keeps contributing during the drop.
Two numbers, two coexisting truths. TWR measures the market machine: it fell 12%. The Capital-Weighted measures Anna's portfolio: it fell 7% because the new contributions during the drop bought at a discount, cushioning the impact. The gold curve tells the personal story of the disciplined investor.
Formula: MWR(t) = (V(t) − V₀ − inv(t)) / (V₀ + inv(t)) — where V(t) is the portfolio value on day t, V₀ is the value on the first day of the period, and inv(t) is the net contributions accumulated up to t.
The last point of the curve matches, to the cent, the cumulative MWR reported in the Performance table, by algebraic construction.
With under 90 days of history, the TWR is little more than noise: a single volatile market day can move it by 30%. Rebalix computes the TWR internally from day one, but shows it on the dashboard only after 90 days.
It's not a hidden figure: it's a figure not yet useful. Consistent with the principle that a noisy number does more harm than no number.
The metrics that measure the severity of historical drops and the cost of recovery.
What it measures. The largest percentage fall from a previous peak to the following trough, computed over the portfolio’s entire history. It’s the most intuitive and psychologically relevant risk metric: it tells you how much “red” you’d have had to endure to get where you are today.
Why in € as well as in %. A −22% drawdown sounds abstract. Knowing your portfolio came to lose −€17,600 from the peak is the form in which the figure actually hits home. Rebalix shows both.
Marco’s savings plan peaked at €4,950 in mid-January, fell to €4,290 in early March. Max Drawdown: −13,3% (= −660€).
What it measures. The calendar days elapsed from the peak to the first day the portfolio rises back above that peak. The operational answer to “how long did it take me to recover?”.
Why it matters. A −15% drawdown recovered in 3 months is one thing. The same drawdown recovered in 4 years is another. The Recovery Period separates the severity of the fall from its psychological and economic cost.
Same episode, two measures. On the public ETF pages the same episode is split into two cards: “Recovery time” counts only the climb (from the trough back to break-even), while “Underwater” counts decline + recovery (from the peak back to break-even) — the latter is what matches the Recovery Period defined here. The two numbers do not contradict each other: in Marco's example below, 114 days underwater, 65 of which are the climb alone.
Marco again. Drawdown −13.3% started on January 14, trough on March 4, peak recovered on May 8. Recovery Period = 114 days (of which 49 down, 65 back up).
What it measures. The standard deviation of the portfolio’s daily returns, scaled to an annual basis. A synthetic indicator of “how much the portfolio value swings”.
Why to take it with a pinch of salt. Three relevant limits worth declaring honestly:
That’s why Rebalix shows volatility, but after drawdown and recovery period, not before.
Sharpe. The excess return over the risk-free rate, normalized by the portfolio’s total volatility. It answers: “am I being paid enough for the risk I take?”. The higher the value, the more the portfolio was rewarding relative to the risk borne in the measured period.
Sortino. Same logic as Sharpe, but it uses only the downside deviation (= volatility of negative returns). It measures the excess return over the risk-free considering only swings below the Minimum Acceptable Return (MAR), ignoring upside swings.
Portfolio with annualized TWR 14.2%, ECB rate (risk-free) 3.0%, total volatility 12.0%, downside deviation 7.5%.
Sortino is always ≥ Sharpe, because it only penalizes the “bad” swings. The difference between the two numbers tells you how much “good” noise there is in your total volatility.
mean × 252 for the return and stddev × √252 for volatility. Consistent with the GIPS standard and with the rest of the product (Volatility, Max Drawdown, Equity Curve).Did you make money? Probably yes. But the question that separates the disciplined investor from the lucky one is: did you make more or less than you would have following a trivial, disciplined strategy? That’s the question the Benchmark comparison page answers.
What it is. A “reference bar”: a theoretical, simple and disciplined portfolio against which to compare your performance. Typically a mix of global indices (e.g. 60% world equities + 40% European bonds) replicated mechanically, with no discretionary decisions.
Why it matters. On its own, a “+15%” return gives no information about context. The same +15% can be a high number if the reference market returned +5%, low if it returned +25%. The benchmark provides the context: it indicates what you would have obtained following a standard disciplined strategy, and lets you assess your path (instrument selection, timing, rebalancing) against that baseline.
A portfolio gained 15% over 3 years.
If a plain 60/40 savings plan returned 20% over the same period, the return is 5 percentage points lower relative to the benchmark.
If it returned 8%, the return is 7 percentage points higher relative to the benchmark.
The same number (+15%), different readings relative to the market context.
Philosophy: the honest comparison. Most tracking tools compare two normalized curves: it takes your portfolio and the benchmark, starts them both from 100, and draws two lines. Clean mathematically, but abstract: it erases your real flows and pretends you invested everything in one go.
Rebalix does it differently. It compares your reality (= money-weighted return computed from your actual transactions, with the timing of your contributions) against a disciplined simulation of the benchmark (= a configurable hypothetical savings plan on that benchmark, rebalanced according to explicit rules). The two curves show different things because they are different things: you are you, the benchmark is an idealized version of the market.
Real example portfolio, period 2023-2026, compared with the “60/40 Classic” benchmark with a hypothetical savings plan:
| Metric | Portfolio | 60/40 Classic |
|---|---|---|
| XIRR (annualized) | +13,52% | +11,31% |
| Cumulative return | +15,92% | +20,12% |
Apparently contradictory: the portfolio’s XIRR is higher, but the cumulative return is lower. It’s not an error. The real portfolio had timing of flows favorable (= contributions distributed so as to capitalize well on market phases), which is why the annualized money-weighted rate is higher. The simulated benchmark, however, started investing from the first day of the period (= hypothetical savings plan from the start), so on a higher total capital “in play” it generated a higher percentage return. Two coexisting truths, two answers to two different questions.
The limit of the comparison above. The hypothetical savings plan starts investing from the first day of the period, while your real portfolio was built gradually. Comparing on the cumulative return thus mechanically rewards whoever had more capital exposed for longer, not whoever chose instruments better — and the two curves can diverge quite a bit even with good choices.
The solution. In “Real contributions” mode we apply to the index your your very same contributions — identical in amount and date — over your whole history. At that point the cash is the same for both: the only variable that changes is the assets. The two lines start paired from 0% and any distance is attributable only to the choice of instruments. It’s the cleanest answer to the question “did I beat the index?”.
Same contributions, a real portfolio and the 60/40: the money-weighted XIRR can come out equal, but Sharpe and Sortino higher for the portfolio. It means the chosen instruments returned more per unit of risk (a time-weighted measure), even though on money-weighted the advantage waters down because the good part arrived when the exposed capital was smaller. Two complementary lenses: contribution timing is circumstance, the risk-adjusted speaks to the choices.
This mode always covers your entire history (from the first transaction): the period selector doesn’t apply.
What it measures. The comparison is symmetric: the same 7 metrics for your portfolio and for the benchmark, recomputed over the chosen period. They are exactly the same as in Performance (sections 01-03 of this page), applied to the subset of transactions in the selected period.
| Metric | What it tells you |
|---|---|
| Cumulative return | How much it grew in total, on the capital you put in |
| XIRR annualized | The average annual rate, weighting the timing of your contributions |
| Max Drawdown daily | The worst peak-to-trough drop in the period, on daily values |
| Max Drawdown monthly | The same drop seen on end-of-month values (= less noisy, similar to what you see checking now and then) |
| Annual volatility | How much the value swings — the higher, the more nerves you need |
| Sharpe ratio | Were you paid enough for the risk you took? |
| Sortino ratio | Same question as Sharpe, but it only considers downside swings |
Why the same 7 metrics. For readability. If you compare a Sharpe with another Sharpe you know what you’re looking at. If you compare a Sharpe with a “Jensen’s alpha variance” you first have to remember what both mean. No metrics exclusive to the benchmark, none exclusive to the portfolio: symmetry.
What rebalancing is. If you set a portfolio 60% equities / 40% bonds, after a volatile market year you might find yourself at 70/30 (= equities rose more). Rebalancing is the operation of selling a bit of what grew and buying a bit of what fell to return to the original 60/40. It brings the portfolio back to the declared composition.
The 4 options Rebalix simulates on the benchmark.
| Strategy | What it means |
|---|---|
| None | Buy and forget. The benchmark is left to “drift” for the whole period. |
| Monthly | Rebalancing every 30 days. Maximum frequency, but in a real savings plan it means many transactions. |
| Half-yearly | Rebalancing every 6 months. |
| Yearly default | Once a year. |
Different rebalancing frequencies entail different trade-offs: more frequent rebalancing means more transactions (= more broker fees, more tax events); less frequent lets the portfolio allocation drift further from the initial one.
Annual is the Rebalix's editorial choice as the default value, changeable in any simulation.
Each frequency makes sense depending on the time horizon, the acceptable level of transactions, and the individual's tax preferences: the final choice remains the user's.
(V_final − V_initial − net_flows_period) / (V_initial + net_flows_period). It’s a simplification of Modified Dietz without time-weighting the flows — for a uniformly distributed savings plan the error is typically < 0.5 percentage points.mean × 252 and stddev × √252. They use a 3-year rolling window — the last 3 years of the period, or the whole history if shorter — consistent with the Performance page; the Max Drawdown below, instead, stays over the entire period. When the shared history is still short, the same bands as the Performance page apply (under 12 months Sharpe and Sortino are not shown).We use the ECB MRO rate, weighted-average over the 12 months preceding the end of the chosen period. It’s the same convention as the Performance section — an intentional choice for consistency: same risk-free, same time unit, numbers comparable across the two pages.
Honest trade-off: if you choose a very long period (e.g. 10 years), the risk-free reflects only the last 12 months, not the whole span. For portfolios with recent history this is irrelevant; for long historical audits it’s a limit to keep in mind.
Two different items that act on returns in two different ways.
What it is. The TER (Total Expense Ratio) is the ETF’s annual fee. It is already subtracted from the NAV (= the daily closing price you see on exchanges) by the manager. So: when you see SWDA do +12% in a year, that +12% is already net of the TER (~0.20%).
Why we show it anyway. For comparability in rebalancing: choosing between two MSCI World ETFs with TER 0.20% vs 0.12% isn’t a micro-optimization. Over 30 years of accumulation, 8 basis points compounded become 2-3% of the final capital. Rebalix shows the TER in the instrument card and the holdings table, but doesn’t subtract it again from returns (that would be double-counting).
What they are. The fees you pay your broker for each buy and each sell. Variable: from €0 at some brokers up to tens of € per buy on non-flat plans.
How they enter the calculations. In each transaction you enter you can specify the fee. From that point:
Consequences:
A 6% nominal and a 6% real are two different things. Rebalix shows both, calculated on the inflation of the reference country you chose during onboarding.
When you turn on “Inflation Adjusted” on the Performance page, you see your historical returns restated in today’s €. That way you know how much your money really grew, net of your country’s inflation.
A portfolio that grew +20% nominal over 4 years, with 12% cumulative inflation in the chosen country, grew ~7% in real terms.
To discount a future goal (€500,000 in 15 years in today’s €), Rebalix uses the YoY average of the last 12 months available of the HICP of the country you chose during onboarding.
No editorial defaults, no forecast: the number used is always the one actually realized over the last 12 months. When new Eurostat data is released, the value updates automatically.
net of inflation · 12-month average · Italy · May 2025–Apr 2026
Between 2022 and 2024 cumulative inflation in Italy was ~16%, in Germany ~14%, in Switzerland ~5%. Using a single Eurozone average (~13%) means telling the wrong story to two out of three investors.
That’s why Rebalix doesn’t aggregate: it reads the HICP series of the country you chose and uses it for every real metric, historical and forward-looking. So the real return you see is the one that truly matters for your purchasing power.
Reference country. You choose it during onboarding. Coverage: EU countries + United Kingdom + Switzerland. You can change it anytime from the plan settings: all real metrics (historical and forward-looking) are recomputed on the new HICP series.
Reference point for Sharpe, Sortino and Inflation-Adjusted Required CAGR.
Rebalix uses the ECB’s MRO rate as the reference risk-free for all calculations that need one. The value is updated weekly.
Why MRO and not something else. The typical alternatives have limits:
The MRO is the ECB’s “official” reference rate, the one announced at meetings that moves markets. It’s stable as a definition, it’s public, and it’s the number a European retail investor recognizes immediately.
Rebalix doesn’t execute orders and doesn’t choose what to buy. It calculates, on the targets you set, how to move to get back closer — and leaves you to decide and execute through your broker.
Picture each category as a glass with a line marking how full it should be (your target). When you contribute, the new water goes only into the glasses below the line, more into the emptier ones; a full glass is never emptied (= nothing is sold) and the line is never crossed — whatever is left stays as cash.
And if two glasses are “twins”? If you hold two instruments in the same category — for example two gold ones that together are worth 15% — they share a single shelf: they count together toward that 15%. If one is already full, the other only gets the little left under the shelf; to really fill it you’d need to sell the twin, and buys alone don’t do that.
Rebalancing is a a calculation, not an execution. Rebalix shows how many shares it would take to move back toward your targets; you execute the orders through your broker; the portfolio updates only really when you record the actual transactions (with the actual prices and quantities, which are never exactly those of the plan). It’s not an investment recommendation: it’s the arithmetic of the plan you defined.
Your targets live on two levels, exactly as you set them in configuration: first you decide the weight of each asset class (e.g. Equities 50%, Bonds 35%, Gold 15% — they add up to 100%), then you split each class across one or more ETFs (the sum of a class’s ETFs equals that class’s target). You can therefore hold several ETFs in the same class — for example two gold ETFs that together make 15% — as a deliberate choice. Rebalancing respects both levels: the weights of the individual ETFs and the class total.
When you contribute, Rebalix splits the amount among the ETFs below target, in proportion to how much is missing for each, buying whole shares and respecting the minimum order threshold you set. It sells nothing and brings no ETF beyond its target. Buy-only means zero realized capital gains: the simplest way — and at zero tax cost — to move back toward targets is to contribute to whoever fell behind.
Multiple ETFs in the same class. If a class is already at its target, Rebalix doesn’t buy more in that class: buying the underweight member would overshoot the total you chose. Rebalancing within the class (one ETF above, the other below) requires a sale, which buys alone don’t do.
By buying you can’t reduce an overweight ETF: until you sell, an asset above target comes back into line only as the portfolio grows and new contributions dilute its weight. Rebalix tells you plainly — how much the portfolio would need to grow for everything to fit the targets by buying only, and how close you already are. The constraint is always the most overweight asset.
It’s the mirror of contributing. When you need cash, the water is taken from the fullest glasses (above the line) — so selling realigns you instead of throwing you off balance. The glasses below the line are left alone; if the fullest don’t reach the amount, the rest is tapped too, declaring it.
Withdraw. If this month you don’t contribute but instead need to free up cash, you indicate how much and Rebalix computes what to sell — from the overweights first, so the withdrawal realigns you instead of throwing you off balance — guaranteeing to raise at least the requested amount.
Glide path. If you set a glide path, the rebalancing targets are those of today along your trajectory, not the starting ones. The Allocation page shows the same resolved targets: the two views don’t diverge.
Alerts. If you chose it, Rebalix alerts you when an ETF exceeds the drift threshold you set (e.g. ±5%) from its target. It’s a reminder to check, not an order to act.
Rebalix does not provide financial or tax advice. Quantities derive from the targets you chose; selling may have tax implications that depend on your country and your broker, which Rebalix does not calculate. Rebalancing does not guarantee higher returns. Investment decisions are solely yours.
Quick reference for those just looking for the definition of an acronym.
The pure market effect on the portfolio, neutralizing contributions. Comparable with index and fund benchmarks.
The actual return on the capital you deployed, considering the timing of contributions. It measures how much wealthier you became.
Annualized MWR for cash flows on irregular dates. The number you’d use to compare your savings plan with an alternative fund.
Compound annual growth rate. The annualized return of an investment, computed as a geometric mean.
From the start of the current year until today. Used for current-year-only metrics.
An investment strategy with periodic contributions (e.g. monthly). It dilutes timing risk by spreading purchases over time.
An investment fund listed on an exchange, tradable like a share. It replicates an index or strategy with typically low costs.
EU directive regulating retail-open investment funds. UCITS ETFs are the funds compliant with this regulation, legally distributed in Europe.
An ETF’s net asset value: the sum of all the fund’s assets, divided by the number of shares. It’s the “official” price quoted daily.
An ETF’s annual fee, already subtracted from the NAV. Over 30 years of accumulation, even small differences (e.g. 0.20% vs 0.12%) have a meaningful impact.
The ECB’s reference rate for main refinancing operations. Used in Rebalix as the risk-free for Sharpe, Sortino and Required CAGR.
Consumer price index harmonized at the European level (Eurostat). Used as the official inflation measure for each EU country.
Synonym of HICP in the Rebalix context. The consumer price index that measures the inflation felt by households.
International standard for computing investment performance, published by the CFA Institute. It ensures comparability and transparency.
The minimum acceptable return, used in the Sortino Ratio to distinguish “good” swings from “bad” ones. In Rebalix it corresponds to the ECB MRO risk-free.
EU directive regulating the provision of investment services. Rebalix does not provide advisory services under applicable regulations.
The Eurozone’s central bank. It sets monetary policy and the euro’s reference rates.
An ETF share class that neutralises the exchange rate between the investments’ currency and the investor’s («EUR Hedged», «GBP Hdg»). Our pages measure it on the issuer’s NAV, where the hedge is applied at the daily fixing; comparison sites using the exchange price may show returns and volatility that differ by 1–2 points, and the gap grows with the length of the window: on hedged classes the price-vs-NAV difference is structurally wider (verified on 15 Aug 2026 by comparing hedged and unhedged classes of the same fund: the unhedged ones match to a tenth, the hedged ones do not). Not a data error — a measurement convention. A simple check: the unhedged class of the same fund.
Rebalix fund pages measure returns, volatility, drawdown and tracking difference on the issuer-declared NAV (the official unit value, computed once a day), not on the exchange price. It is the same basis the issuer uses in its documents and the only one comparable across exchanges and currencies. Comparison sites using the exchange price (in EUR, end of day) show slightly different figures: usually a few tenths on rolling windows (“last year”) and nothing on anchored ones (“year to date”, calendar years); more on currency-hedged classes. For distributing funds we show the reinvested-dividend return: from the issuer’s series when published, otherwise rebuilt by us by reinvesting each payout at the ex-date NAV — the method is verified against issuers’ official series wherever both exist.
If the Performance page looks at the past, the Projection page looks at the future of your plan toward the goal. It does so on two levels: a deterministic projection (one return assumption → one trajectory) and a probabilistic one (Monte Carlo). Both are scenario analyses, not a forecast nor a promise of return.
What it does. You choose a real annual return assumption (prudent, medium, optimistic, or your own value) and Rebalix simulates the capital’s growth contribution after contribution, up to estimating the year you reach the goal. It’s a single line: it answers “if I return X, I arrive in ____”.
Required CAGR. The other side of the same question: the return that would be needed to hit the goal by your date, given today’s capital and the scheduled contributions. In real and nominal terms; the formula is the one in section 01, applied to your contribution schedule.
Capital already contributed. For capital or phased plans the projection counts only the capital still to be distributed: what you’ve already contributed is already in the portfolio’s current value, so it isn’t counted twice. And if you’re already in Phase 2 of a phased plan, the initial distribution is complete and only the steady-state instalment is projected.
A single line hides uncertainty. The Monte Carlo method tries 10,000 scenarios of portfolio paths, month by month, reusing your real contribution schedule and working in real terms (in today’s purchasing power). By construction it’s anchored to the deterministic projection: with a constant return the 10,000 scenarios collapse exactly onto that line.
What it returns. The probability of reaching the target by the date; the independence year in an optimistic version (10th percentile), median (50th) and prudent (90th); the spread of the final wealth. In the chart the orange line is the median (the middle scenario) and the blue band is the 80% of scenarios — the luckiest 10% and the unluckiest 10% are left out.
Bootstrap (default). It randomly resamples the months your portfolio actually lived. Correlations between instruments are already implicit in the portfolio returns, so no per-ETF covariance model is needed — which on a short history would be false precision.
Parametric. It draws returns from a (lognormal) distribution calibrated on your portfolio’s mean and volatility. Useful as a cross-check: on your data the two methods tend to agree.
Glidepath. If you reduce equities over time, the scenario reflects it: both volatility and expected return go down. De-risking doesn’t mean the same return with less risk.
The real returns the simulation is based on are deflated by the inflation realized in your history period. If that period had anomalous inflation, projecting it as-is into the future would distort the probabilities. That’s why Rebalix re-bases the real returns to the long historical average of your country (neutral default, from the whole inflation archive), with the option to change the assumption manually. Everything else stays in real terms. That same long historical average is the single inflation assumption Rebalix uses looking forward: besides the Monte Carlo, it converts the Required CAGR from real to nominal and drives the adjustment of contributions to inflation (including the Phase 2 instalment of phased plans) — so there aren’t two different inflation numbers for the same future.
The bootstrap relies on your real history, which often covers a single market regime: read the probabilities as an order of magnitude, not as exact numbers. The projection is a scenario analysis, not a forecast nor a guarantee of return, and does not constitute financial advice: future real returns may differ, even greatly, from the simulated ones.
The efficient frontier (Markowitz, 1952) shows, using only the funds you own and their past behavior, the risk/return of all possible combinations — and where your portfolio sits. It’s a descriptive analysis of the past, not an optimizer that tells you what to adopt.
Input. The monthly returns of your funds, over the months common to all (minimum 36; below that it’s too unstable). From there we derive expected return, volatility and the covariance matrix, all annualized.
Curve. We sample a large number of weight combinations (long-only) and compute their risk and return; the frontier is their upper concave edge — the “best” combinations. On the chart we show your portfolio, the individual funds and the reference points.
Mean-variance optimization on historical data is notoriously fragile — in jargon an “error maximizer”: the expected returns estimated on the past are noisy, and it takes little to make the “optimal” allocation swing. That’s why we don’t use the raw estimates:
Covariance — Ledoit-Wolf. Shrinkage toward a constant-correlation target: noisy correlations are “pulled” toward the mean, yielding a stable matrix even with few observations (the individual volatilities stay the real ones).
Expected returns — James-Stein. They are pulled toward the overall mean, reducing the effect of historical extremes.
Minimum risk. The minimum-variance combination.
Equal risk (risk-parity). Each fund contributes the same share of risk. It’s robust because it doesn’t depend on predicting returns — the most fragile part.
We deliberately removed the “maximum return”: it almost always coincides with 100% of the best-performing fund in the past — the textbook example of the artifact to avoid.
It’s a reading of the past and depends on the period (especially on the return side). It’s computed on your specific funds and on an often-short history (minimum 36 months; below 5 years we flag it). It stays descriptive, not advice: it shows you where you are, not what to buy. A strong-sense “efficient result” would require forward expected returns and asset-class blocks — it’s on our roadmap.
A BTP€i — and its European cousins — pays a coupon that grows with inflation: the rate is fixed (the “real coupon”), but it applies to a principal the Treasury revalues with an official coefficient. So the euro amount of each coupon depends on the inflation accrued since issue.
For each bond we ingest the indexation coefficient published by the issuing Treasury — MEF, Agence France Trésor, Finanzagentur, Tesoro Público — the same number your bank uses. Coupon in euro = nominal × (real coupon ÷ frequency) × official coefficient on the payment date.
When the first period isn't a full half-year, we pro-rate the coupon with the ICMA Act/Act convention, exactly as the official auction document states it.
If the official coefficient for a coupon is missing, we show only the date, never an estimated amount. Sources are always official (national Treasuries, Eurostat/Istat for the index), never commercial vendors.
Today we cover 41 inflation-linked government bonds from Italy, France, Germany and Spain (BTP€i, OAT€i, OATi, Bund€i, Obligaciones), on both the euro-area HICP and the French index.


Informational content, not advice or a solicitation. Past coupons not yet recorded are a reconstruction from official data: always verify with your intermediary.
Rebalix is not just the app: it is also a public database on ETFs, taxation and bonds — the per-ISIN pages, the ETF Screener, the thematic hubs. This second part documents how those numbers are made: same rules as part one — declared sources, standard formulas, limits stated out loud.
Over 3,000 ETFs from 11 issuers, read directly from the issuers’ official files and endpoints — never from commercial data vendors. Every page declares its collection date.
The register is re-read in full every month from official product lists and endpoints (name, declared index, TER, assets, NAV, income policy, replication, domicile). KID data — transaction costs and the risk indicator — is re-checked at least quarterly; the white-list share follows the six-monthly cadence of the tax documents. Every downloaded document is archived with its date and fingerprint: we can always prove what a KID looked like six months ago.
Beyond the TER we show the transaction costs the issuer estimates in the KID (PRIIPs regulation): the slice of expenses almost no screener exposes. TER + transaction costs is the declared annual cost closest to reality; the cost actually realised is measured by tracking difference (section 14).
When a value is not declared by the issuer, you see a dash “—”. We do not estimate, interpolate or copy from other sites: a dash is honest information — it says the primary source does not publish that value, not that the value is zero.
A share class is flagged as hedged into a currency only when the issuer declares it — in a field of its own listing or in the class name (EUR Hedged, Hdg, PfHdg, hEUR…). We never infer hedging from the class currency. Interest-rate hedges (“Interest Rate Hedged”) and option overlays (“Hedged Equity”) are not currency hedges and do not appear in the filter. An automatic check flags any class with “hedged” in its name but no declared currency: we extend the reading, we never guess.
An ISIN enters the engine only once it is listed on at least one exchange; closures are detected per source and reviewed by hand before a fund leaves the engine. Assets are per share class where the issuer declares them per class; where they are declared at fund level only, we label them as such and never add them up more than once in issuer totals. For ETCs/ETPs (gold, commodities, crypto) the page speaks of “underlying”, not index. The history of fund assets does not stop at our monthly archive: we also read it from the SICAVs' audited annual and semi-annual financial statements (back to 2019 for some issuers), at fund level, and show it on each fund's “History” page with the source declared point by point.
Issuers’ historical files contain real accidents: registration-currency switches never re-adjusted, splits, flat stretches, gaps. Showing them as-is would produce false charts. Before any chart, each series passes a chain of defences.
Anomalous steps (a ≥×3 ratio between one day and the next, typical of currency redenominations) are re-joined by rescaling the earlier history, with a note declared on the page. Isolated spikes that immediately revert are removed. Long flat stretches and gaps beyond 180 days are pruned: better a shorter history than a false one — and the cut is declared on the page too.
After the defences, every series passes a quality gate with per-asset-class thresholds. Series that fail go into quarantine: no chart is shown and the page displays a “series under review” box with the reason. Never a wrong chart, never in silence. Genuine market moves (the 2008 Volkswagen squeeze, the 2022 UK gilts) sit in a hand-verified list of events with historical sources, and trigger no false alarms.
Every month an automatic audit re-scans all census series with the same gate thresholds. On top of that, for a fixed roster of large funds (global equity, multi-asset, bonds, gold) we compare our returns and drawdowns against an independent external source, on aligned dates and with tight tolerances: if something is off, an alarm fires before readers notice.
Per-share amounts come from the issuer. Where the issuer publishes only the latest payment, the history is rebuilt arithmetically from two series of the issuer itself (NAV and NAV with dividends reinvested): the gap on the ex-date is the dividend, checked to the cent on a sample against an independent source. Announced but not-yet-paid dividends appear in the table but do not enter the 12-month sum or the yield. Dividend yield = sum of the last 12 months’ payments over the latest NAV; for funds with less than 12 months of history we show the sum since the first payment, without a percentage.
The fund-page tracking difference measures how much the fund returned above or below its index, over complete calendar years, from issuer-declared total-return series.
Only against the issuer-declared benchmark, in the declared version — Net, Gross or Price. The version matters: a “Net” index reinvests dividends after withholding taxes, a “Gross” one before. That is why TDs are not comparable across funds declaring different versions, nor across sites using different methodologies or index variants. Fund pages report the index wording verbatim.
TD is not just a cost: it is the actual deviation, summing costs (TER, transactions) and revenues (securities lending, replication optimisations, the domicile’s tax treaties). A fund benchmarked against a Net index can recover part of the withholding the index assumes lost — which is how a TD can turn out better than the TER. A past observation, never a promise.
For distributing classes the fund return is computed by reinvesting each dividend on its ex-date at that day’s NAV (synthetic total return), so that it can be compared with the net total return index. Where the issuer publishes its own dividends-reinvested series we use it; where it does not (Amundi, for instance) we do the reinvestment ourselves with the dividends in our archive, and the fund page says so (“dividends reinvested by Rebalix”). We do not publish the TD when dividend coverage over the window is incomplete, and if a year comes out beyond ±3 points we withdraw it: our reinvestment cannot explain a gap that size, and no TD beats a false one. When the index series is available on one class of the fund only, we use it for sibling classes in the same currency and unhedged; for hedged classes we never use the unhedged index — and if a hedged class shows a TD beyond ±2 points in any year, the figure is withdrawn (it is the exchange rate, not replication) and the fund page explains why, pointing to the unhedged sister class where one exists. If an issuer’s index series stops updating, the TD and the chart comparison switch off by themselves.
Some issuers do not provide a daily index series but publish, at month end, the net returns of fund and index per calendar year and their difference. In those cases the page shows those figures, labelled “issuer-declared” with the reference date: they are not computed by us and should not be compared with the TDs we compute from series. Since August 2026 we collect the per-year declared returns from Amundi and iShares (product pages) and from Xtrackers and UBS (the SICAVs' audited annual reports, back to 2019) and automatically compare them with our computed TDs: five issuers and over 2,000 share classes with two sources, thousands of fund-years verified, agreeing in 97–99% of cases. Where the two sources diverge, the figure is suspended until we know which one is right; where our series is missing (for instance iShares hedged classes, whose issuer declares the hedged index), we show the declared figure, always labelled. The comparison also works as a detector: when it shows a fund changed index over time (the declared TD stays stable while ours deviates only in the old years), the computed TD starts from the year of the switch — earlier years would measure the fund against today's index variant, not the one it tracked back then.
For an investor who is tax-resident in Italy, ETF capital gains are taxed at 26% — but the portion attributable to government bonds of “white list” countries is taxed at 12.5%.
Effective rate = 26% × (1 − white-list share) + 12.5% × white-list share. The share is the one certified by issuers in their tax documents, published every six months: each page states the validity semester and the source. In practice, the semester in which you sell is what counts.
If an issuer does not publish the white-list share, we do not write “26%”: we write that the figure is not available. The only exception is pure equity as declared by the issuer, where a government-bond share cannot exist by nature and the 26% follows from the classification, not from missing data. On a tax, never a deduced number.
Wherever an official public register exists, we use it as the source — and declare it on the page.
Listing venues on ETF pages come from ESMA’s official register of financial instruments (FIRDS), crossed with the tickers in issuer documents. For bonds, FIRDS is the backbone of the database: over 80,000 instruments with coupons and maturities, complemented by the official indexation coefficients for inflation-linked bonds.
Every month we cross the census with the official register of authorised money market funds (EU Reg. 2017/1131). Funds in the register declare it on their page; absence is not a defect: many market “money-market ETFs” (overnight swaps) are not money market funds in law, and we prefer to show that distinction rather than hide it.
Official ECB exchange rates for currency conversions, inflation from Eurostat and national statistical institutes for real-terms views, the ECB rate as the risk-free reference: the same sources as Part I, used under the same rules.
Four principles hold on every public page, and take precedence over any editorial opportunity.
Methodological honesty includes saying what’s out of scope.
XIRR, TWR, drawdown, Sharpe, Sortino, Inflation-Adjusted Required CAGR: all calculated in real time on your portfolio, rebalanced with your rules.
Start 30 days freeNo card required · Pro plan free for early users