Purpose
Build institutional-quality three-statement models (Income Statement / Balance Sheet / Cash Flow) for A-share equities, adapted for Chinese Accounting Standards (CAS) and the Chinese market context.
Key Differences from US 3-Statement Models
| Parameter | US Model | China Model |
|---|---|---|
| Accounting standard | US GAAP / IFRS | CAS (Chinese Accounting Standards) |
| Tax rate | 21% federal | 25% standard (15% for high-tech enterprises) |
| Currency | USD | CNY (Renminbi) |
| Fiscal year | Varied | Mostly Dec 31 year-end |
| Revenue recognition | ASC 606 | CAS 14 (similar principles) |
| Goodwill | Indefinite life (no amortization) | CAS 8 — goodwill amortized or tested |
| R&D capitalization | Typically expensed | Can be capitalized under CAS |
| VAT treatment | Sales tax separate | VAT often embedded in revenue/sales |
| Unit reporting | USD | Often thousands CNY (千元) — verify |
Data Sources
Tier 0 — Wind (万得) (most comprehensive paid data)
- Coverage: A-shares/HK & US stocks/funds/indices/bonds/macro/research reports/analytics (44 tools)
- MCP service:
wind-mcp(requiresWIND_API_KEYkey, starting withak_) - Advantages: widest whole-market coverage, most comprehensive data, includes research reports and quantitative analysis
- Key application:https://aifinmarket.wind.com.cn/#/home
Tier 1 — iFind (同花顺) (paid precise data) / AkShare MCP (Tier-2 free alternative)
get_financials(ticker, "income", "annual") → 利润表
get_financials(ticker, "balance", "annual") → 资产负债表
get_financials(ticker, "cashflow", "annual") → 现金流量表
get_quote(ticker) → 实时行情
get_historical_data(ticker) → 历史价格
get_stock_info(ticker) → 公司基本信息
Secondary Sources (when AkShare insufficient)
- cninfo.com.cn (巨潮资讯) — mandatory disclosure filings
- Shanghai Stock Exchange / Shenzhen Stock Exchange — listed company announcements
- SSE e-Interaction (上证e互动) / SZSE Interactive Easy (深交所互动易) — IR Q&A
- Company official website investor relations page
Workflow
Step 1: Data Retrieval
Pull 3-5 years of historical financials from AkShare.
Verify units carefully:
- Some statements report in CNY (元)
- Others in thousands CNY (千元)
- Normalize to consistent unit before modeling
# Pull all three statements
get_financials(ticker, "income", "annual")
get_financials(ticker, "balance", "annual")
get_financials(ticker, "cashflow", "annual")
Step 2: Historical Analysis
Document key trends:
- Revenue growth: YoY %, CAGR over 3-5 years
- Gross margin: Gross margin — track expansion/contraction
- Operating margin: Operating margin
- Net margin: Net margin
- Tax rate: Income tax rate — flag if below 25% (likely high-tech enterprise)
- Effective tax rate: vs statutory rate
- D&A: Depreciation and amortization as % of PPE
- CapEx: Capital expenditure from cash flow statement
- Working capital: Accounts receivable, inventory, accounts payable trends
- Debt structure: Interest-bearing debt composition
Step 3: Build the Model
Follow standard 3-statement modeling methodology, adapted for CAS:
Income Statement (利润表)
Key line items (Chinese naming):
- Revenue (营业收入)
- COGS (营业成本)
- Taxes and surcharges (税金及附加 — includes consumption tax, urban construction tax, etc.)
- Selling expenses (销售费用)
- G&A (管理费用)
- R&D expenses (研发费用 — must be separated per CAS)
- Financial costs (财务费用 — net of interest income)
- Operating profit (营业利润)
- Non-operating income/expenses (营业外收入/支出)
- Profit before tax (利润总额)
- Income tax expense (所得税费用)
- Net income (净利润)
- Net income attributable to parent (归属于母公司股东的净利润)
Balance Sheet (资产负债表)
Key line items:
- Cash & equivalents (货币资金)
- Trading financial assets (交易性金融资产)
- Accounts receivable (应收账款)
- Prepayments (预付款项)
- Inventory (存货)
- Other current assets (其他流动资产)
- Total current assets (流动资产合计)
- Fixed assets / PPE (固定资产)
- Construction in progress (在建工程)
- Intangible assets (无形资产)
- Goodwill (商誉 — flag if >30% of equity)
- Total non-current assets (非流动资产合计)
- Total assets (资产总计)
- Short-term borrowings (短期借款)
- Accounts payable (应付账款)
- Advance receipts / contract liabilities (预收款项/合同负债)
- Current portion of LT debt (一年内到期非流动负债)
- Total current liabilities
- Long-term borrowings
- Bonds payable
- Total non-current liabilities
- Total liabilities
- Share capital
- Capital reserve
- Surplus reserve
- Retained earnings
- Parent equity
- Minority interest
- Total equity
- Total liabilities + equity
Cash Flow Statement
Chinese indirect method:
- Operating CF:
- Start from Net profit
- Adjust: D&A, Finance costs, Investment income, Working capital changes
- Net cash flows from operating activities
- Investing CF:
- Purchase of fixed assets/intangible assets (CapEx)
- Disposal proceeds (Asset sales)
- Investment payments/proceeds (Investment purchases/sales)
- Financing CF:
- Equity issuance
- Borrowings
- Debt repayment
- Dividends
- Net change in cash
- Ending cash balance
Step 4: Balance Checks
CRITICAL — Chinese-specific checks:
- Cash reconciliation: Cash and cash equivalents (BS) = Ending cash balance (CF) ± restricted cash
- BS balancing: Total assets = Total liabilities + equity
- RE roll-forward: Beginning retained earnings + Current period net profit - Surplus reserve appropriation - Cash dividends = Ending retained earnings
- CF-IS linkage: Net profit (IS) → starting point for Operating CF
- CapEx check: Purchase of fixed assets (CF) ≈ Increase in fixed assets (BS) + Increase in accumulated depreciation (BS)
- Debt check: Changes in borrowings (CF) = Changes in short-term borrowings + Changes in long-term borrowings (BS)
- Tax check: Income tax expense (IS) vs Actual payments (CF indirect method add-back)
Step 5: Scenario & Sensitivity
- Base / Bear / Bull scenarios
- Sensitivity on revenue growth, gross margin, tax rate
- Key drivers: Gross margin, Period expense ratio, Working capital efficiency
China-Specific Modeling Conventions
VAT
- Listed companies report Operating revenue net of VAT
- Taxes and surcharges includes Consumption tax but not VAT
- VAT is off-balance-sheet in most models
Goodwill
- Common from M&A, especially 2015-2016 boom
- Flag if Goodwill > 30% of Parent equity
- Note annual impairment testing requirements
R&D
- CAS requires R&D to be expensed (not capitalized like IFRS allows)
- Some companies disclose R&D capitalization in notes — check if >5% of revenue
Depreciation
- Chinese companies often use straight-line over longer lives
- Typical ranges:
- Buildings: 20-40 years
- Equipment: 5-10 years
- Vehicles: 4-6 years
Inventory
- LIFO not permitted under CAS (FIFO or weighted average only)
- Inventory valuation affects margin comparability across years
Receivables
- Trade AR often high for industrial companies — check DSO
- Notes receivable vs Trade AR — treat separately
- Allowance for doubtful accounts varies by company
Debt
- Short-term borrowings often high for leveraged companies
- Long-term borrowings may include Non-current liabilities due within one year
- Bonds payable for corporate bond issuers
- Interest expense in Finance costs (net of interest income)
Excel Formatting (OpenPyXL / Office JS)
Follow the same professional conventions as the base xlsx-author skill, with China-specific adaptations:
- Section headers: Dark blue
#1F4E79with white bold text - Column headers: Light blue
#D9E1F2with black bold text - Input cells: Blue font (RGB: 0,0,255) — all hardcoded inputs
- Formula cells: Black font (RGB: 0,0,0)
- Sheet links: Green font (RGB: 0,128,0)
- Currency: CNY (¥) with thousands separator
- Percentages: 0.0% format
- Cell comments: "Source: AkShare, [date], [field], [ticker]"
Number Format Conventions
| Item | Format | Example |
|---|---|---|
| Revenue | ¥#,##0 | ¥12,345 |
| Percentages | 0.0% | 15.3% |
| Ratios | 0.00x | 2.50x |
| Dates | YYYY | 2024 |
| Stock price | ¥#,##0.00 | ¥158.50 |
Quality Checks
Before delivering:
- All three statements balance correctly
- Cash from CF = Cash on BS
- Retained earnings roll-forward ties
- CapEx/Depreciation logic consistent
- Debt changes tie between BS and CF
- Tax rate reasonable (20-28% unless High-tech enterprise)
- All hardcoded inputs have cell comments
- All formulas reference cells, no hardcodes in formulas
- Scenario blocks structured correctly (Bear/Base/Bull)
- Sensitivity analysis included
Common Pitfalls
- Unit mismatch: Mixing yuan and thousand yuan — always normalize
- VAT confusion: Double-counting VAT in revenue or COGS
- Goodwill spike: Forgetting large goodwill from acquisitions
- Tax rate variance: Assuming 25% when company is a High-Tech Enterprise (15%)
- R&D understatement: CAS expenses all R&D, but some companies capitalize in notes
- Receivables inflation: Accounts receivable much higher than revenue growth — flag
- Short-term debt: Short-term borrowings often high; don't miss current portion of LT debt
- Minority interest: Minority interests can be significant for conglomerates
Data Source Priority
- AkShare MCP (primary) — real-time and historical A-share data
- CNINFO (cninfo.com.cn) — mandatory disclosures
- Exchange announcements — SH/SZ exchange filings
- Company website/IR — supplementary data
- Web search — only if above insufficient, mark
[UNSOURCED]
Output Checklist
- Three-statement model fully linked (IS → BS → CF)
- All balance checks pass
- Historical + projected years included
- Scenario analysis (Bear/Base/Bull)
- Sensitivity tables
- All hardcoded inputs sourced and commented
- CAS conventions documented
- Currency consistent (CNY)
- File named:
[Ticker]_3StatementModel_[Date].xlsx
Data Source Mode Switch: Set env var
IFIND_DATA_SOURCE_MODEto control data source preference.
ifind-only(strict): Use iFind only, error if unavailableifind-fallback(default): iFind preferred, fallback to AkShareakshare-only: Skip iFind, use AkShare onlywind-only: Wind only, error if unavailablewind-fallback: Wind first, fallback to iFind → AkShare