Walmart Inc. (NYSE: WMT) Valuation
ITAM Thesis Project Professor: Rodrigo Fenton Ontanon Final submission (Phase 3): April 21, 2026
Objective
Build a complete Investment Memorandum for Walmart with a reproducible pipeline in R + LaTeX.
Current Model Status
Preliminary pipeline operational with 6 methodologies:
- DCF
- RIM
- Multiples (P/E, EV/EBITDA, EV/Sales)
- SOTP
- DDM
- BSM (optional/robustness)
Integrated output:
- Football field (
data/processed/preliminary_football_field.pdf) - Range table (
data/processed/preliminary_football_field_values.csv) - Chart package (
data/processed/preliminary_valuation_charts.pdf) - Wired LaTeX document (
MOI/main.tex)
Quickstart (3 commands)
From the repo root:
cp config/assumptions.example.csv config/assumptions.csv
cp config/latest_period_basis.example.csv config/latest_period_basis.csv
make all
open MOI/main.pdfNotes:
shares_outstandingcan be left empty in preliminary; this only affectsimplied_price_usd.- If
config/assumptions.csvdoes not exist, the model runs with defaults.
Main Commands
make validate # validates preliminary input + assumptions
make valuation # runs 02..07 + 99
make charts # generates chart PDFs
make tables # generates auto-generated .tex tables for MOI/main.tex
make moi # compiles MOI/main.tex
make all # full pipelineTechnical Flow
Code/00_Validate_Inputs.RVerifies structure of raw preliminary data and assumptions.Code/02_DCF.RCode/03_RIM.RCode/04_Multiples.R(diagnostics + implied prices by peer multiples)Code/05_SOTP.RCode/06_DDM.RCode/07_BSM.RCode/99_Football_Field.RCode/98_Preliminary_Charts.RCode/97_Generate_Tex_Tables.R(auto-generates table for LaTeX)
Inputs and Data Contract
- Current preliminary input:
data/preliminary-data/WALMART_FM/wmt_prelim_financials_fy2015_2025.csv- Convention:
wmt_prelim_financials_<cutoff>.csv - Legacy compatibility: the pipeline still recognizes
Raw-Tabla 1.csvif it exists.
- Detailed contract:
data/README.md
- Assumptions template:
config/assumptions.example.csv
Key Outputs in data/processed
validation_report.txtpreliminary_master_financials.csvpreliminary_data_basis.csvpreliminary_dcf_summary.csvpreliminary_rim_summary.csvpreliminary_multiples_summary.csvpreliminary_peer_comp_set_used.csvpreliminary_sotp_summary.csvpreliminary_ddm_summary.csvpreliminary_bsm_summary.csvpreliminary_football_field_values.csvpreliminary_football_field.pdfpreliminary_valuation_charts.pdf
LaTeX Integration
- Main document:
MOI/main.tex - Auto-generated valuation table:
MOI/generated/preliminary_valuation_table.tex MOI/Makefileruns auto-generation before compiling PDF.
Refresh After Earnings / Bloomberg
When you have new data points:
- Replace the preliminary input (or add a new cutoff in
data/preliminary-data/). - Update
config/assumptions.csv(WACC, beta, rates, shares). - Adjust
config/latest_period_basis.csv:- Before annual close:
latest_period_mode=ltm(orautowithtarget_fiscal_year=2026). - After FY 2026 publication:
latest_period_mode=fy_actualandtarget_fiscal_year=2026.
- Before annual close:
- Run
make all. - Review changes in:
data/processed/preliminary_data_basis.csvdata/processed/preliminary_football_field_values.csvMOI/main.pdf