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

Uniform Distribution and Random Sampling

Install and import#

bash
npm install fintech-algorithms
ts
import { uniformDistributionAndRandomSampling } from "fintech-algorithms/foundations/probability-distributions-and-simulation-basics/uniform-distribution-and-random-sampling";

Signature#

uniformDistributionAndRandomSampling(input)

Draws sampleCount values on the unit interval from a seeded linear congruential generator and reports the draws with their support and realised mean.

Parameters#

NameTypeNotes
inputD00InputOne record carrying seed (the generator's starting state) and sampleCount (how many draws to produce), plus p, which the family entry point validates before dispatching.
sampleCount: 1 or greater · p: between 0 and 1 inclusive

Returns#

D00Output

An object with samples (the draws, each in the half-open unit interval), minimum and maximum (the theoretical support, always 0 and 1) and sampleMean (the mean of the draws actually produced).

Errors#

  • When p is missing or outside 0 to 1 — this check runs for every topic in the family — throws RangeError
  • When sampleCount is below 1 — throws RangeError

Complexity: time O(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
{
  "values": [0.2, 0.5, 0.7, 1, 1.4],
  "x": 1,
  "p": 0.3,
  "n": 5,
  "k": 2,
  "lambda": 2,
  "seed": 42,
  "sampleCount": 8,
  "mu": 0,
  "sigma": 1,
  "df": 5,
  "shape": 2,
  "scale": 1.5,
  "components": [
    {
      "weight": 0.7,
      "mean": 0,
      "sd": 1
    },
    {
      "weight": 0.3,
      "mean": 3,
      "sd": 0.8
    }
  ]
}

Call#

uniformDistributionAndRandomSampling(input)

Returns#

object with 2 fields: samples, minimum

{
  "samples": [
    0.2523451747838408,
    0.08812504541128874,
    0.5772811982315034,
    0.22255426598712802,
    0.37566019711084664,
    0.02566390484571457
  ],
  "minimum": 0
}

Diagrams#

Uniform Distribution and Random Sampling — article hero
Uniform Distribution and Random Sampling — calculation ledger
Uniform Distribution and Random Sampling — concept anatomy
Uniform Distribution and Random Sampling — failure boundary
Uniform Distribution and Random Sampling — method map
Uniform Distribution and Random Sampling — 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 Probability Distributions and Simulation Basics family#