Portfolios · Monthly · 1972–Present · Rebalanced Monthly · 50-Mo MA + ±10/±20% Bands
Famous Portfolios
monthly NAV · open = prior month close · 50-month SMA (fuchsia) · displacement bands ±10% / ±20% of the MA
Portfolio:
defensive when stretched above a percentile threshold of distance from the 50-month MA (expanding, or rolling 5y/10y basis) or when the 10-month trend breaks; back to the aggressive per the return rule (T2 clamps to the defensive threshold)
Aggressive Defensive Defensive if p ≥ Return on rec ≥ Return rule Basis
Loading portfolio data…
Drag = pan · shift+drag = box-zoom · scroll = zoom X · drag Y-axis = zoom Y · double-click = reset
Favorites
From to
index value (log scale)
Methodology
Each portfolio is a fixed-weight basket of asset classes, rebalanced monthly back to its target weights. NAV is a total-return index (dividends and coupon income reinvested), base 100 at the start of 1972. The allocations and rules are below — click a section to expand it.
The seven original portfolios

1 · The portfolios

All seven are static — no trend rules: every sleeve is always invested at its target weight. The allocations: 60/40 Stocks/Bonds — 60% S&P 500, 40% 10-year Treasuries. The classic balanced portfolio.
Permanent Portfolio (Harry Browne) — 25% stocks, 25% long bonds, 25% gold, 25% cash.
Golden Butterfly — 40% stocks, 20% long bonds, 20% gold, 20% cash.
All-Weather (Ray Dalio) — 30% stocks, 40% long bonds, 15% intermediate bonds, 7.5% gold, 7.5% commodities.
100% S&P 500 — the equity baseline.
2x Levered S&P 500 — a synthetic replica of a real 2x levered S&P 500 ETF (ProShares SSO launched June 2006), built back to 1972 with the same mechanics as the real product. Exposure is reset daily, not monthly: on every trading day $2 of S&P 500 total return is held on $1 of equity, the $1 borrow is financed at the 3-month T-bill rate plus a 0.5% spread, and a 0.90%/yr operating expense is charged daily — exactly the cost stack of a leveraged ETF. The daily reset is what creates the genuine volatility decay: in choppy markets the series compounds to less than 2× the index return even before costs, and crashes hit roughly twice as hard (2008 ≈ −67% vs −37% for the index). Daily prices: Yahoo Finance ^GSPC (1950+); daily dividends accrue at that month's Shiller dividend yield. Each monthly candle closes at the last trading day of the month. Residual differences from the physical fund (exact swap-financing rate, tracking error) are second-order.
3x Levered S&P 500 — the same daily-reset construction as the 2x, at 3:1 leverage: $3 of S&P 500 total return on $1 of equity, $2 financed at the 3-month T-bill rate plus 0.5% spread, with the 0.91%/yr operating expense (ProShares UPRO class) charged daily. Same data, same mechanics, same caveats — volatility decay is larger, crashes hit roughly three times as hard, and the series can compound to well below the index in choppy regimes.
The thirteen trend & momentum variants

2 · Trend & momentum variants

