Estimator Bias, Consistency, Efficiency, and Robustness
Install and import#
npm install fintech-algorithmsimport { estimatorBiasConsistencyEfficiencyAndRobustness } from "fintech-algorithms/foundations/sampling-estimation-and-statistical-inference/estimator-bias-consistency-efficiency-and-robustness";Signature#
estimatorBiasConsistencyEfficiencyAndRobustness(input)Scores an estimator against a known truth: the average error of the replicated estimates, their mean squared error, a robust median estimate, and whether the mean squared error clears mseBenchmark.
Parameters#
| Name | Type | Notes |
|---|---|---|
input | D00Input | One record. estimates holds one value per replication, populationMean is the truth they are scored against, and mseBenchmark is the mean squared error a competing estimator achieves. sample and alpha are validated for the whole family before dispatch.sample: non-empty list of finite numbers, at least two of them · estimates: non-empty list of finite numbers · alpha: strictly between 0 and 1 |
Returns#
D00Output
An object with bias (mean estimate minus populationMean), mse, robustMedianEstimate (the median of the estimates) and efficient (true when mse is at or below mseBenchmark).
Errors#
- When sample or estimates is missing, empty, or contains a non-finite number — both are parsed for every topic in the family, whether or not the topic uses them — throws RangeError
- When sample holds fewer than two observations — throws RangeError
- When alpha is not strictly between zero and one — throws RangeError
- When estimates holds fewer than two values — throws RangeError
Complexity: time O(n + m log m),
space O(n + m).
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#
{
"sample": [2, 3, 4, 3, 4],
"estimates": [3, 3.1, 3.2, 3.3, 3.4],
"populationMean": 3.2,
"alpha": 0.05,
"mseBenchmark": 0.1,
"nullMean": 3,
"alternativeMean": 3.5,
"practicalThreshold": 0.1,
"comparisons": 5
}Call#
estimatorBiasConsistencyEfficiencyAndRobustness(input)Returns#
object with 2 fields: bias, mse
{
"bias": 0,
"mse": 0.019999999999999983
}Diagrams#
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.
References#
- Product and Process Comparisons — NIST/SEMATECH e-Handbook
- Confidence Intervals — NIST/SEMATECH e-Handbook
- Historical-example decision