Skip to content

Generated file. Source: docs/ROD_interest_flow_diagram.md Edit the source document and run npm run docs:sync to refresh this published copy.

ROD Interest Flow Diagrams

This file contains visual diagrams explaining the ROD (12-year annual accumulation with inflation indexing) bond strategy algorithm.

Architecture Overview

flowchart LR
    A[calculateRodBondResult] --> B[createRodAnnualAccumulationStrategy]
    B --> C[simulateAnnualAccumulationBond]
    C --> D[Yearly snapshots]
    C --> E[Purchase events]
    C --> F[Redemption events]
    C --> G[Yearly results]

Long-Term Accumulation Flow

ROD uses 12-year cycles with inflation-indexed rates after the first year.

flowchart TD
    A[Start year] --> B[Apply yearly capitalization to active bonds]
    B --> C{Year is multiple of 12?}
    C -- Yes --> D[Redeem matured 12-year batch]
    C -- No --> E[Continue accumulation]
    D --> F[Tax redemption profit]
    F --> G[Add net proceeds to cash]
    G --> H{Reinvest cash >= 100?}
    H -- Yes --> I[Buy new ROD batch]
    H -- No --> J[Add to cash account]
    I --> K[Store purchase event]
    J --> K
    K --> L{final year?}
    L -- Yes --> M[Early redeem remaining bonds]
    L -- No --> N[Build year snapshot]
    M --> N

Rate Structure Timeline

xychart-beta
    title "ROD 12-Year Rate Structure"
    x-axis ["Year 1", "Year 2", "Year 3", "Year 4", "Year 5", "Year 6", "Year 7", "Year 8", "Year 9", "Year 10", "Year 11", "Year 12"]
    y-axis "Annual Rate (%)" 5 --> 10
    line [5.60, "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5", "inf+2.5"]

Rollover Mechanics

ROD supports multiple 12-year cycles with reinvestment of matured proceeds.

stateDiagram-v2
    [*] --> InitialPurchase
    InitialPurchase --> Year1_11 : 11 years accumulation
    Year1_11 --> MaturityYear12 : Natural redemption
    MaturityYear12 --> TaxCalculation : Tax 19% of profit
    TaxCalculation --> NetProceeds : Gross - tax
    NetProceeds --> NextBatchPurchase : floor(net/exchangePrice) bonds
    NetProceeds --> ResidueToCash : Remainder to cash account
    NextBatchPurchase --> Year1_11 : Next 12-year cycle
    ResidueToCash --> [*] : No interest accrual

References