Common mechanics: every signal is computed at month-end from data through that month and the resulting position earns the next month's return (no lookahead); a sleeve that is "out" sits in T-bills. Unless noted, history runs from 1972. Each portfolio's allocation and rule: Global Trend-Enhanced 60/40Allocation: 60% global equities (MSCI World proxy), 40% intermediate bonds. Trend rule: each sleeve is held only while its month-end level is above its own 10-month SMA; a sleeve below its SMA sits 100% in T-bills for the following month. The two sleeves trade independently — in the 2008 crash both exited by mid-2008 and stayed in cash until the trend re-asserted in 2009. Until 2001 the global proxy is the S&P 500, so before then this is the US-stock version of the same rule.
Faber GTAA / Ivy PortfolioAllocation: five 20% sleeves — US stocks, developed ex-US (EFA proxy), intermediate Treasuries, REITs (VNQ proxy), broad commodities. Trend rule: each sleeve is independently held only while above its own 10-month SMA, else T-bills. A sleeve typically exits one to two months after a downturn starts and re-enters once its 10-month trend turns back up — each market is treated on its own merits. History from 2004-10 (REIT proxy launch).
Global Equities MomentumAllocation: 100% in one position at a time — the stronger of US stocks / developed ex-US, or aggregate bonds. Rule: dual momentum: at each month-end, compare the trailing 12-month return of US stocks vs developed ex-US and hold the winner for the next month — but only if the winner also beat T-bills over that year; if neither beats cash, hold aggregate bonds instead. Switched only at month-end. History from 2001-09 (developed ex-US proxy launch).
Trend-Enhanced Golden Butterfly — the classic Golden Butterfly's 40% stock sleeve is split in half, so every sleeve is exactly 20%: 20% stocks (S&P 500), 20% small-cap value (Ken French SMALL HiBM, value-weighted total return), 20% long bonds (10-year Treasuries), 20% gold, 20% cash (3-month T-bills). Trend rule: at each month-end, each of the four risk sleeves is compared with its own 10-month simple moving average of month-end levels. A sleeve above its 10-month SMA stays invested at its full 20% for the following month; a sleeve below it is switched to T-bills for that month — the 20% allocation itself never changes, only what it invests in. The cash sleeve is never gated. Signals use data through month-end k−1 and earn the next month's return (no lookahead). In a full bear market all four risk sleeves can be in cash at once, leaving the portfolio ~100% in T-bills; normally the sleeves flip independently, so exposure sits between 40% and 100%. Small-cap value, the most volatile sleeve, is the one most often in cash.
Modern Multi-Asset TrendAllocation: 40% global equities, 20% intermediate bonds, 10% TIPS, 10% gold, 10% commodities, 10% cash (3-month T-bills). Trend rule: all five risk sleeves are gated independently on their own 10-month SMA (above → held, below → T-bills); the 10% cash sleeve is never gated. A pure defensive build: every risk sleeve can stand down on its own.
Multi-Lookback Trend PortfolioAllocation: 40% global equities, 20% intermediate bonds, 10% TIPS, 10% gold, 10% commodities, 10% cash. Trend rule: each tactical sleeve is scaled by how many of its 8-, 10- and 12-month SMAs it is above at month-end: 3 of 3 → full weight, 2 of 3 → two-thirds, 1 of 3 → one-third, 0 of 3 → cash. Sleeves de-risk gradually instead of flipping fully on a single signal.
S&P 500 10-Month SMAAllocation: 100% S&P 500, or 100% T-bills. Trend rule: the classic Faber rule: hold the S&P 500 only while its month-end level is above its 10-month SMA, otherwise T-bills; recheck monthly. The monthly 10-month SMA approximates the daily 200-day average with far fewer trades. Faber's 1901–2012 study: ~10.2% vs 9.3% annualised for buy-and-hold, max drawdown −42% vs −84% — it sells only after an established decline, so it trims prolonged bears without catching tops and bottoms.
2x Levered S&P 500 10-Month SMAAllocation: 100% of the synthetic 2x levered S&P 500 series, or 100% T-bills. Trend rule: the same Faber rule applied to the levered NAV itself — hold the 2x series only while its month-end level is above its own 10-month SMA, otherwise T-bills. Because the levered NAV swings harder than the index, the filter trips earlier in a downturn and re-enters only after the levered trend re-establishes — it sits out the worst of crashes but whipsaws more than the same rule does on the plain index.
3x Levered S&P 500 10-Month SMAAllocation: 100% of the synthetic 3x levered S&P 500 series, or 100% T-bills. Trend rule: the same rule again, applied to the 3x NAV. The still-larger swings make the filter even more reactive: it typically exits deep drawdowns very quickly, at the cost of more false signals in flat, choppy markets.
50% S&P 500 + 50% 2x Levered (10-Mo SMA)Allocation: 50% S&P 500 + 50% synthetic 2x levered S&P 500, or 100% T-bills. Trend rule: a single whole-portfolio gate on the S&P 500's own 10-month SMA: while the S&P is above its SMA both sleeves are held (50% plain + 50% 2x — net exposure ~1.5x); the moment the S&P closes below its SMA the entire portfolio, plain-equity half included, moves to T-bills until the index is back above the SMA. This is more defensive than gating only the levered half — the plain 50% also steps aside in bears, at the cost of extra whipsaws around the SMA line.
S&P 500 Absolute MomentumAllocation: 100% S&P 500, or 100% T-bills. Rule: Antonacci's absolute momentum: hold the S&P 500 only if its trailing 12-month total return beats T-bills over the same 12 months, else T-bills. Differs from the SMA rule by comparing the year's return against cash rather than price against its own average — it can stay invested through a shallow dip and exits when the 12-month score turns negative. 1974–2012: ~12.3% vs 11.6% annualised, Sharpe 0.55 vs 0.37, drawdown −23% vs −51%.
12-1 Stock MomentumAllocation: 100% top-decile US momentum stocks (Ken French PRIOR 12-2 universe, value-weighted), always invested. Rule: the Jegadeesh–Titman 12-1 rule: stocks ranked by return from 12 months ago through 1 month ago (the latest month is skipped — very short-term returns reverse), top decile held, rebalanced monthly. Long-only version of the academic strategy; the underlying index is already constructed with the one-month skip, so no lookahead. It keeps full stock-market risk — 2008 was −39% and the max drawdown −51% — and the top decile has historically beaten the S&P 500 by a wide margin (16.6% vs ~10.4% annualised here since 1972).
Donchian Breakout (12/6-Month)Allocation: 100% S&P 500, or 100% T-bills. Rule: monthly proxy of the 252/126-day Donchian channel: buy when the close exceeds the previous 12-month high; sell when it closes below the previous 6-month low (the shorter exit cuts losses before a full-year reversal); T-bills while out. The classic trend-following methodology, but applied to a single stock index it spends long stretches in cash — here it trails buy-and-hold on return (10.2% vs ~10.4%) while roughly halving the drawdown. It is presented as the famous methodology, not as one of the strongest stock-only strategies.
Monthly candles

