Skip to content

3-Statement Model: File Excel mà IB Analyst mất 80 giờ/tuần

"Give me an analyst, a laptop, and 48 hours — I'll give you a 3-Statement Model that can move billions."Anonymous Managing Director, Goldman Sachs


80 giờ/tuần để... xây 1 file Excel?

Nếu bạn hỏi bất kỳ first-year analyst nào tại Goldman Sachs, Morgan Stanley, hay JP Morgan: "Công việc hàng ngày của bạn là gì?" — câu trả lời gần như đồng nhất:

"Build models. Fix models. Update models. Print models. Repeat."

model ở đây không phải machine learning model hay AI model. Nó là một file Excel — đôi khi 50+ tabs, hàng nghìn formulas, hàng trăm links giữa các sheet — kết nối Income Statement, Balance Sheet, và Cash Flow Statement thành một cỗ máy tài chính hoàn chỉnh.

Đó là 3-Statement Model.

Và nó là foundation cho mọi thứ:

3-Statement Model
    ├── DCF Valuation
    ├── LBO Model
    ├── M&A Merger Model
    ├── Restructuring Model
    └── Credit Analysis

Nếu 3-Statement sai → tất cả analysis bên trên đều sai. Không có ngoại lệ.


Circular Reference: Kẻ giết chết 90% model

Đây là câu chuyện mà mọi junior analyst đều trải qua:

Bạn build xong IS, build xong BS, link CF. Mọi thứ hoạt động hoàn hảo. Balance Sheet balance. Cash Flow ties. Bạn hào hứng gửi cho VP review.

Rồi VP hỏi: "Interest expense link từ đâu?"

Bạn: "Uh... tôi hardcode từ báo cáo năm ngoái."

VP: "Wrong. Interest phải tính từ Average Debt trong Debt Schedule. Fix it."

Bạn link Interest = Avg Debt × Interest Rate.

BOOM. 💥 Excel hiện ra cảnh báo: "CIRCULAR REFERENCE WARNING".

Tại sao?

Vòng lặp chết chóc:

InterestaffectsNIflows toCashdeterminesDebtcalculatesInterest

Excel không biết tính cái nào trước. Interest cần biết Debt, nhưng Debt phụ thuộc vào Cash, mà Cash phụ thuộc vào Net Income, mà Net Income phụ thuộc vào... Interest.

Đây là lý do 90% model bị hỏng. Không phải vì logic sai — mà vì analyst không biết handle circularity.

Giải pháp?

Toggle Switch — Kỹ thuật mà mọi IB analyst phải biết:

Assumptions tab:
    Cell B1: "Circular Switch"
    Cell C1: 1    ← Blue font (input)

Interest formula:
    = IF(Circ_Switch = 1, Avg_Debt * Int_Rate, 0)

Khi build: Switch = 0 (circular off, Interest = 0). Khi hoàn thành: Switch = 1, bật Iterative Calculation → model converges.

Elegant. Simple. Life-saving.


Model = Communication Tool, không phải Calculator

Một insight quan trọng mà analyst mới thường bỏ qua:

Model không chỉ để tính số. Model là để kể câu chuyện.

Khi MD walk vào phòng meeting với CEO của client, ông ấy không mở file Excel 50 tabs ra trình bày. Ông ấy mở Output tab — 1 trang summary với:

  • Revenue growth trajectory
  • Key margin expansion
  • Free Cash Flow generation
  • Implied valuation range

Nhưng đằng sau 1 trang summary đó là 20 tabs of carefully constructed logic. Và nếu client hỏi: "What if revenue only grows 8% instead of 12?" — MD quay sang analyst, analyst thay đổi 1 cell trên Assumptions tab, và toàn bộ model cập nhật trong 2 giây.

Đó là power của 3-Statement Model xây đúng cách:

  • 1 input thay đổi → 3 báo cáo tự động cập nhật
  • Balance Sheet vẫn balance
  • Cash Flow vẫn ties
  • DCF output thay đổi seamlessly

"A model should be like a good argument — transparent, logical, and impossible to misinterpret." — Wall Street Prep

Color Coding: Ngôn ngữ không lời của model

Trong IB, color coding là convention bất thành văn nhưng ai cũng tuân thủ:

MàuÝ nghĩaAi quan tâm
🔵 BlueInput — có thể thay đổiMD, VP (review assumptions)
⚫ BlackFormula — logic tính toánAssociate (check formulas)
🟢 GreenLink sheet khácAnalyst (debug links)
🔴 RedError / WarningTất cả (panic!)

Nếu model của bạn toàn black font — không ai biết cell nào là input, cell nào là formula. VP phải click từng cell để kiểm tra → waste time → bad review → bad bonus.


Real Talk: Day in the Life of an IB Analyst

