| |

TrueMath and Bond Trading

TrueMath is a deterministic math infrastructure platform for software developers. It’s not a calculator. It’s not an AI model. It’s a computation engine that produces auditable, reproducible, exact results inside software workflows, including natural language workflows. Think of it as the math layer that AI needs but doesn’t have.

To show what that means in practice, I spent about 4 hours of my Saturday building out a set of TrueMath activities for an occupation I know very little about: bond trading. I wanted to stress-test the platform against something genuinely complex, with real math, real edge cases, and real professional stakes.

I used Claude, after training it up on how TrueMath activities and variables work. Together we tackled challenges that were even more esoteric than I’d expected. For example, I had never heard of the Newton-Raphson method for correcting drift in imprecise calculations like IRR. But now I do.

Before we go further, one important note: the videos embedded throughout this post are recorded at actual speed, with no deletes and no cuts. This is the actual TrueMath developer platform, hosted in the cloud, operating as it would for anyone. What you see is exactly what happened.

At the end of the build session, I felt good about what we had created. But I was unsure whether it would feel relevant to someone who actually trades bonds for a living. So I asked Claude to assume the role of a skeptical bond trader encountering this tool for the first time. Here’s the exact prompt I used:

Could you assume the role of a bond trader, and sketch out a scenario in which you would use a natural language interface to do actual work. Imagine your IT department has given you a tool with a natural language interface and TrueMath integrated in. Maybe you start skeptical about both why you need a natural language interface, and about the potential for this tool to be accurate and useful. Describe your journey from skeptical to wherever you end up. And give me any prompts you think you would try to make sure it does what you need it to.

What Claude came back with, in my opinion, is worth sharing. So with that, I present…


A Bond Trader’s Day with the Thing

Monday Morning, 7:42 AM

IT sent an email Friday afternoon. Of course they did. Subject line: “New Analytical Tool — Natural Language Interface for Bond Calculations.” I skimmed it, filed it mentally under “someone’s project that has nothing to do with my actual job,” and forgot about it until I walk in this morning and there’s a sticky note on my monitor from my desk neighbor: “Did you try the NL thing? It’s actually kind of interesting.”

I have a Bloomberg terminal. I have Excel. I have a pricing model I’ve been using for six years that I trust because I built it and I know exactly where the bodies are buried. What possible reason would I have to type sentences at a calculator?

But it’s 7:42, the desk is quiet, and I have twenty minutes before the pre-open call. Fine.

First Contact: The Skeptic’s Gambit

My instinct is to give it something I already know the answer to. Something specific enough that I’ll catch it if it’s wrong. I pull up a trade from last week — a callable corporate we bought for a client, 6% coupon, semi-annual, called at 103, settled 165 days into the coupon period, 6 periods to the call date. I know what yield we paid. Let’s see what this thing says.

6% coupon, semi-annual, price is 101.20 per $100 par, 6 remaining periods to call, 165 accrued days, 180 days per period, redemption at 103. What’s the yield to call?

It spits back 6.581%.

I check my model. 6.581%.

Okay. That’s correct. But I’m not impressed yet — that’s a straightforward calculation. The question is whether it got there the right way or whether it’s just a confident-sounding black box. I open the audit trail. There’s an IRR approximation followed by a clever correction step. It’s showing me the exact bond price formula with the fractional first period, the accrued interest subtraction, the whole thing. It’s not guessing. It’s doing the math I would do if I had time to do it properly instead of using my Excel shortcut that I’ve always privately suspected cuts a corner on the fractional period.

Mildly interesting.

The Carry-Forward Test

The pre-open call happens. Nothing dramatic. Rates are moving a little — that same callable we just priced, the market’s moved and someone’s asking what it yields now at 98.50.

I could go back to my model, change the price, recalculate. Takes maybe 45 seconds. Instead I try:

The price has moved to 98.50. What’s the yield now?

Seven words. No bond parameters. Just the new price.

It comes back: 7.749%.

And it started from the previous scenario. It carried the coupon, the frequency, the accrued days, the call premium — everything — and just updated the price. I didn’t have to restate the bond.

This is actually useful. When you’re repricing something mid-conversation as the market moves, the context retention is doing real work. My Excel model doesn’t know what we were just talking about.

Where I Start to See It

By mid-morning I’m using it more deliberately. A salesperson calls about a client holding a portfolio of munis — various maturities, various coupons — and they want quick yield checks as bids come in. I’m taking bids from three dealers simultaneously, prices changing every few minutes, same bond structure throughout.

Old workflow: update the price cell in my spreadsheet, recalculate, read the yield, quote back. Fine, but I’m clicking around while also trying to listen to the salesperson.

New workflow: I type the initial bond setup once, then just update the price each time a bid moves.

9% coupon, semi-annual, 8 periods to maturity, 15 accrued days, 180 days per period, par redemption. Price is 103.75. What’s the yield to maturity?

