Also built · Personal tool · 2026
Stock Verdict AI
Designing an AI tool you can actually trust.

What it is
A single-page research tool for NSE equities. You give it a stock symbol and upload what you have, daily and weekly charts, annual reports, concall transcripts, shareholding patterns. It returns a scored verdict for the next week of trading, with a trade plan and a full audit trail of how every number was reached.
I built it because I trade my own account and I was drowning in reading. No one asked for it and nobody else uses it. It is here because the design problem inside it is one I would bring to any product shipping AI features.
The real problem was not the AI. It was trust.
A language model reading documents is excellent at extraction and unreliable at arithmetic. Ask it the same scoring question twice and the numbers move. For a tool where I put money behind the output, that is not a rough edge. It is disqualifying.
The tempting fix is to prompt harder. Tell the model to be careful, ask it to show its working, add a checking step. All of that reduces the error rate and none of it removes the error, because you are still asking an unreliable component to be reliable.
The decision: split the system by what each part is good at
So I stopped trying to make the model trustworthy and changed what it was allowed to touch.
It reads charts, reads filings, reads transcripts, searches for news, and returns extracted facts.
Scoring, probability-weighted expected moves, risk to reward, confidence, direction rules. Same inputs, same output, every time.
The audit trail is the part I care about most. Every number in the report can be traced back to the input that produced it, so when a verdict looks wrong I can see whether the reasoning was wrong or the reading was wrong. Those are different failures and they need different fixes.
What broke, and what that taught me
Three failures were worth the time they cost.
Truncated JSON
Responses were being truncated mid-JSON and taking the whole run down with them. The fix was a larger token budget plus a repair function that closes an incomplete response and discloses in the report that it did so. Degrade honestly rather than fail silently.
Stale prices
Prices were coming back days stale. Rather than trusting any single source, the model now collects every dated quote it can find and deterministic code picks the newest valid one, with manual entry as a guaranteed fallback. When a system depends on the outside world, give the user a way to override it.
One corrupt PDF
One corrupt uploaded PDF killed an entire analysis. Now files are validated on upload and a bad file is dropped on its own instead of taking eleven good ones with it. A single bad input should never cost someone all of their work.
Do not ask a model to be reliable. Design the system so the unreliable part cannot touch the part that has to be right.
That is a design decision before it is an engineering one. It is about deciding where a product is allowed to be uncertain and where it is not, and then making that boundary visible to the person using it. Most AI features I see fail on exactly this, not on model quality.
This is a personal tool, not a product, and nothing here is investment advice.