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

Value at Risk Intuition

Install and import#

bash
npm install fintech-algorithms
ts
import { valueAtRiskIntuition } from "fintech-algorithms/foundations/financial-risk-and-performance-statistics/value-at-risk-intuition";

Signature#

valueAtRiskIntuition(input)

Reads historical value at risk straight off the sorted loss series and counts how many observed losses ran past it.

Parameters#

NameTypeNotes
inputD00InputReads returns and benchmark, two aligned non-empty lists of finite periodic returns, frequency, the number of periods per year, and confidence, the quantile level in the closed interval from zero to one.

Returns#

D00Output

valueAtRisk is the interpolated loss quantile at confidence, confidence is echoed back, and lossExceedsVaR counts the losses strictly greater than that quantile.

Errors#

  • When returns or benchmark is absent, empty, or holds a non-finite number — throws RangeError
  • When returns and benchmark differ in length, or hold fewer than two observations — throws RangeError
  • When frequency is zero or negative — throws RangeError
  • When confidence is outside the closed interval from zero to one — throws RangeError
  • When confidence is absent, or outside the range zero to one — the engine reads it for every topic from A04 onward, including those that never use it — throws RangeError

Complexity: time O(n log n), space O(n).

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
{
  "returns": [0.01, -0.02, 0.015, -0.01, 0.03],
  "benchmark": [0.008, -0.01, 0.012, -0.006, 0.02],
  "frequency": 252,
  "target": 0,
  "confidence": 0.8,
  "riskFree": 0.0001,
  "weights": [0.6, 0.4],
  "covarianceMatrix": [
    [0.04, 0.01],
    [0.01, 0.09]
  ]
}

Call#

valueAtRiskIntuition(input)

Returns#

object with 2 fields: valueAtRisk, confidence

{
  "valueAtRisk": 0.012000000000000002,
  "confidence": 0.8
}

Diagrams#

Value at Risk Intuition — article hero
Value at Risk Intuition — calculation ledger
Value at Risk Intuition — concept anatomy
Value at Risk Intuition — failure boundary
Value at Risk Intuition — method map
Value at Risk Intuition — scenario contrast

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#

The rest of the Financial Risk and Performance Statistics family#