Money-Weighted Rate of Return (MWRR) is often treated as a solved problem. In most organizations, it appears as a single percentage in reports, dashboards, and client statements. From governance and audit perspective, that simplicity is misleading. This article outlines why MWRR is a high-risk metric, where implementations commonly fail, and what a defensible, auditable approach looks like in production systems.
1. MWRR is a Numerical Process, not a Formula
MWRR is defined as the rate that makes the net present value of cash flows equal to zero. There is no closed-form solution. Every implementation relies on numerical root-finding. This has two immediate implications:
- The result depends on the numerical method used
- The method itself becomes part of the metric definition
If these choices are undocumented or inconsistent, the reported figure cannot be independently reproduced.
2. MWRR Does Not Always Exist
In certain scenarios – such as when all cash flows have the same sign – no real MWRR exists. From a control perspective, this matters because:
- Returning a default value masks a mathematical impossibility.
- Silent failure creates false confidence in reported performance.
A defensible system must explicitly detect and report “MWRR undefined” rather than forcing a numeric output.
3. MWRR Is Not Always Unique
MWRR Is Not Always Unique In practice, this means:
- Different solvers may converge with different results
- Results may change when implementation details change
- Two “correct” system can disagree
For auditors, this raises a critical question:
"Which solution should be reported? And why?"
Any system that cannot answer this deterministically is inherently fragile.
4. Solver Choice Affects Reported Results
Many implementations rely solely on Newton-Raphson due to its speed. However, Newton-Raphson:
- Is Sensitive to initial conditions
- May fail silently
- Can converge to different roots for the same data
From a governance standpoint:
- Speed is not a control objective
- Determinism and explainability are
Robust systems use hybrid approaches and expose solver behavior as metadata.
5. Time Assumptions Are Material
MWRR is highly sensitive to cash-flow timing. Seemingly minor decisions – such as:
- Start-of-day vs end-of-day application
- Same-day aggregation rules
- Day-count conventions
MWRR Can produce materially different results if these assumptions are not:
- Explicit
- Consistent
- Disclosed
Then the metric is not auditable.
6. Floating-Points Arithmetic Break Reproducibility
Floating-point calculations are not guaranteed to be reproducible across:
- Hardware architecture
- Compiler optimizations
- Execution order
In testing, identical MWRR calculations produce different results across environments. For audit and regulatory purposes, this is unacceptable unless mitigated by:
- Fixed precision policy
- Deterministic evaluation order
- Controlled convergence threshold.
7. Common Failure Modes Observed in Production
Across multiple implementations, the following issues appear repeatedly:
- Multiple valid MWRRs for the same portfolio
- Extreme rates caused by near-zero-time gaps
- Non-convergence on long-dated portfolios
- Inconsistent result across environments
8. What an Auditable MWRR Implementation Looks Like:
From a developer and audit perspective, a defensible MWRR engine must:
- Explicitly detect undefined scenarios
- Identify and handle non-unique solutions
- Use deterministic numerical methods
- Fail visibly rather than silently
- Record solver configuration and outcomes
- Document timing and precision assumptions
In short: The System Must Explain Itself.
9. Governance Perspective
A system that always returns a performance number is not robust – it is optimistic. In regulated environments, optimism is a risk.
MWRR should be treated as a conditional metric whose validity depends on input structure, numerical behavior, and documented assumptions.
Comments
No comments yet. Be the first to share your thoughts!