3 · Candles

Monthly candles (TradingView-style, teal = up / red = down). Because the components are marked monthly, candles are body-only: open = prior month's close, no intra-month wicks. Body width is 45% of the bar spacing, exactly as on the Dumpometer.
50-month moving average & displacement bands

4 · 50-month moving average & displacement bands

The fuchsia line is the simple 50-month moving average of closes. The dashed bands are percentage displacements of the MA — ±10% (light) and ±20% (dark): band = MA × (1 ± pct). When price trades above the +20% band it is stretched far beyond its 4-year trend; below the −20% band it is deeply depressed relative to trend.
Data & sources

5 · Data & sources

S&P 500 total return and 10-year yields: Shiller's monthly dataset (dividends + GS10, through Sep 2023), extended with FRED SP500 prices and DGS10 yields (monthly means) plus the carried dividend yield. Cash: FRED TB3MS. Intermediate bonds: FRED DGS5 (5-year, monthly mean; par-bond total return). Gold and the broad commodity index: World Bank Pink Sheet (monthly, keyless). Global equities: MSCI World proxy — iShares ACWI (2008+, price + ~2% dividend carry), iShares EFA (2001–2008, developed ex-US, price + ~2.5% carry), S&P 500 total return before 2001 (no keyless MSCI World history). Developed ex-US: iShares EFA (2001+, price + ~2.5% carry). REITs: Vanguard VNQ (2004+, price + ~4% carry). Small-cap value: Ken French 5x5 size/value data library (monthly value-weighted total return, 1963+). Stock momentum: Ken French 10 prior-return decile portfolios (PRIOR 12-2 convention — the 12-1 rule with the one-month skip built in; top decile used, 1927+). Sector momentum: Ken French 10 industry portfolios (value-weighted, 1926+). Ken French data is released with a ~1-month lag, so those portfolios' last candle can trail the global timeline by one month. Inflation-linked bonds: FRED DFII10 (10Y TIPS, par-bond total return from 2003) with a CPI-linked synthetic backfill before 2003 (inflation + ~1.5% real yield). Managed futures: simple 10-month SMA time-series momentum proxy over stocks, bonds, gold and commodities with a T-bill fallback (no free CTA index exists). Trend signals are computed at month-end and executed at the next month's return — no lookahead. Bond sleeves are priced as constant-maturity par bonds (coupon = prior month's yield, repriced monthly). 2x/3x Levered S&P 500: synthetic SSO/UPRO-style constructions — Yahoo Finance ^GSPC daily prices (1950+), daily-reset 2x/3x exposure, dividends carried at Shiller's monthly yield, borrow financed at TB3MS + 0.5% spread, 0.90%/0.91% annual expenses charged daily; the daily reset produces the volatility decay of a real leveraged ETF. This is a technical study, not investment advice.
Rotation mode (live, on-page tool)

6 · Rotation mode

