Asset Allocation Calculator Formula

Understand the math behind the asset allocation calculator. Each variable explained with a worked example.

Formulas Used

Recommended Stock %

stock_allocation = round(base_stock_pct)

Recommended Bond %

bond_allocation = round(100 - base_stock_pct)

Years to Retirement

years_remaining = years_to_retire

Expected Return (Approx)

expected_return = base_stock_pct / 100 * 10 + (100 - base_stock_pct) / 100 * 4

Variables

VariableDescriptionDefault
ageYour Age(years)35
risk_toleranceRisk Tolerance1
retirement_ageTarget Retirement Age(years)65
years_to_retireDerived value= max(retirement_age - age, 0)calculated
base_stock_pctDerived value= min(max((120 - age) * risk_tolerance, 10), 95)calculated

How It Works

Asset Allocation by Age

The Classic Rule

Stock Allocation = (120 - Age) x Risk Multiplier

Older versions used 110 or 100 instead of 120, but increasing life expectancies favor more aggressive allocations.

Risk Tolerance Adjustments

  • Conservative (0.8x): Less volatility, lower expected return
  • Moderate (1.0x): Balanced approach, standard rule
  • Aggressive (1.2x): More stocks, higher expected return and volatility
  • Why This Works

    Younger investors have more time to recover from downturns, so they can hold more stocks. As retirement approaches, shifting toward bonds reduces the risk of a devastating loss at the wrong time.

    Worked Example

    35-year-old, moderate risk tolerance, retiring at 65.

    age = 35risk_tolerance = 1retirement_age = 65
    1. 01Base stock % = (120 - 35) x 1.0 = 85%
    2. 02Bond allocation = 100% - 85% = 15%
    3. 03Years to retirement = 30
    4. 04Expected return = 85% x 10% + 15% x 4% = 9.1%

    Ready to run the numbers?

    Open Asset Allocation Calculator