Page actions
instrument / verified-clean
Bond Price / YTM Calculator
The current ledger marks this instrument verified clean within the source-bound verification corpus.
Inspectable records
Ledger state
The current ledger marks this instrument verified clean within the source-bound verification corpus.
- Area
- Finance, Economics & Business (educational only — never individualized investment, tax, or legal advice)
- Tranche
- tranche-6
- Evidence ID
- t6-031
- Ledger rows
- 1
No ledger note is attached.
Review findings
The core present-value formula is correct under ordinary fixed-rate, annual-coupon assumptions. Verdict is NEEDS_REVIEW because coupon frequency/payment timing, current-yield definition, and deterministic YTM solver details are omitted. The educational-only and flat-yield-curve labeling is appropriate but should also disclose no accrued-interest, credit-spread, liquidity, tax, transaction-cost, callability, or reinvestment assumptions.
Formula and scope findings
- The price formula is standard only when t and n are payment periods, y is the yield per payment period, and C is the coupon payment per period; the spec supplies years and coupon rate but does not define coupon frequency or payment timing.
- The YTM root-finding method, initial guess, stopping criterion, and maximum iteration count are unspecified. These are required for deterministic on-device results.
- Current yield is not explicitly defined. The usual definition is annual coupon payment divided by current price, but this must be stated, especially for nonannual coupons and bonds with amortization or special cash flows.
- The formula assumes a single flat yield per period and ordinary fixed coupons; it does not cover accrued interest, clean versus dirty price, odd first or last periods, callable bonds, floating-rate bonds, or zero/negative-yield domain policy.
Unit assumptions
- All test vectors explicitly assume annual coupon payments, one payment per year, annual coupon rate, annual yield, and n equal to years to maturity.
- Coupon payment C is face value multiplied by the annual coupon rate.
- Price is the theoretical dirty/fair price immediately after a coupon payment, so there is no accrued interest.
- Current yield is annual coupon payment divided by price: (face value × annual coupon rate) / price.
- For Newton YTM examples, the deterministic solver uses f(y) = price(y) - target price, Newton's method, initial guesses shown in the inputs, absolute yield-change tolerance 1e-10, and a maximum of 100 iterations.
Boundary hardening
BREAK_CLAIMED · SELF_FLAGGED
The instrument has a mathematically undefined input at market_yield = -1 and should reject it. Separately, the unspecified coupon and yield frequency creates materially different valid prices under annual versus semiannual conventions.
Errata and corrections
No applied erratum is attached to this unique-name record.
Inspectable example
4 review vectors are recorded. One source-bound sample is shown below.
{
"inputs": {
"mode": "price",
"face_value": 1000,
"coupon_rate": 0.05,
"years_to_maturity": 5,
"annual_coupon_frequency": 1,
"market_yield": 0.04
},
"expected_outputs": {
"price": 1044.518223,
"current_yield": 0.047868959
},
"working": "C = 1000 × 0.05 = 50. Price = 50/(1.04)^1 + 50/(1.04)^2 + 50/(1.04)^3 + 50/(1.04)^4 + 50/(1.04)^5 + 1000/(1.04)^5. (1.04)^5 = 1.2166529024, so 1/(1.04)^5 = 0.8219271068. Coupon annuity factor = (1 - 0.8219271068)/0.04 = 4.451822330. Coupon PV = 50 × 4.451822330 = 222.5911165. Principal PV = 1000 × 0.8219271068 = 821.9271068. Price = 222.5911165 + 821.9271068 = 1044.5182233. Current yield = 50/1044.5182233 = 0.047868959, or 4.7868959%."
}Related workflows
No source-defined multi-instrument workflow membership is recorded.
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.json · VERIFIED_CLEANevidence-tranche6/tranche6-results.jsonBOUNDARY_HAZARD_CATALOG.json