A live tool that runs entirely in your browser — tick the Rotation mode box, pick an aggressive and a defensive portfolio from the list, and set two percentile thresholds (1–99): a high one for leaving the aggressive portfolio, and a lower one for returning to it. The page instantly computes and plots a synthetic portfolio that switches between the two. Defaults: aggressive = S&P 500 10-Month SMA, defensive = Multi-Lookback Trend Portfolio, T1 = 95, T2 = 37, rolling 10-year basis, 10-month trend guard on.
Allocation: 100% in one portfolio at a time — the aggressive portfolio normally, the defensive portfolio when the aggressive one is stretched far above its own 50-month moving average or, with the 10-month trend guard on, when its close falls below its 10-month SMA.
Percentile basis: the Basis dropdown chooses what the percentile is ranked against. Expanding ranks today's distance against every prior month since the 50-month MA began — the original measure, but it is dominated by the most extreme stretches in history (1987, 1995–2000), so later tops like Oct 2007 (which ranked only ~p52 expanding) never trigger a defensive exit before a crash. Rolling 5y / 10y ranks against the last 60 / 120 months only — a top is judged against the recent decade instead of ancient extremes, so Oct 2007 ranks ~p85-88 on the 5-year basis and the exit fires. The 10-year basis is a middle ground (Oct 2007 ≈ p62-65, so it needs a lower defensive threshold). Default is the 10-year rolling basis.
Trend guard: when checked (default), the mode also exits to the defensive portfolio whenever the aggressive portfolio's monthly close is below its 10-month SMA — this catches crashes that begin without an overheat (e.g. 2008: the S&P broke its 10-month trend in Dec 2007 while its stretch percentile was still moderate), and re-entry additionally requires the close to be back above the 10-month SMA, which keeps the rotation out of the falling knife.
Rule: at each month-end, measure the aggressive portfolio's distance from its 50-month MA (the same distance shown in the stats strip) and rank it against all prior monthly distances through that month-end. While holding the aggressive portfolio, if that percentile closes at or above the high threshold (default 95), the switch to the defensive portfolio happens at the start of the next month. While holding the defensive portfolio, the switch back to the aggressive happens only once the percentile falls below the lower threshold (default 37) — the stretch has unwound. Between the two thresholds the current side is kept, so the mode never flip-flops. Setting both thresholds equal reproduces the simple one-threshold rule. The return threshold can never be higher than the defensive threshold — if you type a larger value there it is clamped to the defensive threshold (the boxes always show the effective values). Only data through the prior month-end is used — no lookahead. Until roughly 60 prior distance observations exist (about five years after the 50-month MA begins), the mode holds the defensive portfolio, so the rotation is never forced into the aggressive portfolio before the signal can be computed.
Return rule: the dropdown next to the thresholds chooses how the mode comes back to the aggressive portfolio. While p < T2 (the original rule): as soon as the percentile closes below the return threshold, the switch back happens at the start of the next month — this re-enters the aggressive portfolio while its stretch is at historic lows, i.e. during a decline. On recovery ≥ T2: while defensive, the percentile must first close below T2 (the stretch has unwound into a decline) and then close back at or above T2 while still below the defensive threshold — only then does the switch back happen at the start of the next month. The rotation therefore stays in the defensive portfolio through the worst of a drawdown and re-enters only once the aggressive portfolio has confirmed a turn upward. In both rules the defensive portfolio keeps its own internal rules (a trend-following defensive portfolio may itself sit in cash).
The defensive portfolio keeps its own rules — a trend-following defensive portfolio may itself sit in cash during some months. The signal percentile, current holding, switch count, and defensive time are shown next to the inputs. Metrics are computed in-browser with the same formulas as the stored portfolios, except Sharpe/Sortino use a 0% cash rate and “time in defensive” replaces “time in cash”. Nothing is written to the data files — the mode is recomputed live whenever the inputs change.
Reading the chart: dotted vertical lines mark every switch — amber = into the defensive portfolio, teal = back into the aggressive one. Hover any monthly candle: the tooltip shows the month and portfolio value, then lists exactly what that portfolio held that month as a vertical list, one asset per line with its exact weight — e.g. “S&P 500 — 20.0% / long bonds — 20.0% / gold — 20.0% / cash — 40.0%”, with any sleeve parked in cash shown indented under it (“↳ small-cap value (in cash) — 20.0%”), the single position of a momentum strategy (“S&P 500 — 100.0%” or “cash — 100.0%”), or partial exposure for graded sleeves (e.g. “global equities — 26.8%”). Cash is everything not invested: the static cash sleeve plus any sleeve whose trend filter is off. Static portfolios show no per-month config because their weights never change. The Current allocation line below the stats shows what the last completed month-end signal says the portfolio should hold right now — the chart's last candle is the latest month with full source data, and that month-end signal stands until the next month's data arrives.