CustomWaypointsGlidepathConfig: {
    mode: "custom-waypoints";
    waypoints: GlidepathWaypoint[];
    valueType: "return" | "equityWeight";
    equityReturn?: number;
    bondReturn?: number;
}

Configuration for custom waypoints glidepath that uses user-defined age/value pairs with linear interpolation between points.

Use case: Custom investment strategies with specific target allocations or returns at key ages

Type declaration

  • mode: "custom-waypoints"

    Discriminator for the glidepath configuration type.

  • waypoints: GlidepathWaypoint[]

    Array of waypoints defining the glidepath curve. Must contain at least one waypoint. Waypoints will be automatically sorted by age.

  • valueType: "return" | "equityWeight"

    Specifies what the waypoint values represent.

    • 'return': Waypoint values are annual return rates
    • 'equityWeight': Waypoint values are equity allocation percentages
  • Optional equityReturn?: number

    Expected annual return for equity portion (decimal format). Required when valueType is 'equityWeight', ignored when valueType is 'return'. Must be > -1.0 (cannot lose more than 100%).

  • Optional bondReturn?: number

    Expected annual return for bond portion (decimal format). Required when valueType is 'equityWeight', ignored when valueType is 'return'. Must be > -1.0 (cannot lose more than 100%).

Example

Return-based waypoints

const config: CustomWaypointsGlidepathConfig = {
mode: 'custom-waypoints',
valueType: 'return',
waypoints: [
{ age: 25, value: 0.12 }, // 12% at 25
{ age: 40, value: 0.08 }, // 8% at 40
{ age: 65, value: 0.05 } // 5% at 65
]
};

Example

Equity allocation waypoints

const config: CustomWaypointsGlidepathConfig = {
mode: 'custom-waypoints',
valueType: 'equityWeight',
waypoints: [
{ age: 20, value: 1.0 }, // 100% equity at 20
{ age: 35, value: 0.8 }, // 80% equity at 35
{ age: 50, value: 0.6 }, // 60% equity at 50
{ age: 65, value: 0.3 } // 30% equity at 65
],
equityReturn: 0.11,
bondReturn: 0.035
};

Generated using TypeDoc