Run a valuation before studying the formulas
Start with the CLI, learn the output order, and see why a skipped model can be more useful than another per-share estimate.
Read this publication →A Python engine I built to evaluate companies more deliberately as I expand my portfolio, with model fit, assumptions, and uncertainty kept beside every estimate.

I had invested conservatively for years and earned good returns, but I wanted to expand my portfolio without relying on a promising ticker or a single familiar ratio. I needed a repeatable way to ask whether a company looked fairly valued or undervalued.
The engine grew from that need. It turns one ticker into several valuation arguments, records weak or missing data, and checks whether each model belongs in the analysis before it runs. It cannot remove the risk of investing, but making larger decisions without that discipline would leave me with even less to challenge.
The pipeline separates data loading, domain modeling, model policy, calculation, and presentation. Each layer passes a structured result to the next one instead of quietly repeating earlier work.
Start with the CLI, learn the output order, and see why a skipped model can be more useful than another per-share estimate.
Read this publication →Match cash flow, earnings, revenue, dividends, returns, and assets to the question each valuation method can answer.
Read this publication →Follow provider fields into StockMetrics, inspect selected missing-value reasons, and understand the currency boundary that still needs work.
Read this publication →Cash flow, earnings, revenue, dividends, returns, and net assets describe different parts of a business. The engine runs each method through the same manager contract without pretending their answers should agree.
Cash flow
Forward DCF estimates intrinsic value from projected cash flows; Reverse DCF asks what growth the current market price already assumes.
Market comparison
Comparable-value models use earnings, operating performance, revenue, and configured multiples without pretending one method fits every business.
Business structure
Return, dividend, and asset-based models help when cash-flow or market-multiple approaches do not fit the business well.
Growth does not enter a formula as one unexplained percentage. The engine selects a signal, records its source, constrains unstable values, and builds Bear, Base, and Bull paths for models that need projections.
Optional weighted blending and sector mean reversion remain explicit. When evidence is too thin for the richer path, the system falls back and records why.
Scenario engine
See how selection, clamping, scenario adjustments, and mean reversion become a growth path you can inspect.
Read the decision path →CLI tables make checks, scenarios, and comparisons useful during exploration without hiding skipped methods or analytical warnings.
Compact JSON carries metrics, checks, reports, skips, and the summary as an integration surface rather than scraping values back out of terminal text.
The engine's structured JSON is not only a CLI output — it is the anchor for two other projects. Equilyze wraps the engine and layers AI agents on top to write investment analysis, and Pressroom then turns that analysis into a finished, published article.
Read more: how three projects merge into one pipeline →The outcome
The estimates are analytical tools, not investment advice. Use them to inspect assumptions, compare models, and find weaknesses in the input data.
Follow the project beyond the landing page. Each publication focuses on one architectural boundary, implementation decision, or operational lesson.
Install the equity valuation engine, run one ticker, and learn to read suitability checks, scenarios, skipped models, and JSON.
Match DCF, multiples, dividends, assets, and reverse DCF to the financial shape of a business before trusting any estimate.
Follow provider data into StockMetrics, learn what missing-value diagnostics preserve, and see which gaps can still mislead a model.
Learn how historical signals, configured limits, and scenario policy become Bear, Base, and Bull paths without pretending to predict.
Build a discounted cash-flow valuation, inspect its sensitivity, and reverse the calculation to understand market-implied expectations.
Compare P/E, EV/EBITDA, P/S, ROE, DDM, and NAV through independent examples, and learn why every model needs its own guardrails.
Interpret scenario rows, skipped models, the equal-weight composite, model dispersion, and JSON without turning output into a target price.
Trace the architecture behind data fields, diagnostics, suitability, valuation managers, CLI output, JSON, and tests before adding features.