Held-to-maturity instruments, including T-bills and brokered CDs, have no daily price feed. Carried at their last transaction price, a T-bill's entire discount would appear as a cliff on maturity day, distorting the value chart and the time-weighted return. So the app values them by accrual instead.
- T-bill: constant-yield accretion from purchase price to par. The value glides up so the yield realised each day is constant, reaching exactly par at maturity.
- CD paying interest at maturity: simple accrual, meaning par plus the accrued interest to date; at maturity the principal redeems at par and the interest lands as cash, handing off continuously.
- CD or bond with periodic coupons: carried flat at what you paid (par for an at-par new issue, the purchase price otherwise), with coupons arriving as income, matching how statements carry them.
Positions are tracked at face value (the ledger holds face dollars), and money-market funds and cash-like CDs use $1-NAV cash-equivalent handling. This is deliberately not market-price logic.
These are par instruments held to maturity, so no interim mark-to-market is attempted: if rates spike, a brokered CD's resale value drops, but a holder to maturity never realizes that price. What you give up is seeing mark-to-market dips; what you get is a value chart and TWR that match what actually happens to your money.