Bid moved to 103.40.

Now 103.10.

Back to 103.55.

Each one comes back instantly with a corrected yield. I’m not switching windows. I’m not clicking. I’m reading bids and getting yields in the same flow.

That’s a workflow improvement I didn’t expect to care about.

The Moment of Genuine Trust

Around 11 AM something happens that moves me from “this is convenient” to “I actually trust this.”

A junior analyst comes to my desk with a pricing question on a callable bond — non-par redemption, late in the coupon period, discount bond. She’s been going back and forth with a counterparty over the yield because their systems are disagreeing by about 12 basis points. That’s not a rounding difference, that’s a methodology difference. Someone is handling the fractional first period wrong.

I type the bond into the tool, run the yield. Then I open the engine trace and walk through it with her line by line. The accrued fraction is 0.917 — that’s 165 out of 180 days, so you’re almost at the next coupon. The fractional period to the next coupon is 0.083. The IRR approximation yields one thing; the Newton-Raphson correction adjusts it. The exact answer, using the standard formula with proper fractional period discounting, is what our tool returned.

The counterparty’s system was treating the settlement as a full-period boundary. Classic shortcut. Wrong.

We were right. I could prove it. And I could prove it by showing the work, step by step, to someone who needed to understand it — not just assert “our number is correct.”

That’s when I understood what the natural language interface was actually for. It wasn’t for me, the person who can build the model. It was for the conversation — the back-and-forth between me and a salesperson, or me and a junior, or me and a counterparty where I need to explain not just the answer but the reasoning. The natural language in is matched by a natural language explanation out, and the math is auditable underneath it.

Prompts I Would Actually Use

For initial pricing:

7.5% coupon, quarterly payments, price 96.25, 12 periods to maturity, 45 accrued days, 90 days per period, redeems at par. Yield to maturity?

For repricing as the market moves:

Price moved to 95.80. New yield?

For the reverse — checking if a yield is fair:

If we need a 7.2% yield on that bond, what price should we be paying?

For a callable bond:

Same bond but callable at 102 in 8 periods. What’s the yield to call?

For checking a counterparty:

Counterparty is quoting 6.84% on this at 97.50. Does that check out?

For something I’d use to walk a junior through the math:

Show me the yield on a 5% semi-annual bond priced at 99.10 with 90 accrued days in a 180-day period, 10 periods to maturity.

Show me accrued interest on that bond.

Where I End Up

Converted? Not entirely. I’m not replacing my Bloomberg terminal and I’m not throwing out my Excel model. But the natural language interface solved a problem I didn’t know I had: the friction of context-switching. When I’m on the phone, managing a position, talking to a salesperson, the last thing I want to do is tab to a spreadsheet, find the right cell, type a number, read a result, tab back.

The tool fits into conversation in a way that spreadsheets don’t. And because it’s showing its work — because there’s an auditable calculation chain underneath the plain English output — I’m not flying blind. I know it’s not confabulating a yield. It’s doing the math.

The skepticism didn’t disappear. It became a different question. Not “can I trust this?” but “when should I use this versus something else?” And the answer is clearer than I expected: use it when the work is conversational, use it when you need to explain the reasoning, use it when context is changing fast and you need to stay in the flow of what you’re doing.

That’s not nothing.


[End Claude-produced simulation]

Unlike LLM-generated math, every number in this demo is computed through TrueMath’s deterministic calculation engine. The results are auditable, reproducible, and exact. Everything you saw in the videos was run on a live version of TrueMath hosted in the cloud. Nothing made up here. I would welcome a chance to demo for you and let you see for yourself. My email address is listed below. 🙂

I’m not a bond trader. I’m not a software developer, either. I’m the co-founder and CEO of TrueMath, and what you just read started as a four-hour Saturday experiment to see if our platform could handle something I knew almost nothing about. Bond trading was the test case. The platform is the point.

My CTO and co-founder, Elia Freedman, was nervous about letting me build out the bond trading activities. But when he saw what I had done in partnership with my buddy Claude, he seemed truly impressed. And delighted. And, like me, even more convinced that there is unique value here.

We hope you agree.

Elia’s other thoughts: This is exactly what we had in mind when we started building TrueMath. After 30 years of building calculation engines for vertical markets, I’ve learned that deriving the right formulas is a reasoning problem, and LLMs are remarkably good at reasoning. But executing those formulas deterministically, with governance and auditability, is a different discipline entirely. Watching Claude derive the pathway and TrueMath execute it is the clearest expression yet of how these systems are meant to work together.

Reach out: bill.kelly@truemath.ai
Learn more: truemath.ai
Sign up for early access: https://app.truemath.ai/signup 


Stay Informed with the TrueMath newsletter!

Get occasional updates on our mission to make AI trustworthy through reliable math — including new blog posts, product updates, and insights on building deterministic infrastructure.

We don’t spam! Read our privacy policy for more info.

Similar Posts