fintech-algorithms
Using a coding agent? Give it the skill: npx skills add IslamBaraka90/Fintech-Algorithms-Library What it does →

Compound Interest

Install and import#

bash
npm install fintech-algorithms
ts
import { compoundInterest } from "fintech-algorithms/financial-mathematics-statistics-and-data-foundations/financial-arithmetic-time-value-and-returns/compound-interest";

Signature#

compoundInterest(input)

Worked example#

verified This is the worked example published in the article, replayed by the test suite on every run. The output cannot drift.

Input#

input
{
  "principal": 1000,
  "rate": 0.05,
  "periods": 3,
  "compoundsPerPeriod": 12,
  "futureValue": 1200,
  "cashFlows": [-1000, 400, 400, 400],
  "startValue": 100,
  "endValue": 110,
  "returns": [0.1, -0.05, 0.08],
  "frequency": 12,
  "periodicReturn": 0.01
}

Call#

compoundInterest(input)

Returns#

object with 2 fields: endingValue, interest

{
  "endingValue": 1161.4722313334678,
  "interest": 161.4722313334678
}

Diagrams#

Compound Interest — concept anatomy
Compound Interest — lesson map
Compound Interest — mistake contrast

Calculation flow#

Compound Interest — four-part map
flowchart LR
    A["Name the input"] --> B["Apply: A = P x (1 + r)^t; general frequency: A = P x (1 + r/n)^(n x t)"]
    B --> C["Check units and boundary"]
    C --> D["Explain the output"]

How it works#

This page states the contract — how to call it correctly. The article explains the concept: why it works, and where it breaks.

Read the article →

References#

  • INVESTOR_COMPOUND - Compound Interest — U.S. Securities and Exchange Commission
  • INVESTOR_CDS - Investor Bulletin: Brokered CDs — U.S. Securities and Exchange Commission
  • CFA_TVM - Time Value of Money in Finance — CFA Institute
  • Author-derived and synthetic boundary

The rest of the Financial Arithmetic, Time Value, and Returns family#