Thứ Hai, 7:00 AM — Model Update

Email từ VP lúc 6:45 AM: "Client muốn thấy scenario nếu họ acquire target company. Update 3-Statement Model to include acquisition by EOD."

"By EOD" nghĩa là 11:00 PM.

10:00 AM — Building IS

Revenue build by segment. COGS by component. D&A from PP&E schedule. Interest from Debt schedule. Tax with NOL carryforward.

Mỗi formula phải chính xác. 1 cell sai = toàn bộ model sai = analyst bị "staffed off the deal."

2:00 PM — BS & CF Integration

Working Capital schedule: DSO, DIO, DPO. PP&E rollforward. Debt schedule. Cash plug.

Balance check: A = L + E?

Total Assets:      $45,000M
Total Liabilities:  $18,000M
Total Equity:      $26,998M
Difference:        $2M ← ERROR!

Hai dollar. Ở đâu? Tìm. Kiểm tra. Debug. 45 phút sau: Rounding error trong Deferred Tax calculation. Fix. Balance.

6:00 PM — Circularity

Bật circular. Interest linked. Model converges.

Nhưng BS off bởi $0.3M. Iteration chưa converge hết. Tăng iterations từ 100 lên 1000. Fix. Check. Clean.

9:00 PM — Output & Formatting

Print area set. Headers/footers. Page breaks. Color coding review. Cell comments cho MD.

Formatting mất 30% total time. Không phải vì analyst thích đẹp — mà vì model xấu = model không đáng tin.

11:15 PM — Submit

Email cho VP: "3-Statement Model v2.1 attached. Key changes: ..."

VP reply lúc 11:45 PM: "EBITDA margin Year 3 looks aggressive. Justify or reduce."

Sửa lại. Submit v2.2 lúc 12:30 AM.


Bài học cho sinh viên: Model trước khi Valuation

Nhiều bạn hỏi: "Tại sao phải học build 3-Statement? Cứ plug số vào DCF template là xong?"

Không. Vì:

  1. DCF output chỉ tốt bằng input. Input đến từ projected financials. Projected financials đến từ 3-Statement Model.

  2. Phỏng vấn IB/PE luôn hỏi: "Walk me through how the 3 financial statements are linked." Nếu bạn không trả lời được → reject.

  3. Trong thực tế, không ai cho bạn FCFF rồi bảo discount. Bạn phải build FCFF từ IS, BS, CF — mà 3 cái này phải balance.

NICFCashBSInterestISNI

Hiểu vòng tròn này = hiểu corporate finance.


Model Checklist — Trước khi submit bất kỳ model nào

#CheckStatus
1All inputs in blue font on Assumptions tab?
2No hardcoded numbers in formula cells?
3Balance Sheet balances all years? (A=L+E)
4CF Ending Cash = BS Cash?
5Interest links to Debt Schedule?
6D&A links to PP&E Schedule?
7Circular toggle works? (Switch 0 → Switch 1)
8Units consistent (all in tỷ VND)?
9Time flows left → right?
10Error check row shows "✅ NO ERRORS"?

Kết luận: 3-Statement = Ngôn ngữ của Finance

Nếu DCF là King of Valuation, thì 3-Statement Model là Kingdom — vùng đất mà DCF được xây dựng.

Mỗi cell trong model là một hypothesis về tương lai:

  • Revenue growth = bạn tin gì về thị trường?
  • Margin expansion = bạn tin gì về operating leverage?
  • CapEx = bạn tin gì về reinvestment needs?
  • Working Capital = bạn tin gì về operational efficiency?

Và khi tất cả hypotheses kết nối với nhau qua IS → BS → CF, bạn không chỉ có 3 báo cáo tài chính — bạn có một bức tranh hoàn chỉnh về tương lai công ty.

"The purpose of a financial model is to provide a framework for thinking about a business." — Josh Rosenbaum, Investment Banking

Hãy để mỗi cell bạn xây kể một phần câu chuyện. Và khi ai đó mở model của bạn, họ sẽ thấy không chỉ con số — mà thấy logic, kỷ luật, và tư duy của người tạo ra nó.


Điều hướng Buổi 10

Tài liệuMô tả
📖 Bài giảng chínhNội dung lý thuyết 3-Statement Model đầy đủ
📝 Blog3-Statement Model: File Excel mà IB Analyst mất 80 giờ/tuần
📊 Case StudyApple (Goldman Sachs), FPT BCTC thực, WSP/CFI comparison
📚 StandardsWSP, CFI, Macabacus, Goldman Sachs modeling standards
🔧 WorkshopBuild 3-Statement Model — FPT 3 năm hoàn chỉnh
🎮 GameModel Error Hunt — Tìm & sửa 8 lỗi ẩn trong model