Market snapshot, not real-time
S&P 500 (SPY) $748.62 +0.88% Nasdaq-100 (QQQ) $708.90 +1.85% Dow (DIA) $522.55 +0.89% Russell 2000 (IWM) $295.82 +1.20% 10-Year Treasury (IEF) $93.32 −0.23% Crude Oil (USO) $128.37 +2.28% Gold (GLD) $373.85 +1.70% US Dollar Index (UUP) $28.45 +0.23% Volatility (VXX) $21.29 −3.77% Semiconductors (SMH) $583.24 +4.37% Silver (SLV) $53.36 +4.67% Emerging Markets (EEM) $65.45 +2.97% Bitcoin (BTC) $66,470.13 +1.90% Ethereum (ETH) $1,922.88 +1.00% S&P 500 (SPY) $748.62 +0.88% Nasdaq-100 (QQQ) $708.90 +1.85% Dow (DIA) $522.55 +0.89% Russell 2000 (IWM) $295.82 +1.20% 10-Year Treasury (IEF) $93.32 −0.23% Crude Oil (USO) $128.37 +2.28% Gold (GLD) $373.85 +1.70% US Dollar Index (UUP) $28.45 +0.23% Volatility (VXX) $21.29 −3.77% Semiconductors (SMH) $583.24 +4.37% Silver (SLV) $53.36 +4.67% Emerging Markets (EEM) $65.45 +2.97% Bitcoin (BTC) $66,470.13 +1.90% Ethereum (ETH) $1,922.88 +1.00%

Tool · Risk · No login

The Monte Carlo Path Simulator

Most Monte Carlo demos draw simulated returns from a fitted normal distribution — smooth, symmetric, and quietly wrong about how real stocks actually move. This one instead bootstrap-resamples a stock's own real historical daily returns, with replacement, thousands of times. Whatever skew and fat tails the real data has, the simulation inherits.

Runs entirely in your browser. 2,000 simulated paths computed on demand from a static dataset already published on this site.

Run a simulation

Covers the 31 of AEA's 32 real holdings with enough real price history (SPCX is excluded — too new).

Why bootstrap instead of a normal distribution

1

Real stocks aren't normal

Daily returns for names like the ones in AEA's book have fatter tails and more skew than a bell curve assumes — big single-day moves happen more often than a normal distribution would predict. Fitting one and sampling from it erases exactly the risk you're trying to see.

2

Bootstrap resampling keeps that shape

Each simulated day's return is literally one of the stock's own past daily returns, drawn at random with replacement. The output distribution inherits whatever fat tails, skew, or clustering the real data had — nothing is smoothed or assumed away.

3

Still a limited sample

The resampling pool is only the 57–125 real trading days this site has for each name. It can't produce a return the stock never actually had, and a short real history means a narrower range of "past days" to draw from than a longer one would offer.

What this is, and isn't, useful for

This is a way to see the real range of outcomes a stock's own historical volatility implies over some horizon — useful context next to the Sharpe & Sortino Calculator's single-number risk-adjusted return, or before sizing a position with the Position Sizing Calculator. It assumes the future statistically resembles the recent past, which is never guaranteed and is a materially stronger assumption for a short real-data window than a long one. It is not a forecast, and the bands are not probabilities of any specific price.

Methodology & limitations

Data source. Real daily closing prices from research/_data/price_history.json, the same dataset behind the Volatility & Correlation Engine and the Sharpe & Sortino Calculator.

Method. Block-free bootstrap: for each of 2,000 simulated paths, each forward day's log return is drawn independently, with replacement, from the stock's own full set of real historical daily log returns, then compounded forward from the real last close. Percentile bands (5th/25th/50th/75th/95th) are computed across all 2,000 simulated prices at each forward day.

What this ignores. Day-to-day return autocorrelation (real volatility tends to cluster; this method treats each day as independent), any change in the underlying business, and any forward-looking catalyst. It also can't produce a magnitude of move the stock hasn't already shown in its real sample.

Not investment advice. Not a forecast, and not a recommendation to buy, sell, or avoid any security.