Introduction
Over the last few months, I’ve been thinking deeply about one uncomfortable truth that stock analysts like me often ignore:
Many of the ratios we rely on look precise, but often hide more than they reveal.
That realisation pushed me to rework some core logic inside the Stock Engine. What I’ve done is not just cosmetic updates, but they have altered how my algorithm calculates the “Overall Score.”
These updates are based on the six detailed paid posts that I’ve recently published.
| Post 1 | Post 2 | Post 3 | Post 4 | Post 5 | Post 6 |
Each article challenged one commonly accepted shortcut in stock analysis and forced me to rethink how the Overall Score should really behave.
Below, I’m explaining what exactly has changed in the algorithm. I’ll also try to explain why I changed it, and how it improves the quality of the scores you‘ll see in the Stock Engine app.
Table of Contents
1. Update to the Financial Health Algorithm
(Based on: Cash Flow vs Net Profit, and Full ROE – Operating + Leverage ROE)
Earlier, the Financial Health score algorithm relied on traditional comfort metrics like net profit trends, ROE levels, and balance sheet strength.
These are useful, but they can miss a critical dimension: how real those profits and returns actually are?
1.1 Cash Flow vs Net Profit: What Changed
After studying Swiggy’s numbers, one thing became very clear. A company can look terrible on the P&L and still be in control financially. How? If its cash burn is disciplined and improving.
So the Financial Health Algorithm now gives much higher importance to operating cash flow trends, not just reported profits.
A company that shows the following:
- narrowing cash burn,
- improving cash efficiency,
- and a reasonable cash runway,
will no longer be so heavily punished simply because accounting profits are negative.
At the same time, companies that show profits but bleed cash consistently will see their Financial Health score drop.
This change alone makes the algorithm far more realistic, especially for new-age, high-growth businesses.
1.2 ROE Decomposition: What Changed
The second big upgrade came from breaking ROE into two parts:
- Operating ROE (true business strength)
- Leverage-driven ROE (debt doing the heavy lifting)
Earlier, a high ROE automatically boosted the Financial Health score. That was not a mistake, but it is always better to dig deeper than ROE.
When I did that for a new company, I found something very revealing and enriching. So, I decided to blog about it and also update my algorithm accordingly.
Now, the algorithm actively checks where the ROE is coming from.
- If ROE is high mainly because equity is small and debt is large, the score is adjusted downward.
- If margins and asset efficiency drive ROE, the score improves, even if the ROE is low or modest.
This change makes my Financial Health Algorithm far more cycle-aware and risk-sensitive.
2. Update to the Growth Algorithm
(Based on: When Growth Destroys Value)
I think this was one of the most important changes that I’ve made in my algorithm.
Earlier, the growth scoring algorithm relied heavily on historical growth rates. It used sales CAGR, profit CAGR, and asset growth among other metrics.
But as the article clearly showed, growth by itself means nothing unless we ask one critical question:
Is this growth creating value, or destroying it?
Yes, even growth can destroy value.
What I’ve Changed in the Growth Algorithm
The Growth Algorithm is now also anchored around a simple economic comparison:
- Return on Equity (or capital) vs Cost of Equity
If a company is reinvesting profits at returns above its cost of equity, growth is rewarded. If it is reinvesting at returns below the cost of equity, growth is penalised—even if profits are rising.
This means:
- Fast-growing but low-return businesses no longer get inflated Growth scores.
- Slow-growing but high-return businesses are no longer unfairly ignored and given an absolute low score.
Retention policy (retained earnings) also matters now.
Companies that retain large amounts of capital despite weak returns are treated cautiously. On the other hand, businesses that grow modestly but compound value quietly are scored more favourably.
In simple terms, the Growth score now also reflects the quality of growth and not just the speed of growth.
3. Update to the Price Valuation Algorithm
(Based on: Full P/E using Base P/E and Franchise Factor)
This update addresses one of the most common investor frustrations:
“This stock looks expensive… but maybe it deserves it?”
Earlier, my price valuation algorithm relied mainly on intrinsic value models and relative multiples. I still think that it is a very useful and more effective way to score stocks based on their price levels.
But I thought to update it after reading the concept of Franchise P/E.
What Has Changed in The Valuation Algorithm
The P/E portion of the Price Valuation Algorithm now internally separates P/E into two parts:
- Base P/E: what the company deserves if earnings never grow
- Franchise P/E: what it deserves only if it can reinvest capital at superior returns
I think this distinction is crucial in judging whether a company’s P/E ratio is high or low.
When we use a concept like Franchise P/E, a high P/E is no longer treated as automatically bad. But it is also true that all companies must work hard to earn a high P/E multiple. They must deserve it, right? How?
By showing the following metrics:
High return on new investments (RONI), Realistic reinvestment capacity, and Sustainable growth duration.
If a company’s high valuation assumes aggressive reinvestment at high returns for many years, the algorithm checks whether that assumption is even practical or not.
So what happens after the application of this updated algorithm?
- Some “cheap” stocks became cheaper.
- Some “expensive” quality stocks stopped looking irrational.
- And fantasy valuations are seen with a more rational eye, from a ‘do they deserve it or not‘ perspective.
I think this part of the algorithm, along with the intrinsic value calculation, makes the valuation score stricter, but also fairer.
4. Update to the Profitability Algorithm
(Based on: Maintenance vs Growth EBITDA, and High Margins & Profit Quality)
In my profitability algorithm, I decided to make two deep changes. Both were aimed at answering one critical question about the company’s profitability.
How much of the reported profit actually belongs to shareholders (equity holders)?
4.1 EBITDA: Maintenance vs Growth
Earlier, EBITDA was treated more or less at face value. If EBITDA was high (compared to the industry), it was good; otherwise, it was not.
Now, the algorithm tries to understand how much reinvestment is required just to keep EBITDA alive.
Businesses like Asian Paints, where EBITDA survives with limited reinvestment, are rewarded.
Businesses like Tata Steel, where EBITDA must be constantly defended with heavy capex, are treated more cautiously, keeping in mind that capital-intensive sectors are different.
This change ensures that capital-intensive businesses no longer look artificially attractive just because the EV/EBITDA ratio appears low.
4.2 High Margins Do Not Always Mean High Quality
The second upgrade looks at the durability of the margin.
Earlier, high margins were treated as a strong positive by default. Now, the algorithm takes a step back and looks at how those margins behave over time.
It checks whether margins stay reasonably stable across different years and business conditions, or whether they rise sharply only during favourable phases.
If a company’s margins are supported by strong brands, pricing power, and steady demand (like in Nestle India), the profitability score remains strong.
I think these are the types of margins that tend to hold up even when costs rise or demand slows.
But if high margins appear mainly during industry upcycles and fade when conditions normalise, the algorithm treats them more cautiously.
Such peak-phase margins, seen in cyclical businesses like Deepak Nitrite, are not assumed to last forever.
In my current algorithm, the profitability of companies now has to show stability. It must either remain stable or grow. Only a good margin-year will not make its score go up.
The algorithm now uses a structured scoring model.
- Margins are tracked over multiple years to see whether they are improving, stable, or declining.
- These trends are then cross-checked with operating cash flow conversion, so profits that do not turn into cash are automatically downgraded.
- The algorithm also observes how margins behave alongside debt and reinvestment patterns. If margins improve while leverage rises sharply, the score is adjusted cautiously.
I can say that now the focus of my profitability algorithm has shifted from “how high the margins are” to “how reliable they are over time.”
5. Update to the Asset-Light (Moat) Algorithm
(Based on: Capital Consumption vs Compounding Ability)
This update is closely linked to how I now think about economic moats. I felt that this piece was missing earlier in my algorithm, hence I’ve included it now.
Traditionally, my Moat Algorithm focused on familiar strengths, brand power, pricing ability, market share, cost advantages, and longevity.
These are all valid. But while revisiting the data across multiple sectors, one pattern kept showing up again and again:
Some businesses had visible moats, yet struggled to convert that advantage into long-term shareholder compounding.
- The reason was not competition.
- The reason was capital intensity.
So I’ve now added a new internal layer to the Moat Algorithm that evaluates how much capital a business needs to defend and grow its moat.
So what has changed in the Economic Moat algorithm
The algorithm now tracks the following in a sequence:
- Profits → Cash: How much of the profit is getting converted into cash?
- Cash → Reinvestment: How much of the generated cash is getting reinvested?
- Reinvestment → Asset growth: How much of the reinvested is getting consumed by Capex alone?
- Capex vs Revenue Growth: How much revenue growth is due to increasing Capex?
What is the logic?
A business that needs continuous, heavy reinvestment just to maintain its position sees its moat score adjusted downward. Even if its market position looks strong on the surface, such a business would score low on the economic moat front.
On the other hand, businesses that:
- Convert profits cleanly into cash,
- Grow without proportionate asset expansion, and
- Defend margins with limited incremental capital,
are treated as having stronger, more durable moats.
I would like to confirm that this algorithm update is not to create a bias against asset-heavy (capital-intensive) businesses. Cement, steel, utilities, etc, all can have their own set of competitive advantages.
But the algorithm now recognises that moats of such companies are very capital-hungry, and therefore less efficient at compounding shareholder wealth.
With this new update, the Moat Algorithm no longer asks only “How strong is the advantage?” It now also asks “How expensive is it to sustain?”
Conclusion
None of these updates changes the philosophy of the Stock Engine, but they significantly improve its judgment.
The Overall Score is now:
- more cash-aware,
- more capital-discipline-focused,
- more realistic about growth,
- and more sceptical of optical profits.
You may notice score changes in stocks you track. It means the engine is thinking more like a business owner, not only as a reporter or a ratio-collector.
I want the Stock Engine to think more like a long-term business owner (like a CFO would view a company) than just a ratio-based screener.
I hope you would like the update.
Have a happy investing.
