# 1. Research Questions, Scope, and Feasibility []{#_1-research-questions-scope-and-feasibility} ## The decision A research project begins when a **topic** becomes an **answerable question**. | Stage | Example | Problem | | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | | Topic | peer feedback | no puzzle or boundary | | Broad question | Does peer feedback improve writing? | “feedback,” “writing,” and “improve” are undefined | | Researchable question | Does structured peer feedback improve rubric-rated research abstracts written by first-year students in a six-week methods module? | specific enough to design | ::tip{title="Test of a good question"} Two careful researchers should be able to disagree about the answer **before** the evidence is collected. :: ## Learning outcomes You will be able to: - separate topic, problem, question, and contribution; - define the population, phenomenon, outcome, context, and time boundary; - match question wording to the claim you may later make; - reject a question that the available time, data, or ethics cannot support. ## 1. Find the puzzle A project needs a reason to exist. Use one of five common puzzles: | Puzzle | Prompt | Peer-feedback example | | ------------- | -------------------------------------------------- | ----------------------------------------------------------------- | | contradiction | Why do credible studies disagree? | benefits vary across task designs | | mechanism | How or why might X affect Y? | does giving feedback improve self-evaluation? | | boundary | When or where does a finding stop travelling? | does evidence from advanced writers apply to first-year students? | | measurement | Are we measuring the idea well? | is “better writing” a grade, a rubric, or reader comprehension? | | decision | Which choice works better under stated conditions? | structured prompts or open comments? | “Few studies exist” is not yet a puzzle. Explain **what cannot be understood or decided** because evidence is missing. ## 2. Build the question Use only the fields your question needs: ```text In [population/context], how/why/to what extent does [phenomenon or intervention] relate to [outcome], compared with [alternative], during [time]? ``` For the running case: ```text Population: first-year undergraduates Context: one six-week research-methods module Intervention: rubric-guided peer comments on a draft abstract Comparison: usual unstructured comments Outcome: change in blind rubric score from draft to final abstract ``` Not every field belongs in the title. Every field must, however, be decided somewhere in the protocol. ## 3. Choose the question type Question verbs set the ceiling on later claims. | Question type | Typical wording | Suitable evidence | Defensible conclusion | | ------------- | --------------------------------- | ------------------------------ | ----------------------- | | descriptive | What is happening? | observation, documents, survey | prevalence or pattern | | comparative | How do A and B differ? | comparable groups or cases | difference | | relational | How is X associated with Y? | measured covariation | association | | causal | What is the effect of X on Y? | credible counterfactual design | causal effect | | interpretive | How do participants understand X? | interviews, texts, fieldwork | situated interpretation | ::warning{title="Verb–design mismatch"} If students choose whether to receive structured feedback, a higher final score does not by itself show that feedback **caused** improvement. Motivation may explain both choices. :: ## 4. Set the boundary Write a scope box before searching. | Boundary | Included | Excluded | Reason | | ------------ | --------------------------- | -------------------------- | ---------------------------- | | population | first-year undergraduates | postgraduate writers | different prior experience | | task | 250-word research abstract | full essay | comparable length and rubric | | intervention | rubric-guided peer feedback | teacher feedback | isolates peer process | | outcome | blind quality score | student satisfaction alone | matches “writing quality” | | setting | one taught module | informal writing groups | stable teaching context | A boundary is not an apology. It tells the reader **what population of claims the study belongs to**. ## 5. Pass the feasibility gate Answer each question with evidence, not optimism. 1. **Access** — Can you obtain the sources, participants, texts, or data? 2. **Time** — Can collection, analysis, and revision finish before submission? 3. **Skill** — Can you execute the proposed method accurately? 4. **Variation** — Is there enough variation or comparison to answer the question? 5. **Ethics** — Can consent, privacy, risk, and power relations be handled? 6. **Payoff** — Would any plausible answer matter? ### Feasibility example **Initial plan:** Randomise 400 students across four universities and track writing for a year. **Available:** one class of 48 students, six weeks, two teaching groups. **Redesigned question:** > How does abstract quality change after structured peer feedback in one first-year methods class, and which feedback features appear in the revisions? The redesign weakens causal ambition but creates an honest, finishable study. ## 6. Plan backwards from the claim Complete this chain: ```text Desired claim → observation needed → comparison needed → data source → method → practical and ethical constraint ``` Example: ```text Claim: structured feedback improved abstracts → need change attributable to feedback → compare structured and usual-feedback groups over time → blind ratings of draft and final versions → group-by-time analysis plus feedback coding → assignment process and assessor blinding must be credible ``` If one arrow cannot be completed, narrow the claim or redesign the study. ## Practice: the one-page question defence Produce six lines: ```text Topic: Puzzle: Question: Scope: Evidence needed: Strongest claim the design could support: ``` Then write one counterexample: **What result would make your preferred answer wrong?** If no result could, the question is advocacy rather than inquiry. ## Quality check - the outcome or object of interpretation is named; - the population or context is bounded; - key terms could be observed or interpreted consistently; - the verb matches a possible design; - a plausible opposing answer exists; - the project is feasible and ethically reviewable. **Next:** [search, evaluate, and read the evidence](https://www.pengjiaxin.com/02-reading-and-literature-matrix). # 2. Search, Evaluate, and Read Evidence []{#_2-search-evaluate-and-read-evidence} ## The decision Searching is not “finding papers.” It is creating a **defensible path from a question to a body of evidence**. :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgICBDW0NvbmNlcHRzXSAtLT4gVFtTZWFyY2ggdGVybXNdCiAgICBUIC0tPiBSW1Jlc3VsdHNdCiAgICBSIC0tPiBTW1NjcmVlbl0KICAgIFMgLS0+IEFbQXBwcmFpc2VdCiAgICBBIC0tPiBYW0V4dHJhY3RdCiAgICBYIC0tPiBVW1VwZGF0ZSBzZWFyY2hd" locale="en"} ## Learning outcomes You will be able to: - translate a question into searchable concepts and synonyms; - record databases, dates, queries, and screening decisions; - judge relevance separately from credibility; - read a paper in passes and extract only decision-useful information. ## 1. Turn the question into concepts Do not paste the full question into a database. Build concept blocks. | Block | Search terms for the running case | | ------------------------- | --------------------------------------------------------------- | | intervention | “peer feedback” OR “peer review” OR “peer assessment” | | product | “academic writing” OR abstract\* OR “research writing” | | population | undergraduate\* OR “first-year student\*” OR “higher education” | | design/outcome, if needed | rubric OR “writing quality” OR revision | Example: ```text ("peer feedback" OR "peer review") AND ("academic writing" OR abstract* OR "research writing") AND (undergraduate* OR "higher education") ``` Start with two or three blocks. Add a fourth only when irrelevant results dominate; too many blocks can hide useful work. ## 2. Search in layers | Layer | Purpose | Action | | ----------------- | ---------------------------------- | --------------------------------------------------------------- | | orientation | learn vocabulary and major debates | read one recent review and one handbook entry | | database search | retrieve reproducibly | search disciplinary databases and the library catalogue | | citation chaining | locate the conversation | inspect references and later papers citing strong sources | | gap search | challenge your emerging view | search rival terms, null results, critiques, and other contexts | Discovery tools suggest neighbours; they do not establish coverage. For a systematic or scoping review, follow a field-appropriate protocol and report every source and screening stage. PRISMA is a reporting guideline, not a badge for an ordinary essay. ## 3. Keep a search log | Date | Source | Exact query | Filters | Results | Kept | Change next | | ------ | ------------------ | ---------------------------------------- | ------------------ | ------: | ---: | ----------------------- | | 12 Oct | education database | `"peer feedback" AND "academic writing"` | 2018–2026; article | 146 | 11 | add undergraduate terms | | 12 Oct | citation search | papers citing a 2019 meta-analysis | none | 83 | 7 | inspect task design | The log prevents accidental cherry-picking and lets another researcher repeat the route. ### A practical stopping rule For coursework, stop expanding when: - new searches mostly return sources already seen; - each major claim has more than one relevant source; - disagreements and limitations are represented; - one further search round changes no section of the outline. This is **saturation for a bounded assignment**, not proof that the literature is complete. ## 4. Screen relevance before quality Use the same inclusion logic for every result. ```text Include if: higher education + peer feedback on an academic text + observable writing or revision evidence Exclude if: school setting only; feedback is teacher-only; outcome is satisfaction with no writing evidence ``` At title/abstract stage ask: **Could this source answer any part of my question?** At full-text stage ask: **Which claim could it support, and under what limit?** Record a reason for exclusion. “Not useful” is too vague; “population outside scope” is auditable. ## 5. Evaluate credibility laterally Do not remain inside the document. Open new tabs and investigate: 1. **Origin** — Who produced it, and for what purpose? 2. **Method** — What was observed, compared, or interpreted? 3. **Measurement** — Do measures represent the stated concepts? 4. **Inference** — Does the conclusion exceed the design? 5. **Corroboration** — Do independent sources agree, qualify, or contradict it? Professional fact-checkers often evaluate unfamiliar online sources by leaving the page and checking the wider information environment—a practice called lateral reading ([Wineburg & McGrew, 2019](https://openarchive.stanford.edu/node/2559){rel=""nofollow""}). Apply the same principle to reports, datasets, preprints, and AI-generated answers. ::warning{title="Relevance is not credibility"} A rigorous randomised trial in secondary schools may be credible but poorly matched to a first-year university module. A small study in the exact module may be relevant but too weak for a general causal claim. Record both judgments. :: ## 6. Read in three passes ### Pass 1 — Decide whether to continue Read title, abstract, headings, figures/tables, and conclusion. Write: ```text Question: Design/data: Main answer: Possible use: ``` ### Pass 2 — Reconstruct the evidence Read method, results, and limitations. Ask: - What exactly was compared? - How were constructs measured? - What uncertainty is reported? - Which alternative explanation remains? ### Pass 3 — Place it in the conversation Check references, cited-by links, supplementary material, corrections, and competing studies. Decide whether the source is foundational, confirming, conflicting, methodological, or contextual. ## 7. Make a source card Example based on the 2024 peer-feedback review: ```text Source: Wei & Liu (2024) Question: What benefits and challenges are reported for peer feedback in higher-education academic writing? Evidence: systematic review; 60 empirical articles published 2014–2024 Finding: benefits were reported across cognitive, behavioural, affective, social, and metacognitive domains Boundary: the review reports a predominance of undergraduate and qualitative studies Use: motivates the topic and identifies an evidence/design gap Do not claim: structured peer feedback causes higher abstract scores ``` The final line is crucial: it prevents a relevant source from being used for a claim it did not test. ## Practice: search-and-screen lab 1. Build three concept blocks for your question. 2. Run two searches and record them exactly. 3. Screen 20 results with one-sentence reasons. 4. Read three retained sources in three passes. 5. Produce one source card for the strongest and one for the strongest counter-source. ## Quality check - search terms include synonyms and rival language; - dates, databases, filters, and decisions are recorded; - inclusion rules were written before seeing preferred results; - relevance and credibility are judged separately; - every retained source has a possible use and a “do not claim” boundary. **Next:** [turn source records into synthesis and argument](https://www.pengjiaxin.com/03-arguments-outlines-and-paragraphs). # 3. From Sources to Synthesis and Argument []{#_3-from-sources-to-synthesis-and-argument} ## The decision A source summary asks, “What did this paper say?” Synthesis asks, **“What should I conclude after comparing the papers?”** ## Learning outcomes You will be able to: - build a compact evidence matrix; - distinguish findings, interpretations, and limitations; - explain disagreement instead of merely listing it; - construct an argument using claim, evidence, warrant, and limit. ## 1. Build the smallest useful matrix Use one row per study, not one row per quotation. | Source | Question/design | Context/sample | Result | Limit | Job in my paper | | --------------- | ---------------------- | --------------------------- | ------------------------------------ | ---------------------------------------- | ----------------------- | | review A | systematic review | 60 higher-education studies | benefits and challenges recur | studies heterogeneous; many qualitative | map field and gaps | | meta-analysis B | quantitative synthesis | 24 writing studies | improvement versus no feedback | few direct comparisons; wide uncertainty | estimate average effect | | class study C | observational | 114 undergraduates | feedback features relate to revision | self-selection; one setting | explain mechanism | The **job** column changes reading into writing. Typical jobs are: define, establish pattern, provide counterevidence, explain mechanism, justify method, or set a boundary. ## 2. Separate three layers For every source, write: | Layer | Question | Example | | ---------------- | ----------------------------------- | ------------------------------------------------------------------------ | | observation | What was measured or recorded? | final drafts received higher rubric scores | | author inference | What did the authors conclude? | peer feedback improved writing | | your use | What can this project safely infer? | improvement is consistent with an effect, but assignment may confound it | Do not copy an author's causal verb automatically. Recheck the design. ## 3. Code patterns, not authors After five to ten rows, mark each source by: - **direction**: positive, null, negative, mixed; - **mechanism**: noticing, explanation, motivation, social accountability; - **boundary**: novice/expert, discipline, online/in-person, task type; - **quality**: strong, usable with caution, weak for this claim. Then ask: 1. What pattern survives across studies? 2. Where does it change? 3. Is the disagreement substantive or produced by different measures/designs? 4. Which explanation fits the full pattern with the fewest exceptions? ## 4. Write a synthesis sentence ### Source-by-source version > Study A found benefits. Study B also found benefits. Study C found mixed results. ### Synthesised version > Peer feedback is generally associated with better academic writing, but the size and reliability of the improvement vary with feedback structure, comparison group, and outcome measure; the literature therefore supports a conditional rather than universal claim. The second version states the pattern, variation, and implication. Citations would then show which sources support each part. ## 5. Build the argument: C–E–W–L | Part | Running example | | ------------ | ----------------------------------------------------------------------------------------------------- | | **Claim** | Structured prompts may improve the usefulness of peer comments. | | **Evidence** | Studies report that feedback characteristics are associated with revision behaviour. | | **Warrant** | Prompts direct reviewers toward actionable criteria, increasing the chance that comments can be used. | | **Limit** | The association may partly reflect writer motivation or prior skill. | Without the warrant, the reader sees two facts but not the reasoning between them. Without the limit, the paragraph claims more than the evidence earns. ## 6. Explain conflicting evidence Use the pattern: ```text Agreement → conflict → diagnostic comparison → best explanation → remaining uncertainty ``` Example: > Most studies report improvement after peer feedback, whereas some find little change. The difference is not necessarily a direct contradiction: positive studies often compare feedback with no feedback, while null studies compare it with teacher feedback or use different writing outcomes. The evidence therefore suggests that peer feedback can add value relative to no feedback, but does not establish that it is always superior to expert feedback. This is synthesis because the comparison changes the conclusion. ## 7. Turn the matrix into an outline Headings should perform jobs. | Weak heading | Analytical heading | | ------------------- | ------------------------------------------------------ | | Peer feedback | What structured feedback changes | | Benefits | Evidence for improvement is positive but heterogeneous | | Challenges | Reviewer skill and uptake constrain the mechanism | | First-year students | Novice writers may need stronger scaffolding | For each section, write one sentence: ```text This section must establish ______ so that the next section can ask ______. ``` If two sections have the same job, merge them. If a heading cannot finish the sentence, it may be background rather than argument. ## 8. Draft one paragraph from the matrix ```text 1. Claim: answer one section-level question. 2. Evidence: compare at least two relevant sources. 3. Warrant: explain why the comparison supports the claim. 4. Limit: identify the most important boundary. 5. Link: state what question follows. ``` One paragraph need not contain five separate sentences, but it must perform all five functions across the local passage. ## Practice: the three-source synthesis Choose three sources that appear to disagree. 1. Enter one matrix row for each. 2. Circle differences in sample, intervention, measure, and comparison. 3. Write one pattern sentence and one boundary sentence. 4. Draft a C–E–W–L paragraph of no more than 140 words. 5. Remove every source name that is not needed for the reasoning. ## Quality check - the matrix records design and limits, not just findings; - sections are organised by questions or claims, not authors; - disagreement is diagnosed rather than announced; - each important claim has a visible warrant; - confidence decreases when evidence quality or transferability decreases. **Next:** [use the synthesis to write a literature review and defensible gap](https://www.pengjiaxin.com/04-writing-the-literature-review). # 4. Literature Review and a Defensible Gap []{#_4-literature-review-and-a-defensible-gap} ## The decision A literature review is an argument about **what is known, how it is known, where it holds, and what remains uncertain**. It is not a queue of summaries. ## Learning outcomes You will be able to: - choose a review form that matches the task; - convert topic blocks into a question chain; - distinguish a genuine gap from a claim of novelty; - end the review with a question the preceding evidence has earned. ## 1. Know which review you are writing | Form | Main purpose | Required transparency | Typical claim | | ----------------- | ----------------------------------------------- | ----------------------------------- | ------------------------------ | | essay review | support an argument within a bounded assignment | explain selection logic | reasoned interpretation | | narrative review | interpret a field or debate | state scope and organising logic | conceptual synthesis | | scoping review | map evidence, concepts, and gaps | protocol-like search and screening | distribution of evidence | | systematic review | answer a predefined question comprehensively | reproducible protocol and reporting | review-level evidence estimate | Do not call an essay “systematic” because it contains a database search. Systematic reviews require far more than a list of keywords; PRISMA 2020 provides reporting guidance for that specific review family ([Page et al., 2021](https://www.bmj.com/content/372/bmj.n71){rel=""nofollow""}). ## 2. Replace blocks with a question chain A planning outline may begin as: ```text peer feedback → writing quality → first-year students → gap ``` That sorts material but does not create reasoning. Convert it into five connected questions: 1. **Why does this relationship matter?** 2. **What exactly are the constructs?** 3. **What pattern does the evidence show?** 4. **Why does the pattern vary, and where might it fail?** 5. **What uncertainty can the present study resolve?** The order matters: the gap is credible only after the pattern and its boundaries are visible. ## 3. Build each link in the chain ### Question 1 — Why does it matter? Establish the decision or explanatory problem, not a grand statement that “writing is important.” > Peer feedback can scale formative response in large classes, but its educational value depends on whether comments produce observable revision rather than merely positive perceptions. ### Question 2 — What do the constructs mean? Define only distinctions that affect the study. | Construct | Operational meaning here | Nearby idea excluded | | ------------------------ | ---------------------------------------------------------- | ------------------------- | | structured peer feedback | comments prompted by the same analytic rubric | unrestricted conversation | | abstract quality | blind score for problem, method, result logic, and clarity | student satisfaction | ### Question 3 — What pattern does the evidence show? Compare evidence, including uncertainty. A 2019 meta-analysis synthesised 24 quantitative studies and reported larger writing gains for peer feedback than no feedback, but the no-feedback estimate was based on only two direct comparisons and had wide uncertainty ([Huisman et al., 2019](https://doi.org/10.1080/02602938.2018.1545896){rel=""nofollow""}). The correct synthesis is not “peer feedback works.” It is: > Average results are encouraging, but the evidence is too heterogeneous to assume the same effect for every task, comparison, and learner group. ### Question 4 — Why might the pattern vary? Test three explanations: - **intervention**: rubric-guided comments may be more actionable than praise or grades; - **uptake**: feedback has no direct effect if writers reject or misinterpret it; - **context**: novice writers may lack the criteria knowledge needed to judge a peer's text. Context belongs inside the explanation. “First-year students” is not a decorative final section if experience changes how feedback is produced and used. ### Question 5 — What remains uncertain? A defensible gap states four things: ```text Known pattern + important boundary + unresolved explanation/estimate + feasible response ``` Example: > Peer feedback is associated with improvement in higher-education writing, but effects vary by task design and the literature provides limited direct evidence on rubric-guided feedback for short research abstracts written by first-year students. A comparison of structured and usual feedback, linked to draft-to-final revisions, can test whether any score change is accompanied by criterion-relevant uptake. ## 4. Use the right kind of gap | Gap | Weak version | Defensible version | | ------------- | ------------------------- | --------------------------------------------------------------- | | contradiction | studies disagree | estimates differ with comparison group and outcome measure | | mechanism | we do not know why | feedback uptake has not been linked to criterion-level revision | | context | no study in my university | evidence from experienced writers may not transfer to novices | | method | more research is needed | self-reported benefit needs comparison with blind text ratings | | evidence | few studies exist | available studies are too small or indirect for this claim | | theory | theory has not been used | competing mechanisms predict different revision patterns | “Nobody has studied X” may be false and, even if true, does not show that X matters. A gap is valuable when filling it changes explanation, evidence, or decision. ## 5. Draft sections as claims | Topic heading | Claim-led heading | | ------------------------- | ------------------------------------------------------------- | | Benefits of peer feedback | Evidence suggests benefit, but comparisons are uneven | | Feedback structure | Actionability depends on criteria and comment form | | First-year students | Novice criteria knowledge may constrain uptake | | Research gap | Draft-to-final evidence can separate perception from revision | Under each heading, use this paragraph sequence: ```text claim → compared evidence → explanation → boundary → next question ``` ### Worked paragraph > Peer feedback appears more reliable when the task makes quality criteria visible. Across the literature, “peer feedback” ranges from open comments to rubric-guided review, so an average effect combines materially different interventions. A rubric may improve comment specificity by directing attention to argument, method, and evidence, yet it cannot ensure that writers understand or accept the advice. The relevant mechanism is therefore not exposure to comments alone, but the chain from prompt to comment to uptake to revision. This makes criterion-level revision a more informative outcome than satisfaction alone. Notice the paragraph does not need many source summaries. It needs a visible inference. ## 6. Control the length For every paragraph, ask: - Which review question does this answer? - What changes in the reader's understanding? - Could one example replace three sentences of explanation? - Is this detail needed to justify the gap or design? Cut background that never returns in the question, method, or interpretation. ## Practice: block-to-chain conversion 1. List your current review headings. 2. Label each: importance, construct, pattern, mechanism, boundary, method, or gap. 3. Merge repeated jobs and add missing ones. 4. Rewrite the outline as five connected questions. 5. Draft a gap using the four-part formula above. 6. Test it: could the gap have been written before the review? If yes, the chain has not earned it. ## Quality check - review type and coverage claim match the actual method; - evidence is organised around questions or claims; - direct and indirect evidence are distinguished; - disagreement is explained through design, measure, mechanism, or context; - the final gap is specific, consequential, and answerable by the proposed study. **Next:** [align the question, design, evidence, and paper sections](https://www.pengjiaxin.com/05-core-sections-and-evidence). # 5. Research Design, Evidence, and Core Sections []{#_5-research-design-evidence-and-core-sections} ## The decision Research design is the logic connecting a question to an answer. Methods are the procedures inside that logic. > **Design determines what comparison is possible; the comparison determines what claim is credible.** ## Learning outcomes You will be able to: - match descriptive, comparative, causal, and interpretive questions to designs; - turn abstract concepts into observable evidence; - identify confounding, selection, measurement, and transfer limits; - make every paper section perform a distinct research job. ## 1. Match question and design | Question | Possible design | Evidence produced | Main limit | | --------------------------------- | ------------------------------------- | ----------------------------------- | ---------------------------------------- | | What changes after feedback? | before–after study | within-student change | time and practice effects | | How do two feedback forms differ? | comparative cohort | between-group difference | group selection/confounding | | What is the causal effect? | randomised or strong quasi-experiment | estimated counterfactual difference | compliance, attrition, external validity | | How is feedback used? | revision coding or process tracing | observed uptake pathway | coding and interpretation | | How do students experience it? | interviews/focus groups | situated meanings | accounts are not performance effects | Mixed methods are justified when two forms of evidence answer different parts of the same question—not because “more data is better.” ## 2. Operationalise the key ideas Use a construct-to-evidence table. | Construct | Indicator | Measurement rule | Threat | | ------------------ | ------------------------------------ | -------------------------------------------- | ------------------------------ | | abstract quality | rubric score | two blinded raters; four criteria | rater disagreement | | feedback structure | prompt condition | fixed rubric questions versus usual comments | groups may ignore prompts | | uptake | visible revision linked to a comment | code accepted, adapted, or rejected | silent reasoning is unobserved | An indicator is evidence **for** a construct, not the construct itself. A rubric score captures selected dimensions of quality; it does not exhaust “good writing.” ## 3. Compare three designs for the same case ### Design A — one-group before and after ```text Draft → structured feedback → final draft ``` **Can support:** scores improved after the activity. **Cannot establish alone:** feedback caused the improvement; students also practised, received teaching, and had more time. ### Design B — existing seminar groups ```text Group 1: structured feedback Group 2: usual feedback Both: draft and final ratings ``` **Can support:** change differed between these groups. **Main threat:** groups may differ in teacher, timetable, prior skill, or motivation. ### Design C — random assignment within the class ```text Eligible students → random allocation → two feedback forms → blind outcome rating ``` **Can better support:** an average causal effect in this class, if allocation, adherence, missing data, and blinding are credible. **Still cannot establish:** the same effect in every discipline, institution, or postgraduate population. The strongest design is the strongest **feasible and ethical** design, not automatically the most complex one. ## 4. Audit inference threats | Threat | Diagnostic question | Possible response | | ---------------------- | ---------------------------------------------------- | ------------------------------------------------------- | | selection | who enters each group, and why? | randomise; match; measure baseline differences | | confounding | what else changes with the intervention? | hold teaching constant; collect covariates | | measurement | would another rater/code give the same result? | blind raters; pilot rubric; report agreement | | attrition | who is missing at the end? | compare missingness; sensitivity analysis | | researcher flexibility | could analysis choices follow the result? | specify outcomes and analysis before inspecting results | | transfer | which feature of this setting may change the effect? | state population and contextual boundary | A limitation is useful only when it changes interpretation or suggests a concrete check. ## 5. Calibrate the verb | Evidence | Prefer | Avoid without stronger design | | -------------------------------- | -------------------------------------- | -------------------------------------- | | cross-sectional association | relates to, is associated with | causes, leads to | | before–after change | increased after, changed following | produced the change | | controlled non-random comparison | is consistent with an effect | proves | | credible randomised estimate | increased on average in this study | always works | | qualitative accounts | participants described, interpreted as | demonstrates prevalence or effect size | Precision is not timid writing. It tells the reader exactly how far the evidence travels. ## 6. Give every section one job ### Empirical paper | Section | Job | Reader's question | | ----------------- | ------------------------------------------------ | -------------------------------------------- | | introduction | define problem, question, and contribution | Why this study? | | literature/theory | establish pattern, mechanism, and gap | What should we expect, and why? | | method | make the inference auditable | How could this evidence answer the question? | | results | report observations without moving the goalposts | What was found? | | discussion | interpret, test alternatives, bound the claim | What does it mean and where does it stop? | | conclusion | state the answer and consequence | What should be retained? | ### Review or argument paper Replace “method/results” with: - **scope and selection** — how the evidence base was formed; - **thematic or analytical sections** — how evidence was compared; - **synthesis** — what conclusion follows and with what uncertainty. The labels may vary by discipline; the research jobs do not. ## 7. Write the method as decisions Weak: > A quantitative method was used and data were analysed statistically. Stronger: > Students were assigned within seminar groups to structured or usual feedback. Two raters, blinded to condition and draft stage, scored each abstract using the same four-criterion rubric. The primary comparison was the difference in draft-to-final score change between conditions. The stronger version lets a reader inspect assignment, measurement, and comparison. ## Practice: claim–design hearing Complete one row, then defend it aloud in 90 seconds. | Question | Desired claim | Comparison/interpretation | Data | Main threat | Honest verb | | -------- | ------------- | ------------------------- | ---- | ----------- | ----------- | | | | | | | | Your listener asks only: 1. What observation would contradict the claim? 2. What rival explanation remains? 3. Which population is the conclusion about? Revise until each answer is explicit. ## Quality check - each construct has an indicator and measurement rule; - the design creates the comparison the question requires; - major threats have checks or acknowledged consequences; - causal language is reserved for a credible counterfactual design; - every section advances the question rather than repeating background. **Next:** [make claims traceable through citation, paraphrase, and responsible AI use](https://www.pengjiaxin.com/06-citation-paraphrasing-and-integrity). # 6. Citation, Paraphrasing, Integrity, and AI []{#_6-citation-paraphrasing-integrity-and-ai} ## The decision A citation is not decoration. It is a route by which a reader can inspect the evidence behind a claim. :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgICBDW0NsYWltIGluIGRyYWZ0XSAtLT4gTltTb3VyY2Ugbm90ZV0KICAgIE4gLS0+IFBbRXhhY3QgcGFzc2FnZSBvciByZXN1bHRdCiAgICBQIC0tPiBPW09yaWdpbmFsIHNvdXJjZV0KICAgIEMgLS0+IEJbQm91bmRhcnkgc3RhdGVkXQ==" locale="en"} If any link is missing, the claim is not yet auditable. ## Learning outcomes You will be able to: - decide when and where a citation is needed; - paraphrase meaning rather than rearrange wording; - cite a source only for the claim it actually supports; - use AI as an assistive tool without delegating verification or judgment. ## 1. Decide what needs a citation Cite when you use: - another author's idea, definition, model, or wording; - a factual claim that a reader may reasonably verify; - data, a result, an estimate, or a contested interpretation; - a method or measure developed elsewhere; - a claim about what “the literature” shows. Usually do not cite: - your clearly labelled research question or decision; - your own observed result, when the paper has already identified it as such; - genuinely common knowledge in the intended discipline. When uncertain, ask: **Could a sceptical reader reasonably ask, “How do you know?”** ## 2. Place the citation at the claim Ambiguous: > Peer feedback may improve writing, confidence, revision behaviour, and course participation. Several studies support these outcomes (Author, year). Clearer: > Quantitative syntheses report improvement in writing performance, while qualitative studies also describe affective and social benefits (Author A, year; Author B, year). These outcomes should not be treated as the same construct. The second version shows which claim the evidence supports and prevents one citation from carrying four unexamined claims. ## 3. Record the evidence boundary Use a claim record: ```text Draft claim: Source: Exact location: page / table / figure / section What the source directly shows: My inference: Boundary or rival explanation: ``` ### Worked record ```text Draft claim: AI-generated references require independent verification. Source: Walters & Wilder (2023) Location: abstract and results tables Direct evidence: in 84 generated papers on 42 topics, 18% of GPT-4 references were fabricated; 24% of its real references contained substantive errors Inference: fluent reference lists were not reliable in this tested setup Boundary: historical model versions, prompts, and topics; not an estimate for every current system ``` The study supports a **verification rule**, not the timeless claim that “AI always invents sources” ([Walters & Wilder, 2023](https://doi.org/10.1038/s41598-023-41032-5){rel=""nofollow""}). ## 4. Paraphrase the idea Paraphrasing requires three changes: 1. **representation** — select the part relevant to your question; 2. **structure** — rebuild the logic for your paragraph; 3. **language** — write without looking at the original, then verify accuracy. ### Weak paraphrase > Walters and Wilder found fabrication and substantive errors in citations generated by ChatGPT. This changes little and does not explain why the finding matters. ### Analytical paraphrase > In a model- and prompt-specific test, plausible formatting did not guarantee that a reference existed or that its metadata was correct; generated citations therefore need checking against the publisher record or a trusted index. The citation is still required because the evidence is borrowed, even though the wording and analytical use are new. ### Use quotation only when wording is evidence Quote when the exact language is itself being analysed, unusually precise, or historically important. Otherwise, paraphrase and explain. Always preserve page or location information while taking notes. ## 5. Synthesise without citation dumping Weak: > Peer feedback improves writing (A, 2019; B, 2023; C, 2024). Stronger: > Review-level evidence is broadly positive, but estimates and reported mechanisms vary with the comparison group, task structure, and outcome measure (A, 2019; B, 2023; C, 2024). The stronger sentence tells the reader why the sources appear together. ## 6. Use AI by risk, not convenience First follow your institution, programme, supervisor, publisher, and data-protection rules. Where use is permitted: | Task | Typical risk | Required control | | ------------------------------------------ | ------------------------ | ----------------------------------------------- | | brainstorm search synonyms | low | test terms in real databases | | challenge an outline built from your notes | low–medium | keep or reject suggestions yourself | | language edit of non-sensitive text | medium | compare meaning before accepting | | summarise an uploaded paper | medium–high | verify every point in the paper | | generate citations or evidence | high | do not treat output as a source | | choose methods or interpret results | high | independently justify and document the decision | | process confidential participant data | potentially unacceptable | use only approved systems and governance | The central risk is not only false text. AI can make researchers feel that a topic has been understood while hiding alternative questions or viewpoints—the “illusion of understanding” described by Messeri and Crockett ([2024](https://doi.org/10.1038/s41586-024-07146-0){rel=""nofollow""}). ## 7. Apply the AI verification protocol For every AI-assisted factual statement or reference: - locate the original source independently; - match author, title, year, venue, and DOI/URL; - open the source rather than trusting a generated summary; - find the exact passage, table, figure, code, or data; - check whether design and population support your wording; - compare at least one independent source for important claims; - record the tool, date, task, and material retained where disclosure is required. Do not ask the same system that invented a reference to certify that the reference is real. ## 8. Disclose use precisely Adapt this to local policy: ```text I used [tool/version] on [date] to [bounded task]. I did not use it as an evidentiary source. I independently verified [facts/citations/analysis] against [records]. I remain responsible for the argument, interpretation, and final text. ``` Avoid vague statements such as “AI was used to improve the paper.” Name the actual task and control. ## Practice: trace one paragraph 1. Choose the paragraph with your strongest claim. 2. Underline every borrowed fact, idea, measure, and inference. 3. Connect each to a claim record and exact source location. 4. Rewrite one paraphrase from notes without viewing the original wording. 5. Add the strongest boundary the source requires. 6. If AI assisted, complete the verification and disclosure record. ## Quality check - every important claim has an inspectable source or is clearly your result; - citations sit beside the clauses they support; - source notes distinguish quotation, summary, and your analysis; - paraphrases preserve meaning without copying structure; - AI output is never treated as evidence; - confidential or restricted material has stayed in approved systems. **Next:** [revise the research decisions before polishing the sentences](https://www.pengjiaxin.com/07-revision-style-and-submission). # 7. Revision, Review, and Submission []{#_7-revision-review-and-submission} ## The decision Editing improves sentences. Revision tests whether the **question, evidence, inference, and structure still fit**. Revise from large decisions to small ones; otherwise you may polish a paragraph that should be removed. ## Learning outcomes You will be able to: - reverse-outline a draft and diagnose structural drift; - audit claim strength, evidence placement, and limitations; - use peer review as an observable revision process; - assemble a transparent final submission. ## 1. Use six passes | Pass | Question | Action | | ------------ | ------------------------------------------ | ---------------------------------------------------------- | | 1. answer | Does the paper answer the stated question? | write the answer in two sentences; compare with conclusion | | 2. inference | Does the design support each major verb? | mark causal, comparative, and interpretive claims | | 3. structure | Does every section move the argument? | reverse-outline; cut or move repeated jobs | | 4. evidence | Can each claim be inspected? | run citation and source-location audit | | 5. paragraph | Does each paragraph have C–E–W–L? | repair missing warrants and boundaries | | 6. sentence | Is the prose precise and readable? | shorten, define, proofread, format | Do not begin with Pass 6. ## 2. Reverse-outline the draft In the margin, record each paragraph's job in no more than eight words. ```text P1 establishes the practical problem P2 defines structured feedback P3 compares review-level evidence P4 explains variation through feedback uptake P5 derives the first-year-student boundary ``` Then diagnose: | Pattern | Meaning | Revision | | ----------------------------------------- | ------------------- | --------------------------------- | | two adjacent paragraphs have the same job | repetition | merge or distinguish | | a paragraph needs two job labels | mixed focus | split or choose one claim | | a job never returns to the question | background drift | cut | | conclusion introduces a new premise | missing development | move evidence earlier | | section order can be swapped freely | no argument chain | add causal or logical transitions | ## 3. Audit the claims Create a table for the five most important claims. | Claim | Evidence | Design permits? | Rival explanation | Revision | | ---------------------------------------- | ------------------------- | --------------- | ----------------------------- | --------------------------------------------------- | | structured feedback caused higher scores | non-random seminar groups | no | prior group differences | change to “was associated with greater improvement” | | comments changed revision | linked comment–edit codes | partly | edits may have another origin | report matched and unmatched revisions | The purpose is not to weaken every sentence. It is to make confidence proportional to evidence. ## 4. Test paragraph logic Use C–E–W–L: - **Claim** — one answerable point; - **Evidence** — the most relevant observation or comparison; - **Warrant** — why that evidence changes belief in the claim; - **Limit** — where the reasoning may fail. ### Before > Students improved after peer feedback. Peer feedback is therefore effective. It should be used in universities. ### After > Mean abstract scores rose after peer feedback, but the one-group design cannot separate feedback from practice or concurrent teaching. The result supports continued evaluation of the activity in this module, not a general causal claim about university writing. The revised version is shorter and more informative because it identifies the inference boundary. ## 5. Run structured peer review The reviewer should not rewrite the paper. They should report their reading evidence. ### Reader protocol Without consulting the author, write: 1. the research question in your own words; 2. the main answer in one sentence; 3. the strongest piece of evidence; 4. the point where your confidence fell and why; 5. one revision that would most improve the argument. ### Author protocol Classify each comment: ```text accept → revise and record adapt → solve the diagnosed problem differently decline → state an evidence-based reason ``` Feedback is data about how a reader encountered the draft, not an instruction that must always be obeyed. A recent example of research infrastructure makes this process visible: Exposía links proposal drafts, peer/instructor feedback, final revisions, and criterion-level ratings, allowing feedback and uptake to be studied together ([Zyska et al., 2026](https://arxiv.org/abs/2601.06536){rel=""nofollow""}). ## 6. Edit for precision | Replace | With | | -------------------------- | ----------------------------------------------------------------------- | | “a number of studies show” | name the evidence type and pattern | | “proves” | estimates, supports, is consistent with | | “significant” | statistically significant, substantial, or important—whichever you mean | | “this” with no noun | this estimate / mechanism / limitation | | three abstract nouns | one active verb | Read once aloud for rhythm, once backward sentence by sentence for errors, and once in the submission format for layout. ## 7. Submit a research pack The exact requirement depends on the course, but a strong pack can include: ```text paper.pdf search-log.xlsx or .csv evidence-matrix.xlsx or .csv data/ and code/ or analysis-notes/ decision-log.md ai-use-statement.md, if required readme.md ``` The README should state what each file is, what is confidential, and how the result was produced. Never submit identifiable participant data unless the approved process explicitly permits it. ## 8. Make the final defence Answer these questions in five minutes: 1. What is the exact question? 2. What is the strongest evidence? 3. What can the design not establish? 4. Which alternative explanation worries you most? 5. What result or evidence would change your conclusion? If an answer requires searching through the paper, the argument is not yet under control. ## Final checklist - title, question, method, result, and conclusion describe the same project; - abstract reports the main boundary, not only the preferred result; - headings form a logical route; - tables and figures can be understood from captions and notes; - citations and bibliography match in both directions; - quotations, page numbers, data, calculations, and links were checked; - appendices and files are named and referenced correctly; - required ethics, funding, conflict, data, and AI statements are present; - the submitted file opens and is the intended version. **Next:** use the [course workbook](https://www.pengjiaxin.com/08-literature-review-checklist-and-template) to assemble the complete set of research decisions. # 8. Research Workbook []{#_8-research-workbook} This studio contains **outputs, not extra theory**. Complete the templates in order; keep each answer as short as accuracy allows. ::tip{title="How to use the workbook"} Date every version. Never delete an earlier decision: mark it **revised** , give the reason, and link the replacement. :: ## 1. Project canvas ::legacy-details{title="Copyable template"} ```text Working title: Topic in five words: Puzzle: What cannot yet be explained, estimated, interpreted, or decided? Research question: Population / material: Context and time: Intervention, phenomenon, or relationship: Outcome or object of interpretation: Comparison, if any: Evidence needed: Strongest claim the feasible design could support: Claim the design could not support: Access constraint: Ethical constraint: Deadline: ``` :: ## 2. Search plan and log ::legacy-details{title="Copyable template"} ```text Concept block A: Synonyms: Concept block B: Synonyms: Concept block C: Synonyms: Inclusion rule: Exclusion rule: Stopping rule: ``` | Date | Database/source | Exact query | Filters | Results | Kept | Reason/change | | ---- | --------------- | ----------- | ------- | ------: | ---: | ------------- | | | | | | | | | :: ## 3. Source card ::legacy-details{title="Copyable template"} ```text Full reference and persistent link: Question: Design / data / material: Population and context: Measure or interpretive approach: Main observation: Author's interpretation: Most important limitation: Job in my paper: define / pattern / counterevidence / mechanism / context / method Exact page, table, figure, or section: Claim this source can support: Claim this source cannot support: ``` :: ## 4. Evidence matrix ::legacy-details{title="Copyable template"} | Source | Question/design | Sample/context | Result | Limit | Pattern code | Job | | ------ | --------------- | -------------- | ------ | ----- | ------------ | --- | | | | | | | | | | | | | | | | | | | | | | | | | :: ## 5. Synthesis map ::legacy-details{title="Copyable template"} ```text Pattern that survives across sources: Strongest disagreement: Difference in design, measure, population, or context that may explain it: Most plausible mechanism: Boundary where the pattern may fail: What remains uncertain: One-sentence synthesis: ``` :: ## 6. Literature-review question chain ::legacy-details{title="Copyable template"} ```text 1. Why does this relationship/problem matter? 2. Which construct distinctions affect the study? 3. What pattern does the evidence show? 4. Why does it vary, and where might it fail? 5. What uncertainty can this project resolve? Gap = known pattern + important boundary + unresolved issue + feasible response: ``` :: ## 7. Design-alignment table ::legacy-details{title="Copyable template"} | Element | Decision | Why it answers the question | Main threat | Check or consequence | | ------------------------- | -------- | --------------------------- | ----------- | -------------------- | | unit/sample | | | | | | assignment/selection | | | | | | comparison | | | | | | measure/material | | | | | | analysis/interpretation | | | | | | missing data/deviant case | | | | | | transfer boundary | | | | | :: ## 8. Claim record ::legacy-details{title="Copyable template"} ```text Claim: Claim type: descriptive / comparative / relational / causal / interpretive Evidence: Exact source or result location: Warrant: why the evidence supports the claim: Limit or rival explanation: Confidence: high / moderate / low Verb after calibration: ``` :: ## 9. Paragraph test ::legacy-details{title="Copyable template"} ```text Claim: Evidence compared: Warrant: Limit: Link to the next question: Paragraph draft (maximum 140 words): ``` :: ## 10. AI-use and verification log ::legacy-details{title="Copyable template"} | Date | Tool/version | Bounded task | Input sensitivity | Output retained | Independent check | Disclosure needed | | ---- | ------------ | ------------ | ----------------- | --------------- | ----------------- | ----------------- | | | | | | | | | ```text Source claimed by AI: Publisher/index record found: Metadata matched: Exact supporting location: Population/design boundary checked: Decision: use / rewrite / reject ``` :: ## 11. Revision memo ::legacy-details{title="Copyable template"} | Feedback/diagnosis | Decision | Change made | Evidence/reason | Location | | ------------------ | ------------------------ | ----------- | --------------- | -------- | | | accept / adapt / decline | | | | ```text Most important change: Why it improved the inference rather than only the prose: Important limitation deliberately retained: ``` :: ## 12. Submission gate Stop submission if any answer is “no.” - Can I state the question and answer in two sentences? - Does the design justify the strongest verb in the conclusion? - Can I trace every important claim to evidence and an exact location? - Are search, exclusion, coding, and analysis decisions recorded? - Are uncertainty and transfer limits visible in the abstract and conclusion? - Have citations, calculations, files, permissions, and disclosures been checked? **Next:** [build a low-friction research workflow](https://www.pengjiaxin.com/09-tools-for-academic-writing-and-literature-management), or inspect the [worked project](https://www.pengjiaxin.com/10-worked-example-from-block-structure-to-question-chain). # 9. Research Workflow and Tools []{#_9-research-workflow-and-tools} ## The decision Choose tools by the **research job** they perform. Every job needs one source of truth. | Job | Minimum capability | Source of truth | | ---------- | ----------------------------------------------------- | ----------------- | | find | export stable metadata and links | search log | | store | keep reference, PDF, and identifier together | reference library | | understand | preserve source location and your analysis separately | source card | | compare | sort studies by design, finding, and limit | evidence matrix | | produce | control draft, citations, analysis, and versions | project folder | Adding a second tool for the same job is justified only when it solves a named problem. ## 1. Use a minimal stack For most projects: ```text one reference manager + one matrix or structured note table + one writing environment + one backed-up project folder ``` Examples include a reference manager such as Zotero, a spreadsheet for comparison, and Word/Google Docs or LaTeX for drafting. The brands may change; the functions do not. ## 2. Keep a stable project structure ```text project-name/ ├── README.md ├── 01-protocol/ │ ├── question-scope.md │ └── search-log.csv ├── 02-sources/ │ └── evidence-matrix.csv ├── 03-data-or-material/ ├── 04-analysis/ ├── 05-draft/ ├── 06-output/ └── 07-decisions/ ├── decision-log.md └── ai-use-log.md ``` Keep sensitive data only in approved storage. A tidy folder is not a substitute for access control, consent, and retention rules. ## 3. Name versions by state Avoid `final-final-v7-really-final.docx`. ```text 2026-10-12-outline.md 2026-10-18-draft-for-peer-review.docx 2026-10-24-revised-after-method-check.docx 2026-10-30-submitted.pdf ``` Use version control when plain files cannot show who changed what or when analysis code and text must evolve together. ## 4. Connect notes to evidence A highlight without a source location is fragile. A useful note contains: ```text reference → exact location → source meaning → my analysis → planned use → boundary ``` Tag by **function**, not only topic: ```text definition pattern counterevidence mechanism context method limitation ``` This makes it possible to retrieve all counterevidence or all method sources when revising a claim. ## 5. Run one repeatable loop :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgICBGW0ZpbmRdIC0tPiBTW1NhdmVdCiAgICBTIC0tPiBSW1JlYWRdCiAgICBSIC0tPiBFW0V4dHJhY3RdCiAgICBFIC0tPiBZW1N5bnRoZXNpc2VdCiAgICBZIC0tPiBXW1dyaXRlXQogICAgVyAtLT4gQVtBdWRpdF0KICAgIEEgLS4gbWlzc2luZyBldmlkZW5jZSAuLT4gRg==" locale="en"} At each loop: 1. save metadata and the stable link immediately; 2. make a source card before highlighting more; 3. update the matrix after three to five sources; 4. write one synthesis sentence; 5. search again only for a named uncertainty. This prevents endless collection without argument. ## 6. Add tools only after a failure | Failure | Add or change | | --------------------------------------- | ---------------------------------------------------- | | references are mistyped | use citation insertion from the reference manager | | sources cannot be compared | use a sortable matrix | | long-term concepts are disconnected | use linked notes | | equations/templates dominate formatting | consider LaTeX | | analysis cannot be reproduced | use scripts/notebooks and version control | | collaborators overwrite drafts | use tracked changes or collaborative version history | Do not migrate during the final week unless the current system is unusable. ## 7. Keep a decision log ```text Date: Decision: Alternatives considered: Evidence/reason: Consequence for question, method, or claim: Revisit when: ``` Examples: exclude a population, change an outcome, merge codes, handle missing data, reject a peer comment, or retain an AI suggestion. The log turns “I remember deciding” into an auditable research history. ## 8. Apply the three-copy rule For important non-sensitive files, keep: - the working copy; - an automatically synchronised or versioned copy; - a separate recovery copy. Test recovery once. A backup that has never been restored is only a hope. ## Practice: a 20-minute workflow audit 1. List every location containing sources, notes, data, code, or drafts. 2. Assign one source of truth to each research job. 3. Remove or archive one duplicate path. 4. Create the project folders and README. 5. Add three sources with location, use, and boundary. 6. Record one real decision in the log. ## Quality check - every research job has one clear source of truth; - source metadata, notes, and citations remain connected; - filenames reveal date and purpose; - sensitive material uses approved storage and permissions; - analysis and important decisions can be reconstructed; - backups are automatic and recoverable. **Next:** [see the entire workflow applied to one project](https://www.pengjiaxin.com/10-worked-example-from-block-structure-to-question-chain). # 10. Worked Project — From Question to Defensible Conclusion []{#_10-worked-project-from-question-to-defensible-conclusion} This studio applies the whole course to one project. ::warning{title="Teaching data"} The literature sources below are real. The class, measurements, and numerical results are **simulated for teaching** . Do not cite the simulated values as research evidence. :: ## 1. Topic, puzzle, and question **Topic:** peer feedback in research writing. **Puzzle:** review-level evidence is broadly positive, but “peer feedback” combines different task designs, and reported perceptions do not show which comments produce better revisions. **Question:** > Among first-year undergraduates in a six-week methods module, what is the effect of rubric-guided peer feedback, compared with usual peer comments, on blind ratings of research-abstract quality, and which feedback features are taken up in revision? The first part is causal and quantitative; the second is process-oriented. ## 2. Scope and feasibility | Decision | Choice | Reason | | ---------------- | ------------------------------------- | --------------------------------------------- | | participants | 48 consenting students in one module | accessible within six weeks | | product | 250-word abstract, draft and final | comparable unit of writing | | intervention | four rubric prompts | clearly distinguishable condition | | comparison | usual open comments | realistic alternative | | primary outcome | change in blind 20-point rubric score | directly represents selected quality criteria | | process evidence | comment-to-revision links | tests uptake mechanism | | boundary | one course and institution | prevents over-generalisation | Ethical issues include consent, power relations, anonymisation of student writing, and ensuring that course grades do not depend on research participation. ## 3. Search trail Core query: ```text ("peer feedback" OR "peer review") AND ("academic writing" OR "research writing" OR abstract*) AND (undergraduate* OR "higher education") ``` Selection rule: retain studies or reviews that examine peer feedback on higher-education writing and report writing, revision, feedback, or implementation evidence. Challenge searches: ```text "peer feedback" AND writing AND (null OR limitation OR challenge) "peer feedback" AND writing AND (rubric OR structured OR uptake) ``` ## 4. Mini evidence matrix | Source | Evidence | Contribution | Boundary | | -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | ---------------------------------------------------------------------- | ----------------------------------------------- | | [Huisman et al. (2019)](https://doi.org/10.1080/02602938.2018.1545896){rel=""nofollow""} | meta-analysis of 24 quantitative higher-education writing studies | average performance evidence; task design as moderator | few studies in some comparisons; heterogeneity | | [Wei & Liu (2024)](https://doi.org/10.3389/fpsyg.2024.1506725){rel=""nofollow""} | systematic review of 60 empirical studies from 2014–2024 | maps benefits, challenges, samples, and methods | many undergraduate and qualitative studies | | [Lu et al. (2023)](https://doi.org/10.1016/j.asw.2023.100725){rel=""nofollow""} | path analysis with 114 undergraduates | links feedback features, acceptance, revision, and performance | observational pathway in one context | | [Zyska et al. (2026)](https://arxiv.org/abs/2601.06536){rel=""nofollow""} | public proposal–feedback–revision dataset with human ratings | demonstrates criterion-level linkage of drafts, reviews, and revisions | computer-science course; preprint/dataset paper | The studies perform different jobs. None alone answers the proposed question. ## 5. Synthesis and gap ### Synthesis > Peer feedback is generally associated with improvement in higher-education writing, but effect estimates combine varied comparisons and task designs. Process evidence suggests that comment characteristics and acceptance matter, while newer draft–feedback–revision datasets make criterion-level uptake observable. The literature therefore supports testing a structured pathway—prompt → comment → uptake → revision—rather than treating exposure to feedback as the mechanism. ### Gap > It remains uncertain whether rubric-guided peer comments improve short research abstracts for novice university writers relative to usual comments, and whether any score difference is accompanied by more criterion-relevant uptake. This gap is narrower than “peer feedback has not been studied.” It identifies a design, population, product, comparison, and mechanism. ## 6. Design alignment :mermaid-diagram{code64="Zmxvd2NoYXJ0IFRECiAgICBQWzQ4IGNvbnNlbnRpbmcgc3R1ZGVudHNdIC0tPiBSW1JhbmRvbWlzZSB3aXRoaW4gc2VtaW5hcl0KICAgIFIgLS0+IEcxW1J1YnJpYy1ndWlkZWQgZmVlZGJhY2tdCiAgICBSIC0tPiBHMltVc3VhbCBjb21tZW50c10KICAgIEcxIC0tPiBGW0ZpbmFsIGFic3RyYWN0XQogICAgRzIgLS0+IEYKICAgIEYgLS0+IEJbVHdvIGJsaW5kZWQgcmF0ZXJzXQogICAgRzEgLS0+IENbQ29tbWVudC10by1yZXZpc2lvbiBjb2RpbmddCiAgICBHMiAtLT4gQw==" locale="en"} | Element | Decision | Threat controlled | Threat remaining | | ---------------- | --------------------------------------------- | -------------------------- | ---------------------------------- | | assignment | randomise within seminar | baseline group differences | non-compliance | | rating | two raters blind to condition/stage | expectation bias | rubric captures limited dimensions | | primary analysis | compare mean draft-to-final change | common baseline/time trend | small-sample uncertainty | | process analysis | code comment specificity and matched revision | tests proposed pathway | coding subjectivity | | missing data | report by condition; analyse assigned groups | selective completion | assumptions about missing outcomes | Primary outcome and coding rules should be fixed before viewing group results. ## 7. Simulated results | Outcome | Structured feedback | Usual comments | Estimated contrast | | ----------------------------- | ------------------: | -------------: | --------------------: | | mean draft score / 20 | 12.1 | 12.4 | −0.3 | | mean final score / 20 | 15.7 | 14.2 | +1.5 | | mean change | +3.6 | +1.8 | **+1.8** | | actionable comments | 72% | 41% | +31 percentage points | | comments linked to a revision | 63% | 38% | +25 percentage points | Simulated 95% confidence interval for the difference in score change: **0.4 to 3.2 points**. ### What may be said > In this simulated randomised class study, rubric-guided feedback increased the average draft-to-final score change by an estimated 1.8 points relative to usual comments. More comments were actionable and linked to revisions, which is consistent with the proposed uptake pathway. ### What may not be said > Structured peer feedback always improves university writing by 1.8 points. The study estimates an average effect for one task and setting. The process pattern supports, but does not uniquely prove, the mechanism. ## 8. A C–E–W–L discussion paragraph > Rubric-guided feedback produced greater improvement than usual comments in this class (**claim**). The structured group showed a larger mean score change, and its comments were more often actionable and matched to revisions (**evidence**). Because the prompts targeted the same criteria used to assess the abstract, they may have helped reviewers identify changes that writers could apply (**warrant**). However, the small single-module sample, imperfect measure of uptake, and short follow-up limit precision and transfer to other writing tasks (**limit**). ## 9. Abstract built from research jobs > **Background:** Peer feedback can support academic writing, but outcomes vary with task design and uptake. **Question:** We tested whether rubric-guided feedback improved first-year students' research abstracts relative to usual comments. **Method:** In this simulated study, 48 students were randomised within seminars; blinded raters scored draft and final abstracts, and comments were linked to revisions. **Results:** The structured group showed a 1.8-point greater mean improvement (simulated 95% CI 0.4–3.2), with more actionable and revision-linked comments. **Conclusion:** Structured prompts improved outcomes in this class and the process evidence was consistent with greater uptake, but the small, single-task setting limits generalisation. Each sentence has one job. No sentence claims more than the simulated design supports. ## 10. Revision after peer review | Reviewer comment | Decision | Revision | | ----------------------------------- | -------- | --------------------------------------------------- | | “Quality sounds too broad.” | accept | define the four rubric criteria | | “The mechanism is proven.” | accept | change to “consistent with” and name rival pathways | | “Add student satisfaction.” | adapt | report as secondary evidence, not a quality outcome | | “Generalise to all undergraduates.” | decline | retain the one-module boundary | The best revision changes inference, not merely wording. ## 11. Five-minute defence 1. **Question:** local causal effect plus uptake pathway. 2. **Strongest evidence:** randomised contrast in blind score change. 3. **Main limit:** one small module and one short text genre. 4. **Rival explanation:** differential engagement or interaction between students. 5. **Next study:** replicate across disciplines and test whether criterion knowledge moderates the effect. ## Transfer the pattern to your project Replace the topic, but preserve the chain: ```text puzzle → bounded question → transparent search → compared evidence → precise gap → aligned design → calibrated result → bounded conclusion → documented revision ``` Return to the [course overview](https://www.pengjiaxin.com/) or copy the templates from the [research workbook](https://www.pengjiaxin.com/08-literature-review-checklist-and-template). # Research Skills and Academic Writing []{#research-skills-and-academic-writing} This course teaches one complete workflow: > **Ask a bounded question, find and judge evidence, make only the claim that the design can support, and leave a traceable record of every decision.** It is suitable for undergraduate projects and as a methods refresher for taught postgraduate or early doctoral work. The examples are short; the standards are not. :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgICBRW1F1ZXN0aW9uXSAtLT4gU1tTZWFyY2hdCiAgICBTIC0tPiBFW0V2YWx1YXRlXQogICAgRSAtLT4gWVtTeW50aGVzaXNlXQogICAgWSAtLT4gRFtEZXNpZ25dCiAgICBEIC0tPiBBW0FyZ3VlXQogICAgQSAtLT4gVltWZXJpZnldCiAgICBWIC0tPiBSW1JldmlzZV0KICAgIFIgLS4gbmV3IGV2aWRlbmNlIC4tPiBR" locale="en"} ::tip{title="The governing rule"} A polished sentence cannot repair a weak research decision. Work in this order: **question → evidence → inference → prose** . :: ## What you will be able to do By the end, you should be able to: 1. turn a broad topic into a feasible, answerable research question; 2. search transparently and explain why each source was included; 3. distinguish a source's finding from your interpretation of it; 4. synthesise agreement, disagreement, mechanism, context, and uncertainty; 5. align a question with a design and calibrate the strength of the claim; 6. build paragraphs in which evidence actually supports the claim; 7. cite, paraphrase, and use AI without breaking source traceability; 8. revise a paper through an auditable sequence of decisions. ## One case across the whole course Every chapter returns to the same case: > **Does structured peer feedback improve the quality of research abstracts written by first-year undergraduates in a six-week methods module?** This question is useful because it contains a treatment, an outcome, a population, and a setting—but still leaves design choices open. | Choice | Example | Consequence | | ---------- | ---------------------------------------------- | ----------------------------- | | Outcome | rubric score for argument, method, and clarity | “Quality” becomes measurable | | Comparison | structured feedback versus usual comments | supports a comparative claim | | Timing | draft and final abstract | permits change to be observed | | Assignment | random or existing seminar groups | changes causal credibility | | Context | one institution, one module | limits generalisation | The case is grounded in an active research area. A 2024 systematic review found both reported benefits and recurring implementation challenges across 60 studies of peer feedback in higher-education writing; it also noted that much of the evidence concerned undergraduates and was qualitative ([Wei & Liu, 2024](https://doi.org/10.3389/fpsyg.2024.1506725){rel=""nofollow""}). That is enough to motivate a study—not enough to predetermine its result. ## Course structure ### Core sequence | Module | Central question | Your output | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------- | ------------------------ | | [1. Question and scope](https://www.pengjiaxin.com/01-research-questions-and-planning) | What exactly can this project answer? | question + scope box | | [2. Search, evaluate, and read](https://www.pengjiaxin.com/02-reading-and-literature-matrix) | Which evidence deserves attention? | search log + source card | | [3. Synthesis and argument](https://www.pengjiaxin.com/03-arguments-outlines-and-paragraphs) | What does the evidence mean together? | matrix + argument map | | [4. Literature review and gap](https://www.pengjiaxin.com/04-writing-the-literature-review) | What is known, uncertain, and worth studying? | question-chain outline | | [5. Design and evidence](https://www.pengjiaxin.com/05-core-sections-and-evidence) | What can the method justify? | design-alignment table | | [6. Citation, integrity, and AI](https://www.pengjiaxin.com/06-citation-paraphrasing-and-integrity) | Can every important claim be traced? | verified claim record | | [7. Revision and submission](https://www.pengjiaxin.com/07-revision-style-and-submission) | Will a sceptical reader follow and trust the paper? | revision audit | ### Practice studios | Studio | Use it when... | | -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | | [8. Course workbook](https://www.pengjiaxin.com/08-literature-review-checklist-and-template) | you need copyable templates for each research decision | | [9. Research workflow and tools](https://www.pengjiaxin.com/09-tools-for-academic-writing-and-literature-management) | files, notes, citations, or versions are becoming hard to control | | [10. Worked project](https://www.pengjiaxin.com/10-worked-example-from-block-structure-to-question-chain) | you want to see the full chain from question to defensible conclusion | ## An eight-session teaching route The course works as eight 75–90 minute seminars or as self-study units. | Session | Before class | In class | Evidence of learning | | ------- | ---------------------------- | ---------------------------- | -------------------- | | 1 | bring a broad topic | question clinic | feasible question | | 2 | find five candidate sources | search-and-screen lab | search log | | 3 | read three sources | source autopsy | evidence matrix | | 4 | draft topic headings | block-to-question conversion | review outline | | 5 | propose a method | claim–design hearing | design table | | 6 | bring one evidence paragraph | traceability audit | revised paragraph | | 7 | exchange drafts | structured peer review | revision memo | | 8 | submit decision records | five-minute defence | final research pack | For self-study, replace peer discussion with a written answer to: **“What evidence would make me change this decision?”** ## Undergraduate and postgraduate routes | Route | Minimum standard | Extension | | ------------- | ----------------------------------------------------------------------------------- | ---------------------------------------------------------------- | | Undergraduate | one bounded question; reasoned source selection; claim–evidence fit | compare two plausible explanations | | Postgraduate | explicit search and exclusion logic; design limitations; alternative interpretation | justify boundary conditions, robustness checks, and contribution | Both routes use the same chapters. Depth comes from the quality of decisions, not from adding more headings. ## The four-part test used throughout Every substantial paragraph should survive four questions: | Part | Test | Weak signal | | ------------ | ------------------------------------------ | ---------------------------------------- | | **Claim** | What am I asking the reader to accept? | only a topic is named | | **Evidence** | What observation or source supports it? | a citation is attached but not explained | | **Warrant** | Why does that evidence support this claim? | the logical step is hidden | | **Limit** | Where might the claim fail? | the wording is universal | Short form: **C–E–W–L**. You will use it for literature synthesis, methods, results, and conclusions. ## Research standards behind the course This course uses four evidence-based practices: - **transparent review decisions**: PRISMA 2020 shows why search, screening, and inclusion decisions must be reportable in systematic reviews ([Page et al., 2021](https://www.bmj.com/content/372/bmj.n71){rel=""nofollow""}); - **lateral source checking**: expert fact-checkers leave a page to investigate its author, organisation, and independent coverage ([Wineburg & McGrew, 2019](https://openarchive.stanford.edu/node/2559){rel=""nofollow""}); - **human responsibility for AI-assisted work**: AI can create an illusion of understanding while narrowing questions and viewpoints ([Messeri & Crockett, 2024](https://doi.org/10.1038/s41586-024-07146-0){rel=""nofollow""}); - **draft–feedback–revision as observable research practice**: the 2026 Exposía dataset links student proposals, peer/instructor feedback, revisions, and criterion-level ratings; expert-content criteria remained harder for models to assess ([Zyska et al., 2026](https://arxiv.org/abs/2601.06536){rel=""nofollow""}). These sources do not prescribe one universal method. They justify the course's emphasis on transparency, verification, and visible revision. ## Start here Write your topic in five words. Then open [Module 1](https://www.pengjiaxin.com/01-research-questions-and-planning) and turn those words into a question that a real project can answer. # Accounting — From Evidence to Decisions []{#accounting-from-evidence-to-decisions} Accounting is not a list of rules. It is a disciplined answer to six questions: [[[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[[event]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[evidence]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[record]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6151em;"}[[measurement]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8095em;vertical-align:-0.1944em;"}[[report]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[decision]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} These study notes follow that chain. Read them to understand how the concepts fit together, return to a worked example when a calculation is unclear, and use the further reading to explore a question in more depth. Examples make the reasoning visible; their assumptions also show where a conclusion stops applying. ## The running case: Northstar Cycles Northstar Cycles Ltd. is a fictional UK e-bike business. It: - buys components and manufactures two bicycle models; - sells bikes on cash and credit terms; - bundles bikes with maintenance plans; - develops a customer app; - leases a warehouse and owns production equipment; - prepares external reports under an IFRS teaching baseline; - uses budgets, cost models and investment appraisal internally. All Northstar amounts are in pounds sterling. Tax rates and discount rates are labelled as assumptions. Real-company examples are explicitly identified and never mixed into the fictional dataset. ## What you should be able to do By the end, you should be able to: 1. translate a business event into balanced journal entries; 2. explain why profit, cash and value are different; 3. apply introductory recognition and measurement logic to revenue, inventory, receivables, long-lived assets, leases and tax; 4. connect an adjusted trial balance to the four primary statements; 5. calculate ratios and explain their operational drivers without relying on universal thresholds; 6. use relevant costs, budgets, performance measures and discounted cash flows to support a decision; 7. identify where IFRS, US GAAP, estimates or management-defined measures limit comparability; 8. leave an audit trail from conclusion back to evidence and assumptions. ## Before you begin You need percentages, simple algebra and present-value arithmetic. You do not need prior accounting. For an overview, use [Financial and Management Accounting Foundations](https://www.pengjiaxin.com/foundation/). It connects the main ideas through summaries, a complete adjustments-to-statements example, a monthly cash budget and decision comparisons. Follow the links into the topic chapters wherever you need a fuller derivation or explanation. Use these examples to check your starting point: | Event | First conclusion | Why | | ------------------------------------------------------------------ | ------------------------------------------ | ---------------------------------------------------------------------- | | A customer pays £2,400 now for two years of future service. | Cash rises; revenue may not yet be earned. | Payment and performance occur at different times. | | Equipment is bought for £60,000 cash. | One asset replaces another initially. | Depreciation, not the whole payment, normally enters profit over use. | | Reported profit rises while receivables and inventory rise faster. | Investigate cash conversion. | Growth may consume rather than release cash. | | A special-order price is below full unit cost. | Do not reject it yet. | Unavoidable fixed allocations may be irrelevant when capacity is idle. | If any answer feels surprising, start at [Financial Accounting](https://www.pengjiaxin.com/financial-accounting/). If all four are comfortable, use the chapter checks to move faster. ## Course route | Unit | Question | Main output | | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- | ------------------------------------ | | 1. [Reporting foundations](https://www.pengjiaxin.com/financial-accounting/01-foundations/) | What makes a number useful and supportable? | Event and element analysis | | 2. [Recording transactions](https://www.pengjiaxin.com/financial-accounting/02-recording-transactions/) | How does evidence enter the ledger? | Journal, ledger and trial balance | | 3. [Revenue](https://www.pengjiaxin.com/financial-accounting/03-measurement-adjustments/07-revenue-recognition) | What has the entity actually delivered? | Contract allocation and entry | | 4. [Inventory and receivables](https://www.pengjiaxin.com/financial-accounting/03-measurement-adjustments/) | What amount is recoverable? | Cost-flow and loss estimates | | 5. [Long-lived assets, leases and tax](https://www.pengjiaxin.com/financial-accounting/03-measurement-adjustments/) | Which costs belong now and later? | Carrying amounts and adjustments | | 6. [Statements and cash](https://www.pengjiaxin.com/financial-accounting/04-reporting-cash/) | How do the records become reports? | Linked statements and reconciliation | | 7. [Analysis and comparison](https://www.pengjiaxin.com/financial-accounting/05-analysis-comparison/) | What story do the reports support? | Ratio tree and policy caveats | | 8. [Cost foundations](https://www.pengjiaxin.com/management-accounting/01-cost-foundations/) | What causes cost? | Cost model and product cost | | 9. [CVP and budgets](https://www.pengjiaxin.com/management-accounting/02-planning-control/) | What should happen at a chosen activity level? | Scenario and flexible budget | | 10. [Control and performance](https://www.pengjiaxin.com/management-accounting/02-planning-control/) | Did results improve for the right reason? | Variance and KPI diagnosis | | 11. [Short-term decisions](https://www.pengjiaxin.com/management-accounting/03-decisions-investment/22-short-term-decisions) | Which future cash flows differ? | Incremental decision table | | 12. [Capital investment](https://www.pengjiaxin.com/management-accounting/03-decisions-investment/23-capital-budgeting) | Does the project create value? | NPV and sensitivity analysis | | Capstone | [Can you defend the whole chain?](https://www.pengjiaxin.com/capstone/) | Record-to-report-to-decision memo | ## A repeatable study method On a first reading, identify the question, the central relationship and the assumptions behind it. Follow a worked example and explain why each step is needed. On a later reading, cover the solution, reproduce the reasoning and change one assumption to see which conclusions survive. Keep a short note of the distinction that matters most: cash versus profit, a balance versus a movement, or a total cost versus a relevant cost. Use the linked topic pages to pursue that distinction beyond the example. Exercises are opportunities to check understanding; you can revisit them whenever you need them. Screen-reader users can rely on the tables and text explanations; charts are supplementary. Interactive cells are optional and have worked static examples beside them. ## Three boundaries that prevent weak answers ### 1. Bookkeeping is not recognition A balanced entry can still represent the wrong event or period. First decide what happened; then decide how to record it. ### 2. Standards are not estimates A standard may require an expected-loss estimate, but it does not supply Northstar’s probability or forecast. State the rule, the evidence and the estimate separately. ### 3. Accounting is not valuation Financial statements provide inputs to decisions. They do not automatically equal market value, replacement value or project value. ## Evidence hierarchy This course uses sources in the following order: 1. IFRS Foundation and FASB material for reporting requirements and current projects; 2. regulator filings and company annual reports for real disclosures; 3. peer-reviewed research for explanatory and empirical insight; 4. clearly labelled working papers for emerging questions. The [reading and evidence map](https://www.pengjiaxin.com/appendix/27-reading-map) records why each source is included. It is a selective teaching map, not a systematic or PRISMA review. ## Current reporting window The course was source-checked on **1 August 2026**. - [IFRS 18](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-18-presentation-and-disclosure-in-financial-statements/){rel=""nofollow""} replaces IAS 1 for annual periods beginning on or after 1 January 2027; future-effective content is labelled. - The IASB concluded in July 2026 that [IFRS 16 is overall working as intended](https://www.ifrs.org/projects/work-plan/post-implementation-review-of-ifrs-16-leases/){rel=""nofollow""}, while identifying targeted cost and application work. - The IASB is actively reviewing [IAS 38 and newer forms of intangibles](https://www.ifrs.org/projects/work-plan/intangible-assets/){rel=""nofollow""}. - FASB’s [expense-disaggregation update](https://fasb.org/page/PageContent?pageId=%2Fprojects%2Frecently-completed-projects%2Fdisaggregation-income-statement-expenses.html){rel=""nofollow""} applies to US public business entities from specified periods beginning after 15 December 2026. - Structured reports matter: the IFRS Foundation says the [2025 Accounting Taxonomy remains current for 2026 reporting](https://www.ifrs.org/news-and-events/news/2026/02/ifrs-accounting-taxonomy-2025-to-remain-current-for-2026/){rel=""nofollow""}. These developments change presentation, disclosure and data use; they do not remove the need to understand the underlying event and entry. ## Choose your next page - New to accounting: [Objectives and qualitative characteristics](https://www.pengjiaxin.com/financial-accounting/01-foundations/01-objectives-qualitative-characteristics) - Comfortable with statements, learning internal decisions: [Management Accounting](https://www.pengjiaxin.com/management-accounting/) - Revising or checking terminology: [Accounting Appendix](https://www.pengjiaxin.com/appendix/) - Ready to integrate: [Northstar capstone](https://www.pengjiaxin.com/capstone/) # Worked Examples and Error Diagnosis []{#worked-examples-and-error-diagnosis} When an answer is wrong, “practise more” is not a diagnosis. Locate the failed stage: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[fact]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[rule]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[calculation]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8095em;vertical-align:-0.1944em;"}[[entry]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8095em;vertical-align:-0.1944em;"}[[report]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[decision]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Diagnostic table | Symptom | Likely failure | Repair question | | ---------------------------------------- | ------------------------------------- | -------------------------------------------------- | | Debits do not equal credits | Entry mechanics | Is a line missing or reversed? | | Trial balance agrees but profit is wrong | Classification, omission or cut-off | Was the right event and period recorded? | | Ratio is correct but conclusion is weak | Comparison or causal reasoning | What benchmark, driver and note support the claim? | | Decision includes every ledger cost | Relevance | Which future cash flows actually differ? | | NPV changes dramatically | Forecast or discount-rate sensitivity | Which assumption has least evidence? | ## Example 1: cash is not revenue Northstar receives £24,000 on 1 December for twelve monthly services beginning immediately. A student records all £24,000 revenue. **Repair** - Fact: one month is delivered by 31 December. - Rule: revenue follows performance. - Calculation: £24,000 / 12 = £2,000 earned. - Entry at receipt: Dr cash £24,000; Cr contract liability £24,000. - Adjustment: Dr contract liability £2,000; Cr revenue £2,000. - Report: closing contract liability £22,000. The error began at the fact-to-rule stage, not the debit/credit stage. ## Example 2: lower unit cost can hide overproduction Fixed factory overhead is £120,000. | Production | Fixed overhead per unit | Units sold | Fixed overhead deferred if no opening stock | | ---------- | ----------------------: | ---------: | ------------------------------------------: | | 1,000 | £120 | 1,000 | £0 | | 1,500 | £80 | 1,000 | 500 × £80 = £40,000 | Producing 500 unwanted units makes absorption profit look higher by deferring £40,000, but: - total fixed spending did not fall; - cash is tied up in inventory; - storage and obsolescence risk rise. The calculation is correct; the performance interpretation is wrong. ## Example 3: a ratio needs a denominator audit Receivable days rise from 35 to 50. Before blaming collections, check: 1. Was credit sales used in both periods? 2. Were average receivables used? 3. Did a year-end acquisition add receivables but little annual sales? 4. Did sales mix or payment terms change? 5. Does the aging report confirm slower collection? One ratio is a signal, not a verdict. ## Example 4: allocated cost is not avoidable cost A product shows: - contribution £90,000; - traceable fixed cost £60,000, of which £45,000 is avoidable; - allocated head-office cost £40,000 that remains. Reported segment result is a £10,000 loss, but dropping it: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[profit change]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£45]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[ ]{.mspace}[[saved]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£90]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[ ]{.mspace}[[lost]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[−]{.mord}[£45]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The product should not be dropped on these numbers alone. ## Final answer checklist - Did I describe the event before naming accounts? - Did I state framework, period and assumptions? - Does every calculation reconcile? - Did I separate profit, cash and value? - Did I distinguish estimate from rule? - Did I explain what evidence would reverse my conclusion? [Next: Glossary](https://www.pengjiaxin.com/26-glossary) # Accounting Glossary []{#accounting-glossary} Use a definition to re-enter a worked example, not as a substitute for one. ## Financial reporting | Term | Working definition | | ----------------- | --------------------------------------------------------------------------------------------------- | | Asset | A present economic resource controlled by the entity as a result of past events | | Economic resource | A right that has the potential to produce economic benefits | | Liability | A present obligation to transfer an economic resource as a result of past events | | Equity | Residual interest in assets after deducting liabilities | | Income | Increases in assets or decreases in liabilities that increase equity, excluding owner contributions | | Expense | Decreases in assets or increases in liabilities that decrease equity, excluding owner distributions | | Accrual basis | Recognition of economic effects in the periods in which they occur, not merely when cash moves | | Carrying amount | Amount at which an asset or liability is recognised after applicable adjustments | | Materiality | Entity-specific aspect of relevance based on whether information could influence decisions | | Prudence | Caution under uncertainty that supports neutral judgement | ## Recording and adjustment | Term | Working definition | | ------------------ | -------------------------------------------------------------------------- | | Debit / credit | Left / right recording directions whose effect depends on account type | | Journal | Chronological record of entries | | Ledger | Record of transactions and balance by account | | Trial balance | List of ledger balances used to test debit-credit equality | | Accrued expense | Expense recognised before related cash payment | | Prepayment | Payment recognised as an asset until benefit is consumed | | Contract liability | Obligation to transfer goods or services for consideration received or due | | Receivable | Unconditional right to consideration except for passage of time | | Contract asset | Conditional right to consideration for transferred goods or services | | Loss allowance | Contra-asset estimate of expected credit losses | ## Measurement | Term | Working definition | | ------------------------------ | ------------------------------------------------------------------------------------------------- | | Cost of sales | Carrying amount of inventory recognised as expense when related goods are sold | | Net realisable value | Estimated ordinary-course selling price less completion and necessary selling costs | | Depreciation | Systematic allocation of a tangible asset’s depreciable amount | | Amortisation | Systematic allocation of a finite-life intangible asset’s depreciable amount | | Impairment | Reduction when an asset’s carrying amount exceeds the applicable recoverable measure | | Right-of-use asset | Lessee’s right to use an underlying asset during the lease term | | Lease liability | Present obligation for lease payments included in measurement | | Tax base | Amount attributed to an asset or liability for tax purposes | | Temporary difference | Difference between carrying amount and tax base | | Deferred tax asset / liability | Recognised future tax consequence of deductible / taxable differences and specified carryforwards | ## Analysis and decisions | Term | Working definition | | ------------------- | ----------------------------------------------------------------------------------- | | Contribution margin | Revenue less variable costs for the defined model | | Relevant cost | Future cost that differs between alternatives | | Sunk cost | Past cost that the current decision cannot change | | Opportunity cost | Benefit sacrificed by choosing one alternative | | Break-even | Activity at which modelled profit is zero | | Flexible budget | Budget recalculated for actual activity using budgeted inputs | | ROI | Defined operating return divided by defined operating assets | | Residual income | Operating income less a capital charge | | NPV | Present value of incremental project cash flows | | IRR | Discount rate at which project NPV equals zero, when a meaningful root exists | | Free cash flow | A management-defined cash measure that must be explicitly calculated and reconciled | ## Common pairs | Do not confuse | Difference | | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------- | | Profit / cash | Accrual performance / cash movement | | Cost / expense | Resource sacrifice / amount recognised against the period | | Provision / reserve | Recognised liability under applicable criteria / an imprecise term that may refer to equity or valuation amounts | | Estimate change / error | New information applied prospectively / correction of an incorrect prior treatment | | Favourable variance / good outcome | Arithmetic direction / overall operational judgement | [Next: Reading and Evidence Map](https://www.pengjiaxin.com/27-reading-map) # Reading and Evidence Map []{#reading-and-evidence-map} ## Scope and method This is a **selective pedagogic evidence map**, source-checked on 1 August 2026. It is not a systematic review and makes no PRISMA coverage claim. Sources were included when they: - directly support a course concept or current example; - come from a standard setter, regulator, company filing or identifiable scholarly publication; - have verifiable title, date and stable link or DOI; - add a distinct insight rather than repeat a textbook summary. Vendor blogs and unverified citation lists were excluded. Emerging studies are labelled by design and maturity. ## Primary reporting sources | Source | Use in the course | Evidence status | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------ | ----------------------------------------------------------------- | | [IFRS Conceptual Framework](https://www.ifrs.org/issued-standards/list-of-standards/conceptual-framework/){rel=""nofollow""} | Objective, elements, qualitative characteristics | Authoritative conceptual framework; not itself a Standard | | [IFRS 15](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-15-revenue-from-contracts-with-customers/){rel=""nofollow""} and [FASB Topic 606](https://fasb.org/projects/recently-completed-projects/revenue-recognition-summary){rel=""nofollow""} | Contract revenue | Current standard-setting material | | [IAS 2](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/){rel=""nofollow""} | Cost formulas and NRV | Current IFRS standard summary | | [IFRS 9](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-9-financial-instruments/){rel=""nofollow""} and [FASB Topic 326](https://fasb.org/projects/recently-completed-projects/accounting-standards-update-2016-13-financial-instrument-credit-losses){rel=""nofollow""} | Expected credit losses | Current frameworks | | [IAS 16](https://www.ifrs.org/issued-standards/list-of-standards/ias-16-property-plant-and-equipment/){rel=""nofollow""} | PPE and components | Current IFRS material | | [IAS 38](https://www.ifrs.org/issued-standards/list-of-standards/ias-38-intangible-assets/){rel=""nofollow""} | Internal development and useful lives | Current IFRS material | | [IFRS 16](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-16-leases/){rel=""nofollow""} and its [2026 post-implementation review](https://www.ifrs.org/projects/work-plan/post-implementation-review-of-ifrs-16-leases/){rel=""nofollow""} | Lease mechanics and current status | Current standard plus completed review decisions awaiting summary | | [IAS 12](https://www.ifrs.org/issued-standards/list-of-standards/ias-12-income-taxes/){rel=""nofollow""} | Current/deferred tax | Current IFRS material | | [IAS 7](https://www.ifrs.org/issued-standards/list-of-standards/ias-7-statement-of-cash-flows/){rel=""nofollow""} | Cash flow and cash equivalents | Current IFRS material | | [IFRS 18](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-18-presentation-and-disclosure-in-financial-statements/){rel=""nofollow""} | Future presentation and MPM disclosures | Issued; effective from 2027 periods | | [FASB expense disaggregation](https://fasb.org/page/PageContent?pageId=%2Fprojects%2Frecently-completed-projects%2Fdisaggregation-income-statement-expenses.html){rel=""nofollow""} | Current US presentation development | Issued; future effective dates | ## Real-report cases | Report | Teaching use | Boundary | | -------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------- | | [Microsoft 2025 Annual Report](https://www.microsoft.com/investor/reports/ar25/index.html){rel=""nofollow""} | Remaining performance obligations and material lease commitments | US GAAP; company-specific estimates | | [Unilever 2025 Annual Report](https://www.unilever.com/files/unilever-annual-report-and-accounts-2025.pdf){rel=""nofollow""} | IFRS 18 preparation, currency/portfolio growth bridge, non-GAAP reconciliation | IFRS/UK reporting; 2025 facts | | [Target 2025 Form 10-K](https://www.sec.gov/Archives/edgar/data/27419/000002741926000016/tgt-20260131.htm){rel=""nofollow""} | Inventory, reserves and vendor consideration | US GAAP retailer; fiscal-year labels require care | Real reports illustrate disclosure questions. They do not supply universal ratios or policies for Northstar. ## Foundational research | Study | Why read it | Design / caution | | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | ----------------------------------------------------------- | | Dechow, Ge & Schrand (2010), [Understanding earnings quality](https://doi.org/10.1016/j.jacceco.2010.09.001){rel=""nofollow""} | Shows why earnings quality depends on the decision and proxy | Scholarly review; not a standard | | Sloan (1996), [Accruals, cash flows and future earnings](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2598){rel=""nofollow""} | Motivates separating accrual and cash components | Archival capital-markets study; context matters | | Kaplan & Anderson (2004), [Time-Driven Activity-Based Costing](https://www.hbs.edu/faculty/Pages/item.aspx?num=15805){rel=""nofollow""} | Capacity cost rates, time equations and unused capacity | Foundational working paper/practice model | | Kaplan & Norton (1992), [The Balanced Scorecard](https://hbr.org/1992/01/the-balanced-scorecard-measures-that-drive-performance-2){rel=""nofollow""} | Connects non-financial drivers with financial outcomes | Influential practitioner article; causal links need testing | ## Current research frontier | Study | Course question | Evidence maturity | | -------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- | ---------------------------------------------------------------------------------------- | | Sundström (2024), [AI in management control](https://doi.org/10.1016/j.cpa.2023.102701){rel=""nofollow""} | How might AI change control forms and infrastructure? | Conceptual/research agenda; verify local controls before application | | Rautiainen et al. (2024), [Towards fluid role identity of management accountants](https://doi.org/10.1016/j.bar.2024.101341){rel=""nofollow""} | How do controllers combine business-partner and IT roles? | Single Finnish-bank case; analytically useful, not universal | | Abbas (2026), [Management accounting and AI](https://doi.org/10.1016/j.bar.2025.101551){rel=""nofollow""} | What does the literature say about digitalisation and AI? | Peer-reviewed review of 91 articles; field still developing | | Choi & Xie (2026), [Human + AI in Accounting](https://doi.org/10.1111/1475-679x.70052){rel=""nofollow""} | Which accounting tasks are being integrated with GenAI? | Survey, proprietary field data and a framed experiment; avoid broad causal extrapolation | The frontier readings explain why data lineage, review and role design now belong in accounting education. They do not replace transaction evidence or professional responsibility. ## How to cite a claim Use the nearest appropriate layer: - “IFRS 18 is effective from 2027” → IFRS Foundation. - “Microsoft disclosed £X of commitments” → Microsoft report. - “A study found a task-level association” → the paper, with design and limit. - “Northstar’s discount rate is 10%” → course assumption, not a citation. [Return to the course roadmap](https://www.pengjiaxin.com/../00-index). # Accounting Appendix []{#accounting-appendix} Use these pages after completing the relevant chapter: | Page | Purpose | | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | | [Worked Examples and Error Diagnosis](https://www.pengjiaxin.com/24-examples-pitfalls) | Identify why an answer failed and repair the reasoning chain | | [Glossary](https://www.pengjiaxin.com/26-glossary) | Retrieve a precise definition, then return to its worked example | | [Reading and Evidence Map](https://www.pengjiaxin.com/27-reading-map) | Distinguish standards, real reports, classic research and current studies | For a complete assessment, use the [Northstar Capstone](https://www.pengjiaxin.com/../capstone/). [Return to the course roadmap](https://www.pengjiaxin.com/../00-index). # Northstar Record-to-Decision Capstone []{#northstar-record-to-decision-capstone} This case tests the whole chain. Amounts are in £000 unless stated. ## Opening balances | Debit | £000 | Credit | £000 | | ----------------- | ------: | ------------------------ | ------: | | Cash | 80 | Accumulated depreciation | 60 | | Trade receivables | 50 | Trade payables | 55 | | Inventory | 70 | Bank loan | 100 | | PPE at cost | 240 | Share capital | 100 | | | | Retained earnings | 125 | | **Total** | **440** | **Total** | **440** | ## Unadjusted events 1. Purchase inventory on credit for 360. 2. Make cash sales of 250 and credit sales of 300. Related inventory cost is 330. 3. Collect 270 from customers. 4. Pay 330 to suppliers. 5. Pay wages of 90 and other operating costs of 30; both relate to this year. 6. Receive 26.4 for a bike-and-maintenance bundle. Stand-alone prices are 24 for the bike and 6 for 24 months of maintenance. The bike is delivered immediately; three months of maintenance are completed by year-end. Related bike inventory cost is 12. 7. Buy PPE for 80 cash. 8. Receive a new bank loan of 40. 9. Pay dividends of 10. 10. At the start of the year, recognise a three-year lease with an initial right-of-use asset and liability of 64.152. At year-end pay 24, comprising interest 3.849 and principal 20.151. ## Year-end adjustments - PPE depreciation: 30. - Right-of-use depreciation: 21.384. - Gross receivables require a 3.2 expected-credit-loss allowance; there is no opening allowance in this condensed case. - Inventory requires a 2 write-down. - Wages of 5 are accrued. - Current tax payable is 18 and the net deferred-tax liability increase is 2; both tax effects enter profit or loss under the supplied facts. ## Required work ### A. Record Prepare journals for all events. For each, add a one-line business explanation and source document you would expect. ### B. Adjust Prepare the year-end entries and an adjusted trial balance. Identify which amounts are direct, calculated or estimated. ### C. Report Prepare: - statement of profit or loss; - statement of changes in equity; - statement of financial position; - condensed cash-flow statement. For cash flows, classify lease interest as operating and lease principal as financing for this teaching case. ### D. Analyse Calculate and interpret: - gross and operating margin; - current and quick ratio after classifying the next lease payment; - receivable and inventory observations; - operating cash flow versus profit; - one accounting-policy or estimate risk. Do not invent a trend without comparative data. ### E. Decide A customer offers 430 per Cargo bike for 200 bikes: - variable production cost: 340 per bike; - special packaging: 15 per bike; - order needs 400 machine hours; - 300 hours are idle; - the last 100 hours displace City production earning 120 contribution per machine hour; - fixed spending is unchanged. Prepare an incremental table, recommend accept/reject and name two non-financial constraints. ## Check figures Use these only after completing your work. Minor rounding differences are acceptable. ::legacy-spoiler{title="Adjusted check figures"} | Item | £000 | | ----------------------------------------------- | -------: | | Revenue | 571.780 | | Profit for the year | 24.347 | | Closing cash | 102.400 | | Net receivables | 76.800 | | Inventory | 86.000 | | PPE, net | 230.000 | | Right-of-use asset, net | 42.768 | | Contract liability | 4.620 | | Lease liability | 44.001 | | Total assets | 537.968 | | Total liabilities | 298.621 | | Total equity | 239.347 | | Operating cash flow under stated classification | 92.551 | | Investing cash flow | (80.000) | | Financing cash flow | 9.849 | Special order: revenue 86; variable production 68; packaging 3; opportunity cost 12; incremental benefit 3. The numerical screen says accept, subject to constraints. :: ## Assessment guide | Dimension | Weight | Strong evidence | | ----------------------------- | -----: | ------------------------------------------------------- | | Event and source analysis | 15% | Facts, documents and account types are explicit | | Journals and trial balance | 20% | Complete, balanced and narrated | | Measurement and adjustments | 20% | Calculations, estimates and framework logic separated | | Linked statements | 20% | Profit, equity, cash and position reconcile | | Analysis | 10% | Ratios have drivers, caveats and no invented thresholds | | Decision | 10% | Opportunity cost and constraints are included | | Communication and audit trail | 5% | Another reader can reproduce the conclusion | ## Postgraduate extension Add a two-page technical appendix that: 1. identifies which capstone conclusions could differ under US GAAP; 2. sketches an IFRS 18 presentation for a 2027 period; 3. sensitises the special-order result to lost normal contribution and defect rates; 4. distinguishes evidence available at year-end from hindsight. [Review the evidence map](https://www.pengjiaxin.com/../appendix/27-reading-map) or [return to the roadmap](https://www.pengjiaxin.com/../00-index). # Objectives and Qualitative Characteristics []{#objectives-and-qualitative-characteristics} ## The question What makes an accounting number worth reporting? General-purpose financial reporting helps existing and potential investors, lenders and other creditors make resource-allocation decisions. A useful number is not merely precise; it must represent something relevant to that decision. ## Northstar case: orders are not automatically revenue At year-end Northstar reports: | Fact | Amount | | ---------------------------- | ---------: | | Customer orders signed | £1,200,000 | | Bikes delivered and accepted | £900,000 | | Cash collected | £700,000 | Which amount is revenue? The three figures answer different questions: - £1.2m measures contracted demand, subject to contract terms and cancellation rights. - £900k measures the value of bikes transferred in this simplified fact pattern. - £700k measures cash collected. Revenue is not chosen because it is the largest, the most certain or the cash figure. It follows the applicable recognition requirements and the underlying transfer. Here, £900k is the starting conclusion; [Revenue Recognition](https://www.pengjiaxin.com/../03-measurement-adjustments/07-revenue-recognition) tests it fully. ## The usefulness test | Characteristic | Practical question | Failure example | | ----------------------- | -------------------------------------------------------------- | ------------------------------------------------------------------- | | Relevance | Could this information change a decision? | Reporting a trivial detail while hiding a major warranty exposure | | Faithful representation | Is the account complete, neutral and free from material error? | Calling refundable customer deposits sales | | Comparability | Can users identify similarities and differences? | Changing a cost formula without explaining the effect | | Verifiability | Can informed observers follow the evidence and method? | An allowance with no aging data or assumptions | | Timeliness | Is it available before the decision loses value? | A perfect report delivered too late | | Understandability | Is it classified and explained clearly? | Combining debt, customer deposits and trade payables without reason | Relevance and faithful representation are fundamental. The other qualities improve usefulness; they cannot rescue irrelevant or misleading information. ## Materiality and prudence **Materiality is entity-specific.** Ask whether omission, misstatement or obscuring could reasonably influence users. A fixed percentage can be a screening device, not the final judgement. **Prudence is cautious judgement under uncertainty.** It supports neutrality; it does not permit hidden reserves or deliberate understatement. Example: Northstar estimates warranty claims. - Ignoring credible claim data overstates profit. - choosing an implausibly pessimistic rate understates profit; - documenting product history, current defects and a probability-weighted estimate supports neutrality. ## Recognition is a separate step Meeting the definition of an asset or liability does not mean every uncertain item must be recognised at any amount. Ask: 1. What economic resource or obligation exists? 2. Would recognition provide relevant information? 3. Can it be faithfully represented, including its uncertainty? 4. Would disclosure be more informative than a misleading point estimate? ## One-minute check Northstar’s app has 80,000 downloads. Is “80,000 users” an accounting asset? ::legacy-spoiler{title="Answer"} It may be operationally relevant, but a metric is not automatically a recognised asset. Northstar must identify a controlled economic resource and satisfy the applicable recognition and measurement requirements. The download count may instead support forecasts or disclosures. :: ## Source - [IFRS Conceptual Framework for Financial Reporting](https://www.ifrs.org/issued-standards/list-of-standards/conceptual-framework/){rel=""nofollow""} [Next: Equation and Elements](https://www.pengjiaxin.com/02-equation-elements) # Equation and Elements []{#equation-and-elements} ## The model [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[Assets]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[[Liabilities]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Equity]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The equation is a description of claims on resources, not a debit-and-credit mnemonic. | Element | Plain-language question | Northstar example | | --------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------ | | Asset | What present economic resource does Northstar control? | Cash, receivables, inventory, equipment | | Liability | What present obligation must Northstar transfer? | Supplier payable, loan, contract liability | | Equity | What residual remains after liabilities? | Share capital and retained earnings | | Income | What increase in assets or decrease in liabilities raises equity, excluding owner contributions? | Revenue from delivered bikes | | Expense | What decrease in assets or increase in liabilities lowers equity, excluding distributions? | Components consumed, wages, depreciation | ## Five events, one equation Northstar begins operations: | Event | Assets | Liabilities | Equity | | ----------------------------------------------------------------- | -----------------------------: | ---------------: | ------------------------------: | | Owners contribute £100,000 cash | +100,000 | — | +100,000 | | Bank lends £60,000 | +60,000 | +60,000 | — | | Equipment bought for £70,000 cash | Cash −70,000; PPE +70,000 | — | — | | Components bought on credit for £24,000 | Inventory +24,000 | Payables +24,000 | — | | Components costing £8,000 are used in bikes sold for £15,000 cash | Cash +15,000; inventory −8,000 | — | Revenue +15,000; expense −8,000 | Closing totals: | Assets | £ | Claims | £ | | --------- | ----------: | --------------------- | ----------: | | Cash | 105,000 | Bank loan | 60,000 | | Inventory | 16,000 | Trade payables | 24,000 | | Equipment | 70,000 | Equity: contributions | 100,000 | | | | Equity: profit | 7,000 | | **Total** | **191,000** | **Total** | **191,000** | The £7,000 profit is £15,000 revenue less £8,000 expense. Owner contributions are not revenue; borrowing is not revenue; equipment purchase is not immediately a £70,000 expense. ## Why balance is necessary but insufficient This wrong entry balances: ```text Dr Equipment expense £70,000 Cr Cash £70,000 ``` It misclassifies an asset purchase as an immediate expense. The equation still balances because expense reduces equity. Arithmetic control cannot replace economic analysis. ## A reliable event test 1. Name the resource, obligation or owner claim. 2. State whether it increased or decreased. 3. Separate owner transactions from income and expenses. 4. Check the period. 5. Only then assign debit and credit. ## Reverse inference If receivables rise by £20,000, possible causes include credit sales, acquisition of a receivable or a reclassification. It does **not** prove revenue rose by £20,000. Accounting analysis moves both from events to statements and from statement changes back to plausible events. ## Quick check Northstar receives £12,000 from a customer for maintenance next year. Complete the equation effect at receipt. ::legacy-spoiler{title="Answer"} Cash, an asset, rises £12,000. A contract liability rises £12,000 because Northstar still owes service. Equity does not yet change. :: ## Source - [IFRS Conceptual Framework for Financial Reporting](https://www.ifrs.org/issued-standards/list-of-standards/conceptual-framework/){rel=""nofollow""} [Next: Accounting Bases and Principles](https://www.pengjiaxin.com/03-accounting-bases-principles) # Accrual Basis, Estimates and Periods []{#accrual-basis-estimates-and-periods} ## Cash answers when; accrual answers what period During December, Northstar: | Event | Cash in December | December accrual effect | | ------------------------------------------------------------------- | ---------------: | -------------------------------------------------: | | Receives £24,000 for maintenance from January to December next year | +24,000 | Contract liability +24,000; no service revenue yet | | Uses electricity estimated at £3,200, billed in January | — | Expense +3,200; accrued liability +3,200 | | Pays £12,000 for insurance covering December–November | −12,000 | December expense £1,000; prepayment £11,000 | | Uses production equipment; monthly depreciation is £2,500 | — | Expense +2,500; accumulated depreciation +2,500 | Together, these four events result in December cash flow of +£12,000 and a profit effect of −£6,700. Neither figure is “more true”: one records cash movements, while the other reflects the period's income and expenses. ## The four common timing patterns | Cash timing | Economic activity | Initial account | Later entry | | ------------------------- | ----------------- | ---------------------------- | --------------------------- | | Cash first, expense later | Prepayment | Asset | Dr expense; Cr prepayment | | Expense first, cash later | Accrual | Liability | Settle liability when paid | | Cash first, revenue later | Customer advance | Contract liability | Dr liability; Cr revenue | | Revenue first, cash later | Credit sale | Receivable or contract asset | Collect or reclassify later | ## Work from the required closing balance For the £12,000 insurance payment above, assume the original entry was Dr Prepayment; Cr Cash. At 31 December, 11 of the 12 covered months remain, so the asset must be £11,000. The adjustment is the **difference** between the recorded £12,000 asset and that required balance: | Stage | Entry | What it means | | ------------------- | ------------------------------------------------- | ----------------------------------------- | | December payment | Dr Prepayment £12,000; Cr Cash £12,000 | Buy future cover | | December adjustment | Dr Insurance expense £1,000; Cr Prepayment £1,000 | Recognise one month consumed | | Following January | Dr Insurance expense £1,000; Cr Prepayment £1,000 | Consume the next month; no second payment | If the payment had initially been recorded entirely as expense, the December adjustment would instead be Dr Prepayment £11,000; Cr Insurance expense £11,000. Both routes end with the same £1,000 expense and £11,000 asset. Always inspect the unadjusted account before choosing the adjustment amount. For electricity, the expense comes before the payment: Dr Electricity expense £3,200; Cr Accrued expenses £3,200. If the January invoice matches the estimate, payment clears the liability without recording the December expense again. If the amount differs, investigate the estimate and the period it relates to before deciding how to record the difference. ## Matching without the myth Students often learn “match costs to revenue.” That is useful shorthand, but it is not permission to create an asset merely to smooth profit. Under the Conceptual Framework, expense recognition follows changes in assets and liabilities. Example: - Cost of a delivered bike leaves inventory and becomes cost of sales because the inventory resource is consumed. - An advertising campaign is not carried forward merely because managers expect future sales; it must satisfy the relevant asset requirements. ## Estimates are part of accrual accounting Calculating depreciation, expected credit losses, warranty provisions and net realisable value requires estimates. To make an estimate that others can assess, state: 1. the measurement objective; 2. the evidence available at the reporting date; 3. the method and assumptions; 4. sensitivity to reasonable alternatives; 5. what changed since the prior estimate. A new estimate based on new information is normally applied prospectively. Correcting a prior error is a different issue. ## Period-end checklist Ask whether Northstar has: - delivered goods or services not yet invoiced; - received goods or services not yet billed; - paid or received cash for future periods; - consumed long-lived assets; - experienced loss indicators or changed estimates; - omitted cut-off items near the reporting date. ## Quick check Northstar pays £36,000 on 1 October for 12 months of rent. What appears at 31 December? ::legacy-spoiler{title="Answer"} Three months of rent have been used, giving an expense of £9,000. The remaining nine months are a prepayment of £27,000. Cash fell by £36,000 when the payment was made. :: ## Source - [IFRS Conceptual Framework for Financial Reporting](https://www.ifrs.org/issued-standards/list-of-standards/conceptual-framework/){rel=""nofollow""} [Next: Recording Transactions](https://www.pengjiaxin.com/../02-recording-transactions/) # 1. Foundations []{#_1-foundations} Before recording a number, decide what it represents. | Chapter | Case question | Output | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------ | ------------------------- | | [Objectives and qualitative characteristics](https://www.pengjiaxin.com/01-objectives-qualitative-characteristics) | Is Northstar’s order book revenue? | Decision-usefulness test | | [Equation and elements](https://www.pengjiaxin.com/02-equation-elements) | What changed in five start-up events? | Transaction-effects table | | [Accounting bases and principles](https://www.pengjiaxin.com/03-accounting-bases-principles) | Which December amounts belong in December? | Accrual adjustments | ## Preparation Be able to distinguish: - a resource from an expense; - an obligation from a future intention; - owner financing from revenue; - cash timing from performance timing. ## Mastery check You are ready for recording when you can explain why an equation may balance even though the accounts or period are wrong. [Continue to objectives and qualitative characteristics](https://www.pengjiaxin.com/01-objectives-qualitative-characteristics). # Double-Entry and Debit/Credit []{#double-entry-and-debitcredit} Debit and credit mean left and right in the recording system. They do not mean good and bad. | Account type | Increase | Decrease | Usual balance | | ----------------------- | -------- | -------- | ------------- | | Asset | Debit | Credit | Debit | | Expense or distribution | Debit | Credit | Debit | | Liability | Credit | Debit | Credit | | Equity or income | Credit | Debit | Credit | ## The four-step method 1. Describe the event without accounting vocabulary. 2. Identify each account and its type. 3. Decide whether each account increases or decreases. 4. Apply debit/credit and verify equal totals. ## Northstar’s first week These selected transactions use a **perpetual inventory system**: purchases increase Inventory and each sale also transfers the goods' cost to Cost of sales. The £4,000 customer collection relates to an opening receivable; the list is not a complete set of opening balances. | No. | Business event | Debit | Credit | | --: | ------------------------------------------------ | -------------------- | ----------------------- | | 1 | Owners contribute £100,000 cash | Cash 100,000 | Share capital 100,000 | | 2 | Bank advances a £60,000 loan | Cash 60,000 | Bank loan 60,000 | | 3 | Equipment bought for £70,000 cash | PPE 70,000 | Cash 70,000 | | 4 | Components bought on credit for £24,000 | Inventory 24,000 | Trade payables 24,000 | | 5a | Bikes sold for £15,000 cash | Cash 15,000 | Revenue 15,000 | | 5b | Components in those bikes cost £8,000 | Cost of sales 8,000 | Inventory 8,000 | | 6 | £5,000 paid to suppliers | Trade payables 5,000 | Cash 5,000 | | 7 | £4,000 collected from an earlier credit customer | Cash 4,000 | Trade receivables 4,000 | Events 5a and 5b record the two sides of a sale: the amount received from the customer and the cost of the inventory consumed. Recording the sale in full therefore requires more than one entry. ## A T-account answers “what is the balance?” Northstar’s cash ledger is: | Debit entries | £ | Credit entries | £ | | --------------------- | ----------: | ---------------- | ---------: | | Owner contribution | 100,000 | Equipment | 70,000 | | Loan | 60,000 | Supplier payment | 5,000 | | Cash sale | 15,000 | | | | Receivable collection | 4,000 | | | | **Total** | **179,000** | **Total** | **75,000** | These entries increase cash by £104,000. With zero opening cash, closing cash is a £104,000 debit balance; otherwise add the opening balance. A ledger balance includes the opening position as well as the period's entries. ### Why the inventory convention matters Under a periodic system, purchases go to Purchases during the period and cost of sales is calculated at period-end using opening inventory, net purchases and counted closing inventory. Do not also post entry 5b for each sale under that convention: mixing the two systems can count the same cost twice. Compare the complete [periodic-inventory case](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements) after finishing this chapter. ## Three entries students commonly misread ### Collect a receivable ```text Dr Cash £4,000 Cr Trade receivables £4,000 ``` The sale was recognised earlier, so collecting the receivable creates no new revenue. ### Receive a customer advance ```text Dr Cash £12,000 Cr Contract liability £12,000 ``` The business has received cash but still owes the customer the promised goods or services. ### Repay loan principal ```text Dr Bank loan £5,000 Cr Cash £5,000 ``` Repaying principal reduces the loan liability rather than creating an expense. Interest is recorded separately. ## Error test Equal debits and credits do not establish that an entry is correct. Check its meaning as well as its arithmetic: - Do the account names describe the event? - Is the period correct? - Is an estimate or second entry missing? - Does the narration point to source evidence? ## Quick check Northstar receives a £10,000 supplier invoice for components already delivered, then pays it next month. Give both entries. ::legacy-spoiler{title="Answer"} On receipt: Dr Inventory £10,000; Cr Trade payables £10,000. On payment: Dr Trade payables £10,000; Cr Cash £10,000. :: [Next: Accounting Cycle](https://www.pengjiaxin.com/05-accounting-cycle) # Accounting Cycle []{#accounting-cycle} ## The cycle is an evidence pipeline :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsiU291cmNlIGRvY3VtZW50cyJdIC0tPiBCWyJKb3VybmFsIl0KICBCIC0tPiBDWyJMZWRnZXIiXQogIEMgLS0+IERbIlVuYWRqdXN0ZWQgdHJpYWwgYmFsYW5jZSJdCiAgRCAtLT4gRVsiQWRqdXN0bWVudHMiXQogIEUgLS0+IEZbIkFkanVzdGVkIHRyaWFsIGJhbGFuY2UiXQogIEYgLS0+IEdbIlN0YXRlbWVudHMiXQogIEcgLS0+IEhbIkNsb3NlIHRlbXBvcmFyeSBhY2NvdW50cyJd" locale="en"} Each stage answers a different control question: | Stage | Control question | | ------------- | ---------------------------------------------------------------- | | Source | Did an authorised event occur, and what are its terms? | | Journal | Was the event classified and dated correctly? | | Ledger | What is the balance and transaction history by account? | | Trial balance | Are debit and credit totals arithmetically equal? | | Adjustment | What is incomplete, estimated or in the wrong period? | | Statements | Are balances classified, aggregated and disclosed appropriately? | ## Northstar month-end Use the entries from [Double-Entry](https://www.pengjiaxin.com/04-double-entry-dr-cr), then add: | Adjustment | Debit | Credit | | ------------------------------------------------------- | -------------------------- | ------------------------------ | | One month’s equipment depreciation, £1,000 | Depreciation expense 1,000 | Accumulated depreciation 1,000 | | Electricity used but not billed, £1,500 | Electricity expense 1,500 | Accrued expenses 1,500 | | Customer service delivered from a prior advance, £2,000 | Contract liability 2,000 | Service revenue 2,000 | Notice that none of these adjustments requires cash at month-end. ### Follow both sides into the statements Number each adjustment working so that a reader can follow it from the supporting evidence through the calculation and entry to the revised balance and its place in the statements. Northstar's three adjustments change the unadjusted figures as follows: | Adjustment | Profit | Assets | Liabilities | Equity through profit | | --------------------------- | -------: | ---------: | ----------: | --------------------: | | Depreciation | −1,000 | −1,000 | — | −1,000 | | Electricity accrual | −1,500 | — | +1,500 | −1,500 | | Service earned from advance | +2,000 | — | −2,000 | +2,000 | | **Net movement, £** | **−500** | **−1,000** | **−500** | **−500** | The change in the equation still balances: assets fall £1,000; liabilities plus equity also fall £1,000. Depreciation reduces the equipment's carrying amount through accumulated depreciation, rather than reducing cash or recording a new payable. Distinguish the **adjustment amount** from the **closing balance**. If accumulated depreciation was already £4,000, a £1,000 charge brings the closing credit balance to £5,000. That opening figure illustrates how a balance changes over the period; the movement checker below does not include a complete opening ledger. After posting, recompute every affected ledger balance, then make the adjusted trial balance. Transfer income and expense balances to profit or loss and permanent balances to financial position; carry the resulting profit into equity once. The [full financial-records practice](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements) lets you perform all these steps on one complete dataset. ## Run the ledger check Try editing an amount or adding an entry. The cell totals **period movements** and rejects an unbalanced journal. Because opening receivables and customer advances are not supplied, the output does not show complete closing balances. For example, a credit movement in receivables shows a reduction in that asset, not necessarily a liability. Use the [complete adjustments-to-statements case](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements) to prepare a full adjusted trial balance. ::pyodide --- code64: ZW50cmllcyA9IFsKICAgICgiQ2FzaCIsIDEwMDAwMCwgMCwgIk93bmVyIGNvbnRyaWJ1dGlvbiIpLAogICAgKCJTaGFyZSBjYXBpdGFsIiwgMCwgMTAwMDAwLCAiT3duZXIgY29udHJpYnV0aW9uIiksCiAgICAoIkNhc2giLCA2MDAwMCwgMCwgIkJhbmsgbG9hbiIpLAogICAgKCJCYW5rIGxvYW4iLCAwLCA2MDAwMCwgIkJhbmsgbG9hbiIpLAogICAgKCJQUEUgYXQgY29zdCIsIDcwMDAwLCAwLCAiRXF1aXBtZW50IHB1cmNoYXNlIiksCiAgICAoIkNhc2giLCAwLCA3MDAwMCwgIkVxdWlwbWVudCBwdXJjaGFzZSIpLAogICAgKCJJbnZlbnRvcnkiLCAyNDAwMCwgMCwgIkNyZWRpdCBwdXJjaGFzZSIpLAogICAgKCJUcmFkZSBwYXlhYmxlcyIsIDAsIDI0MDAwLCAiQ3JlZGl0IHB1cmNoYXNlIiksCiAgICAoIkNhc2giLCAxNTAwMCwgMCwgIkNhc2ggc2FsZSIpLAogICAgKCJTYWxlcyByZXZlbnVlIiwgMCwgMTUwMDAsICJDYXNoIHNhbGUiKSwKICAgICgiQ29zdCBvZiBzYWxlcyIsIDgwMDAsIDAsICJJbnZlbnRvcnkgc29sZCIpLAogICAgKCJJbnZlbnRvcnkiLCAwLCA4MDAwLCAiSW52ZW50b3J5IHNvbGQiKSwKICAgICgiVHJhZGUgcGF5YWJsZXMiLCA1MDAwLCAwLCAiU3VwcGxpZXIgcGF5bWVudCIpLAogICAgKCJDYXNoIiwgMCwgNTAwMCwgIlN1cHBsaWVyIHBheW1lbnQiKSwKICAgICgiQ2FzaCIsIDQwMDAsIDAsICJSZWNlaXZhYmxlIGNvbGxlY3Rpb24iKSwKICAgICgiVHJhZGUgcmVjZWl2YWJsZXMiLCAwLCA0MDAwLCAiUmVjZWl2YWJsZSBjb2xsZWN0aW9uIiksCiAgICAoIkRlcHJlY2lhdGlvbiBleHBlbnNlIiwgMTAwMCwgMCwgIk1vbnRoLWVuZCBhZGp1c3RtZW50IiksCiAgICAoIkFjY3VtdWxhdGVkIGRlcHJlY2lhdGlvbiIsIDAsIDEwMDAsICJNb250aC1lbmQgYWRqdXN0bWVudCIpLAogICAgKCJFbGVjdHJpY2l0eSBleHBlbnNlIiwgMTUwMCwgMCwgIk1vbnRoLWVuZCBhZGp1c3RtZW50IiksCiAgICAoIkFjY3J1ZWQgZXhwZW5zZXMiLCAwLCAxNTAwLCAiTW9udGgtZW5kIGFkanVzdG1lbnQiKSwKICAgICgiQ29udHJhY3QgbGlhYmlsaXR5IiwgMjAwMCwgMCwgIlNlcnZpY2UgZGVsaXZlcmVkIiksCiAgICAoIlNlcnZpY2UgcmV2ZW51ZSIsIDAsIDIwMDAsICJTZXJ2aWNlIGRlbGl2ZXJlZCIpLApdCgp0b3RhbF9kZWJpdCA9IHN1bShkZWJpdCBmb3IgXywgZGViaXQsIF8sIF8gaW4gZW50cmllcykKdG90YWxfY3JlZGl0ID0gc3VtKGNyZWRpdCBmb3IgXywgXywgY3JlZGl0LCBfIGluIGVudHJpZXMpCmFzc2VydCByb3VuZCh0b3RhbF9kZWJpdCwgMikgPT0gcm91bmQodG90YWxfY3JlZGl0LCAyKSwgIkpvdXJuYWwgaXMgdW5iYWxhbmNlZCIKCmJhbGFuY2VzID0ge30KZm9yIGFjY291bnQsIGRlYml0LCBjcmVkaXQsIF8gaW4gZW50cmllczoKICAgIGJhbGFuY2VzW2FjY291bnRdID0gYmFsYW5jZXMuZ2V0KGFjY291bnQsIDApICsgZGViaXQgLSBjcmVkaXQKCnByaW50KGYiRGViaXRzID0gY3JlZGl0cyA9IMKje3RvdGFsX2RlYml0OiwuMGZ9XG4iKQpwcmludChmInsnQWNjb3VudCBtb3ZlbWVudCc6Mjh9IHsnTmV0IGRlYml0Jzo+MTJ9IHsnTmV0IGNyZWRpdCc6PjEyfSIpCnByaW50KCItIiAqIDU0KQpmb3IgYWNjb3VudCwgYmFsYW5jZSBpbiBzb3J0ZWQoYmFsYW5jZXMuaXRlbXMoKSk6CiAgICBkZWJpdCA9IG1heChiYWxhbmNlLCAwKQogICAgY3JlZGl0ID0gbWF4KC1iYWxhbmNlLCAwKQogICAgcHJpbnQoZiJ7YWNjb3VudDoyOH0ge2RlYml0OjEyLC4wZn0ge2NyZWRpdDoxMiwuMGZ9IikKcHJpbnQoIi0iICogNTQpCnByaW50KGYieydUb3RhbHMnOjI4fSB7c3VtKG1heCh2LCAwKSBmb3IgdiBpbiBiYWxhbmNlcy52YWx1ZXMoKSk6MTIsLjBmfSAiCiAgICAgIGYie3N1bShtYXgoLXYsIDApIGZvciB2IGluIGJhbGFuY2VzLnZhbHVlcygpKToxMiwuMGZ9Iik= layout: vertical locale: en title: Northstar journal movement check --- :: The cell checks arithmetic balance. To decide whether £70,000 belongs in PPE or expenses, you still need to examine the transaction and its supporting evidence. ## Errors a trial balance will not find - omitting an event entirely; - using the wrong but same-side account; - recording the same wrong amount on both sides; - recording in the wrong period; - failing to make an estimate or impairment adjustment. ## Closing versus adjusting **Adjusting entries** complete the period-end balances and assign amounts to the correct period. After reporting, **closing entries** reset temporary income and expense accounts and transfer the period's result to equity. Asset, liability and continuing equity balances carry forward to the next period. ## Quick check A £1,500 accrual was omitted. The trial balance still agrees. Which reported amounts are likely misstated? ::legacy-spoiler{title="Answer"} Expense is understated and profit/equity overstated in the performance and equity reports; accrued liabilities are understated in the statement of financial position. Cash is unaffected at that date. :: [Next: Measurement and Adjustments](https://www.pengjiaxin.com/../03-measurement-adjustments/) # 2. Recording Transactions []{#_2-recording-transactions} This module separates three tasks that beginners often collapse: | Task | Question | Control | | --------------- | ------------------------------------------ | ---------------------------- | | Analyse | What changed economically? | Event and element reasoning | | Journalise | Which accounts receive debits and credits? | Total debits equal credits | | Post and adjust | What balance belongs at period-end? | Ledger, evidence and cut-off | ## Chapters - [Double-entry and debit/credit](https://www.pengjiaxin.com/04-double-entry-dr-cr): record Northstar’s first operating events. - [Accounting cycle](https://www.pengjiaxin.com/05-accounting-cycle): move the entries through a trial balance and test them in Python. - [Adjustments to statements](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements): complete an independent periodic-inventory case, with an adjusted trial balance and reconciled statements. ## Preparation Bring the five-event table from [Equation and Elements](https://www.pengjiaxin.com/../01-foundations/02-equation-elements). Do not memorise debit and credit before you can explain each event. [Start with double-entry](https://www.pengjiaxin.com/04-double-entry-dr-cr). # Revenue Recognition []{#revenue-recognition} ## Core idea Revenue depicts the transfer of promised goods or services for the consideration the entity expects to receive. Cash, invoice and revenue dates may differ. ## The five-step model | Step | Question | | ---: | ---------------------------------------------------------------------------- | | 1 | Is there an enforceable contract with a customer? | | 2 | Which promised goods or services are distinct performance obligations? | | 3 | What is the transaction price, including constrained variable consideration? | | 4 | How is that price allocated using relative stand-alone selling prices? | | 5 | When does control transfer: at a point in time or over time? | ## Northstar bundle On 1 October, a customer pays £2,640 for: - an e-bike delivered immediately; stand-alone price £2,400; - 24 months of maintenance; stand-alone price £600. Total stand-alone price is £3,000. Allocation follows relative stand-alone prices: | Obligation | Allocation | Revenue timing | | ----------- | ------------------------------------: | ---------------------------------------------------- | | Bike | £2,640 × £2,400 / £3,000 = **£2,112** | At delivery, if control has transferred | | Maintenance | £2,640 × £600 / £3,000 = **£528** | Over 24 months: £22 per month in this simple pattern | Entries: ```text 1 October — cash received Dr Cash £2,640 Cr Contract liability £2,640 1 October — bike delivered Dr Contract liability £2,112 Cr Bike revenue £2,112 31 December — three months maintained Dr Contract liability £66 Cr Service revenue £66 ``` At 31 December the contract liability is £462. Total recognised revenue is £2,178, even though all £2,640 cash arrived in October. ## Three balances that are not interchangeable | Balance | Meaning | | ------------------ | ------------------------------------------------------------------------------------ | | Receivable | Right to consideration is unconditional except for the passage of time | | Contract asset | Right is still conditional on something other than time, such as further performance | | Contract liability | Customer has paid, or payment is due, before the related performance | ## Where judgement enters ### Distinct promises A promise is not separated merely because it appears on a contract line. Test whether the customer can benefit from it and whether it is distinct in the contract context. ### Variable consideration Estimate discounts, returns, rebates or bonuses, then constrain the amount so a significant reversal is not highly probable when uncertainty resolves under IFRS 15. Do not book the most optimistic outcome. ### Point in time or over time Look for control indicators, not invoice labels. For over-time obligations, choose a measure of progress that faithfully depicts performance. ### Licences Do not assume every software licence is recognised at delivery. The nature of the promise, updates, hosting and continuing activities can change whether revenue is recognised at a point in time or over time; IFRS and US GAAP also retain application differences. ## Real-report check Microsoft’s [2025 Annual Report](https://www.microsoft.com/investor/reports/ar25/index.html){rel=""nofollow""} reported both unearned revenue and revenue allocated to remaining performance obligations. The analytical question is not “How large is the backlog?” but: - what is included; - when management expects recognition; - which estimates or renegotiations affect the amount; - how much is billed versus not yet billed. ## Quick check Suppose Northstar completes six months of maintenance by 31 March. What are cumulative service revenue and the remaining contract liability? ::legacy-spoiler{title="Answer"} Service revenue is 6 × £22 = £132. Remaining liability is £528 − £132 = £396. Bike revenue remains £2,112. :: ## Primary sources - [IFRS 15 Revenue from Contracts with Customers](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-15-revenue-from-contracts-with-customers/){rel=""nofollow""} - [FASB Topic 606 project summary](https://fasb.org/projects/recently-completed-projects/revenue-recognition-summary){rel=""nofollow""} [Next: Inventory](https://www.pengjiaxin.com/08-inventory) # Inventory []{#inventory} Inventory accounting answers two questions: 1. Which costs remain as an asset? 2. Which costs become expense when goods are sold or lose value? ## What enters cost | Usually included | Usually excluded | | ----------------------------------------- | ---------------------------------------------- | | Purchase price net of trade discounts | Abnormal waste | | Import duties and non-refundable taxes | Avoidable storage after production | | Freight needed to bring goods to location | General administration unrelated to production | | Direct labour and production inputs | Selling costs | | Systematic production-overhead allocation | Idle-capacity cost above normal allocation | Labels do not decide treatment. Ask whether the cost brought inventory to its present location and condition. ## Northstar cost-flow example Northstar has 300 identical battery packs: | Batch | Units | Unit cost | Total | | ------------- | ------: | --------: | ----------: | | Opening | 100 | £50 | £5,000 | | Purchase 1 | 100 | £55 | £5,500 | | Purchase 2 | 100 | £60 | £6,000 | | **Available** | **300** | | **£16,500** | It uses 220 packs and has 80 left. | Cost formula | Cost of sales | Closing inventory | | ---------------- | ---------------------------------------: | ------------------: | | FIFO | 100×£50 + 100×£55 + 20×£60 = **£11,700** | 80×£60 = **£4,800** | | Weighted average | 220×£55 = **£12,100** | 80×£55 = **£4,400** | Both preserve the total £16,500. In a rising-price example, FIFO reports lower cost of sales and higher closing inventory. That is a mechanical effect, not evidence of better operations. Under IAS 2, ordinarily interchangeable items use FIFO or weighted average; LIFO is not permitted. Specific identification applies to items that are not ordinarily interchangeable or are segregated for specific projects. ## Lower of cost and net realisable value For 40 specialised packs: - cost = £60 each; - expected selling price = £58; - completion cost = £3; - selling cost = £2. [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[NRV per unit]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[58]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[3]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£53]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Write-down: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[60]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[53]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£280]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ```text Dr Inventory write-down expense £280 Cr Inventory or allowance £280 ``` IAS 2 permits reversal when NRV recovers, limited to the original write-down. US GAAP generally does not reverse a write-down that established a new cost basis; its subsequent-measurement rules also depend on the cost method. Use the framework-specific rule. ## Cut-off before formula Before calculating FIFO or average cost, test: - who controls goods in transit under the shipping terms; - whether consigned goods belong to consignor or consignee; - whether purchases and related payables are recorded in the same period; - whether count differences, damage or obsolescence require adjustment. A perfect spreadsheet cannot repair the wrong population. ## Real-report check Target’s [2025 Form 10-K](https://www.sec.gov/Archives/edgar/data/27419/000002741926000016/tgt-20260131.htm){rel=""nofollow""} discusses inventory, reserves and vendor consideration. Its treatment of vendor income shows why analysts read the policy note: a supplier payment may reduce cost of sales unless it reimburses a specific, incremental and identifiable cost. ## Quick check If the 220 packs support revenue of £18,000, calculate gross profit under each formula. ::legacy-spoiler{title="Answer"} FIFO: £18,000 − £11,700 = £6,300. Weighted average: £18,000 − £12,100 = £5,900. The £400 profit difference equals the £400 difference in closing inventory. :: ## Primary source - [IAS 2 Inventories](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/){rel=""nofollow""} [Next: Receivables](https://www.pengjiaxin.com/09-receivables) # Receivables and Expected Credit Losses []{#receivables-and-expected-credit-losses} Gross receivables show contractual claims. Net receivables show those claims after an allowance for expected losses. [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[Net receivables]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[[Gross receivables]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[Loss allowance]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Northstar aging matrix At year-end: | Aging band | Gross balance | Expected-loss rate | Allowance | | ------------------ | ------------: | -----------------: | ---------: | | Current | £80,000 | 1% | £800 | | 1–30 days overdue | £20,000 | 3% | £600 | | 31–90 days overdue | £8,000 | 12% | £960 | | More than 90 days | £2,000 | 45% | £900 | | **Total** | **£110,000** | | **£3,260** | The rates are teaching assumptions, not standard percentages. In practice Northstar would support them with historical defaults, current conditions, customer-specific information and reasonable forecasts. After write-offs, the existing allowance has a £1,900 credit balance. The required closing balance is £3,260: ```text Dr Expected credit loss expense £1,360 Cr Loss allowance £1,360 ``` Net receivables are £106,740. ## Write-off is not a second loss estimate When a £700 account has no reasonable recovery prospect: ```text Dr Loss allowance £700 Cr Trade receivables £700 ``` The write-off uses the allowance already recognised. If cash is later recovered, reinstate the receivable/allowance as required by the entity’s method, then record the collection. ## IFRS 9 teaching map | Asset situation | Introductory model | | --------------------------------------------------------------- | -------------------------------------------------------- | | Trade receivables using the simplified approach | Lifetime expected credit losses | | Other financial assets with no significant credit deterioration | Generally 12-month expected credit losses | | Significant increase in credit risk | Lifetime expected credit losses | | Credit-impaired | Lifetime losses, with changed interest-revenue mechanics | Expected credit losses are probability-weighted cash shortfalls, reflect time value where material and use reasonable forward-looking information. They are not limited to debts already known to be bad. ## US GAAP boundary ASC 326’s CECL model generally estimates lifetime expected credit losses for assets in scope using historical experience, current conditions and reasonable, supportable forecasts. Its architecture differs from IFRS 9’s staging model. FASB [ASU 2025-05](https://fasb.org/page/PageContent?pageId=%2Fprojects%2Frecently-completed-projects%2Fcredit-losses-topic-606-receivables.html){rel=""nofollow""}, effective for annual periods beginning after 15 December 2025, adds practical relief for current Topic 606 receivables and contract assets. That update does not turn a historical bad-debt percentage into a universal answer; elections and scope still matter. ## What can make the matrix wrong? - old data after a change in customer mix; - one large customer hidden inside a pooled rate; - forecasts counted twice; - overdue balances cured after the reporting date but ignored; - management optimism unsupported by collections; - a contract asset treated as an unconditional receivable. ## Quick check If the required allowance becomes £4,100 and the pre-adjustment credit balance remains £1,900, what is the expense? ::legacy-spoiler{title="Answer"} £4,100 − £1,900 = £2,200. Record Dr expected credit loss expense; Cr loss allowance. :: ## Primary sources - [IFRS 9 Financial Instruments](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-9-financial-instruments/){rel=""nofollow""} - [FASB Topic 326 Credit Losses](https://fasb.org/projects/recently-completed-projects/accounting-standards-update-2016-13-financial-instrument-credit-losses){rel=""nofollow""} [Next: Property, Plant and Equipment](https://www.pengjiaxin.com/10-ppe) # Property, Plant and Equipment []{#property-plant-and-equipment} PPE accounting separates: - the cost of obtaining and preparing a productive resource; - the pattern in which its depreciable amount is consumed; - later impairment, replacement and disposal. ## Initial cost Northstar buys a laser-cutting machine: | Item | Treatment | Amount | | ------------------------------ | ---------- | -----------: | | Supplier price net of discount | Capitalise | £108,000 | | Delivery and installation | Capitalise | £7,000 | | Testing net cost | Capitalise | £3,000 | | Staff training | Expense | £4,000 | | Opening campaign | Expense | £5,000 | | **Initial PPE cost** | | **£118,000** | Capitalised costs are directly attributable to bringing the asset to the location and condition necessary for operation. Training prepares employees, not the machine. ## Component depreciation Suppose a £120,000 production system contains: | Component | Cost | Residual value | Useful life | Annual straight-line depreciation | | ------------------- | -----------: | -------------: | ----------: | --------------------------------: | | Frame and mechanics | £90,000 | £10,000 | 10 years | £8,000 | | Control unit | £30,000 | £0 | 3 years | £10,000 | | **Total** | **£120,000** | | | **£18,000** | One blended ten-year life would understate early consumption of the control unit. IAS 16 requires significant components to be depreciated separately. ```text Dr Depreciation expense £18,000 Cr Accumulated depreciation £18,000 ``` ## The formula and the estimate Straight-line: [[[]{.katex-mathml}[[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[useful life]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[cost]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[residual value]{.mord}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Diminishing balance: [[[]{.katex-mathml}[[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[opening carrying amount]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6151em;"}[[rate]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Do not subtract accumulated depreciation twice. Method, useful life and residual value are estimates reviewed at least at each year-end under IAS 16; changes are generally prospective estimate changes. ## Subsequent spending | Spending | Likely treatment | Reason | | ----------------------------------------- | ------------------------------------------------------------------ | ------------------------------------------------ | | Routine servicing | Expense | Maintains existing service potential | | Replacement of a significant control unit | Capitalise replacement; derecognise old component | A new component resource is obtained | | Major inspection required to continue use | Capitalise if criteria met; derecognise prior inspection component | Inspection benefit spans periods | | Repair after accidental damage | Usually expense, then test impairment | Restores rather than creates additional resource | ## Disposal If equipment has cost £120,000, accumulated depreciation £78,000 and is sold for £46,000: [[[]{.katex-mathml}[[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[gain]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[46]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[120]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[78]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Remove both cost and accumulated depreciation; compare proceeds with carrying amount, not original cost. ## Framework boundary - IFRS permits a cost model or a consistently applied revaluation model for a class of PPE. - US GAAP generally retains historical cost for ordinary PPE. - Impairment tests and reversal rules differ. Do not carry an IFRS reversal conclusion into US GAAP. ## Quick check At the start of year 4, Northstar revises the frame’s remaining useful life from seven years to five; carrying amount is £66,000 and residual value remains £10,000. What is new annual depreciation? ::legacy-spoiler{title="Answer"} (£66,000 − £10,000) / 5 = £11,200 prospectively. Prior depreciation is not rewritten merely because the estimate changed. :: ## Primary source - [IAS 16 Property, Plant and Equipment](https://www.ifrs.org/issued-standards/list-of-standards/ias-16-property-plant-and-equipment/){rel=""nofollow""} [Next: Intangible Assets](https://www.pengjiaxin.com/11-intangibles) # Intangible Assets []{#intangible-assets} An intangible asset is not “anything valuable without physical form.” It must be identifiable, controlled and capable of generating future economic benefits, with the applicable recognition criteria met. ## Northstar’s customer app | Phase | Expenditure | Treatment under the stated IAS 38 facts | | ----------------------------------------------------- | ----------: | --------------------------------------- | | Explore battery-routing ideas | £40,000 | Research expense | | Build alternatives before feasibility is demonstrated | £25,000 | Expense | | Develop after all six criteria are documented | £90,000 | Capitalise from that date | | Train sales staff | £8,000 | Expense | | Launch advertising | £12,000 | Expense | Only £90,000 is capitalised. Earlier expenditure is not reinstated once the project passes the gate. ## The development gate Capitalise internally generated development expenditure only when Northstar can demonstrate all six: 1. technical feasibility of completion; 2. intention to complete; 3. ability to use or sell; 4. probable future economic benefits; 5. adequate technical, financial and other resources; 6. reliable measurement of attributable expenditure. If research and development phases cannot be distinguished, treat the expenditure as research. ## Purchased, internal and goodwill are different | Item | Introductory treatment | | ------------------------------------------------------------------------------------- | ------------------------------------------------------------ | | Separately purchased patent or software | Recognise initially at cost if within scope | | Qualifying internal development | Capitalise only from the demonstrated gate | | Internal research, brands, mastheads, customer lists or internally generated goodwill | Expense under IAS 38 restrictions | | Identifiable intangible acquired in a business combination | Recognise separately from goodwill when requirements are met | | Goodwill from a business combination | Separate impairment model; not an internally generated asset | ## After recognition - **Finite life:** amortise over the estimated useful life and test for impairment indicators. - **Indefinite life:** do not amortise; test annually for impairment and reconsider the indefinite-life assessment. - **Goodwill:** test under the applicable cash-generating-unit/reporting-unit model; impairment is not reversed under IFRS or US GAAP. “Indefinite” does not mean permanent. It means no foreseeable limit to the period of net cash inflows based on current analysis. ## Caution: pharmaceutical and high-uncertainty projects Late-stage work is not automatically capitalised under IFRS. Regulatory approval, technical feasibility and probable benefits may remain too uncertain. The entity must demonstrate every criterion; the stage name alone is not evidence. ## US GAAP boundary US GAAP generally expenses research and development as incurred, with topic-specific exceptions such as certain software costs. A company comparison must adjust for the applicable type of development and framework, not simply label one policy conservative. ## Current research frontier The IASB is [reviewing IAS 38](https://www.ifrs.org/projects/work-plan/intangible-assets/){rel=""nofollow""} and, in 2026, is exploring user needs and newer forms of intangibles. This is an active project, not a change to current recognition requirements. ## Quick check Northstar demonstrates all six criteria on 1 July. It spent £50,000 before that date and £70,000 after it. How much is capitalised under the simplified facts? ::legacy-spoiler{title="Answer"} £70,000. The £50,000 already expensed is not retrospectively converted into an asset. :: ## Primary source - [IAS 38 Intangible Assets](https://www.ifrs.org/issued-standards/list-of-standards/ias-38-intangible-assets/){rel=""nofollow""} [Next: Leases](https://www.pengjiaxin.com/12-leases) # Leases []{#leases} ## First decide whether a lease exists A contract contains a lease when it conveys the right to control the use of an identified asset for a period in exchange for consideration. Ask: - Is there an identified asset? - Does the customer obtain substantially all economic benefits from use? - Does the customer direct how and for what purpose the asset is used? A service contract can use supplier assets without giving the customer control of one. ## Northstar warehouse Assume: - three payments of £24,000 at each year-end; - three-year lease term; - 6% discount rate; - no initial direct costs, incentives or restoration obligation. Initial lease liability: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.06]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.0]{.mord}[[6]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.0]{.mord}[[6]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£64]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[152]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Initial right-of-use asset is also £64,152 under these simplified facts. | Year | Opening liability | Interest at 6% | Cash payment | Principal | Closing liability | | ---: | ----------------: | -------------: | -----------: | --------: | ----------------: | | 1 | £64,152 | £3,849 | £24,000 | £20,151 | £44,001 | | 2 | £44,001 | £2,640 | £24,000 | £21,360 | £22,642 | | 3 | £22,642 | £1,358 | £24,000 | £22,642 | £0 | If straight-line depreciation over three years is appropriate, annual right-of-use depreciation is about £21,384. ::pyodide --- code64: cGF5bWVudCA9IDI0MDAwCnJhdGUgPSAwLjA2CnllYXJzID0gMwoKbGlhYmlsaXR5ID0gc3VtKHBheW1lbnQgLyAoMSArIHJhdGUpICoqIHllYXIgZm9yIHllYXIgaW4gcmFuZ2UoMSwgeWVhcnMgKyAxKSkKcHJpbnQoZiJJbml0aWFsIGxpYWJpbGl0eTogwqN7bGlhYmlsaXR5OiwuMmZ9IikKcHJpbnQoZiJ7J1llYXInOj40fSB7J09wZW5pbmcnOj4xMn0geydJbnRlcmVzdCc6PjEyfSB7J1ByaW5jaXBhbCc6PjEyfSB7J0Nsb3NpbmcnOj4xMn0iKQoKZm9yIHllYXIgaW4gcmFuZ2UoMSwgeWVhcnMgKyAxKToKICAgIG9wZW5pbmcgPSBsaWFiaWxpdHkKICAgIGludGVyZXN0ID0gb3BlbmluZyAqIHJhdGUKICAgIHByaW5jaXBhbCA9IHBheW1lbnQgLSBpbnRlcmVzdAogICAgbGlhYmlsaXR5ID0gb3BlbmluZyAtIHByaW5jaXBhbAogICAgcHJpbnQoZiJ7eWVhcjo+NH0ge29wZW5pbmc6MTIsLjJmfSB7aW50ZXJlc3Q6MTIsLjJmfSAiCiAgICAgICAgICBmIntwcmluY2lwYWw6MTIsLjJmfSB7bWF4KGxpYWJpbGl0eSwgMCk6MTIsLjJmfSIp layout: vertical locale: en title: Build a lease-liability schedule --- :: ## What changes initial measurement? The right-of-use asset can include: - the initial liability; - payments made at or before commencement; - eligible initial direct costs; - estimated restoration obligations; - less lease incentives. The liability depends on lease term, enforceable options, fixed or in-substance fixed payments, relevant index/rate payments, residual-value guarantees and the discount rate. Those are judgement points, not spreadsheet inputs supplied by nature. ## IFRS and US GAAP do not have the same exemptions | Topic | IFRS 16 | ASC 842 high-level boundary | | ------------------- | --------------------------------------------------------- | -------------------------------------------------------------------------------------------- | | Lessee model | Broad single on-balance-sheet model | Operating and finance lease classifications retained | | Short-term election | Available when criteria are met | Short-term election available | | Low-value election | Available for qualifying underlying assets | No general IFRS-style low-value exemption | | Expense pattern | Depreciation plus interest for ordinary recognised leases | Single lease expense for operating leases; separate interest/amortisation for finance leases | Cash-flow classification also differs. For IFRS periods before IFRS 18 takes effect, principal is financing and interest follows the IAS 7 policy choice; exempt and liability-excluded variable payments are generally operating. Under US GAAP, operating-lease payments are operating, while finance-lease principal is financing and interest is operating. Do not carry that IFRS sentence into 2027 mechanically. IFRS 18 applies for annual periods beginning on or after 1 January 2027 and amends specified interest-and-dividend classifications in IAS 7. The contract and measurement stay the same, but the cash-flow presentation must be reassessed under the requirements effective for the reporting period. ## Current status In July 2026 the IASB concluded that [IFRS 16 is overall working as intended](https://www.ifrs.org/projects/work-plan/post-implementation-review-of-ifrs-16-leases/){rel=""nofollow""}, while identifying targeted work on application cost, discount rates, remeasurement and rent concessions. These projects do not erase the current model. Microsoft’s [2025 Annual Report](https://www.microsoft.com/investor/reports/ar25/index.html){rel=""nofollow""} shows why lease notes matter: maturity tables, discount rates, remaining terms and not-yet-commenced commitments can be material even when a single balance-sheet number looks manageable. ## Quick check Why is the year-1 liability reduction £20,151 rather than the £24,000 cash payment? ::legacy-spoiler{title="Answer"} £3,849 of the payment is interest on the opening liability. Only £24,000 − £3,849 = £20,151 repays principal. :: ## Primary sources - [IFRS 16 Leases](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-16-leases/){rel=""nofollow""} - [FASB leases materials](https://fasb.org/standards/accounting-standard-updates?year=2016){rel=""nofollow""} [Next: Income Tax](https://www.pengjiaxin.com/13-income-tax) # Current and Deferred Income Tax []{#current-and-deferred-income-tax} This chapter explains financial-statement mechanics, not tax advice. Rates and deductions are jurisdiction-specific. Northstar’s 25% rate is an explicit teaching assumption. ## Two questions | Tax component | Question | | ------------- | ------------------------------------------------------------------------------------- | | Current tax | What tax is payable or recoverable for current and prior taxable periods? | | Deferred tax | What future tax consequence is embedded in recognised carrying amounts and tax bases? | ## Tax base intuition For an asset, the tax base is generally the amount that will be deductible against taxable benefits when the carrying amount is recovered. For a liability, it is generally the carrying amount less amounts deductible for tax in future periods. | Item | Carrying amount | Tax base | Temporary difference | Introductory result at 25% | | ------------------ | --------------: | -------: | -------------------: | ---------------------------------: | | Machine | £80,000 | £50,000 | £30,000 taxable | DTL £7,500 | | Warranty provision | £12,000 | £0 | £12,000 deductible | DTA £3,000, subject to recognition | Why? - Recovering the machine’s £80,000 carrying amount leaves only £50,000 future tax deductions: £30,000 is taxable later. - Settling the £12,000 warranty liability gives a £12,000 future deduction under the assumed tax rule: the difference is deductible later. Do not mechanically apply “asset means DTL, liability means DTA.” The tax base and recovery/settlement consequences decide. ## Northstar current-tax reconciliation Assume accounting profit before tax is £180,000: | Reconciliation to taxable profit | £ | | ---------------------------------------------------- | ----------: | | Accounting profit before tax | 180,000 | | Add: non-deductible penalty | 2,000 | | Add: warranty expense deductible only when paid | 12,000 | | Less: tax depreciation above accounting depreciation | (20,000) | | **Taxable profit** | **174,000** | | Current tax at assumed 25% | **43,500** | ```text Dr Current tax expense £43,500 Cr Current tax payable £43,500 ``` ## Deferred-tax movement Assume: - the machine taxable difference rose by £20,000 this year: DTL increases £5,000; - the £12,000 warranty deductible difference is new: DTA increases £3,000; - both deferred amounts are recognised and the simplified effects enter profit or loss. Net deferred tax expense is £2,000: ```text Dr Deferred tax asset £3,000 Dr Deferred tax expense £2,000 Cr Deferred tax liability £5,000 ``` Total tax expense is £45,500: current £43,500 plus deferred £2,000. That equals 25% of £180,000 plus £500 tax effect on the non-deductible penalty. Offset deferred tax assets and liabilities only when the framework’s legal-right and tax-authority conditions are met; arithmetic netting alone is not enough. ## Recognition and uncertainty - Under IAS 12, recognise a deferred tax asset only to the extent it is probable that taxable profit will be available, subject to detailed exceptions. - US GAAP generally recognises deferred tax assets and uses a valuation allowance when realisation does not meet its more-likely-than-not threshold. - Uncertain tax positions, enacted/substantively enacted rates, business combinations and Pillar Two rules require detail beyond this introductory case. ## Quick check If the machine tax base rises to £65,000 while its carrying amount remains £80,000, what happens to the DTL at 25%? ::legacy-spoiler{title="Answer"} The taxable difference falls to £15,000, so the DTL becomes £3,750. Relative to £7,500, the £3,750 decrease is a deferred tax benefit, subject to where the original tax effect was recognised. :: ## Primary source - [IAS 12 Income Taxes](https://www.ifrs.org/issued-standards/list-of-standards/ias-12-income-taxes/){rel=""nofollow""} [Next: Financial Statements](https://www.pengjiaxin.com/../04-reporting-cash/06-financial-statements) # 3. Measurement and Adjustments []{#_3-measurement-and-adjustments} A trial balance can agree while assets, liabilities and profit remain wrong. Measurement asks what amount belongs **now**. | Chapter | Northstar question | Main judgement | | ------------------------------------------------------------ | --------------------------------------------------- | ------------------------------------- | | [Revenue](https://www.pengjiaxin.com/07-revenue-recognition) | How much of a bike-and-service bundle is earned? | Performance obligations and timing | | [Inventory](https://www.pengjiaxin.com/08-inventory) | Which costs remain in unsold bikes? | Cost formula and recoverability | | [Receivables](https://www.pengjiaxin.com/09-receivables) | How much will customers probably pay? | Forward-looking credit loss | | [PPE](https://www.pengjiaxin.com/10-ppe) | How is a production asset consumed? | Components, life and impairment | | [Intangibles](https://www.pengjiaxin.com/11-intangibles) | When does app development become an asset? | Identifiability and recognition gates | | [Leases](https://www.pengjiaxin.com/12-leases) | What asset and obligation arise from warehouse use? | Lease term and discount rate | | [Income tax](https://www.pengjiaxin.com/13-income-tax) | Why do accounting and tax timing differ? | Tax bases and temporary differences | ## The common pattern For every topic: 1. identify the unit of account; 2. state the recognition trigger; 3. choose the measurement basis; 4. calculate the closing carrying amount; 5. record the change; 6. disclose estimation uncertainty where material. ## Scope These are teaching summaries, not substitutes for a complete standard or jurisdiction-specific advice. Each page links to primary standard-setting material and labels IFRS/US GAAP differences. [Start with Revenue Recognition](https://www.pengjiaxin.com/07-revenue-recognition). # Linked Financial Statements []{#linked-financial-statements} Each statement answers one question: | Statement | Question | | --------------------------------------------- | ------------------------------------------------------------------------ | | Profit or loss and other comprehensive income | What performance was recognised during the period? | | Changes in equity | Why did each equity component change? | | Financial position | What resources, obligations and equity exist at the date? | | Cash flows | Why did cash and cash equivalents change? | | Notes | Which policies, estimates, disaggregations and risks explain the totals? | The notes are part of the financial statements, not optional commentary. ## Read the date before the amount Profit, equity movements and cash flows describe a **period**; financial position describes a **date**. A year's revenue cannot be compared directly with closing cash as if they were alternative measures of the same thing. Opening balances plus period movements produce closing balances. Begin by completing the adjustments and classifying the balances in the adjusted trial balance. Revenue and expenses determine profit, which then updates equity. Closing assets, liabilities and equity appear in the statement of financial position. To prepare cash flows, you also need opening balances and transaction details: a closing trial balance alone cannot reveal all receipts, payments or non-cash transactions. Use the [adjustments-to-statements case](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements) to practise that preparation sequence. It is a separate sole-trader example; Northstar below is a company, so it distributes dividends rather than drawings. ## Northstar’s 2026 statement set The statements are deliberately condensed, with amounts shown in £000. ### Statement of profit or loss | | 2026 | | ------------------------------------------------ | ------: | | Revenue | 600 | | Cost of sales | (360) | | **Gross profit** | **240** | | Operating expenses, including depreciation of 30 | (150) | | **Operating profit** | **90** | | Finance costs | (10) | | **Profit before tax** | **80** | | Income tax expense | (20) | | **Profit for the year** | **60** | ### Statement of changes in equity | | £000 | | ------------------- | ------: | | Opening equity | 150 | | Profit for the year | 60 | | Dividends | (10) | | **Closing equity** | **200** | Dividends are distributions to owners, not operating expenses. ### Statement of financial position | Assets | £000 | Liabilities and equity | £000 | | ------------------------ | ------: | -------------------------------- | ------: | | Cash | 60 | Trade payables | 80 | | Trade receivables, net | 90 | Other current liabilities | 45 | | Inventory | 100 | Borrowings | 160 | | PPE, net | 230 | Other non-current liabilities | 45 | | Other non-current assets | 50 | **Total liabilities** | **330** | | | | Equity | 200 | | **Total assets** | **530** | **Total liabilities and equity** | **530** | ### Condensed statement of cash flows | | £000 | | ------------------------------------- | -----: | | Opening cash and cash equivalents | 45 | | Net cash from operating activities | 65 | | Purchase of PPE | (80) | | New borrowings | 40 | | Dividends paid | (10) | | **Closing cash and cash equivalents** | **60** | ## Four links to verify 1. Profit of 60 enters changes in equity. 2. Closing equity of 200 enters financial position. 3. Cash-flow closing cash of 60 equals the balance-sheet cash figure. 4. PPE roll-forward is 180 opening + 80 additions − 30 depreciation = 230 closing. These checks can reveal omissions. Even when the figures reconcile, you still need to check classification, measurement and disclosure. ## Why profit differs from operating cash Starting from profit, operating cash adjusts for: - non-cash expenses such as depreciation; - gains or losses classified elsewhere in cash flows; - receivable, inventory, payable and accrual movements; - cash taxes and interest under the applicable classification policy. Northstar can report £60,000 profit and £65,000 operating cash because accruals and non-cash items offset differently. A ratio near one is not a universal quality threshold. ### Derive the working-capital signs Assume no write-offs or other receivable movements. Opening receivables plus credit sales minus customer receipts equals closing receivables. If receivables rise, some recognised sales have not yet produced cash: subtract that increase when reconciling the relevant accrual profit to cash. | Movement, other things equal | Cash implication relative to accrual profit | | ---------------------------- | --------------------------------------------------------------------------- | | Receivables increase | Less cash collected than credit revenue recognised | | Inventory increases | Purchases exceed inventory expensed as cost of sales; subtract the increase | | Trade payables increase | Some purchases remain unpaid; add the increase | | Depreciation expense | Reduces profit without a current cash payment; add it back | These adjustments explain the difference between profit and cash; they are not additional receipts or payments. Adding back depreciation does not recover the equipment's purchase price, which is reported separately when paid. The condensed Northstar data lacks some of the tax, interest and working-capital details needed to reconstruct the £65,000 operating cash subtotal. A full reconciliation therefore requires more information, not invented balancing figures. ## Presentation is changing [IFRS 18](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-18-presentation-and-disclosure-in-financial-statements/){rel=""nofollow""} applies for annual periods beginning on or after 1 January 2027 and replaces IAS 1. Among other changes, it: - introduces defined income-statement categories and subtotals, including operating profit and profit before financing and income taxes; - requires disclosures for specified management-defined performance measures; - strengthens aggregation and disaggregation requirements. It mainly changes presentation and disclosure, not the recognition of Northstar’s bike sale or lease liability. Unilever’s [2025 Annual Report](https://www.unilever.com/files/unilever-annual-report-and-accounts-2025.pdf){rel=""nofollow""} describes its assessment and expected presentation/MPM effects. For US public business entities, FASB’s [ASU 2024-03 expense-disaggregation project](https://fasb.org/page/PageContent?pageId=%2Fprojects%2Frecently-completed-projects%2Fdisaggregation-income-statement-expenses.html){rel=""nofollow""} has future effective dates beginning after 15 December 2026. Do not treat a future-effective disclosure rule as already mandatory for an earlier period. ## Quick check Northstar forgets £5,000 accrued wages. State the direction of error in profit, liabilities and equity. ::legacy-spoiler{title="Answer"} Expense and liabilities are understated by £5,000. Profit and closing equity are overstated by £5,000. Cash is unchanged at the reporting date. :: ## Primary sources - [IFRS 18 Presentation and Disclosure in Financial Statements](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-18-presentation-and-disclosure-in-financial-statements/){rel=""nofollow""} - [IAS 7 Statement of Cash Flows materials](https://www.ifrs.org/issued-standards/list-of-standards/ias-7-statement-of-cash-flows/){rel=""nofollow""} [Next: Cash and Internal Control](https://www.pengjiaxin.com/14-cash-control) # Cash, Reconciliation and Internal Control []{#cash-reconciliation-and-internal-control} Cash is easy to transfer, conceal and misclassify. A profitable entity therefore needs both liquidity analysis and transaction-level control. ## Cash and cash equivalents Cash equivalents are short-term, highly liquid investments: - readily convertible to known cash amounts; - subject to insignificant value-change risk; - held to meet short-term cash commitments rather than for investment. Under IAS 7, maturity of three months or less from acquisition normally supports the classification. “Short-term investment” is not enough by itself. ## Northstar bank reconciliation At 31 December: ### Bank side | | £ | | -------------------------- | ---------: | | Bank statement balance | 52,460 | | Add: deposit in transit | 4,800 | | Less: outstanding payments | (3,100) | | **Adjusted bank balance** | **54,160** | ### Book side | | £ | | ------------------------------- | ---------: | | Cash ledger balance | 54,620 | | Less: bank fee not recorded | (120) | | Less: customer payment returned | (540) | | Add: interest credited by bank | 200 | | **Adjusted book balance** | **54,160** | Only book-side items require Northstar journal entries: ```text Dr Bank fee expense £120 Cr Cash £120 Dr Trade receivables £540 Cr Cash £540 Dr Cash £200 Cr Interest income £200 ``` Deposits in transit and outstanding payments are timing differences already recorded by Northstar. Investigate old items; do not carry them indefinitely. ## Design controls from the failure mode | Risk | Preventive control | Detective control | | ----------------------------------------- | ------------------------------------------------------------- | ----------------------------------------------- | | Employee creates and pays a fake supplier | Separate supplier setup, invoice approval and payment release | Independent vendor-master and payment review | | Customer receipt is diverted | Bank lockbox or controlled electronic collection | Daily bank-to-receivables match | | Payment file is altered | Dual authorisation and protected bank credentials | Bank alert and post-payment exception review | | Reconciliation is manipulated | Reconciler cannot handle cash or post entries | Independent approval with evidence of follow-up | | API or spreadsheet duplicates a payment | Unique transaction IDs and validation rules | Duplicate-payment analytics | Segregation is not “use more people.” It separates authorisation, custody, recording and review so one person cannot both commit and hide an error. ## COSO as a diagnostic, not a checklist recital | Component | Northstar question | | ----------------------------- | ---------------------------------------------------------------- | | Control environment | Do leaders reward accurate reporting or only sales targets? | | Risk assessment | Which cash and cyber risks could prevent objectives? | | Control activities | Which approvals, access limits and reconciliations address them? | | Information and communication | Does the reviewer receive complete, timely evidence? | | Monitoring | Are exceptions investigated and controls changed when they fail? | Controls provide reasonable, not absolute, assurance. Collusion, override, poor design and changing systems remain limitations. ### 2026 control frontier: generative AI COSO's internal-control resources now include 2026 guidance on generative AI. The five components still apply; the evidence changes. If an accounts-payable assistant proposes a supplier-bank change, Northstar should control who can invoke it, preserve the prompt and source record, test the output against authorised vendor data, require independent approval and log exceptions. A human click is not an effective review unless the reviewer can see what was checked. ## Current liquidity issue: supplier finance Supplier-finance arrangements can make a trade payable look operational while a finance provider pays the supplier early. Amendments to IAS 7 and IFRS 7, effective for annual periods beginning on or after 1 January 2024, require added disclosures about [supplier finance arrangements](https://www.ifrs.org/news-and-events/news/2023/05/iasb-increases-transparency-of-companies-supplier-finance/){rel=""nofollow""}. For analysis ask: - what obligations are included and where they are presented; - payment-term ranges; - non-cash changes and balance roll-forwards; - whether longer payment timing is masking financing dependence. ## Quick check Why is a two-person payment approval weak if both approvers share one login? ::legacy-spoiler{title="Answer"} The system cannot attribute actions or enforce independent authorisation. Shared credentials collapse segregation and weaken the audit trail. :: ## Primary sources - [IAS 7 Statement of Cash Flows materials](https://www.ifrs.org/issued-standards/list-of-standards/ias-7-statement-of-cash-flows/){rel=""nofollow""} - [COSO Internal Control](https://www.coso.org/internal-control){rel=""nofollow""} [Next: Ratio Analysis](https://www.pengjiaxin.com/../05-analysis-comparison/15-ratio-analysis) # 4. Reporting and Cash []{#_4-reporting-and-cash} Adjusted balances become useful only when they are classified, linked and explained. | Chapter | Main task | Control | | -------------------------------------------------------------------------- | -------------------------------------- | -------------------------------------------- | | [Financial Statements](https://www.pengjiaxin.com/06-financial-statements) | Build Northstar’s linked statement set | Profit, equity, cash and balance-sheet links | | [Cash and Internal Control](https://www.pengjiaxin.com/14-cash-control) | Reconcile bank and book evidence | Independent review and follow-up | ## Preparation Bring the distinction between: - profit and cash; - current and non-current; - gross and net carrying amounts; - primary statements and note disclosures. [Start with Financial Statements](https://www.pengjiaxin.com/06-financial-statements). # Ratio Analysis []{#ratio-analysis} ## Start with a question Northstar's revenue rose, but what did that growth mean for the business? Examine margins, asset use and cash conversion, then consider whether the business can continue to finance its growth. ### Condensed data, £000 | | 2025 | 2026 | | ------------------- | ---: | ---: | | Revenue | 500 | 600 | | Gross profit | 210 | 240 | | Operating profit | 70 | 90 | | Net income | 47 | 60 | | Operating cash flow | — | 65 | | Current assets | 190 | 250 | | Current liabilities | 105 | 125 | | Cash | 45 | 60 | | Receivables | 65 | 90 | | Inventory | 80 | 100 | | Trade payables | 65 | 80 | | Total assets | 400 | 530 | | Debt | 120 | 160 | | Equity | 150 | 200 | 2026 purchases are £380,000: cost of sales £360,000 + closing inventory £100,000 − opening inventory £80,000. Capital expenditure is £80,000. ## Set the measurement rules first Use the same currency scale and accounting period in each comparison. A margin compares two period flows; a current ratio compares two balances at the same date. Returns and turnover compare a period flow with the resources used to generate it, so an average balance is usually more informative than a single closing balance. Here the average is opening plus closing divided by two; a seasonal business may need monthly averages. Define each ratio before comparing it: does debt mean interest-bearing borrowings or all liabilities, and which assets count as quick assets? The name alone may not tell you. If a denominator is zero, report the ratio as undefined. Negative or very small equity can also make ROE misleading, so explain the underlying balances before using the result to rank performance. ## 1. Profitability: locate the layer | Ratio | 2025 | 2026 | Initial reading | | ---------------- | ----: | ----: | -------------------------------------------------- | | Gross margin | 42.0% | 40.0% | Product/input economics weakened by 2 points | | Operating margin | 14.0% | 15.0% | Other operating costs grew slower than revenue | | Net margin | 9.4% | 10.0% | Financing and tax did not erase the operating gain | Do not stop at “margin improved.” Gross margin fell while operating margin rose. Investigate price, mix, component costs, production efficiency and operating-cost scale separately. ### Turn a percentage into an explanation Northstar's gross profit rose from £210,000 to £240,000, but revenue grew faster: 20.0% versus gross profit growth of 14.3%. Consequently, gross margin fell from 42% to 40%: **2 percentage points**, or a 4.8% decline relative to the old margin. These are different descriptions, so name the unit. At the old 42% margin, £600,000 of revenue would produce £252,000 of gross profit. Actual gross profit is £12,000 below that benchmark. The gap gives you a specific amount to investigate, but does not by itself establish overspending: selling prices, product mix and input costs could each explain part of it. ## 2. Liquidity: inspect composition | Ratio | 2025 | 2026 | | ------------- | ---------------------: | ---------------------: | | Current ratio | 190 / 105 = 1.81 | 250 / 125 = 2.00 | | Quick ratio | (45 + 65) / 105 = 1.05 | (60 + 90) / 125 = 1.20 | There is no universal “healthy 2:1.” A supermarket and a project contractor have different working-capital cycles. To interpret the ratio, check receivable ageing, inventory saleability, seasonality, unused facilities and when liabilities fall due. ## 3. Working-capital cycle: use the right flow Using averages for 2026 and total sales as a disclosed proxy because credit-sales data is unavailable: | Measure | Calculation | Days | | ------------------------- | ------------------------------------------------ | -------: | | DIO | 365 × average inventory £90 / cost of sales £360 | 91.3 | | DSO | 365 × average receivables £77.5 / sales £600 | 47.1 | | DPO | 365 × average payables £72.5 / purchases £380 | 69.6 | | **Cash conversion cycle** | DIO + DSO − DPO | **68.8** | Use credit sales for DSO and credit purchases for DPO when available. Total sales and cost of sales are proxies, not automatically correct denominators. The estimate of 68.8 days does not establish a trend: without the 2024 opening balances, we cannot calculate a comparable figure for the preceding year. Describe it as a “current estimate,” rather than concluding that the cycle has “deteriorated.” ## 4. Returns: decompose ROE Using average assets of £465 and average equity of £175: [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[Net margin]{.mord}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[[Asset turnover]{.mord}]{.mord.text}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[[Equity multiplier]{.mord}]{.mord.text}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[60/600]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[10.0%]{.mord}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[600/465]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1.29]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[465/175]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[2.66]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:4.3149em;vertical-align:-1.9074em;"}[[[[[[[[]{.pstrut style="height:3.3214em;"}[[[ROE]{.mord}]{.mord.text}]{.mord}]{style="top:-4.4074em;"}[[]{.pstrut style="height:3.3214em;"}[]{.mord}]{style="top:-2.1em;"}]{.vlist style="height:2.4074em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9074em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.3214em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[600]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[60]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[465]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[600]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[175]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[465]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-4.4074em;"}[[]{.pstrut style="height:3.3214em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[175]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[60]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[34.3%]{.mord}]{.mord}]{style="top:-2.1em;"}]{.vlist style="height:2.4074em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9074em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ROE combines operations and financing. A higher equity multiplier can lift ROE while also increasing risk. ## 5. Cash cross-check - Operating cash flow / net income = 65 / 60 = **1.08**. - A common management-defined free-cash-flow proxy is CFO − capex = 65 − 80 = **−£15,000**. Both results need further interpretation: - CFO can exceed profit because of depreciation or temporary working-capital movements. - Negative free cash flow can indicate growth investment or distress. - “Free cash flow” is not a single IFRS/US GAAP subtotal; define and reconcile it. ## Recalculate and stress-test ::pyodide --- code64: ZGF0YSA9IHsKICAgICJyZXZlbnVlIjogNjAwLAogICAgImNvZ3MiOiAzNjAsCiAgICAib3BlcmF0aW5nX3Byb2ZpdCI6IDkwLAogICAgIm5ldF9pbmNvbWUiOiA2MCwKICAgICJjZm8iOiA2NSwKICAgICJjYXBleCI6IDgwLAogICAgImFzc2V0c19vcGVuIjogNDAwLAogICAgImFzc2V0c19jbG9zZSI6IDUzMCwKICAgICJlcXVpdHlfb3BlbiI6IDE1MCwKICAgICJlcXVpdHlfY2xvc2UiOiAyMDAsCiAgICAiY2FzaF9jbG9zZSI6IDYwLAogICAgImFyX29wZW4iOiA2NSwKICAgICJhcl9jbG9zZSI6IDkwLAogICAgImludmVudG9yeV9vcGVuIjogODAsCiAgICAiaW52ZW50b3J5X2Nsb3NlIjogMTAwLAogICAgImFwX29wZW4iOiA2NSwKICAgICJhcF9jbG9zZSI6IDgwLAogICAgImN1cnJlbnRfYXNzZXRzIjogMjUwLAogICAgImN1cnJlbnRfbGlhYmlsaXRpZXMiOiAxMjUsCn0KCmF2ZXJhZ2UgPSBsYW1iZGEgb3BlbmluZywgY2xvc2luZzogKG9wZW5pbmcgKyBjbG9zaW5nKSAvIDIKcHVyY2hhc2VzID0gZGF0YVsiY29ncyJdICsgZGF0YVsiaW52ZW50b3J5X2Nsb3NlIl0gLSBkYXRhWyJpbnZlbnRvcnlfb3BlbiJdCgpyYXRpb3MgPSB7CiAgICAiR3Jvc3MgbWFyZ2luIjogKGRhdGFbInJldmVudWUiXSAtIGRhdGFbImNvZ3MiXSkgLyBkYXRhWyJyZXZlbnVlIl0sCiAgICAiT3BlcmF0aW5nIG1hcmdpbiI6IGRhdGFbIm9wZXJhdGluZ19wcm9maXQiXSAvIGRhdGFbInJldmVudWUiXSwKICAgICJOZXQgbWFyZ2luIjogZGF0YVsibmV0X2luY29tZSJdIC8gZGF0YVsicmV2ZW51ZSJdLAogICAgIlJPQSI6IGRhdGFbIm5ldF9pbmNvbWUiXSAvIGF2ZXJhZ2UoZGF0YVsiYXNzZXRzX29wZW4iXSwgZGF0YVsiYXNzZXRzX2Nsb3NlIl0pLAogICAgIlJPRSI6IGRhdGFbIm5ldF9pbmNvbWUiXSAvIGF2ZXJhZ2UoZGF0YVsiZXF1aXR5X29wZW4iXSwgZGF0YVsiZXF1aXR5X2Nsb3NlIl0pLAogICAgIkN1cnJlbnQgcmF0aW8iOiBkYXRhWyJjdXJyZW50X2Fzc2V0cyJdIC8gZGF0YVsiY3VycmVudF9saWFiaWxpdGllcyJdLAogICAgIkNGTyAvIG5ldCBpbmNvbWUiOiBkYXRhWyJjZm8iXSAvIGRhdGFbIm5ldF9pbmNvbWUiXSwKfQoKZm9yIG5hbWUsIHZhbHVlIGluIHJhdGlvcy5pdGVtcygpOgogICAgc3VmZml4ID0gIiUiIGlmIG5hbWUgaW4geyJHcm9zcyBtYXJnaW4iLCAiT3BlcmF0aW5nIG1hcmdpbiIsICJOZXQgbWFyZ2luIiwgIlJPQSIsICJST0UifSBlbHNlICJ4IgogICAgc2hvd24gPSB2YWx1ZSAqIDEwMCBpZiBzdWZmaXggPT0gIiUiIGVsc2UgdmFsdWUKICAgIHByaW50KGYie25hbWU6MjJ9IHtzaG93bjo4LjJmfXtzdWZmaXh9IikKCmRpbyA9IDM2NSAqIGF2ZXJhZ2UoZGF0YVsiaW52ZW50b3J5X29wZW4iXSwgZGF0YVsiaW52ZW50b3J5X2Nsb3NlIl0pIC8gZGF0YVsiY29ncyJdCmRzbyA9IDM2NSAqIGF2ZXJhZ2UoZGF0YVsiYXJfb3BlbiJdLCBkYXRhWyJhcl9jbG9zZSJdKSAvIGRhdGFbInJldmVudWUiXQpkcG8gPSAzNjUgKiBhdmVyYWdlKGRhdGFbImFwX29wZW4iXSwgZGF0YVsiYXBfY2xvc2UiXSkgLyBwdXJjaGFzZXMKcHJpbnQoZiJcbkRJTyB7ZGlvOi4xZn0gZGF5czsgRFNPIHtkc286LjFmfTsgRFBPIHtkcG86LjFmfTsgQ0NDIHtkaW8gKyBkc28gLSBkcG86LjFmfSIpCnByaW50KGYiRGVmaW5lZCBGQ0YgcHJveHk6IMKje2RhdGFbJ2NmbyddIC0gZGF0YVsnY2FwZXgnXTosLjBmfWsiKQ== layout: vertical locale: en title: Northstar ratio and cash-cycle audit --- :: ## Real-report check Unilever’s [2025 Annual Report](https://www.unilever.com/files/unilever-annual-report-and-accounts-2025.pdf){rel=""nofollow""} reported turnover down 3.8% while underlying sales growth was positive, with currency and portfolio effects explaining much of the difference. This is a useful lesson: - reported growth and management-defined growth answer different questions; - a non-GAAP measure requires definition and reconciliation; - volume, price, currency and disposals should not be collapsed into one label. Research also warns against one universal earnings-quality proxy. Dechow, Ge and Schrand’s [review](https://doi.org/10.1016/j.jacceco.2010.09.001){rel=""nofollow""} concludes that quality depends on the decision context; Sloan’s [accrual study](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2598){rel=""nofollow""} motivates separating cash and accrual components rather than blindly “trusting cash.” ## A five-sentence analysis template 1. State the movement and comparison. 2. Decompose the numerator and denominator. 3. Link the movement to an operational hypothesis. 4. Cross-check cash, notes and accounting policy. 5. State missing evidence and the next test. For example: “Gross margin fell 2 percentage points despite higher gross profit. Revenue grew faster than gross profit, leaving £12,000 less gross profit than a constant-margin benchmark. A shift toward lower-margin models is one possible explanation. I would compare model-level prices, volumes and unit costs, then check inventory valuation. Those data are not supplied, so the cause remains a hypothesis.” Apply the same method to the [comparative-ratio exercise](https://www.pengjiaxin.com/../../foundation/03-decision-workshop). For collection and payment denominator conventions, see [ACCA's working-capital analysis](https://www.accaglobal.com/gb/en/student/exam-support-resources/fundamentals-exams-study-resources/f9/technical-articles/wcm.html){rel=""nofollow""}. ## Quick check Can you conclude that Northstar collected customers more slowly in 2026 because DSO is 47.1 days? ::legacy-spoiler{title="Answer"} No. You need a comparable prior-period DSO and consistent credit-sales data. The current estimate can be benchmarked later, but no trend is established from one period. :: [Next: IFRS versus US GAAP](https://www.pengjiaxin.com/25-ifrs-gaap) # IFRS versus US GAAP []{#ifrs-versus-us-gaap} **Comparison date: 1 August 2026.** This is a high-level teaching map, not an exhaustive conversion manual. Do not describe IFRS as “principles” and US GAAP as “rules” and stop. Compare the standard, scope, policy election, transition date and actual accounting consequence. ## High-impact differences | Topic | IFRS baseline | US GAAP baseline | Analytical consequence | | --------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | | Revenue | IFRS 15 five-step model | Topic 606 substantially converged model | Application and disclosure differences remain; inspect contract terms | | Inventory formulas | FIFO or weighted average for interchangeable items; no LIFO | LIFO is permitted; other methods also used | Inflation can change cost of sales, inventory, tax and ratios | | Inventory write-down | Lower of cost and NRV; reversals permitted up to original loss | Measurement depends on method; write-down reversals generally prohibited | Recovery can raise IFRS profit but not US GAAP profit | | Development | Capitalise after IAS 38’s six criteria are demonstrated | R\&D generally expensed, with topic-specific software exceptions | IFRS may show higher assets/profit in the development phase | | PPE revaluation | Cost or class-wide revaluation model | Ordinary PPE generally remains at historical cost | Equity, assets, depreciation and returns differ | | Long-lived asset impairment | Compare with recoverable amount; reversals possible except goodwill | Held-and-used model uses an undiscounted recoverability screen then fair value; no reversal | Timing and amount of losses can differ | | Lessee accounting | Broad single model plus short-term/low-value elections | Operating and finance classifications; no broad low-value exemption | Expense pattern and cash-flow classification differ | | Credit losses | IFRS 9 staging plus simplified trade-receivable approach | Topic 326 CECL lifetime model for assets in scope | Timing and forecast architecture differ | | Cash-flow classification | Policy choices exist for specified interest/dividend flows | More prescriptive classifications | Operating cash flow may differ without economic cash changing | | Deferred tax assets | Recognise subject to probability requirements and exceptions | Recognise, then use a valuation allowance under the more-likely-than-not model | Presentation and recognition mechanics differ | “More conservative” is not a framework-wide conclusion. A treatment may reduce profit in one period and increase it later. ## Conversion example 1: LIFO reserve A US GAAP company reports: - LIFO inventory £80m; - closing LIFO reserve £12m; - opening LIFO reserve £8m; - LIFO cost of sales £300m. Approximate FIFO conversion, ignoring tax: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[FIFO inventory]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[80]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[12]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£92]{.mord}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[FIFO cost of sales]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[300]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[12]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[8]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£296]{.mord}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} FIFO pre-tax income is £4m higher because the reserve increased by £4m. For a real comparison, also adjust deferred tax and inspect reserve disclosures and acquisitions. ## Conversion example 2: development expenditure Northstar spends £90,000 after meeting IAS 38’s development criteria. | Current-period effect before amortisation | IFRS fact pattern | Typical US GAAP fact pattern | | ----------------------------------------- | ----------------: | ---------------------------: | | Asset recognised | £90,000 | £0 | | Development expense | £0 | £90,000 | | Current pre-tax profit difference | +£90,000 | Baseline | This does not mean IFRS creates £90,000 more lifetime profit. IFRS later records amortisation and possible impairment; timing and carrying amounts differ. US software guidance may change the US conclusion. ## Current presentation developments - [IFRS 18](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-18-presentation-and-disclosure-in-financial-statements/){rel=""nofollow""} applies from annual periods beginning on or after 1 January 2027 and introduces defined subtotals and management-defined performance measure disclosures. - FASB [ASU 2024-03](https://fasb.org/page/PageContent?pageId=%2Fprojects%2Frecently-completed-projects%2Fdisaggregation-income-statement-expenses.html){rel=""nofollow""} adds expense disaggregation for public business entities from specified periods beginning after 15 December 2026. Both respond to user demand for better performance detail, but they are not the same requirement and their effective-date language differs. ## A comparison workflow 1. Confirm reporting framework and period. 2. Read the policy note; do not infer method from industry. 3. Identify the exact recognition or measurement difference. 4. Quantify balance-sheet, profit, cash-flow and tax effects. 5. Reverse only what the disclosure supports. 6. Keep residual uncertainty visible. ## Quick check Does capitalising development under IFRS change project cash flow at the expenditure date? ::legacy-spoiler{title="Answer"} No. The cash payment is unchanged. Capitalisation changes the timing of expense recognition and carrying amounts, which can affect ratios, deferred tax and later impairment/amortisation. :: ## Primary starting points - [IFRS issued standards](https://www.ifrs.org/issued-standards/list-of-standards/){rel=""nofollow""} - [FASB Accounting Standards Updates](https://fasb.org/standards/accounting-standard-updates){rel=""nofollow""} - [FASB Revenue Recognition](https://fasb.org/projects/recently-completed-projects/revenue-recognition-summary){rel=""nofollow""} - [FASB Credit Losses](https://fasb.org/projects/recently-completed-projects/accounting-standards-update-2016-13-financial-instrument-credit-losses){rel=""nofollow""} [Next: Management Accounting](https://www.pengjiaxin.com/../../management-accounting/) # 5. Analysis and Comparison []{#_5-analysis-and-comparison} Analysis is not formula collection. It is a claim-evidence process: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[calculate]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[compare]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[decompose]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[cross-check]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[qualify]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Chapter | Output | | -------------------------------------------------------------- | --------------------------------------------------------------------- | | [Ratio Analysis](https://www.pengjiaxin.com/15-ratio-analysis) | Northstar profitability, working-capital, leverage and cash narrative | | [IFRS versus US GAAP](https://www.pengjiaxin.com/25-ifrs-gaap) | Dated framework comparison and conversion examples | ## A credible conclusion states - the numerator and denominator; - the comparison base; - the business and accounting drivers; - a cash or note cross-check; - what cannot be concluded from the available evidence. [Start with Ratio Analysis](https://www.pengjiaxin.com/15-ratio-analysis). # Financial Accounting []{#financial-accounting} Financial accounting converts business evidence into reports for investors, lenders and other users. :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsiRXZlbnQgYW5kIGV2aWRlbmNlIl0gLS0+IEJbIkpvdXJuYWwiXQogIEIgLS0+IENbIkxlZGdlciBhbmQgdHJpYWwgYmFsYW5jZSJdCiAgQyAtLT4gRFsiTWVhc3VyZW1lbnQgYW5kIGFkanVzdG1lbnRzIl0KICBEIC0tPiBFWyJGaW5hbmNpYWwgc3RhdGVtZW50cyJdCiAgRSAtLT4gRlsiQW5hbHlzaXMgYW5kIGNvbXBhcmlzb24iXQ==" locale="en"} ## The five-part route | Module | Central question | Northstar output | | ------------------------------------------------------------------------ | ---------------------------------------------------- | --------------------------------- | | [1. Foundations](https://www.pengjiaxin.com/01-foundations/) | What is the economic event and why is it reportable? | Element and period analysis | | [2. Recording](https://www.pengjiaxin.com/02-recording-transactions/) | Which accounts increase or decrease? | Journal, ledger and trial balance | | [3. Measurement](https://www.pengjiaxin.com/03-measurement-adjustments/) | What amount belongs at the reporting date? | Adjustments and carrying amounts | | [4. Reporting and cash](https://www.pengjiaxin.com/04-reporting-cash/) | How do adjusted balances link across statements? | Linked statement set | | [5. Analysis](https://www.pengjiaxin.com/05-analysis-comparison/) | What claim can the numbers support? | Ratio tree and comparison memo | ## A strong answer has four layers 1. **Fact:** what happened in ordinary business language. 2. **Rule:** the recognition, measurement or presentation principle. 3. **Mechanics:** calculation and entry. 4. **Consequence:** effect on profit, cash, assets, liabilities and interpretation. Example: Northstar receives cash before servicing a bike. | Layer | Answer | | ----------- | --------------------------------------------------------------------------------- | | Fact | The customer paid before Northstar performed the maintenance. | | Rule | Revenue follows transfer of the promised service, not cash receipt alone. | | Mechanics | Debit cash; credit a contract liability, then release it as service is delivered. | | Consequence | Cash rises immediately; revenue and profit arise over the service period. | ## Reporting baseline IFRS is the main teaching baseline. US GAAP differences are introduced only where they change the conclusion and are consolidated in [IFRS versus US GAAP](https://www.pengjiaxin.com/05-analysis-comparison/25-ifrs-gaap). Always check jurisdiction, entity type and effective date before applying an introductory summary in practice. ## Start Begin with [why accounting information exists](https://www.pengjiaxin.com/01-foundations/01-objectives-qualitative-characteristics). # Adjustments, Trial Balance and Statements []{#adjustments-trial-balance-and-statements} An adjustment connects what the ledger currently records with what should be reported at the period end. To understand it, separate the amount already entered, the balance required and the difference still to record. That distinction explains both the journal entry and its effect on the statements. The worked example follows **Harbour Cycle Supplies**, a fictional sole trader, for the year ended **31 December 20X2**. All amounts are in pounds. This original case is independent of Northstar and the other practice datasets. Ignore VAT, income tax and interest; assume no other transactions or adjustments. The £20,000 loan falls due more than twelve months after the reporting date. Follow the workings into the trial balance and then into profit, capital and financial position. If the debit and credit directions are unfamiliar, first review [double-entry](https://www.pengjiaxin.com/../financial-accounting/02-recording-transactions/04-double-entry-dr-cr). ## The relationship behind the entries Prepaid insurance, inventory and equipment all illustrate how a cost can remain in an asset before being recognised as an expense. Their routes into expense differ: insurance follows the coverage period, inventory becomes cost of sales when sold, and depreciation allocates equipment's depreciable cost over its useful life. The accounting method and the business facts determine the route. An unpaid wage works from the other direction: the employee's work belongs to this period even though payment comes later. Recording the expense and liability together keeps the period's performance connected to the closing financial position. The example below shows why neither an adjustment nor an expense necessarily means a current cash payment. ## 1. Unadjusted trial balance This business uses **periodic inventory**: the inventory account still contains opening inventory, and purchases/returns have separate accounts. No cost-of-sales entry has yet been made. A physical count supplies closing inventory. Do not mix this method with the perpetual-inventory entries in other chapters. | Account | Debit £ | Credit £ | | ------------------------ | ----------: | ----------: | | Cash | 12,000 | 0 | | Trade receivables | 18,000 | 0 | | Opening inventory | 10,000 | 0 | | Equipment at cost | 40,000 | 0 | | Purchases | 36,000 | 0 | | Sales returns | 2,000 | 0 | | Insurance expense | 6,000 | 0 | | Wages expense | 14,000 | 0 | | Utilities expense | 3,000 | 0 | | Drawings | 4,000 | 0 | | Opening capital | 0 | 40,000 | | Bank loan | 0 | 20,000 | | Trade payables | 0 | 15,000 | | Sales | 0 | 64,000 | | Accumulated depreciation | 0 | 4,000 | | Purchase returns | 0 | 2,000 | | **Total** | **145,000** | **145,000** | Additional information: 1. The £6,000 insurance payment covers September 20X2 to February 20X3, six months equally. It was all recorded as expense. 2. Wages of £1,000 earned in December will be paid in January and have not been recorded. 3. Equipment was available for use throughout this year. Its cost is £40,000, residual value £4,000 and useful life six years. Use straight-line depreciation; the opening accumulated depreciation is already in the trial balance. 4. An additional £1,200 of this year's credit purchases was returned before year-end. Neither the return nor the reduction of the outstanding payable has been recorded. 5. The inventory count values goods on hand at £12,000 at cost, after the return. Assume no write-down is needed. ## 2. Reading the worked example Work through W1–W5 in order, opening the explanations as needed. For each entry, identify the amount already recorded and the required closing balance. Then follow the revised balances into the statements. When revising, close the workings and try to reconstruct them. If totals disagree, trace the difference rather than inserting an unexplained cash or capital balance. ## 3. Workings and entries ::legacy-spoiler{title="W1–W4: timing, depreciation and returns"} | Working | Calculation | Debit | Credit | | ------------------ | ------------------------------------------------------------------------- | --------------------------- | ------------------------------- | | W1 Insurance | £6,000 × 2/6 = £2,000 belongs to next year; this year's expense is £4,000 | Prepaid insurance £2,000 | Insurance expense £2,000 | | W2 Wages | £14,000 + £1,000 = £15,000 expense | Wages expense £1,000 | Accrued wages £1,000 | | W3 Depreciation | (£40,000 − £4,000) / 6 = £6,000; accumulated depreciation becomes £10,000 | Depreciation expense £6,000 | Accumulated depreciation £6,000 | | W4 Purchase return | Returns become £3,200; payables become £13,800 | Trade payables £1,200 | Purchase returns £1,200 | None of these four adjustments changes cash at the adjustment date. The insurance has already been paid and the wages will be paid later. Depreciation allocates the equipment's cost, while the purchase return reduces the amount owed on an unpaid invoice. Depreciation is an allocation of depreciable cost, not a forecast of market value. Do not infer a tax deduction from this simplified accounting calculation. See the [IAS 16 overview](https://www.ifrs.org/issued-standards/list-of-standards/ias-16-property-plant-and-equipment/){rel=""nofollow""} for the wider recognition and measurement context. :: ::legacy-spoiler{title="W5: periodic inventory and cost of sales"} [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[Cost of sales]{.mord}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[36]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[3]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[200]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[12]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£30]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[800]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For this case, one combined adjustment transfers net purchases and updates the inventory balance: | Account | Debit £ | Credit £ | | ------------------------------------------- | ---------: | ---------: | | Cost of sales | 30,800 | 0 | | Inventory: increase from £10,000 to £12,000 | 2,000 | 0 | | Purchase returns: clear the credit balance | 3,200 | 0 | | Purchases: clear the debit balance | 0 | 36,000 | | **Total** | **36,000** | **36,000** | After this entry, the inventory account shows **closing** inventory and the adjusted trial balance includes cost of sales. Closing inventory has already been allowed for in that cost-of-sales figure, so deducting it again would misstate profit. :: ## 4. Adjusted trial balance ::legacy-spoiler{title="Check all balances after W1–W5"} | Account | Debit £ | Credit £ | | ------------------------ | ----------: | ----------: | | Cash | 12,000 | 0 | | Trade receivables | 18,000 | 0 | | Closing inventory | 12,000 | 0 | | Equipment at cost | 40,000 | 0 | | Prepaid insurance | 2,000 | 0 | | Cost of sales | 30,800 | 0 | | Sales returns | 2,000 | 0 | | Insurance expense | 4,000 | 0 | | Wages expense | 15,000 | 0 | | Utilities expense | 3,000 | 0 | | Depreciation expense | 6,000 | 0 | | Drawings | 4,000 | 0 | | Opening capital | 0 | 40,000 | | Bank loan | 0 | 20,000 | | Trade payables | 0 | 13,800 | | Sales | 0 | 64,000 | | Accumulated depreciation | 0 | 10,000 | | Accrued wages | 0 | 1,000 | | **Total** | **148,800** | **148,800** | Purchases and purchase returns now have zero balances. Income, expenses and drawings have not yet been closed into capital. :: ## 5. Profit, capital and financial position ::legacy-spoiler{title="Reconciled statements"} **Income statement for the year ended 31 December 20X2** | Item | £ | | ------------------------------------------ | ---------: | | Sales less sales returns: £64,000 − £2,000 | 62,000 | | Cost of sales | (30,800) | | **Gross profit** | **31,200** | | Insurance | (4,000) | | Wages | (15,000) | | Utilities | (3,000) | | Depreciation | (6,000) | | **Profit for the year** | **3,200** | **Capital reconciliation:** £40,000 opening capital + £3,200 profit − £4,000 drawings = **£39,200 closing capital**. Drawings reduce the sole trader's capital; they are not wages or another business expense. A company's dividends and equity presentation require their own treatment. **Statement of financial position at 31 December 20X2** | Item | £ | | ---------------------------------------------------------- | ---------: | | Equipment: £40,000 cost − £10,000 accumulated depreciation | 30,000 | | Inventory | 12,000 | | Trade receivables | 18,000 | | Prepaid insurance | 2,000 | | Cash | 12,000 | | **Total assets** | **74,000** | | Trade payables, current | 13,800 | | Accrued wages, current | 1,000 | | Bank loan, non-current | 20,000 | | **Total liabilities** | **34,800** | | Closing capital | 39,200 | | **Liabilities plus capital** | **74,000** | Profit of £3,200, closing cash of £12,000 and drawings of £4,000 measure different things. To prepare a historical cash-flow statement, you would also need opening cash and the full cash movements. Those details are not supplied and cannot be inferred from profit alone. :: ## 6. Independent checks 1. If the £1,000 wage accrual were omitted, would the trial balance still agree? State the errors in profit, liabilities and capital. 2. Instead of two months, suppose three of the six insurance months belong to next year. Recalculate insurance expense, profit, assets and closing capital; keep every other fact unchanged. 3. In a separate mini-case, equipment costs £18,000, residual value is £3,000 and life is five years. Calculate annual straight-line depreciation. Separately, calculate the first two years at 25% reducing balance, assuming the residual-value floor is not reached. ::legacy-spoiler{title="Feedback"} 1. It would still agree. Wages expense and liabilities would be £1,000 too low; profit and closing capital would be £1,000 too high. Cash would be unchanged. 2. Prepayment and expense are each £3,000. Profit becomes £4,200; assets £75,000; closing capital £40,200. Liabilities remain £34,800, so the statement still reconciles. 3. Straight-line: (£18,000 − £3,000) / 5 = £3,000 per year. Reducing balance: £4,500 in year 1, then £13,500 × 25% = £3,375 in year 2; closing carrying amount is £10,125. Do not subtract both methods from the same asset. :: ## What to retain and where to go next The trial balance checks equality of debits and credits; the statements organise those balances by purpose. Neither check proves that every event has been recorded in the correct period. The omitted-wages example remains balanced precisely because both sides of the adjustment are missing. Take that distinction into [financial-statement analysis](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis): a ratio inherits the recognition and measurement choices in its inputs. To understand why an asset's reported amount can change for reasons beyond cost allocation, continue with [measurement and adjustments](https://www.pengjiaxin.com/../financial-accounting/03-measurement-adjustments/). [Next: Cash budgets](https://www.pengjiaxin.com/02-cash-budget) · [Return to the foundation route](https://www.pengjiaxin.com/) # Cash Budgets and Payment Timing []{#cash-budgets-and-payment-timing} A cash budget forecasts when money will be received and paid, while a historical cash-flow statement explains cash movements that have already occurred. An income statement reports recognised income and expenses. Each serves a different purpose, so keep both the timing and the measure in mind when reading it. The worked example connects collection and payment schedules to monthly cash balances and funding needs. This original **Harbour planning scenario** is separate from the [financial-records case](https://www.pengjiaxin.com/01-adjustments-to-statements), so use only the opening balances below. ## The idea behind the schedule A sales forecast describes when sales occur; a collection schedule translates those sales into receipt dates. Credit terms create a delay between the two. The same reasoning applies to purchases and supplier payments. Keep purchases separate from cost of sales: payment terms attach to what was bought, while cost of sales reflects inventory sold. Once receipts and payments are placed in the correct months, carry the remaining cash into the next month. This is why a positive flow in one month may be insufficient to repair an earlier shortage. Financing is a further step: it changes cash and borrowing, while leaving the original customer and supplier schedules visible. ## 1. Forecast and assumptions All amounts are in pounds. Forty percent of each month's sales is collected immediately and 60% in the following month. Half of purchases is paid in the purchase month and half in the following month. Assume no older receivables/payables, defaults, returns or other receipts/payments. | Forecast | December | January | February | March | | ----------------------------- | -------: | ------: | -------: | -----: | | Sales | 20,000 | 30,000 | 36,000 | 40,000 | | Purchases | 12,000 | 18,000 | 22,000 | 24,000 | | Other operating cash payments | — | 8,000 | 9,000 | 10,000 | | Equipment paid for | — | 0 | 18,000 | 0 | Opening January cash is **£5,000**. Other operating payments cover wages, rent and other operating cash costs, excluding the supplier payments and equipment shown separately. They also exclude non-cash depreciation. Ignore tax, interest and financing fees for this exercise. These exclusions are modelling assumptions, not claims about real borrowing terms. In each schedule, trace the cash movement back to the month's sales or purchases that generated it. See [OpenStax's financial-budget discussion](https://openstax.org/books/principles-managerial-accounting/pages/7-3-prepare-financial-budgets){rel=""nofollow""} for the relationship between collection, payment and financing schedules. ## 2. Receipts and payments [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[[Receipts]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0.40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[Sales]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[+]{.mord}[0.60]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[Sales]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[[Supplier payments]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0.50]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[Purchases]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[+]{.mord}[0.50]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[Purchases]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::legacy-spoiler{title="Schedule answers"} | Cash item | January £ | February £ | March £ | | ------------------------------ | ---------: | ---------: | ---------: | | Current-month cash sales | 12,000 | 14,400 | 16,000 | | Prior-month credit collections | 12,000 | 18,000 | 21,600 | | **Total receipts** | **24,000** | **32,400** | **37,600** | | Current-month purchases paid | 9,000 | 11,000 | 12,000 | | Prior-month purchases paid | 6,000 | 9,000 | 11,000 | | **Supplier payments** | **15,000** | **20,000** | **23,000** | | Other operating payments | 8,000 | 9,000 | 10,000 | | Equipment | 0 | 18,000 | 0 | | **Total payments** | **23,000** | **47,000** | **33,000** | January's schedule includes the £12,000 receivable and £6,000 payable arising in December. At the end of March, £24,000 of March sales is still uncollected and £12,000 of March purchases is still unpaid. Those outstanding amounts are not March cash movements, even though the sales and purchases occurred that month. :: ## 3. The unfunded cash position [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[Closing cash]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[Opening cash]{.mord}]{.mord.text}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[+]{.mord}[[Receipts]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[Payments]{.mord}]{.mord.text}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::legacy-spoiler{title="Cash budget before new financing"} | Item | January £ | February £ | March £ | | ------------------------------------ | --------: | ----------: | ----------: | | Opening cash / unfunded position | 5,000 | 6,000 | (8,600) | | Net receipts less payments | 1,000 | (14,600) | 4,600 | | **Closing cash / unfunded position** | **6,000** | **(8,600)** | **(4,000)** | Negative balances show an **unfunded requirement** that the business still needs to address; they do not imply bank approval for an overdraft. March's positive net cash flow reduces the accumulated shortage but does not eliminate it. :: ## 4. Plan financing explicitly Assume an illustrative facility can be drawn when needed, with no opening borrowing, and management wants at least **£3,000 at each month-end**. Borrow only enough to meet that minimum; repay available cash above it, up to the amount outstanding. Ignore interest/fees as specified above. In practice, availability, covenants and intra-month payment dates also need checking. ::legacy-spoiler{title="Funding schedule"} | Item | January £ | February £ | March £ | | ---------------------------------- | --------: | ---------: | --------: | | Opening cash after prior financing | 5,000 | 6,000 | 3,000 | | Net receipts less payments | 1,000 | (14,600) | 4,600 | | Cash before this month's financing | 6,000 | (8,600) | 7,600 | | New borrowing | 0 | 11,600 | 0 | | Principal repayment | 0 | 0 | (4,600) | | **Closing cash** | **6,000** | **3,000** | **3,000** | | **Closing borrowing** | **0** | **11,600** | **7,000** | February needs £11,600, not merely £8,600, to preserve the £3,000 minimum. March starts with the financed £3,000 balance. Do not carry the unfunded −£8,600 into the financed schedule as well. :: ## 5. Recalculate the unfunded budget The optional cell below reproduces Section 3. Try changing the cash-sales share or equipment payment. Explain how the cash movements change, then revise the financing plan. The model covers three months and assumes one-month credit terms. ::pyodide --- code64: c2FsZXMgPSBbMjBfMDAwLCAzMF8wMDAsIDM2XzAwMCwgNDBfMDAwXSAgIyBEZWNlbWJlciB0byBNYXJjaApwdXJjaGFzZXMgPSBbMTJfMDAwLCAxOF8wMDAsIDIyXzAwMCwgMjRfMDAwXQpvcGVyYXRpbmcgPSBbOF8wMDAsIDlfMDAwLCAxMF8wMDBdCmVxdWlwbWVudCA9IFswLCAxOF8wMDAsIDBdCmNhc2hfc2hhcmUgPSAwLjQwCmNhc2ggPSA1XzAwMAphc3NlcnQgMCA8PSBjYXNoX3NoYXJlIDw9IDEsICJDYXNoLXNhbGVzIHNoYXJlIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAxIgoKcm93cyA9IFtdCmZvciBpLCBtb250aCBpbiBlbnVtZXJhdGUoWyJKYW4iLCAiRmViIiwgIk1hciJdLCBzdGFydD0xKToKICAgIHJlY2VpcHRzID0gY2FzaF9zaGFyZSAqIHNhbGVzW2ldICsgKDEgLSBjYXNoX3NoYXJlKSAqIHNhbGVzW2kgLSAxXQogICAgc3VwcGxpZXJzID0gMC41MCAqIHB1cmNoYXNlc1tpXSArIDAuNTAgKiBwdXJjaGFzZXNbaSAtIDFdCiAgICBwYXltZW50cyA9IHN1cHBsaWVycyArIG9wZXJhdGluZ1tpIC0gMV0gKyBlcXVpcG1lbnRbaSAtIDFdCiAgICBuZXQgPSByZWNlaXB0cyAtIHBheW1lbnRzCiAgICBjYXNoICs9IG5ldAogICAgcm93cy5hcHBlbmQoKHJlY2VpcHRzLCBwYXltZW50cywgbmV0LCBjYXNoKSkKICAgIHByaW50KGYie21vbnRofTogcmVjZWlwdHMgwqN7cmVjZWlwdHM6LC4wZn07IHBheW1lbnRzIMKje3BheW1lbnRzOiwuMGZ9OyAiCiAgICAgICAgICBmIm5ldCDCo3tuZXQ6LC4wZn07IHVuZnVuZGVkIGNsb3NpbmcgwqN7Y2FzaDosLjBmfSIp layout: vertical locale: en title: Monthly cash receipts and payments --- :: ## 6. Delayed-receipt practice Twenty percent of the **£18,000 credit collections due in February** is delayed until March. Other collections, payments and financing assumptions remain unchanged. Recalculate receipts, February borrowing and March repayment. Does the delay change total January–March receipts? ::legacy-spoiler{title="Feedback"} £3,600 moves from February to March. Receipts become £28,800 and £41,200 respectively. February net cash flow is −£18,200; cash before financing is −£12,200, so borrowing is **£15,200** to reach £3,000. March net cash flow is £8,200; repay **£8,200**, leaving cash £3,000 and debt £7,000. Quarterly receipts are unchanged at £94,000, but peak borrowing rises by £3,600. With real interest or fees, unchanged receipts would not guarantee unchanged total costs. A quarterly total alone conceals the February funding problem. :: ## 7. What the example tells us A business starts with £10,000 and has net cash outflow of £3,000. Its closing cash is £7,000: a positive **balance** coexists with a negative **flow**. Conversely, March in Section 3 has a positive flow and negative unfunded balance. Neither observation establishes profit. The delayed-receipt example isolates a timing effect: the same total receipts require more peak borrowing when some cash arrives later. To summarise a cash budget, identify when the shortage occurs, how large it is and what assumption drives it. If you suggest delaying a supplier payment, consider the agreed terms. A month-end surplus also does not rule out a shortage earlier in the month. ## Extension: connect cash timing to growth If purchases and wages must be paid before customers settle their invoices, expanding sales can increase the amount of cash tied up in the operating cycle. Higher sales alone therefore do not establish that the business can finance its growth. The effect depends on margins, inventory, payment terms and the timing of expansion. Use [working-capital ratios](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis) to investigate the collection and payment assumptions, then put those assumptions back into the monthly schedule. The ratios summarise patterns; the schedule locates the shortfall. For a longer-term project, [capital budgeting](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/23-capital-budgeting) adds a separate question: what are the future incremental cash flows worth at the chosen discount rate? [Next: Decision workshop](https://www.pengjiaxin.com/03-decision-workshop) · [Return to the foundation route](https://www.pengjiaxin.com/) # Accounting Decision Workshop []{#accounting-decision-workshop} Choosing a measure begins with the question you want to answer. A cash balance, a profit margin and an NPV describe different aspects of a business; a favourable result in one does not settle the others. The examples below connect each calculation to its purpose and show where further evidence is needed. Each example uses an **independent fictional dataset**, with amounts in pounds. Keep the balances separate from those in other examples and from Northstar. Read the explanations alongside the data, or close the feedback and use the questions for self-checking. ## What each tool contributes - **Cash-flow classification** explains where a change in cash came from. Borrowing can increase cash without creating revenue. - **Ratios** relate selected figures to one another. An unchanged ratio may conceal a change in the composition of its inputs. - **Contribution analysis** shows how sales cover variable and fixed costs under stated assumptions. It does not predict the demand response to a price change. - **Flexible budgets** compare actual costs with budgeted costs at actual activity. A remaining variance is something to investigate, not a complete explanation of its cause. - **Investment appraisal** compares future incremental cash flows. NPV measures value at a required return, while payback focuses on recovery time; neither guarantees the forecast. Keep those distinctions in mind as you read the examples. The aim is to understand why a calculation is suitable for a question and what it leaves unanswered. ## Example 1: Cash-flow classification Opening cash is £4,000. Customers pay £48,000; suppliers receive £25,000 and staff receive £12,000. The business buys equipment for £8,000 cash, receives a £10,000 loan and repays £3,000 of loan principal. These are all the cash movements; there is no interest or tax in this task. Classify operating, investing and financing flows, then reconcile closing cash. Explain why neither a new loan nor the equipment payment is revenue or an immediate expense of the same amount. ::legacy-spoiler{title="Feedback"} Operating cash = £48,000 − £25,000 − £12,000 = **£11,000**. Investing cash = **−£8,000**. Financing cash = £10,000 − £3,000 = **£7,000**. Net increase = £10,000 and closing cash = **£14,000**. The loan creates a liability; equipment is initially an asset. Depreciation is a later allocation, not a second equipment payment. Profit cannot be calculated without revenue, expense and accrual information. Compare the [cash-flow discussion](https://www.pengjiaxin.com/../financial-accounting/04-reporting-cash/06-financial-statements). :: ## Example 2: Ratios and a defensible explanation | Item | Year 1 £ | Year 2 £ | | ------------------- | -------: | -------: | | Revenue | 100,000 | 120,000 | | Gross profit | 40,000 | 42,000 | | Net profit | 8,000 | 6,000 | | Current assets | 30,000 | 40,000 | | Inventory | 12,000 | 25,000 | | Current liabilities | 15,000 | 20,000 | Assume current assets consist only of cash, receivables and inventory. Calculate gross and net margins, current ratio and quick ratio for each year. Consider what the comparison tells a supplier who is deciding whether to offer a longer credit period. Identify two items of further evidence; avoid a universal “safe” ratio threshold. ::legacy-spoiler{title="Feedback"} | Measure | Year 1 | Year 2 | | --------------------------------------------------------------- | -----: | -----: | | Gross margin: gross profit / revenue | 40% | 35% | | Net margin: net profit / revenue | 8% | 5% | | Current ratio: current assets / current liabilities | 2.00 | 2.00 | | Quick ratio: (current assets − inventory) / current liabilities | 1.20 | 0.75 | Revenue rose 20%, but margins fell. Although the current ratio is unchanged, it now relies more heavily on inventory. That warrants a closer look at liquidity, but does not establish that the business will default or that its stock is obsolete. Request receivable ageing and information on inventory sales and obsolescence, then compare payment commitments with the cash forecast. The ratios alone cannot tell you when cash will be collected. See [ratio analysis](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis) for guidance on denominators and comparability. :: ## Example 3: Contribution and a price reduction A repair-kit line sells at £25 per kit, has variable cost £15 per kit and monthly fixed cost £12,000. Expected sales are 1,800 kits. Assume production equals sales and the same cost structure applies up to 2,200 kits. Calculate contribution, break-even, forecast profit, margin of safety in units and as a percentage of forecast sales, and units for £9,000 target profit. Then reduce price by 10%, holding all other assumptions fixed. Recalculate break-even, profit and safety margin. Does a lower price automatically increase profit? ::legacy-spoiler{title="Feedback"} Base contribution is **£10** per kit. Break-even = £12,000 / £10 = **1,200 kits**. Forecast profit = £18,000 − £12,000 = **£6,000**. Safety margin = **600 kits**, or **33.3%** of forecast sales. The £9,000 target requires **2,100 kits**, within the stated range. At £22.50, contribution is £7.50; break-even becomes **1,600 kits**, profit at 1,800 kits is **£1,500**, and safety margin is **200 kits / 11.1%**. Maintaining the old £6,000 profit would need 2,400 kits, outside the assumed 2,200-kit range. Obtain a revised capacity/cost forecast before treating that figure as feasible. A positive safety margin is not evidence that demand risk is low. :: ## Example 4: Compare costs at the same activity The original budget is for 1,000 units. Variable material cost is £8 per unit and variable labour cost £6 per unit. Actual output is 1,200 units, with material cost £10,200 and labour cost £6,900. There are no fixed costs in these two lines. Compute the original budget, the flexible budget at actual output, and each cost variance against the flexible budget. Use **actual cost minus flexible-budget cost**, so a positive result is unfavourable (U) and a negative result favourable (F). Explain why the total alone cannot identify a price or efficiency cause. ::legacy-spoiler{title="Feedback"} | Cost | Original budget £ | Flexible budget £ | Actual £ | Actual minus flexible £ | | --------- | ----------------: | ----------------: | ---------: | ----------------------: | | Materials | 8,000 | 9,600 | 10,200 | 600 U | | Labour | 6,000 | 7,200 | 6,900 | 300 F | | **Total** | **14,000** | **16,800** | **17,100** | **300 U** | Actual costs exceed the original budget by £3,100: £2,800 reflects higher output and £300 remains above the flexible budget. Material prices, waste and specification changes could help explain the difference, but you need quantities and prices to investigate. For labour, you need hours and rates, as well as evidence about quality: a favourable cost total may still conceal quality problems. Continue to [detailed variances](https://www.pengjiaxin.com/../management-accounting/02-planning-control/20-budgeting-variances). :: ## Example 5: Competing investments Two mutually exclusive projects have the same three-year life and assumed risk. Choose at most one. The required return is **10%**, an exercise assumption. Cash flows below are complete incremental project cash flows: no additional tax, working capital, residual value or financing flows are to be added. For NPV, all future flows occur at year-end. | Time | Project A £ | Project B £ | | ---- | ----------: | ----------: | | 0 | (24,000) | (24,000) | | 1 | 10,000 | 2,000 | | 2 | 10,000 | 11,000 | | 3 | 10,000 | 19,000 | 1. Calculate each year's present value and total NPV. Choose on the stated value criterion. 2. Find the IRR using a spreadsheet or the method in [capital budgeting](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/23-capital-budgeting). Check that NPV is close to zero at that rate. 3. State the payback and discounted-payback dates under the **literal year-end receipt assumption**. 4. As a separate approximation, interpolate within the recovery year. For simple payback this assumes cash arrives evenly during that year; discounted-payback interpolation spreads that year's discounted amount evenly. Label these approximations rather than silently changing the timing convention. 5. Give a recommendation, one forecast risk and one reason shorter payback may be valuable even when NPV is lower. ::legacy-spoiler{title="Calculations and recommendation"} [[[]{.katex-mathml}[[[]{.strut style="height:4.3149em;vertical-align:-1.9074em;"}[[[[[[[[]{.pstrut style="height:3.3214em;"}[[[[NPV]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.4074em;"}[[]{.pstrut style="height:3.3214em;"}[]{.mord}]{style="top:-2.1em;"}]{.vlist style="height:2.4074em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9074em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.3214em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[−]{.mord}[24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.1]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-4.4074em;"}[[]{.pstrut style="height:3.3214em;"}[[]{.mord}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.]{.mord}[[1]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.]{.mord}[[1]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-2.1em;"}]{.vlist style="height:2.4074em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9074em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Measure | Project A | Project B | | ----------------------------------------- | ------------: | ------------: | | Year 1 present value £ | 9,090.91 | 1,818.18 | | Year 2 present value £ | 8,264.46 | 9,090.91 | | Year 3 present value £ | 7,513.15 | 14,274.98 | | **NPV £** | **868.52** | **1,184.07** | | IRR, approximately | 12.044% | 12.147% | | Payback with year-end receipts | End of year 3 | End of year 3 | | Discounted payback with year-end receipts | End of year 3 | End of year 3 | | Interpolated simple payback, years | 2.400 | 2.579 | | Interpolated discounted payback, years | 2.884 | 2.917 | For A, simple interpolation is 2 + £4,000 / £10,000 = 2.4 years. Discounted interpolation is 2 + (£24,000 − £9,090.91 − £8,264.46) / £7,513.15 ≈ 2.884 years. Use unrounded present values internally, then round the result. **B has the higher NPV by £315.55** under the supplied assumptions. The result is sensitive to its £19,000 final receipt: a £1,000 shortfall reduces B's NPV by £751.31 to £432.76, reversing the base-case ranking if A is unchanged. A returns more cash earlier, which may matter when liquidity is constrained. Neither a positive NPV nor an IRR above 10% guarantees that the forecast will be achieved. For relevant project cash flows and timing, see [ACCA's investment-appraisal guidance](https://www.accaglobal.com/uk/en/student/exam-support-resources/prodipsust-study-resources/technical-articles/investment-appraisal.html){rel=""nofollow""}. The cases and numbers here are original teaching examples. :: ## Review your reasoning For any example, separate the calculation from the conclusion you draw. If your answer differs, identify the business event, benchmark or timing assumption you interpreted differently. Reconstructing that link helps you apply the method to another business with different numbers. ## Extension: investigate the comparison itself The ratio example compares two years, the flexible budget compares costs at the same activity, and the investment example compares mutually exclusive future projects. Each comparison needs a different baseline. Before interpreting a difference, ask what has been held constant and what has changed. The remaining flexible-budget variance does not identify its own cause: different prices, hours or quantities could produce the same total. Likewise, a higher NPV is a conclusion under the supplied cash-flow and risk assumptions. The forecast variation in Example 5 shows how that ranking can reverse. A useful summary therefore records the result, its assumptions and the evidence that would make you reconsider it. To extend these ideas, use [cost concepts](https://www.pengjiaxin.com/../management-accounting/01-cost-foundations/16-cost-concepts) to distinguish cost behaviour from decision relevance, then read [short-term decisions](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/22-short-term-decisions) to see how capacity and opportunity cost affect a choice. [Return to the foundation route](https://www.pengjiaxin.com/) · [Continue the full accounting course](https://www.pengjiaxin.com/../00-index) # Financial and Management Accounting Foundations []{#financial-and-management-accounting-foundations} Start here if you can work with percentages but have not studied accounting. These notes connect a few recurring ideas: when an event belongs in the accounts, how balances change, why profit differs from cash, and which figures help answer a decision question. Each idea leads to a worked example and to topic pages where you can explore it further. Read the summaries first for an overview, then follow a calculation when you want to see how the reasoning works. A calculator and paper, or a spreadsheet, are sufficient. Python cells provide an optional way to vary the assumptions; the explanations and worked tables can be read on their own. ## The ideas to connect | Central idea | What it helps explain | | ------------------------------------------------------------------- | ---------------------------------------------------------------------- | | An event can affect more than one account and more than one period | Why entries balance, yet may still need adjustment | | A balance records a position; a flow describes change over a period | How records connect profit, capital and financial position | | Recognition and payment can occur at different times | Why a profitable business can still need cash financing | | A comparison needs a defined purpose and a suitable benchmark | Why ratios, contribution, variances and NPV answer different questions | ## Entry diagnostic Try answering in your own words, then compare your reasoning with the feedback. 1. A shop receives £900 for a service to be delivered next month. What increases now? 2. It collects £700 owed for last month's completed sale. Is that new revenue? 3. It buys equipment for £6,000 cash. Does the whole payment become this month's expense? 4. Which information would an unpaid supplier and the shop's owner each request? ::legacy-spoiler{title="Feedback"} 1. Cash and an obligation to provide the service both increase; delivery has not yet earned revenue. 2. Cash increases and the receivable decreases. The collection does not create another sale. 3. Equipment initially replaces cash as an asset. Depreciation allocates its depreciable cost over use; it is not another cash payment. 4. The supplier needs payment timing and liquidity evidence. The owner also needs profitability and prospects. Neither question can be answered from the bank balance alone. If receipts and revenue, or payments and expenses, are still difficult to distinguish, begin with the records and adjustment notes below. If the distinction is familiar, use the examples to find the questions you want to explore next. :: ## A map of the core topics The order follows the relationships between concepts. You can read it from top to bottom or return to an individual topic when a later example exposes a gap. | Topic and summary | Read and work through | Question to carry forward | | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | | Records: describe the event before choosing the accounts | [Reporting foundations](https://www.pengjiaxin.com/../financial-accounting/01-foundations/); [double-entry](https://www.pengjiaxin.com/../financial-accounting/02-recording-transactions/04-double-entry-dr-cr) | Can equal debits and credits record the wrong event? | | Adjustments: distinguish an amount already recorded from the balance required | [Accounting cycle](https://www.pengjiaxin.com/../financial-accounting/02-recording-transactions/05-accounting-cycle); [worked records example](https://www.pengjiaxin.com/01-adjustments-to-statements) | Why can an adjustment change profit without changing cash? | | Statements: different views draw on the same records | [Profit and capital example](https://www.pengjiaxin.com/01-adjustments-to-statements); [linked statements](https://www.pengjiaxin.com/../financial-accounting/04-reporting-cash/06-financial-statements) | Why does profit enter equity, while drawings are not an expense? | | Analysis: interpret both the measure and its composition | [Cash and control](https://www.pengjiaxin.com/../financial-accounting/04-reporting-cash/14-cash-control); [ratios](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis) | Can an unchanged current ratio conceal a change in liquidity? | | Costs: contribution covers fixed costs before it becomes profit | [Cost concepts](https://www.pengjiaxin.com/../management-accounting/01-cost-foundations/16-cost-concepts); [CVP](https://www.pengjiaxin.com/../management-accounting/02-planning-control/18-cvp-analysis) | Which assumptions must hold for a break-even calculation to be useful? | | Budgets: separate timing, activity and cost performance | [Cash-budget example](https://www.pengjiaxin.com/02-cash-budget); [budgets and variances](https://www.pengjiaxin.com/../management-accounting/02-planning-control/20-budgeting-variances) | Does a larger cost total reflect more output or a cost variance at the same output? | | Investment: compare future incremental cash flows at a common date | [Capital budgeting](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/23-capital-budgeting); [decision examples](https://www.pengjiaxin.com/03-decision-workshop) | How can a forecast or timing change reverse a ranking? | ## How to use a worked example Read the business facts, then identify what the calculation is meant to explain. Follow the workings with that question in mind: which amount is a balance, which is a movement, and which is an assumption? This makes the method easier to reconstruct when the numbers change. When revising, cover the answer and explain the next step before calculating it. If your result differs, locate the cause in the classification, timing or arithmetic. A short note explaining the error is more useful than copying the corrected total alone. The three foundation examples have different purposes: [records to statements](https://www.pengjiaxin.com/01-adjustments-to-statements) traces one set of accounts, [cash budgeting](https://www.pengjiaxin.com/02-cash-budget) follows payment dates, and [decision comparisons](https://www.pengjiaxin.com/03-decision-workshop) shows why the choice of measure matters. Their fictional datasets are independent. ## Connections worth exploring Three connections take the notes beyond isolated calculations: - **Accruals and cash:** recognising a credit sale does not collect it. Trace the receivable into the cash budget, then consider what a ratio can and cannot reveal about collection timing. - **Activity and performance:** more output can increase total variable cost even at unchanged unit cost. The flexible budget removes that activity difference from the comparison before you investigate the remaining variance. - **Liquidity and value:** a project may have positive NPV while requiring cash before it generates receipts. Appraisal and funding address connected questions, but one calculation does not answer both. For each connection, change one assumption in a worked example and explain which result changes and which remains intact. The topic links above provide the fuller derivations and limitations. ## Continue into the full course To explore recognition and measurement in more depth, continue with [revenue, inventory and long-lived assets](https://www.pengjiaxin.com/../financial-accounting/03-measurement-adjustments/). For internal decisions, read [short-term choices and investment](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/). The [main course](https://www.pengjiaxin.com/../00-index) maps the remaining topics, and the [Northstar capstone](https://www.pengjiaxin.com/../capstone/) brings them together. Keep the Harbour examples separate from Northstar's account balances. [Start the records case](https://www.pengjiaxin.com/01-adjustments-to-statements). # Cost Concepts and Behaviour []{#cost-concepts-and-behaviour} ## Begin with the cost object A cost can be direct to one object and indirect to another. | Cost | Product model | Factory | Customer order | | ------------------------------------------ | --------------------------- | ------------------------------- | ---------------- | | Battery used in a Cargo bike | Direct | Direct | Direct if traced | | Factory supervisor salary | Indirect | Direct | Indirect | | Special delivery requested by one customer | Depends on tracing to model | Outside factory production cost | Direct | “Direct” means economically traceable to the chosen object, not physically touchable. ## Four useful classification lenses | Lens | Categories | Decision use | | ------------ | -------------------------------------------- | ---------------------------- | | Traceability | Direct / indirect | Cost assignment | | Behaviour | Variable / fixed / mixed / step | Forecast and CVP | | Function | Production / selling / administration | Reporting and responsibility | | Relevance | Incremental / avoidable / opportunity / sunk | Alternatives | These classifications answer different questions. A fixed cost can also be direct, while a variable cost may be irrelevant to a decision if both alternatives incur it. ### Classify one cost more than once Suppose a supervisor works only on the Cargo model and receives a fixed monthly salary. That salary is direct to the Cargo product line, fixed within the agreed staffing range, and a production cost. Whether it is relevant to discontinuing Cargo is a separate question: will the salary actually cease, or will the supervisor move elsewhere at unchanged pay? To classify a cost, specify the **cost object, activity driver and time horizon**. Rent may be fixed this month but change when the lease comes up for renewal or can be terminated. “Fixed” describes how the cost behaves within a particular range and period, not whether it can ever be avoided. ## Northstar monthly cost map | Item | Behaviour within 1,000–3,000 bikes | Traceability to model | Short explanation | | ------------------------------------------- | ---------------------------------- | --------------------- | -------------------------------------------- | | Battery packs | Variable | Direct | One pack per bike | | Assembly wages paid per unit | Variable | Direct | Change with output under the stated contract | | Factory rent | Fixed | Indirect | Same total within current capacity | | Electricity | Mixed | Mostly indirect | Base load plus machine use | | Second quality supervisor after 2,500 units | Step-fixed | Indirect | Capacity changes at a threshold | | Last year’s design study | Sunk | Depends on object | Cannot be changed by today’s choice | ## Mixed-cost estimate Maintenance cost was £18,000 at 1,000 machine hours and £24,000 at 1,600 hours. High-low estimate: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[600]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[18]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£10]{.mord}[[ per hour]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[18]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[£10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£8]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Estimated cost equation: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£8]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£10]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At 1,300 hours, predicted maintenance is £21,000. Choose the highest and lowest **activity** observations, not simply the largest and smallest bills. The £10 slope means an extra machine hour adds an estimated £10 within the observed range. The £8,000 intercept is the model's fixed component, not proof that an idle factory would incur exactly that cost outside the range. Substitute both observed activity levels back into the equation before forecasting. High-low uses only two observations. Plot the data, inspect outliers and use regression or engineering analysis when the decision warrants it. ## The fixed-cost-per-unit trap Factory rent is £120,000: | Output | Total fixed rent | Rent per unit | | ------ | ---------------: | ------------: | | 1,000 | £120,000 | £120 | | 2,000 | £120,000 | £60 | | 3,000 | £120,000 | £40 | Northstar's rent per unit falls because the same total is spread across more units; the business has not saved any rent. Producing unwanted inventory merely to lower unit cost can waste cash and expose the business to write-downs. ## Relevant cost test A number is relevant to a choice only if it is: 1. future; and 2. different between alternatives. An opportunity cost is the benefit forgone by choosing one alternative, and it may not appear in the ledger. A sunk cost is recorded but cannot be changed by the decision. Relevance depends on the alternatives, not on whether a cost is visible in the accounts or has been allocated to them. ## Quick check Northstar owns an idle machine with a £50,000 carrying amount. It can use the machine for an order or rent it out for £8,000. Which amount is relevant? ::legacy-spoiler{title="Answer"} The £8,000 forgone rent is an opportunity cost. The £50,000 carrying amount itself is not a future cash flow. Include any decision-dependent disposal proceeds or tax cash effects separately; a non-cash impairment charge alone is not an incremental cash cost. :: [Next: Costing Systems](https://www.pengjiaxin.com/17-costing-systems) # Costing Systems []{#costing-systems} ## Match the system to production | System | Best fit | Unit-cost logic | | ---------------------- | ------------------------------------------------ | ------------------------------------ | | Job costing | Distinct jobs, contracts or batches | Trace to job; allocate support cost | | Process costing | Homogeneous continuous output | Average cost across equivalent units | | Activity-based costing | Products consume support activities differently | Activity rate × driver consumption | | Time-driven ABC | Time and practical capacity explain resource use | Capacity cost rate × required time | No allocation is economic truth. It is a model whose usefulness depends on purpose, causality and cost of measurement. ## Northstar: traditional allocation Northstar makes: | Model | Units | Machine hours per unit | Total machine hours | | ----- | ----: | ---------------------: | ------------------: | | City | 1,000 | 2 | 2,000 | | Cargo | 500 | 4 | 2,000 | Factory support cost is £240,000. A machine-hour rate is £60: | Model | Allocated overhead | Overhead per unit | | ----- | ---------------------: | ----------------: | | City | 2,000 × £60 = £120,000 | £120 | | Cargo | 2,000 × £60 = £120,000 | £240 | The method assumes machine hours cause all support work. ## Activity-based view Northstar separates support resources: | Activity pool | Cost | Driver volume | Rate | | ----------------- | -------: | --------------: | ------------------: | | Setups | £120,000 | 60 setups | £2,000 per setup | | Inspections | £72,000 | 240 inspections | £300 per inspection | | Material handling | £48,000 | 1,200 moves | £40 per move | Driver use: | Model | Setups | Inspections | Moves | ABC overhead | Per unit | | --------- | -----: | ----------: | --------: | -----------: | -------: | | City | 10 | 30 | 200 | £37,000 | £37 | | Cargo | 50 | 210 | 1,000 | £203,000 | £406 | | **Total** | **60** | **240** | **1,200** | **£240,000** | | Traditional costing overcosted the high-volume, simple City model and undercosted the low-volume, complex Cargo model. Before changing price, verify that setup and inspection counts are stable causal drivers rather than convenient data. ## Time-driven ABC Suppose order support costs £180,000 and provides 9,000 practical staff hours: [[[]{.katex-mathml}[[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[capacity cost rate]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[£180]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000/9]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£20]{.mord}[[ per hour]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - standard order uses 0.25 hour: £5; - custom order adds 0.50 hour: total 0.75 hour, £15. Time equations can add complexity without creating a separate activity for every variation. Keep unused capacity visible rather than forcing it into product costs. ## Model audit Ask: - Is the driver causal and controllable? - Is practical capacity used rather than an unattainable maximum? - Are idle resources separated? - Would a different driver change pricing or product decisions? - Does the benefit of precision exceed data and maintenance cost? ## Quick check If Northstar eliminates ten Cargo setups but resource spending does not fall, has it saved £20,000? ::legacy-spoiler{title="Answer"} Not yet. The model shows £20,000 of capacity released. Cash is saved only if Northstar redeploys or removes the resource. Capacity usage and spending are related but not identical. :: ## Research foundation - Kaplan and Anderson, [Time-Driven Activity-Based Costing](https://www.hbs.edu/faculty/Pages/item.aspx?num=15805){rel=""nofollow""}, explains the capacity-rate and time-equation model. [Next: Variable and Absorption Costing](https://www.pengjiaxin.com/19-variable-vs-absorption) # Variable and Absorption Costing []{#variable-and-absorption-costing} Both methods record the same revenue and total resource spending. They differ in when fixed production overhead enters profit. | Method | Product cost includes | Main use | | ------------------ | -------------------------------------------------------------- | ----------------------------------------------------- | | Absorption costing | Variable production cost + allocated fixed production overhead | External inventory measurement under applicable rules | | Variable costing | Variable production cost only | Internal contribution analysis | ## Northstar case - units produced: 1,000; - units sold: 800; - selling price: £600; - variable production cost: £300 per unit; - fixed factory overhead: £120,000, or £120 per produced unit; - variable selling cost: £20 per unit sold; - fixed selling/administration: £30,000. ### Variable-costing statement | | £ | | ----------------------------------------- | ----------: | | Sales: 800 × £600 | 480,000 | | Variable production cost sold: 800 × £300 | (240,000) | | Variable selling cost: 800 × £20 | (16,000) | | **Contribution margin** | **224,000** | | Fixed factory overhead | (120,000) | | Fixed selling/administration | (30,000) | | **Profit** | **74,000** | ### Absorption-costing statement Absorption product cost is £300 + £120 = £420. | | £ | | ---------------------------- | ----------: | | Sales | 480,000 | | Cost of sales: 800 × £420 | (336,000) | | **Gross profit** | **144,000** | | Variable selling cost | (16,000) | | Fixed selling/administration | (30,000) | | **Profit** | **98,000** | ## Reconcile, do not memorise Ending inventory contains 200 units. Absorption costing defers: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[200]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£120]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£98]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£74]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} When production exceeds sales, absorption profit is higher under these facts. When sales exceed production and prior fixed overhead leaves inventory, the direction reverses. ## External-reporting boundary IAS 2 includes systematic allocation of variable and fixed production overhead in inventory cost. Fixed overhead uses normal capacity; abnormal idle-capacity cost is expensed rather than hidden in inventory. Variable costing is useful internally but does not replace the applicable external inventory requirements. ## Behavioural risk A manager rewarded only on absorption profit may overproduce to defer fixed overhead. Countermeasures include: - inventory and cash targets; - normal-capacity discipline; - write-down review; - measures of demand, throughput and obsolete stock; - multi-period performance evaluation. ## Quick check If Northstar produced and sold exactly 1,000 units with no opening inventory, would the two profit figures differ? ::legacy-spoiler{title="Answer"} No. No fixed production overhead is deferred in ending inventory; all £120,000 enters the period under both methods. :: ## Primary source - [IAS 2 Inventories](https://www.ifrs.org/issued-standards/list-of-standards/ias-2-inventories/){rel=""nofollow""} [Next: Planning and Control](https://www.pengjiaxin.com/../02-planning-control/) # 1. Cost Foundations []{#_1-cost-foundations} Cost is not meaningful until you name the object, purpose and horizon. | Chapter | Northstar question | Output | | --------------------------------------------------------------------------------------- | --------------------------------------------------- | ---------------------------------------- | | [Cost Concepts](https://www.pengjiaxin.com/16-cost-concepts) | Which costs change with volume or alternatives? | Cost classification and mixed-cost model | | [Costing Systems](https://www.pengjiaxin.com/17-costing-systems) | Which model explains support-resource consumption? | Traditional versus ABC comparison | | [Variable and Absorption Costing](https://www.pengjiaxin.com/19-variable-vs-absorption) | Why does inventory movement change reported profit? | Profit reconciliation | ## Preparation Be able to distinguish: - traceability from behaviour; - product cost from decision relevance; - spending from resource consumption; - total fixed cost from fixed cost per unit. [Start with Cost Concepts](https://www.pengjiaxin.com/16-cost-concepts). # Cost–Volume–Profit Analysis []{#costvolumeprofit-analysis} For one product within a relevant range, let P be unit price, V unit variable cost, F total fixed cost and Q units sold: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[Profit]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Unit contribution margin is the selling price less unit variable cost. Each unit sold contributes that amount towards fixed cost; once fixed cost is covered, the remaining contribution becomes profit. ## Northstar base case - price: £600 per City bike; - variable cost: £360 per bike; - annual fixed cost: £480,000; - forecast sales: 2,800 bikes. | Measure | Calculation | Result | | -------------------------------- | ---------------------------- | ---------------------------: | | Unit contribution | £600 − £360 | £240 | | Break-even units | £480,000 / £240 | 2,000 | | Units for £120,000 target profit | (£480,000 + £120,000) / £240 | 2,500 | | Forecast profit | 2,800 × £240 − £480,000 | £192,000 | | Margin of safety | 2,800 − 2,000 | 800 units, 28.6% of forecast | Break-even marks the point at which the modelled profit is zero, rather than a profit target to aim for. ### Derive the formula, then check the answer Revenue is PQ and variable cost is VQ, so subtracting both cost types gives profit = (P − V)Q − F. To break even, set profit to zero; to earn a target T, solve (P − V)Q = F + T. The units provide a check: pounds of fixed cost divided by pounds of contribution **per bike** gives bikes. Dividing by the contribution ratio instead gives pounds of sales. Northstar's contribution ratio is £240 / £600 = 40%, so break-even sales revenue is £480,000 / 40% = £1,200,000, the same as 2,000 bikes × £600. The safety margin is a buffer against a fall in sales **under unchanged assumptions**. At the forecast, 800 bikes × £240 contribution = £192,000 profit. A change in price, cost or capacity changes that buffer; it is not a probability of avoiding loss. This chapter's target is modelled operating profit before financing and tax, not a promised cash surplus. ## The 5% discount is not a 5% volume problem If price falls 5% to £570 and variable cost remains £360: - contribution falls from £240 to £210, a 12.5% decline; - break-even rises to 2,286 units; - target-profit volume rises from 2,500 to **2,858 whole bikes**, a 14.3% increase. The exact target is 600,000 / 210 = 2,857.14 bikes. Rounding to the nearest bike would miss the target: 2,857 × £210 − £480,000 = £119,970, whereas 2,858 bikes produce £120,180. Use **upward rounding** when the question asks for the minimum whole units needed to meet a threshold. Keep unrounded values for intermediate calculations. A small price change can therefore have a much larger effect on profit. What matters is the contribution left after variable cost, not total revenue. ## Explore the model ::pyodide --- code64: aW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdApmcm9tIG1hdGggaW1wb3J0IGNlaWwKZnJvbSBkZWNpbWFsIGltcG9ydCBEZWNpbWFsCgpwcmljZSA9IDYwMAp2YXJpYWJsZV9jb3N0ID0gMzYwCmZpeGVkX2Nvc3QgPSA0ODBfMDAwCmZvcmVjYXN0X3VuaXRzID0gMl84MDAKdGFyZ2V0X3Byb2ZpdCA9IDEyMF8wMDAKCiMgUHJlc2VydmUgZGVjaW1hbCBjdXJyZW5jeSBhbW91bnRzIGJlZm9yZSBkaXZpc2lvbiBhbmQgdXB3YXJkIHJvdW5kaW5nLgpwcmljZSwgdmFyaWFibGVfY29zdCwgZml4ZWRfY29zdCwgdGFyZ2V0X3Byb2ZpdCA9IFsKICAgIERlY2ltYWwoc3RyKHZhbHVlKSkgZm9yIHZhbHVlIGluIChwcmljZSwgdmFyaWFibGVfY29zdCwgZml4ZWRfY29zdCwgdGFyZ2V0X3Byb2ZpdCkKXQp1bml0X2NtID0gcHJpY2UgLSB2YXJpYWJsZV9jb3N0CmlmIHByaWNlIDw9IDAgb3IgbWluKHZhcmlhYmxlX2Nvc3QsIGZpeGVkX2Nvc3QsIGZvcmVjYXN0X3VuaXRzLCB0YXJnZXRfcHJvZml0KSA8IDA6CiAgICByYWlzZSBWYWx1ZUVycm9yKCJVc2UgYSBwb3NpdGl2ZSBwcmljZSBhbmQgbm9uLW5lZ2F0aXZlIGNvc3RzLCB2b2x1bWUgYW5kIHRhcmdldC4iKQppZiB1bml0X2NtIDw9IDA6CiAgICByYWlzZSBWYWx1ZUVycm9yKCJUaGlzIG1vZGVsIHJlcXVpcmVzIHBvc2l0aXZlIHVuaXQgY29udHJpYnV0aW9uOyBtb3JlIHNhbGVzIGNhbm5vdCBjb3ZlciBmaXhlZCBjb3N0LiIpCmJyZWFrX2V2ZW4gPSBmaXhlZF9jb3N0IC8gdW5pdF9jbQpicmVha19ldmVuX3VuaXRzID0gY2VpbChicmVha19ldmVuKQp0YXJnZXRfdW5pdHMgPSBjZWlsKChmaXhlZF9jb3N0ICsgdGFyZ2V0X3Byb2ZpdCkgLyB1bml0X2NtKQpmb3JlY2FzdF9wcm9maXQgPSBmb3JlY2FzdF91bml0cyAqIHVuaXRfY20gLSBmaXhlZF9jb3N0CgpwcmludChmIkNvbnRyaWJ1dGlvbiBwZXIgdW5pdDogwqN7dW5pdF9jbTosLjBmfSIpCnByaW50KGYiTWluaW11bSB3aG9sZSB1bml0cyB0byBhdm9pZCBsb3NzOiB7YnJlYWtfZXZlbl91bml0czosfSIpCnByaW50KGYiVGFyZ2V0LXByb2ZpdCB2b2x1bWU6IHt0YXJnZXRfdW5pdHM6LC4wZn0gdW5pdHMiKQpwcmludChmIkZvcmVjYXN0IHByb2ZpdDogwqN7Zm9yZWNhc3RfcHJvZml0OiwuMGZ9IikKCnVuaXRzID0gbGlzdChyYW5nZSgwLCAzMDAxLCAxMDApKQpyZXZlbnVlID0gW2Zsb2F0KHByaWNlICogcSkgZm9yIHEgaW4gdW5pdHNdCnRvdGFsX2Nvc3QgPSBbZmxvYXQoZml4ZWRfY29zdCArIHZhcmlhYmxlX2Nvc3QgKiBxKSBmb3IgcSBpbiB1bml0c10KCnBsdC5maWd1cmUoZmlnc2l6ZT0oNywgNCkpCnBsdC5wbG90KHVuaXRzLCByZXZlbnVlLCBsYWJlbD0iUmV2ZW51ZSIpCnBsdC5wbG90KHVuaXRzLCB0b3RhbF9jb3N0LCBsYWJlbD0iVG90YWwgY29zdCIpCnBsdC5heHZsaW5lKGZsb2F0KGJyZWFrX2V2ZW4pLCBjb2xvcj0iYmxhY2siLCBsaW5lc3R5bGU9Ii0tIiwgbGFiZWw9IkJyZWFrLWV2ZW4iKQpwbHQueGxhYmVsKCJCaWtlcyIpCnBsdC55bGFiZWwoIsKjIikKcGx0LnRpdGxlKCJOb3J0aHN0YXIgQ1ZQIG1vZGVsIikKcGx0LmxlZ2VuZCgpCnBsdC50aWdodF9sYXlvdXQoKQpwbHQuc2hvdygp layout: vertical locale: en packages: matplotlib title: Northstar CVP scenario --- :: Try changing price, variable cost and fixed cost one at a time, then in combination. Compare the results to see which assumptions matter most to the decision. ## Assumptions to expose Basic CVP assumes: - constant unit price and variable cost within the range; - fixed total cost within the range; - units produced equal units sold, or inventory effects are handled separately; - a stable sales mix for multiple products; - volume is the main activity driver. Above 3,000 bikes, Northstar may need a second shift, which would increase fixed cost. The chart therefore stops at 3,000. Any target beyond that requires revised capacity and cost assumptions: correct arithmetic alone cannot make the existing cost model valid outside its relevant range. Contribution must also be positive for the usual break-even formula to work with positive fixed costs. If price equals variable cost, every sale covers only its own variable cost; if price is lower, each extra sale increases the loss. A negative or undefined calculated break-even is not a usable sales target. ## Multiple products Use a weighted-average contribution only if the sales mix is explicit and reasonably stable. If demand shifts toward lower-contribution Cargo contracts, a single break-even total can conceal the mix effect. ## Quick check Variable cost rises to £390 with price and fixed cost unchanged. What is break-even? ::legacy-spoiler{title="Answer"} Unit contribution is £210. Break-even is £480,000 / £210 = 2,285.7, so at least 2,286 whole bikes under the model. :: Continue with the [price-cut and capacity exercise](https://www.pengjiaxin.com/../../foundation/03-decision-workshop). For another worked derivation, see [OpenStax's break-even chapter](https://openstax.org/books/principles-managerial-accounting/pages/3-2-calculate-a-break-even-point-in-units-and-dollars){rel=""nofollow""}. [Next: Budgeting and Variances](https://www.pengjiaxin.com/20-budgeting-variances) # Budgeting and Variance Analysis []{#budgeting-and-variance-analysis} A budget sets out the assumptions behind a plan. Comparing it with actual results reveals variances, but those differences need investigation before they can explain causes or responsibility. For receipts, payment lags and funding needs, first work through [Cash Budgets and Payment Timing](https://www.pengjiaxin.com/../../foundation/02-cash-budget). Return here to compare actual costs with a budget at the same activity level. ## Static versus flexible comparison Northstar planned 900 bikes but produced 1,000. | Input standard | Per bike | Static budget at 900 | Flexible budget at 1,000 | | -------------- | ------------------: | -------------------: | -----------------------: | | Material | 4 kg × £8 = £32 | £28,800 | £32,000 | | Labour | 2 hours × £18 = £36 | £32,400 | £36,000 | Comparing the actual input cost for 1,000 bikes with a static budget for 900 bikes mixes the effect of higher output with differences in cost control. First flex the budget to actual output, then examine price/rate and quantity/efficiency differences. ### What stays fixed when the budget flexes? Keep the **standard input per bike and standard input price**; change the allowed quantity to match actual output. For materials, SQ is 1,000 bikes × 4 kg = 4,000 kg. It is neither the 3,600 kg originally budgeted for 900 bikes nor the 4,200 kg actually used. Otherwise the comparison either penalises extra output or treats extra consumption as automatically acceptable. Flex the costs that vary with activity. Total fixed costs remain unchanged within their relevant range; if extra capacity changes those costs, revise the assumption explicitly. ## Material variances Actual material: 4,200 kg at £8.50 = £35,700. [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[Price variance]{.mord}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[A]{.mord.mathnormal}[Q]{.mord.mathnormal}[(]{.mopen}[A]{.mord.mathnormal}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[200]{.mord}[(]{.mopen}[£8.50]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[£8.00]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[100]{.mord}[ ]{.mspace}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[Usage variance]{.mord}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[A]{.mord.mathnormal}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[Q]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£8]{.mord}[(]{.mopen}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[200]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[600]{.mord}[ ]{.mspace}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Total material variance is £3,700 adverse, reconciling actual £35,700 to flexible standard £32,000. Read the decomposition as three cost totals: **4,000 kg × £8 = £32,000 → 4,200 kg × £8 = £33,600 → 4,200 kg × £8.50 = £35,700**. The first step isolates extra material use at the standard price; the second isolates the price change on actual quantity. Their sum reconciles exactly, with no overlapping effect. This example measures price variance on material used; if a question measures it on purchases, use purchased quantity and reconcile the inventory difference separately. The two variances point to different possible causes: - price: supplier market, rush order, quality grade, purchasing terms; - usage: scrap, design, training, machine settings, material quality. A cheaper material can create a favourable price variance and an adverse usage or warranty outcome. ## Labour variances Actual labour: 1,900 hours at £19 = £36,100. [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[Rate variance]{.mord}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[A]{.mord.mathnormal}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[(]{.mopen}[A]{.mord.mathnormal}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[)]{.mclose}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[900]{.mord}[(]{.mopen}[£19]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[£18]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[900]{.mord}[ ]{.mspace}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[Efficiency variance]{.mord}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[A]{.mord.mathnormal}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[)]{.mclose}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£18]{.mord}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[900]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[−]{.mord}[£1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[800]{.mord}[]{.mspace style="margin-right:1em;"}[(]{.mopen}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Net labour variance is £100 adverse. Paying a higher rate may have enabled experienced staff to finish 100 hours below standard. The two variances should be interpreted together. ### Reconcile the whole budget difference | Materials and labour, £ | Amount | Meaning | | ----------------------- | ------: | ----------------------------------- | | Static budget | 61,200 | 900 bikes at standard inputs/prices | | Flexible budget | 68,000 | 1,000 bikes at the same standards | | Actual cost | 71,800 | Actual inputs at actual prices | | Activity difference | 6,800 | Flexible minus static | | Cost-control difference | 3,800 U | Actual minus flexible | | Total difference | 10,600 | Actual minus static | The £10,600 total increase is not all inefficiency. £6,800 is the standard cost of the extra 100 bikes; the remaining £3,800 equals material £3,700 U plus labour £100 U. Even that residual needs investigation before assigning responsibility. ## Favourable is not automatically good | “Favourable” result | Possible harmful explanation | | ------------------------ | ------------------------------- | | Low material price | Poor quality and rework | | Low labour cost | Understaffing and late delivery | | Low maintenance spending | Deferred failure | | High sales volume | Deep discounts or weak credit | The favourable or unfavourable label describes a variance against its benchmark. To judge performance, you also need evidence about quality, timing, customers and safety. ## Planning error or execution error? Before holding a manager responsible, ask: - Was the standard current and attainable? - Did market prices change outside the manager’s control? - Did product mix or specification change? - Which manager controlled purchase, use, scheduling or design? - Was the action rational given information available at the time? Revise a standard when the operating model genuinely changes, not merely to erase an adverse result. ## Budget design A useful budget connects: 1. sales and capacity assumptions; 2. production and resource requirements; 3. operating expenses; 4. cash collection, payment and financing; 5. forecast financial statements; 6. named risks and trigger points. ### Sales, production, purchases and payments are different In a separate planning illustration, expected sales are 900 bikes, desired closing finished goods are 120 and opening finished goods are 100. Required production is 900 + 120 − 100 = **920 bikes**. At 4 kg per bike, production uses 3,680 kg of material. With desired closing material of 200 kg and opening material of 180 kg, planned purchases are **3,700 kg**. Neither 920 bikes nor 3,700 kg tells you cash payments yet: apply input prices, credit terms and opening payables. Equipment cash payments also belong in the cash budget, while depreciation does not. Use the [monthly cash-budget case](https://www.pengjiaxin.com/../../foundation/02-cash-budget) to build that timing bridge, then use the [variance exercise](https://www.pengjiaxin.com/../../foundation/03-decision-workshop) to practise the control comparison. Forecasting software or AI can update scenarios quickly, but it does not make biased targets, fabricated drivers or hidden overrides acceptable. Keep a record of each version's assumptions and the evidence of approval. ## Quick check Why is the £1,800 favourable labour-efficiency variance not proof that production improved? ::legacy-spoiler{title="Answer"} Hours were below standard, but quality, rework, delayed maintenance, output specification and the standard itself must be checked. The favourable label describes only the arithmetic. :: [Next: Performance Measurement](https://www.pengjiaxin.com/21-performance-measurement) # Performance Measurement []{#performance-measurement} People respond to measures. A technically correct KPI can therefore damage the organisation if it rewards the wrong action. ## Match measure to responsibility | Centre | Manager mainly controls | Suitable starting measures | | ----------------- | --------------------------------- | --------------------------------------------- | | Cost centre | Resource use for a defined output | Flexible cost, quality, cycle time | | Revenue centre | Sales activity | Revenue, mix, retention, credit quality | | Profit centre | Revenue and controllable cost | Controllable margin plus drivers | | Investment centre | Profit and operating assets | ROI, residual income, value and risk measures | Do not charge a manager with an asset-return target if the manager cannot influence investment or disposal decisions. ## Northstar ROI conflict Current division: - operating income £400,000; - average operating assets £2,000,000; - ROI = 20%; - required return = 12%. Proposed project: - investment £500,000; - annual operating income £75,000; - project accounting return = 15%; - separate cash-flow appraisal confirms it is value-creating. The manager rejects it to protect current ROI: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[new ROI]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[500]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[400]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[75]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[19%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The project lowers division ROI from 20% to 19% even though its 15% return exceeds the 12% hurdle. ## Residual income exposes the incentive [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[RI]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[operating income]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[required rate]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[operating assets]{.mord}]{.mord.text}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | | Before project | After project | | ------------------- | -------------: | ------------: | | Operating income | £400,000 | £475,000 | | Required return | £240,000 | £300,000 | | **Residual income** | **£160,000** | **£175,000** | RI rises £15,000, exactly the project’s £75,000 income less £60,000 capital charge. RI reduces the underinvestment incentive, although it still depends on accounting definitions and division size. ## Build a causal scorecard Northstar’s strategy is “reliable bikes delivered quickly, generating repeat service revenue.” | Causal stage | Measure | Guardrail | | ------------ | ---------------------------------------- | -------------------------------------------- | | Learning | Technician certification rate | Practical assessment, not attendance only | | Process | First-pass yield | Do not hide rework after inspection | | Delivery | On-time, in-full rate | Exclude customer-agreed changes consistently | | Customer | 12-month retention | Track complaint severity and refunds | | Financial | Service contribution and cash collection | Reconcile non-GAAP definitions | A balanced scorecard is not four boxes of unrelated KPIs. It is a testable hypothesis about how capabilities and processes lead to customer and financial outcomes. ## KPI design audit For each measure record: - owner and decision; - precise numerator, denominator and exclusions; - data source and refresh frequency; - controllability and time horizon; - expected behaviour and gaming risk; - companion measure; - threshold for investigation, not automatic punishment. ## Current research lens Digital systems are changing the management accountant’s role, not eliminating accountability: - a 2024 [case study of controllers in a Finnish bank](https://doi.org/10.1016/j.bar.2024.101341){rel=""nofollow""} describes fluid business-partner and IT-related roles; - 2026 [field evidence on human and AI work in accounting](https://doi.org/10.1111/1475-679x.70052){rel=""nofollow""} provides an emerging basis for studying task-level integration. These studies motivate questions about review, role design and evidence. They do not justify delegating judgement or control ownership to a model. ## Quick check Why might “number of customer calls closed” be a poor service KPI? ::legacy-spoiler{title="Answer"} It rewards fast closure rather than resolution. Pair it with repeat-contact, satisfaction, complaint severity and independently defined closure criteria. :: ## Research foundation - Kaplan and Norton, [The Balanced Scorecard—Measures that Drive Performance](https://hbr.org/1992/01/the-balanced-scorecard-measures-that-drive-performance-2){rel=""nofollow""}. [Next: Decisions and Investment](https://www.pengjiaxin.com/../03-decisions-investment/) # 2. Planning and Control []{#_2-planning-and-control} Planning and control form a loop: :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsiQXNzdW1wdGlvbnMiXSAtLT4gQlsiUGxhbiJdCiAgQiAtLT4gQ1siQWN0aW9uIl0KICBDIC0tPiBEWyJBY3R1YWwgZXZpZGVuY2UiXQogIEQgLS0+IEVbIkZsZXhpYmxlIGNvbXBhcmlzb24iXQogIEUgLS0+IEZbIkxlYXJuaW5nIGFuZCByZXNwb25zZSJdCiAgRiAtLT4gQQ==" locale="en"} | Chapter | Northstar question | Output | | -------------------------------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------- | | [CVP Analysis](https://www.pengjiaxin.com/18-cvp-analysis) | How fragile is profit to price, volume and cost? | Break-even and scenario chart | | [Budgeting and Variances](https://www.pengjiaxin.com/20-budgeting-variances) | What caused the material and labour differences? | Flexible-budget diagnosis | | [Cash Budgets](https://www.pengjiaxin.com/../../foundation/02-cash-budget) | When will collections and payments create a funding gap? | Monthly schedules and a financing plan | | [Performance Measurement](https://www.pengjiaxin.com/21-performance-measurement) | Will the metric encourage value-creating behaviour? | ROI/RI and scorecard design | Control is not blame after the event. It is learning whether assumptions, execution or the model were wrong. [Start with CVP Analysis](https://www.pengjiaxin.com/18-cvp-analysis). # Short-Term Decisions []{#short-term-decisions} ## The relevance test Include a revenue or cost only when it is: 1. future; and 2. different between alternatives. Then add opportunity cost and operational constraints. | Item | Usually relevant? | Test | | ----------------------------------------- | -------------------------------------------- | ------------------------------------- | | Incremental materials and labour | Yes | Will the decision change them? | | Avoidable fixed cost | Yes | Can the resource spending be removed? | | Allocated common overhead | No, unless avoidable | Does total company cash change? | | Historical carrying amount | No, unless it changes disposal/tax cash flow | Is it sunk? | | Forgone contribution from scarce capacity | Yes | What alternative use is displaced? | ## Case 1: special order with idle capacity A distributor offers £380 for 1,000 bikes. Northstar’s full production cost is £420, but: - variable production cost is £300 per bike; - special packaging is £20 per bike; - fixed factory spending will not change; - idle capacity is genuinely available. | Incremental effect | £ | | --------------------------------- | ---------: | | Revenue: 1,000 × £380 | 380,000 | | Variable production: 1,000 × £300 | (300,000) | | Special packaging: 1,000 × £20 | (20,000) | | **Incremental benefit** | **60,000** | The order passes the numerical screen despite price being below full cost. Before accepting, test channel conflict, normal-price leakage, credit risk, quality, delivery capacity and future expectations. ## Case 2: make or buy Northstar needs 5,000 control units. | Make cost per unit | £ | Relevant? | | ------------------------ | -----: | ------------------------------- | | Direct material | 18 | Yes | | Direct labour | 12 | Yes under stated staffing facts | | Variable overhead | 6 | Yes | | Allocated fixed overhead | 10 | Only £3 is avoidable | | **Relevant make cost** | **39** | 18 + 12 + 6 + 3 | Supplier price is £40. With no alternative use, making saves £1 per unit, or £5,000. If buying releases capacity that can earn £4 contribution per unit equivalent, making has a £4 opportunity cost: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[adjusted make cost]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[£39]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£4]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£43]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Buying then saves £3 per unit, or £15,000. The capacity assumption reverses the answer. ## Case 3: bottleneck Machine capacity is scarce: | Product | Unit contribution | Machine hours | Contribution per machine hour | | ------- | ----------------: | ------------: | ----------------------------: | | City | £240 | 2 | £120 | | Cargo | £360 | 4 | £90 | After satisfying unavoidable commitments and demand limits, prioritise City because it earns more contribution per bottleneck hour. Unit contribution alone would give the wrong ranking. ## Case 4: keep or drop A segment reports a £30,000 loss after £70,000 common fixed cost is allocated: - contribution margin: £120,000; - avoidable segment fixed cost: £80,000; - allocated common fixed cost: £70,000, unchanged if dropped. Dropping loses £120,000 contribution and saves £80,000. Company profit falls £40,000. A reported segment loss is not proof that closure helps. ## Decision memo Use five lines: 1. recommendation; 2. quantified incremental effect; 3. capacity/opportunity-cost assumption; 4. qualitative constraint; 5. trigger that would reverse the recommendation. ## Quick check In the special-order case, normal production later fills all capacity and would earn £90 contribution per constrained hour. What must change in the analysis? ::legacy-spoiler{title="Answer"} Add the contribution forgone from displaced normal sales as opportunity cost. Idle-capacity logic no longer applies, so the £60,000 base benefit may disappear or reverse. :: [Next: Capital Budgeting](https://www.pengjiaxin.com/23-capital-budgeting) # Capital Budgeting []{#capital-budgeting} Long-lived projects require cash before their benefits are known. An appraisal therefore needs to account for when cash moves, the risks involved, whether the decision can be reversed, and what happens at the end of the project. ## Build cash flow, not accounting profit Include: - equipment, installation and initial working capital; - incremental after-tax operating cash flows; - cannibalisation and opportunity costs; - later capital expenditure; - terminal disposal cash flow, tax and working-capital recovery. Exclude: - sunk feasibility studies; - financing interest when the discount rate already reflects financing; - allocated costs that do not change. Depreciation is non-cash, but it can affect tax cash flows. Northstar’s example supplies after-tax cash flows, so no separate tax shield is added. ## Put every cash flow on a timeline Time 0 means now, before operations begin. Time 1 means the end of year 1 in this example, not its beginning. At 10%, £100 now and £110 in one year's time have the same modelled value: discounting reverses that growth. A year-t receipt has present value `CFt / (1 + r)^t`; later receipts have smaller present values for the same positive discount rate. Match the discount rate to the cash-flow period; an annual rate cannot simply be applied once to each monthly receipt. Also state whether the cash flows include inflation and tax, and choose a rate on the same basis. More decimal places will not compensate for inconsistent assumptions. ## Northstar automation case - equipment and installation now: £240,000; - working capital now: £20,000; - after-tax operating cash inflow: £75,000 at each year-end for four years; - year-4 after-tax salvage proceeds: £20,000; - year-4 working-capital recovery: £20,000; - discount rate: 10%. | Time | Cash flow | Present value at 10% | Explanation | | ---: | --------: | -------------------: | ---------------------------------------------- | | 0 | −£260,000 | −£260,000.00 | Equipment plus working capital | | 1 | +£75,000 | £68,181.82 | Operating | | 2 | +£75,000 | £61,983.47 | Operating | | 3 | +£75,000 | £56,348.61 | Operating | | 4 | +£115,000 | £78,546.55 | Operating + salvage + working-capital recovery | [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[NPV]{.mord}]{.mord.text}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[−]{.mord}[£260]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[£265]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[060.45]{.mord}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[060.45]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At the 10% discount rate, the base case supports the project by a narrow margin. Its approximate IRR is 10.84%, so even small forecast errors could reverse the decision. The £20,000 working-capital outflow is cash tied up for operations; its assumed release at the end is not revenue. Year 4 already includes that recovery and the after-tax disposal proceeds. Do not add them a second time. A positive NPV means value above the required return **under the model's assumptions**, not guaranteed accounting profit or sufficient funding today. ## Reproduce and stress-test ::pyodide --- code64: aW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKY2FzaF9mbG93cyA9IFstMjYwXzAwMCwgNzVfMDAwLCA3NV8wMDAsIDc1XzAwMCwgMTE1XzAwMF0KCmRlZiBucHYocmF0ZSwgZmxvd3MpOgogICAgaWYgcmF0ZSA8PSAtMToKICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJUaGUgZGlzY291bnQgcmF0ZSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAtMTAwJS4iKQogICAgcmV0dXJuIHN1bShmbG93IC8gKDEgKyByYXRlKSAqKiB5ZWFyIGZvciB5ZWFyLCBmbG93IGluIGVudW1lcmF0ZShmbG93cykpCgpkZWYgaXJyX2Jpc2VjdGlvbihmbG93cywgbG93PS0wLjkwLCBoaWdoPTEuMDAsIGl0ZXJhdGlvbnM9MjAwKToKICAgIGlmIG5vdCBmbG93cyBvciBmbG93c1swXSA+PSAwIG9yIGFueShmbG93IDwgMCBmb3IgZmxvdyBpbiBmbG93c1sxOl0pOgogICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIlVzZSBhbiBpbml0aWFsIG91dGZsb3cgZm9sbG93ZWQgb25seSBieSBub24tbmVnYXRpdmUgcmVjZWlwdHMuIikKICAgIGlmIG5vdCAtMSA8IGxvdyA8IGhpZ2ggb3IgbnB2KGxvdywgZmxvd3MpIDwgMCBvciBucHYoaGlnaCwgZmxvd3MpID4gMDoKICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJObyBJUlIgaXMgYnJhY2tldGVkIGJ5IHRoZXNlIHJhdGVzOyBpbnNwZWN0IHRoZSBjYXNoIGZsb3dzIGFuZCBib3VuZHMuIikKICAgIGZvciBfIGluIHJhbmdlKGl0ZXJhdGlvbnMpOgogICAgICAgIG1pZCA9IChsb3cgKyBoaWdoKSAvIDIKICAgICAgICBpZiBucHYobWlkLCBmbG93cykgPiAwOgogICAgICAgICAgICBsb3cgPSBtaWQKICAgICAgICBlbHNlOgogICAgICAgICAgICBoaWdoID0gbWlkCiAgICByZXR1cm4gKGxvdyArIGhpZ2gpIC8gMgoKYmFzZV9yYXRlID0gMC4xMApwcmludChmIk5QViBhdCAxMCU6IMKje25wdihiYXNlX3JhdGUsIGNhc2hfZmxvd3MpOiwuMGZ9IikKcHJpbnQoZiJJUlI6IHtpcnJfYmlzZWN0aW9uKGNhc2hfZmxvd3MpOi4yJX0iKQoKcmF0ZXMgPSBbeCAvIDEwMCBmb3IgeCBpbiByYW5nZSg0LCAxOSldCnZhbHVlcyA9IFtucHYocmF0ZSwgY2FzaF9mbG93cykgZm9yIHJhdGUgaW4gcmF0ZXNdCgpwbHQuZmlndXJlKGZpZ3NpemU9KDcsIDQpKQpwbHQucGxvdChbcmF0ZSAqIDEwMCBmb3IgcmF0ZSBpbiByYXRlc10sIHZhbHVlcywgbWFya2VyPSJvIikKcGx0LmF4aGxpbmUoMCwgY29sb3I9ImJsYWNrIiwgbGluZXdpZHRoPTEpCnBsdC54bGFiZWwoIkRpc2NvdW50IHJhdGUgKCUpIikKcGx0LnlsYWJlbCgiTlBWICjCoykiKQpwbHQudGl0bGUoIk5vcnRoc3RhciBkaXNjb3VudC1yYXRlIHNlbnNpdGl2aXR5IikKcGx0LnRpZ2h0X2xheW91dCgpCnBsdC5zaG93KCk= layout: vertical locale: en packages: matplotlib title: Northstar NPV, IRR and rate sensitivity --- :: Try reducing annual operating inflow by 5% or delaying the year 1 receipt. Use the results to identify which assumption leaves the least room for error, and explain that vulnerability in your recommendation. Keep the terminal £40,000 unchanged when testing a 5% cut in **operating** inflows: use £71,250 in years 1–3 and £111,250 in year 4. NPV becomes approximately **−£6,827**, reversing the base-case result. A delay must move the affected receipt to its later date; merely reducing its amount answers a different question. The IRR cell is deliberately limited to an initial outflow followed by non-negative receipts, with a root inside the stated search interval. It rejects unsupported cash-flow patterns or an interval that does not contain a root. For alternating inflows and outflows, inspect the NPV profile rather than treating this simple solver as a general IRR calculator. ## NPV, IRR and payback answer different questions | Method | Useful for | Main limitation | | ------------------ | -------------------------------------------------- | -------------------------------------------------------------------------------- | | NPV | Absolute value created at the chosen discount rate | Depends on cash-flow and rate estimates | | IRR | Percentage-return communication | Can mis-rank mutually exclusive projects or produce multiple/no meaningful roots | | Payback | Liquidity and exposure duration | Ignores later cash; simple version ignores time value | | Discounted payback | Time-adjusted recovery | Still ignores cash after recovery | When NPV and IRR conflict for mutually exclusive projects, NPV is normally the stronger value-creation rule if the discount rate and cash flows are well specified. ### Payback depends on when receipts arrive Northstar has recovered £225,000 after year 3, leaving £35,000 unrecovered. Under the stated **year-end** receipts, recovery occurs at the end of year 4; discounted recovery also occurs then. Do not report a fractional year while retaining the assumption that no cash arrives within that year. If the £75,000 operating receipts instead arrived evenly through year 4, simple payback could be approximated as 3 + £35,000 / £75,000 = 3.47 years. The terminal £40,000 still arrives at year-end and must not be spread through the year. This alternative timing assumption would also require revisiting the discounting model. Practise these distinctions with the [two-project decision workshop](https://www.pengjiaxin.com/../../foundation/03-decision-workshop). ## Risk is more than changing the rate Separate: - **sensitivity:** one input changes; - **scenario:** coherent combinations such as weak demand plus high material cost; - **simulation:** distributions and dependencies across many outcomes; - **real options:** delay, expand, abandon or stage the project. Do not hide operational uncertainty by adding an arbitrary percentage to the discount rate. ## Post-investment review After approval, preserve the original forecast and compare: - implementation spend and date; - realised volume, price, savings and working capital; - reasons for deviations; - benefits still achievable; - whether to continue, redesign or stop. Use the review to learn from deviations and decide what to change. Keep the original business case intact so that the comparison remains meaningful. ## Quick check Why is recovering £20,000 working capital in year 4 a cash inflow even though it is not revenue? ::legacy-spoiler{title="Answer"} The project releases cash previously tied up in operating assets. Revenue recognition and project cash flow are different classifications. :: [Next: Northstar Capstone](https://www.pengjiaxin.com/../../capstone/) # 3. Decisions and Investment []{#_3-decisions-and-investment} Time horizon changes the model: | Horizon | Central question | Typical model | | -------------------------------- | ---------------------------------------------------- | ---------------------------------------------- | | Short run with existing capacity | Which future amounts differ between alternatives? | Incremental revenue, cost and opportunity cost | | Long run with committed capital | Do discounted risk-adjusted cash flows create value? | NPV, scenarios and implementation review | ## Chapters - [Short-Term Decisions](https://www.pengjiaxin.com/22-short-term-decisions): special order, make-or-buy, bottleneck and segment choices. - [Capital Budgeting](https://www.pengjiaxin.com/23-capital-budgeting): investment cash flows, NPV, IRR and sensitivity. An output from a model is not yet a recommendation. Add capacity, quality, people, strategic and reversibility constraints. [Start with Short-Term Decisions](https://www.pengjiaxin.com/22-short-term-decisions). # Management Accounting []{#management-accounting} Financial accounting asks what should be reported externally. Management accounting asks what information will improve a particular internal decision. That flexibility creates responsibility: - define the decision and time horizon; - model only causal, relevant effects; - reconcile internal measures to reliable source data; - show assumptions and uncertainty; - anticipate the behaviour a metric may encourage. ## The route | Module | Central question | Northstar output | | ---------------------------------------------------------------------------------- | --------------------------------------------------------- | ----------------------------------------------- | | [1. Cost Foundations](https://www.pengjiaxin.com/01-cost-foundations/) | What causes cost and how should it be assigned? | Cost model and product-cost comparison | | [2. Planning and Control](https://www.pengjiaxin.com/02-planning-control/) | What should happen, what did happen and why? | CVP scenario, flexible budget and KPI diagnosis | | [3. Decisions and Investment](https://www.pengjiaxin.com/03-decisions-investment/) | Which alternative creates the best risk-adjusted outcome? | Incremental decision and NPV model | ## One number can serve different purposes Northstar’s fixed factory overhead may be: - inventoriable production cost for external reporting; - fixed period cost in a variable-costing contribution report; - unavoidable and irrelevant to a one-off special order; - avoidable and relevant to a factory-closure decision; - part of a capacity-resource model for long-run pricing. The cost did not change identity. The **decision, horizon and avoidability** changed. ## Standard answer structure 1. Define the decision. 2. State capacity and time horizon. 3. Identify cash flows or resources that differ. 4. Calculate a base case. 5. test operational, behavioural and risk constraints. 6. recommend and state the trigger for reconsideration. [Start with Cost Foundations](https://www.pengjiaxin.com/01-cost-foundations/). # Business Analytics — From Data to Defensible Action []{#business-analytics-from-data-to-defensible-action} Business analytics is not the production of dashboards or model scores. It is a disciplined chain: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[decision]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6151em;"}[[measurement]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[description]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[prediction]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6679em;"}[[action]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[feedback]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This course asks one question at every step: **what decision becomes better, for whom, and how will we know?** ## The running case: HarborMart HarborMart is a fictional UK omnichannel grocer. Customers browse online, order for delivery or collection, redeem promotions and sometimes stop buying. Stores replenish perishable and non-perishable products, schedule pickers and drivers, and promise delivery windows. | Business concern | Analytic object | Possible action | | ---------------- | ----------------------------------------------- | ------------------------------------------- | | late deliveries | probability an accepted order misses its window | change capacity or promise rules | | stockouts | demand distribution by product–store–day | change replenishment quantity | | promotion waste | incremental contribution caused by an offer | target, redesign or stop the offer | | customer loss | calibrated probability of inactivity | intervene only when treatment is worthwhile | | queue congestion | waiting-time distribution by hour | alter staffing or appointment capacity | All HarborMart records and amounts are synthetic. Real organisations and studies are explicitly labelled. ## Learning outcomes By the end, you should be able to: 1. turn an ambiguous request into a decision, unit of analysis, target, horizon, constraints and loss function; 2. audit data grain, timestamps, missingness, joins, denominators and lineage before calculation; 3. describe distributions, cohorts, funnels and KPIs without hiding uncertainty or subgroup differences; 4. validate regression, forecasting and classification models against decision-relevant baselines without leakage; 5. convert calibrated predictions into thresholds, allocations, inventory, staffing or pricing decisions; 6. distinguish association, prediction, causal effect and optimisation; 7. evaluate fairness, privacy, security, human review and failure recovery across an analytic system; 8. present a recommendation that another analyst can reproduce and a decision owner can contest. These outcomes suit advanced undergraduates and taught postgraduates. Graduate extensions add formal decision theory, causal identification, robust optimisation and deployment critique. ## Preparation You need percentages, algebra, probability, confidence intervals and basic Python. Prior machine learning or optimisation is not required. ::legacy-details{title="Ten-minute readiness check"} 1. Sales rise from £100,000 to £120,000. Is the growth rate 20 percentage points? 2. A churn model is 95% accurate when only 3% of customers churn. Is it useful? 3. A forecast is made on Monday using a field updated on Wednesday. What failed? 4. A promotion is associated with larger baskets. Does that prove the promotion caused the increase? 5. A model predicts demand perfectly. Can inventory be ordered without knowing holding and shortage costs? Answers: no, it is 20%; not necessarily—a no-churn rule is already 97% accurate; temporal leakage; no, targeting and selection may confound the comparison; no, prediction does not specify the action or objective. :: ## Course route | Module | Central question | Main deliverable | | ------------------------------------------------------------------------- | ------------------------------------------------------------- | ----------------------------------------------- | | [0. Decision and data foundations](https://www.pengjiaxin.com/00-intro/) | What decision, population and evidence are we analysing? | analysis contract and data audit | | [1. Descriptive analytics](https://www.pengjiaxin.com/01-descriptive/) | What happened, to whom and with what uncertainty? | diagnostic brief and decision display | | [2. Predictive analytics](https://www.pengjiaxin.com/02-predictive/) | What can be forecast at the decision time? | validated score or forecast | | [3. Prescriptive analytics](https://www.pengjiaxin.com/03-prescriptive/) | Which feasible action has the best expected consequence? | policy, allocation or schedule | | [4. Deployment and governance](https://www.pengjiaxin.com/04-deployment/) | Will the decision system remain useful, safe and accountable? | monitoring and control plan | | [Capstone](https://www.pengjiaxin.com/capstone/) | Can the entire chain survive an audit? | executive decision memo plus technical appendix | | [Appendix and revision tools](https://www.pengjiaxin.com/appendix/) | Which formula, pitfall or source supports the decision? | revision map and evidence trail | ## The analytics contract Complete this before opening a modelling library: | Field | HarborMart delivery example | | --------------------- | ----------------------------------------------------------------- | | decision owner | regional fulfilment manager | | decision | accept, re-promise or reroute an order | | decision time | immediately before checkout confirmation | | unit | one proposed order–delivery window | | target | delivered after the promised end time | | horizon | same-day operational outcome | | available information | basket, store, slot, distance and capacity known at checkout | | objective | contribution after delivery and service-failure costs | | constraints | picker hours, driver routes, food safety and customer commitments | | baseline | existing capacity rule | | review rule | human override for disruptions; log reason and outcome | A model without this contract may be statistically correct and operationally unusable. ## Four claims that must not be merged | Claim | Defensible example | Evidence required | | ------------ | ------------------------------------------------- | -------------------------------------------- | | descriptive | “Late-delivery rate was 8.2% last month.” | defined denominator and complete period | | predictive | “This order has a 0.31 late-delivery risk.” | time-valid out-of-sample calibration | | causal | “Adding one picker reduces lateness by 2 points.” | credible counterfactual design | | prescriptive | “Add a picker from 17:00 to 20:00.” | effects, costs, constraints and alternatives | Prediction can rank risks without identifying what intervention will work. Causal evidence can estimate an effect without selecting a feasible schedule. Optimisation can return a precise answer to a badly specified objective. ## A 12-week teaching route | Week | Preparation | Workshop output | | ---: | ---------------------------------- | --------------------------------------------- | | 1 | decision framing | one-page analytics contract | | 2 | data grain, time and lineage | join and leakage audit | | 3 | distributions and robust summaries | diagnostic data profile | | 4 | KPIs, cohorts and funnels | metric tree with denominator checks | | 5 | visual evidence and uncertainty | one decision display and critique | | 6 | validation and baselines | time-respecting evaluation plan | | 7 | regression and forecasting | benchmark comparison | | 8 | classification and calibration | probability audit and threshold table | | 9 | trees, ensembles and drift | model card and monitoring triggers | | 10 | optimisation, inventory and queues | feasible policy with sensitivity analysis | | 11 | experiments and causal targeting | experiment or identification design | | 12 | deployment and capstone defence | decision memo, rollback rule and oral defence | Suggested workload is 90 minutes of preparation, two hours of workshop activity and 90 minutes of follow-up per week. Every interactive cell has a static worked example, so students can participate without running code. Text alternatives accompany diagrams and colour is never the only carrier of meaning. ## Assessment alignment The following is a teaching template, not an institutional grading rule: | Task | Suggested share | Evidence assessed | | --------------------- | --------------: | ------------------------------------------------------------- | | data and metric audit | 20% | grain, timestamps, joins, denominator, uncertainty | | predictive notebook | 25% | baseline, split, calibration, subgroup error, reproducibility | | prescriptive case | 25% | objective, constraints, sensitivity and implementation | | integrated capstone | 30% | complete decision chain, communication and governance | For postgraduate work, require an explicit identification argument, robustness analysis and comparison between statistical loss and decision regret. ## Current evidence window The reading map was checked on **1 August 2026**. Three current boundaries matter: - NIST’s voluntary [AI Risk Management Framework](https://www.nist.gov/itl/ai-risk-management-framework){rel=""nofollow""} remains a useful govern–map–measure–manage structure; NIST also notes that version 1.0 is being revised. - The EU framework changed days before this course check: [Regulation (EU) 2026/1744](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32026R1744){rel=""nofollow""} amended the AI Act, including implementation timelines. Legal conclusions must therefore be dated and checked, not copied from an old slide. - Current organisational evidence shows analytics as a system problem: [Walmart’s fiscal-2026 10-K](https://stock.walmart.com/sec-filings/all-sec-filings/content/0000104169-26-000055/wmt-20260131.htm){rel=""nofollow""} links AI, automation and supply-chain investment, while Airbnb’s [Chronon feature platform](https://airbnb.tech/opensource/chronon/){rel=""nofollow""} emphasises lineage, temporal correctness and training–serving consistency. The [reading and evidence map](https://www.pengjiaxin.com/appendix/26-reading-map) separates standards, scholarly results, organisational cases and emerging work. It is selective teaching evidence, not a systematic review. ## Study discipline For every chapter, produce four lines: 1. **claim:** what is being asserted; 2. **calculation:** how the number was produced; 3. **assumption:** what must hold; 4. **decision consequence:** what changes if the claim is wrong. Start with [decision framing](https://www.pengjiaxin.com/00-intro/01-decision-framing), or use the [formula and decision map](https://www.pengjiaxin.com/appendix/24-formula-map) when revising. # Decision Framing []{#decision-framing} ## Replace the topic with a choice “Analyse late deliveries” names a topic. HarborMart must choose among actions: - accept the requested window; - offer a later window; - reroute fulfilment; - add temporary capacity; - leave the current process unchanged. An analysis is decision-ready only when at least two feasible alternatives exist. ## A six-part decision statement > At **checkout**, the **fulfilment manager** chooses an **available delivery promise** for one **proposed order**, to maximise **expected contribution after service-failure cost**, subject to **capacity, safety and customer-commitment constraints**. | Part | Test question | Failure mode | | ----------- | --------------------------------- | -------------------------------------- | | owner | who is authorised to act? | “the business” owns nothing | | action | what can change now? | predicting an immutable outcome | | unit | one customer, order, item or day? | mixed denominators | | horizon | when is the outcome realised? | target observed too late | | objective | which consequences count? | optimising clicks while harming margin | | constraints | what cannot be violated? | infeasible recommendation | ## Worked decision table Suppose an order yields £18 contribution if on time. A late delivery loses £7 through refunds and future attrition. Offering a later slot preserves £15 contribution and reduces late risk. | Action | Late probability | Expected value | | --------------------- | ---------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | accept requested slot | 0.35 | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[18]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.35]{.mord}[(]{.mopen}[7]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£15.55]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | offer later slot | 0.08 | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[15]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.08]{.mord}[(]{.mopen}[7]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£14.44]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Under only these consequences, accepting has higher expected value. If a late event instead costs £15, the values become £12.75 and £13.80, so the later slot wins. The prediction did not change; the decision changed because the loss did. ## Threshold from consequences Let [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be late probability, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} on-time contribution for accepting, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} late cost, and [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} the value of a safer alternative. Accept when [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore the maximum acceptable risk is [[[]{.katex-mathml}[[[]{.strut style="height:0.9331em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[18]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[15]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[15]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.8831em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.20]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A universal 0.5 classification threshold would be economically arbitrary. ## Prediction, intervention and policy | Question | Object needed | | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Which orders will be late? | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | Would adding a picker prevent lateness? | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | Where should three picker-hours go? | effects plus costs and capacity constraints | A risk model can prioritise review. It cannot by itself estimate the effect of the review or allocate scarce staff. ## Value of information Information is valuable only when it can change an action enough to improve expected outcomes. If both a 10% and a 30% late-risk estimate lead to accepting the order, refining the estimate between those values has no immediate decision value. Near the 20% threshold, a modest improvement in calibration may matter greatly. This is why model error should later be translated into **decision regret**, not reported only as RMSE or AUC. ## Quick check A campaign team asks, “Which customers are likely to churn?” What three facts are still missing before modelling? ::legacy-details{title="Answer"} At minimum: the action available for a flagged customer, the decision time/horizon, and the benefit and cost of intervention. Also define churn, eligibility, capacity and the no-action baseline. :: ## Foundation - Shmueli’s [To Explain or to Predict?](https://doi.org/10.1214/10-STS330){rel=""nofollow""} clarifies why predictive and explanatory goals imply different modelling choices. - Kleinberg et al.’s [Human Decisions and Machine Predictions](https://doi.org/10.1093/qje/qjx032){rel=""nofollow""} shows why prediction must be embedded in payoffs and counterfactual decision evaluation. [Next: Data Contracts](https://www.pengjiaxin.com/02-data-contracts) # Data Contracts []{#data-contracts} ## One row must mean one thing HarborMart stores three different grains: | Table | One row | Candidate key | | ----------------- | -------------------------------- | ---------------------------------- | | `orders` | one order | `order_id` | | `order_lines` | one product line within an order | `order_id, product_id` | | `delivery_events` | one status event | `order_id, event_time, event_type` | Joining `orders` to `order_lines` multiplies order rows. Summing `order_value` after that join double-counts orders with several lines. ### Small example | order | order value | lines | | ----- | ----------: | ----: | | A | £30 | 3 | | B | £20 | 1 | The true total is £50. After a line-level join, summing repeated order values gives [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[3]{.mord}[(]{.mopen}[30]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[(]{.mopen}[20]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£110]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The arithmetic is correct; the grain is wrong. ## The five-clock audit For every field, record: | Clock | Meaning | Example | | -------------- | ------------------------------------ | -------------------------- | | event time | when the world changed | order placed 17:03 | | observed time | when the system captured it | payment event 17:03:04 | | available time | when a decision service could use it | feature store 17:04 | | decision time | when action was selected | promise confirmed 17:03:10 | | label time | when the outcome became knowable | delivery completed 19:42 | A feature is valid only if its **available time** is no later than decision time. A final route duration entered after delivery is not a predictive feature for checkout, even if its event date is the same day. ## A minimum data contract | Field | Required statement | | --------------- | ---------------------------------------------------------------------------------- | | population | all eligible UK delivery orders accepted in completed weeks | | exclusions | test accounts and documented outages; cancellations retained as a separate outcome | | unit | one accepted order | | key | stable unique `order_id` | | target | delivered after promised end timestamp | | feature cutoff | checkout confirmation time | | timezone | Europe/London with daylight-saving handling | | currency | GBP gross or net of VAT, stated consistently | | missingness | valid absence, delayed record or system failure distinguished | | revision policy | which late-arriving events restate historical metrics | ## Missing is a process observation Do not begin with mean imputation. Ask why the value is absent: - **structural:** apartment floor does not apply to a house; - **random capture failure:** scanner briefly offline; - **selective:** difficult deliveries omit a completion code more often; - **not yet available:** outcome still developing. An indicator plus domain review may be more honest than replacing every blank with an average. If missingness depends on the unobserved value, routine imputation can preserve bias while making the table look complete. ## Join checks that must balance Before and after each join, record: 1. row count and distinct key count; 2. unmatched keys on each side; 3. duplication factor by key; 4. totals that should be invariant; 5. distribution of newly missing fields. For the £50 example, `sum(order_value)` is an invariant only at order grain. At line grain, allocate value or aggregate lines before joining. ## Data lineage in one sentence > `late_flag` is computed nightly from immutable promise timestamps and the first valid delivered event, with source-system version, extraction time and transformation code recorded. This sentence identifies source, rule, timing and reproducibility. “From the warehouse” does not. ## Quick check Why is a customer’s current lifetime order count dangerous in a historical churn-training row? ::legacy-details{title="Answer"} The current count includes orders placed after the historical decision date. Reconstruct the count as of that date; otherwise future behaviour leaks into the feature. :: ## Further evidence The dataset-documentation literature treats provenance and intended use as part of the data object, not optional prose. Start with [Datasheets for Datasets](https://doi.org/10.1145/3458723){rel=""nofollow""} and adapt its questions to the decision context. [Next: Reproducible Workflow](https://www.pengjiaxin.com/03-reproducible-workflow) # Reproducible Analytics Workflow []{#reproducible-analytics-workflow} Reproducibility means more than rerunning a notebook. Another analyst must be able to reconstruct the data available then, execute the transformation and explain why the resulting number supports the decision. ## The analysis manifest | Item | HarborMart example | | --------------------- | ---------------------------------------------- | | question version | `delivery-promise-v3` | | decision cutoff | checkout confirmation timestamp | | source snapshot | warehouse tables as of 2026-06-30 23:59 UTC | | query or extract hash | immutable identifier for extraction logic | | data dictionary | field, unit, allowed values, owner | | code environment | Python/package versions or browser runtime | | random seed | fixed where randomness is used | | split definition | weeks 1–18 train, 19–21 validation, 22–24 test | | metric definitions | formulas, denominator and exclusions | | model/policy version | artefact plus threshold and constraints | | reviewer | person independent of original calculation | Saving only the final CSV loses the query, cutoff and exclusions. Saving only code loses the historical source state. ## Separate work by purpose :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgU1tTb3VyY2Ugc25hcHNob3RdIC0tPiBWW1ZhbGlkYXRpb24gdGVzdHNdCiAgViAtLT4gVFtUcmFuc2Zvcm1hdGlvbl0KICBUIC0tPiBBW0FuYWx5c2lzIHRhYmxlXQogIEEgLS0+IE1bTW9kZWwgb3IgZXN0aW1hdGVdCiAgTSAtLT4gUFtQb2xpY3kgYW5kIHRocmVzaG9sZF0KICBQIC0tPiBSW0RlY2lzaW9uIHJlY29yZF0KICBSIC0tPiBPW091dGNvbWUgYW5kIG1vbml0b3Jpbmdd" locale="en"} The decision record should contain both the model output and the action actually taken. Otherwise overrides disappear and later evaluation confuses model performance with policy performance. ## Tests at four layers | Layer | Example test | | ----------- | ----------------------------------------------------- | | schema | `order_id` non-null and unique at order grain | | semantic | promised end is after promised start | | statistical | daily order count within investigated operating range | | decision | no feature has availability time after checkout | A passing schema does not establish a sensible business value. A statistical anomaly is not automatically an error; it may be the event the business needs to understand. ## Reproduce, then verify These are different: - **reproduction:** rerun the same code and obtain the same result; - **verification:** independently check whether the result answers the intended question; - **validation:** test performance on appropriate unseen or future cases; - **audit:** inspect controls, evidence, responsibility and change history. Two analysts can reproduce the same leaked model. Reproducibility is necessary, not sufficient. ## Responsible use of generative AI Record where AI assisted with code, text or classification. For each material output: 1. preserve the input context without exposing confidential data; 2. verify functions and claims against authoritative documentation or source data; 3. test edge cases, units and temporal logic; 4. identify the human accountable for acceptance; 5. keep a non-AI route for sensitive or prohibited data. An AI-generated query that executes successfully can still multiply rows, use a future field or silently change a denominator. ## Reproducibility handoff A compact handoff contains: - `README`: question, action, owner and run order; - data contract and source snapshot identifier; - executable transformations and tests; - frozen evaluation set definition; - result table with uncertainty; - policy logic, override and rollback rules; - model/data/decision monitoring owners. ## Quick check The model file and notebook are versioned, but the classification threshold is edited manually in a dashboard. Is the decision reproducible? ::legacy-details{title="Answer"} No. The deployed decision is the model **plus** threshold and surrounding rules. Version the threshold, approval, effective time and affected population with the model. :: ## Production perspective [Hidden Technical Debt in Machine Learning Systems](https://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems){rel=""nofollow""} explains why data dependencies, feedback and undeclared consumers create system risk. Google’s [ML Test Score](https://research.google/pubs/the-ml-test-score-a-rubric-for-ml-production-readiness-and-technical-debt-reduction/){rel=""nofollow""} turns this concern into concrete pre-production and monitoring tests. [Next: Descriptive Analytics](https://www.pengjiaxin.com/../01-descriptive/) # 0. Decision and Data Foundations []{#_0-decision-and-data-foundations} Analytics starts before data extraction. This module prevents three expensive errors: answering the wrong question, measuring the wrong unit and using information that was unavailable when the decision was made. ## Learning outcomes After this module, you can: - write an analytics contract with owner, action, unit, horizon, objective and constraints; - distinguish an entity, event, snapshot and outcome table; - test whether each field existed at the decision timestamp; - leave a reproducible trail from source data to recommendation. ## Chapters | Chapter | Question | Output | | ---------------------------------------------------------------------------- | ------------------------------------------------------ | --------------------------------------- | | [Decision Framing](https://www.pengjiaxin.com/01-decision-framing) | Which action is genuinely under consideration? | decision table and loss function | | [Data Contracts](https://www.pengjiaxin.com/02-data-contracts) | What does one row mean, and when was it knowable? | grain, key and timestamp audit | | [Reproducible Workflow](https://www.pengjiaxin.com/03-reproducible-workflow) | Can another analyst recreate and challenge the result? | analysis manifest and verification plan | ## Prepare, work, follow up - **Prepare:** choose one decision from work, study or public policy and name the person who acts. - **Workshop:** rewrite “understand customers better” as a measurable action problem; then draw the minimum data lineage. - **Follow up:** produce a one-page contract and exchange it with a peer who tries to find an undefined term. Participation can be written rather than spoken. A spreadsheet is sufficient; Python is optional in this module. ::warning{title="Gate before Module 1"} Do not proceed with a dataset whose row grain, keys, event time or outcome-availability time cannot be stated. A polished dashboard cannot repair an unidentified population. :: [Start: Decision Framing](https://www.pengjiaxin.com/01-decision-framing) # Distributions and Exploratory Data Analysis []{#distributions-and-exploratory-data-analysis} ## The average is one coordinate HarborMart observes delivery delays, in minutes relative to the promised end time: [[[]{.katex-mathml}[[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[−]{.mord}[12]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[8]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[3]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[6]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[9]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[12]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[48.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The mean is 4.7 minutes late, while the median is 2.0 minutes late. Neither is wrong: - the median describes a typical order; - the mean includes the operational burden of the 48-minute failure; - the upper tail matters for refunds and trust. Report the statistic that matches the decision, but show enough of the distribution to reveal what it omits. ## A five-question profile | Question | Useful summary | HarborMart interpretation | | -------------------------- | ------------------------------------- | -------------------------------- | | where is the centre? | median and mean | typical versus total burden | | how variable is it? | IQR, standard deviation | routine dispersion | | how bad is the tail? | 90th/95th percentile, exceedance rate | service-risk exposure | | is it multimodal? | histogram or grouped quantiles | perhaps two fulfilment processes | | does it differ by context? | stratified distributions | store, slot, basket or weather | The interquartile range is [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.75]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.25]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. It resists a few extreme values; that robustness is useful, but it can also make important failures disappear from the headline. ## Outlier is not a deletion instruction For the 48-minute delay, ask in order: 1. **invalid record?** impossible timestamp or duplicate event; 2. **valid exceptional event?** vehicle breakdown or road closure; 3. **valid recurring process?** a particular store or time slot; 4. **decision relevance?** costly enough to model separately; 5. **sensitivity?** does the recommendation change with and without it? Deleting every point beyond [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[1.5]{.mord}[]{.mspace style="margin-right:0.1667em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[QR]{.mord.mathnormal style="margin-right:0.0077em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} changes a descriptive convention into an undocumented business rule. ::pyodide --- code64: ZnJvbSBzdGF0aXN0aWNzIGltcG9ydCBtZWFuLCBtZWRpYW4sIHF1YW50aWxlcywgcHN0ZGV2CgpkZWxheSA9IFstMTIsIC04LCAtNSwgLTIsIDAsIDEsIDMsIDQsIDYsIDksIDEyLCA0OF0KcXVhcnRpbGVzID0gcXVhbnRpbGVzKGRlbGF5LCBuPTQsIG1ldGhvZD0iaW5jbHVzaXZlIikKZGVjaWxlcyA9IHF1YW50aWxlcyhkZWxheSwgbj0xMCwgbWV0aG9kPSJpbmNsdXNpdmUiKQoKcHJpbnQoZiJuICAgICAgID0ge2xlbihkZWxheSl9IikKcHJpbnQoZiJtZWFuICAgID0ge21lYW4oZGVsYXkpOi4yZn0gbWludXRlcyIpCnByaW50KGYibWVkaWFuICA9IHttZWRpYW4oZGVsYXkpOi4yZn0gbWludXRlcyIpCnByaW50KGYiSVFSICAgICA9IHtxdWFydGlsZXNbMl0gLSBxdWFydGlsZXNbMF06LjJmfSBtaW51dGVzIikKcHJpbnQoZiJwOTAgICAgID0ge2RlY2lsZXNbOF06LjJmfSBtaW51dGVzIikKcHJpbnQoZiJzdGQgZGV2ID0ge3BzdGRldihkZWxheSk6LjJmfSBtaW51dGVzIikKcHJpbnQoZiJsYXRlID4xNSBtaW4gPSB7c3VtKHggPiAxNSBmb3IgeCBpbiBkZWxheSkgLyBsZW4oZGVsYXkpOi4xJX0iKQ== layout: vertical locale: en title: Audit centre, spread and tail --- :: Change `48` to `480`. Notice which summaries move and which stay relatively stable. The correct response is not automatically to prefer the stable statistic; it is to identify whether the event belongs to the target process. ## EDA is structured scepticism Use this order: 1. verify units, keys, dates and impossible values; 2. inspect univariate distributions before relationships; 3. compare missing versus observed groups; 4. stratify by variables known before the outcome; 5. inspect time order and operational changes; 6. write hypotheses separately from confirmed findings. Exploration generates questions. Repeatedly searching until a pleasing pattern appears does not turn that pattern into confirmatory evidence. ## Quick check Store A has a lower median delay but a much higher 95th percentile than Store B. Which is “better”? ::legacy-details{title="Answer"} The question is incomplete. A typical-order objective favours A; a tail-service guarantee may favour B. Compare the full distributions, decision loss and data mix rather than selecting one universal statistic. :: [Next: KPIs and Denominators](https://www.pengjiaxin.com/05-kpis-denominators) # KPIs and Denominators []{#kpis-and-denominators} ## A metric is a contract “Late-delivery rate” is undefined until all fields below are fixed: | Field | HarborMart contract | | ----------- | ---------------------------------------------------------------------- | | numerator | accepted orders delivered after promised end | | denominator | accepted orders with a completed delivery outcome | | unit | order, not parcel or delivery event | | period | promise date in the completed calendar week | | timezone | Europe/London | | exclusions | documented test orders; cancellations reported as a separate guardrail | | revision | restate for late-arriving completion events for 14 days | | owner | fulfilment analytics lead | If 80 of 1,000 completed accepted orders are late, the rate is 8%. Dividing by 1,200 checkout attempts instead gives 6.7% and answers a different question. ## Ratios do not average themselves | Store | Late | Completed | Rate | | ----- | ---: | --------: | ---: | | A | 9 | 100 | 9% | | B | 18 | 900 | 2% | The unweighted average of store rates is 5.5%. The network rate is [[[]{.katex-mathml}[[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[900]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[9]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[18]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[2.7%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Use the first only if the estimand is “equally weighted typical store.” Use the second for “share of all completed orders.” Weighting is part of the question, not a formatting choice. ::pyodide --- code64: c3RvcmVzID0gWwogICAgeyJuYW1lIjogIkEiLCAibGF0ZSI6IDksICJjb21wbGV0ZWQiOiAxMDB9LAogICAgeyJuYW1lIjogIkIiLCAibGF0ZSI6IDE4LCAiY29tcGxldGVkIjogOTAwfSwKXQoKcmF0ZXMgPSBbc1sibGF0ZSJdIC8gc1siY29tcGxldGVkIl0gZm9yIHMgaW4gc3RvcmVzXQpzdG9yZV9hdmVyYWdlID0gc3VtKHJhdGVzKSAvIGxlbihyYXRlcykKbmV0d29ya19yYXRlID0gc3VtKHNbImxhdGUiXSBmb3IgcyBpbiBzdG9yZXMpIC8gc3VtKHNbImNvbXBsZXRlZCJdIGZvciBzIGluIHN0b3JlcykKCnByaW50KGYiRXF1YWxseSB3ZWlnaHRlZCBzdG9yZSByYXRlOiB7c3RvcmVfYXZlcmFnZTouMSV9IikKcHJpbnQoZiJPcmRlci13ZWlnaHRlZCBuZXR3b3JrIHJhdGU6IHtuZXR3b3JrX3JhdGU6LjElfSIpCmZvciBzLCByYXRlIGluIHppcChzdG9yZXMsIHJhdGVzKToKICAgIHByaW50KGYie3NbJ25hbWUnXX06IHtzWydsYXRlJ119L3tzWydjb21wbGV0ZWQnXX0gPSB7cmF0ZTouMSV9Iik= layout: vertical locale: en title: Audit a pooled KPI --- :: ## Driver trees expose arithmetic, not causality Weekly contribution may be decomposed as [[[]{.katex-mathml}[[[]{.strut style="height:0.7512em;vertical-align:-0.0833em;"}[[visits]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7512em;vertical-align:-0.0833em;"}[[conversion]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[average order value]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[contribution margin rate]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This identity helps locate a change. It does not prove that changing one component while holding the others fixed is feasible: a discount may raise conversion and lower margin simultaneously. ## Outcome, driver and guardrail | Role | Example | Why needed | | --------- | ---------------------------------- | ------------------------ | | outcome | contribution per eligible customer | links to value | | driver | checkout conversion | reacts quickly | | guardrail | refunds, lateness, complaints | detects displaced harm | | process | picker minutes per order | diagnoses implementation | Optimising a driver without guardrails invites gaming. Faster picking can raise errors; fewer refunds can reflect a harder claims process rather than better service. ## Metric-change protocol When a definition changes: 1. version the formula and effective date; 2. backfill only when the required historical fields exist; 3. show old and new definitions during transition; 4. explain the break rather than drawing a continuous trend; 5. record affected decisions and dashboards. ## Quick check The late rate falls after orders without a valid delivered timestamp are excluded. What must be checked? ::legacy-details{title="Answer"} Whether missing outcomes are selective. If failed deliveries are more likely to lack a timestamp, exclusion biases the denominator. Report missing-outcome rate and investigate its process. :: [Next: Segments, Cohorts and Funnels](https://www.pengjiaxin.com/06-segmentation-cohorts-funnels) # Segments, Cohorts and Funnels []{#segments-cohorts-and-funnels} Segments group entities by attributes. Cohorts align them by a starting event. Funnels follow eligibility through ordered stages. They answer different questions. ## Segment without inventing a person HarborMart may segment orders by store, slot, fulfilment mode and basket size. These are operational groups, not permanent customer “types.” Good segments are: - defined before the outcome being compared; - large enough for useful uncertainty estimates; - actionable through a distinct decision; - stable enough to reproduce; - checked for proxying sensitive attributes. A cluster label such as “value seeker” is an analyst’s summary, not an observed psychological fact. ## Cohort retention Suppose customer activity is measured from first order: | First-order cohort | Month 0 | Month 1 | Month 2 | Month 3 | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------: | ------: | ------: | ------: | | January, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[200]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 100% | 58% | 45% | 39% | | February, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[240]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 100% | 63% | 49% | — | | March, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[180]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 100% | 60% | — | — | The blank March cells are not zero; those horizons have not matured. Compare cohorts at the same age. A calendar-month total confounds customer age, acquisition volume and seasonal conditions. Retention at age [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2519em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[eligible cohort members]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[cohort members active at age ]{.mord}]{.mord.text}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Define whether “active” means any order, paid order or contribution-positive order, and how account closures or observation-window loss are handled. ## Funnel arithmetic | Stage | Customers | Stage conversion | Entry conversion | | ----------------- | --------: | ---------------: | ---------------: | | eligible visitors | 10,000 | — | 100% | | product viewed | 7,500 | 75.0% | 75.0% | | checkout started | 2,400 | 32.0% | 24.0% | | paid order | 1,920 | 80.0% | 19.2% | | fulfilled order | 1,824 | 95.0% | 18.24% | “Checkout conversion” could mean [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[920/2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[400]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[80%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} or [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[920/10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[19.2%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Name the denominator. Funnels require: - a stable identity across devices; - ordered event rules; - a time window; - treatment of repeats and backtracking; - consistent eligibility at entry. ## Composition can reverse an aggregate If mobile traffic rises and mobile converts less than desktop, total conversion can fall even when both channel-specific rates improve. That is a composition effect, not necessarily a product deterioration. Use standardisation when the question is “what would the total rate be under a fixed channel mix?” Report both observed and standardised results; each answers a different question. ## Quick check February’s Month-1 retention exceeds January’s by five points. Can HarborMart attribute the change to a new onboarding message launched in February? ::legacy-details{title="Answer"} No. The cohorts also differ in acquisition source, season, prices and other conditions. The pattern motivates an experiment or credible adjustment; it is not itself a causal estimate. :: [Next: Visual Evidence](https://www.pengjiaxin.com/07-visualisation-story) # Visual Evidence and Data Stories []{#visual-evidence-and-data-stories} ## Begin with the reader’s task | Task | Usually effective | Common failure | | -------------------------- | ----------------------------------------- | -------------------------------------------- | | compare categories | sorted dot or bar plot | 3D perspective and area distortion | | trace time | line plot with event annotations | truncated period or dual axes | | inspect distribution | histogram, ECDF or box/violin plus points | mean-only bar | | inspect relationship | scatterplot with groups and uncertainty | overplotting or fitted line without raw data | | compare actual with target | aligned point/interval display | traffic-light colour without scale | Position on a common scale is generally decoded more accurately than angle or area. Cleveland and McGill’s [graphical-perception experiments](https://doi.org/10.1080/01621459.1984.10478080){rel=""nofollow""} provide the foundation; the lesson is to match encoding to comparison, not to ban one chart mechanically. ## One display, one decision question - Weak title: **Delivery performance** - Decision title: **Evening slots account for 71% of delays above 30 minutes; test capacity before changing all promises** The second title states the pattern and the proposed next step. It must still show: - period and population; - denominator and sample size; - comparison or baseline; - uncertainty or data limitation; - annotation for operational changes. ## Do not hide the scale A bar from 48% to 52% can make a four-point change fill the page. For magnitude comparisons, bars normally begin at zero. A line chart may use a narrower axis to reveal change, but label the range and provide context. Dual axes can imply a relation by choosing convenient scales. Prefer aligned panels or index both series to a documented baseline when the comparison is about relative change. ## Display uncertainty where action depends on it Suppose Store A late rate is 8% from 100 orders and Store B is 7% from 10,000. The one-point ranking hides radically different precision. Show: - interval estimates or posterior distributions; - sample size and exposure; - forecast bands across horizon; - scenario ranges for assumptions; - missing-data and revision indicators. Uncertainty is not a decorative haze. It should help the reader decide whether alternatives are meaningfully different. Research on [uncertainty-visualisation evaluation](https://idl.cs.washington.edu/files/2019-UncertaintyEval-InfoVis.pdf){rel=""nofollow""} also warns that visual accuracy is not the same as decision quality. ## Accessibility and integrity checklist - title states the question or conclusion; - text and table provide the key values; - colour is redundant with labels, shape or line style; - palette remains distinguishable with colour-vision differences; - labels use units and plain language; - source, cutoff and exclusions are visible; - missing periods are gaps, not connected lines; - annotations distinguish observed events from interpretation. ## A three-sentence data story 1. **Context:** “Across 24 completed weeks, 7.8% of accepted deliveries were late.” 2. **Evidence:** “The rate was 4.1% before 17:00 and 13.6% after 17:00; evening orders also had larger baskets and longer routes.” 3. **Actionable uncertainty:** “Pilot one extra picker in two comparable evening zones; the aggregate split alone does not identify a staffing effect.” The story does not pretend the chart has already answered the causal question. ## Quick check A chart highlights the top five stores by complaint count. What essential exposure may be missing? ::legacy-details{title="Answer"} Order or customer volume. Show complaint rate as well as count, and keep the count because a low-rate high-volume store may still create the most total harm. :: [Next: Experiments and Causal Boundaries](https://www.pengjiaxin.com/08-experiments-causal-boundary) # Experiments and Causal Boundaries []{#experiments-and-causal-boundaries} ## The missing outcome For customer [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, let [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be the outcome under a new free-delivery message and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} under the current message. The individual effect is [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} but only one potential outcome is observed. Random assignment makes groups comparable in expectation, allowing the difference in group means to estimate an average effect. ## HarborMart experiment | Group | Eligible customers | Paid orders | Conversion | | --------- | -----------------: | ----------: | ---------: | | control | 10,000 | 2,400 | 24.0% | | treatment | 10,000 | 2,520 | 25.2% | Estimated lift is 1.2 percentage points, or 5% relative to the control rate. The standard error for two independent proportions is approximately [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.04em;vertical-align:-1.1328em;"}[[[[[[]{.pstrut style="height:5em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.24]{.mord}[(]{.mopen}[0.76]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.252]{.mord}[(]{.mopen}[0.748]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-5em;"}[[]{.pstrut style="height:5em;"}[]{.hide-tail style="min-width:1.02em;height:3.08em;"}]{style="top:-3.8672em;"}]{.vlist style="height:1.9072em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1328em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.0061.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A rough 95% interval is [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.012]{.mord}[]{.mspace style="margin-right:0.2222em;"}[±]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1.96]{.mord}[(]{.mopen}[0.0061]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, approximately 0.0 to 2.4 percentage points. “Positive point estimate” and “precisely established business value” are different claims. ## Design before significance | Design item | HarborMart choice | Why it matters | | --------------------- | -------------------------------------- | ------------------------------------- | | unit of randomisation | customer account | avoid a customer seeing both messages | | eligibility | customers with a serviceable address | preserve target population | | primary outcome | contribution per eligible customer | includes discount cost and conversion | | guardrails | lateness, refunds, support contacts | catch displaced harm | | horizon | 28 days plus delayed refund window | include foreseeable effects | | analysis | intention to treat | preserve randomisation | | stopping rule | fixed or pre-specified sequential plan | avoid repeated peeking bias | First run an A/A or instrumentation check. A sample-ratio mismatch, duplicate assignment or missing outcome can invalidate a very small p-value. ## Interference and marketplace effects If treatment increases demand, control customers may face fewer slots. One customer’s treatment then changes another customer’s outcome. Randomising individual customers does not isolate the marketplace effect. Possible responses include cluster or switchback randomisation, capacity-aware designs and explicit equilibrium analysis. The design must match how units interact. Airbnb’s [2025 experimentation review](https://airbnb.tech/infrastructure/academic-publications-airbnb-tech-2025-year-in-review/){rel=""nofollow""} illustrates current work on long-run ranking dynamics and batch-adaptive experiments. It is an organisational research case, not proof that one design fits every marketplace. ## When randomisation is unavailable Before/after and treated/untreated comparisons can be confounded by season, targeting, selection and concurrent changes. Use domain-supported designs—difference-in-differences, discontinuities, instruments, matching or synthetic controls—only when their identifying assumptions are defensible. Write the boundary: > “The adjusted association is useful for forecasting and prioritising a future experiment; it does not identify the effect of sending the offer.” ## Quick check Treatment raises conversion but lowers contribution per eligible customer. Is the experiment a success? ::legacy-details{title="Answer"} Not under a contribution objective. Conversion is a driver; discount cost, order mix and guardrails determine value. Use the pre-specified outcome and investigate heterogeneity without redefining success after seeing results. :: ## Foundation - Kohavi et al., [Controlled experiments on the web](https://doi.org/10.1007/s10618-008-0114-1){rel=""nofollow""} - Kohavi, Tang & Xu, [Trustworthy Online Controlled Experiments](https://doi.org/10.1017/9781108653985){rel=""nofollow""} [Next: Predictive Analytics](https://www.pengjiaxin.com/../02-predictive/) # 1. Descriptive Analytics []{#_1-descriptive-analytics} Descriptive analytics reconstructs what happened to a defined population. It does not merely “summarise the data”: it tests whether an aggregate hides skew, timing, selection or operational failure. ## Learning outcomes After this module, you can: - compare centre, spread, tail and subgroup distributions; - define a KPI with numerator, denominator, unit, period and exclusions; - build cohort and funnel tables without changing populations mid-analysis; - select a visual encoding for the reader’s comparison task; - separate observational patterns from experimental causal evidence. ## Chapter route | Chapter | Diagnostic question | Output | | ---------------------------------------------------------------------------------------------- | --------------------------------------------------- | ---------------------------------- | | [Distributions and EDA](https://www.pengjiaxin.com/04-distributions-eda) | Is the average hiding variation or data failure? | distribution profile | | [KPIs and Denominators](https://www.pengjiaxin.com/05-kpis-denominators) | Exactly what entered the numerator and denominator? | metric contract and driver tree | | [Segments, Cohorts and Funnels](https://www.pengjiaxin.com/06-segmentation-cohorts-funnels) | Which comparable groups follow different paths? | cohort/funnel diagnosis | | [Visual Evidence](https://www.pengjiaxin.com/07-visualisation-story) | What comparison must the reader make? | decision display | | [Experiments and Causal Boundaries](https://www.pengjiaxin.com/08-experiments-causal-boundary) | Did an action cause the observed difference? | experiment or limitation statement | ## Prepare, work, follow up - **Prepare:** bring one dashboard metric and write its denominator from memory. - **Workshop:** reproduce it from a six-row table, then find two ways the definition could change the result. - **Follow up:** replace one headline average with a distribution, comparison group and uncertainty statement. The module uses tables as text alternatives to every visual argument. Students may submit a written chart specification when drawing software is inaccessible. [Start: Distributions and EDA](https://www.pengjiaxin.com/04-distributions-eda) # Validation, Baselines and Leakage []{#validation-baselines-and-leakage} ## Validation is a time machine with rules At each historical prediction origin, reconstruct only information available then. HarborMart’s late-delivery model is trained on orders whose outcomes have matured; its test set contains later completed weeks. | Partition | Weeks | Purpose | | ---------- | ----: | ----------------------------------------- | | train | 1–16 | estimate model parameters | | validation | 17–20 | choose features, complexity and threshold | | test | 21–24 | one final performance audit | If the business has strong seasonality, a single period may be fragile. Use rolling origins and report performance by horizon and regime. ## Four leakage routes | Leakage | HarborMart example | Repair | | --------------------- | ---------------------------------------------- | ------------------------------- | | target leakage | final refund amount predicts late delivery | exclude post-outcome fields | | temporal leakage | current lifetime orders in a 2024 row | reconstruct as of origin | | group leakage | same customer appears in train and random test | group or time-aware split | | preprocessing leakage | imputation/scaling fitted before split | fit transforms on training only | Leakage is information unavailable in intended use, not simply a variable highly correlated with the target. ## Match the split to deployment | Deployment question | Suitable validation idea | | ---------------------------------- | -------------------------------------- | | future weeks at known stores | forward-chaining time split | | new stores | hold out stores | | new customers | group by customer identity | | next campaign under changed policy | later-policy test and stress scenario | | rare disruptions | targeted stress set plus ordinary test | No split protects against every shift. Name the intended generalisation. ## Baselines before algorithms For classification, compare with: - observed base rate; - current business rule; - simple interpretable score; - capacity-matched random or priority policy. For forecasting, compare with: - last value; - seasonal naive value; - recent mean; - current planner forecast. A complex model that beats “predict zero” but not the deployed rule has not established incremental value. ## Avoid test-set bargaining Choose model families and hyperparameters on training/validation evidence. Use the test once for the selected pipeline. Repeatedly consulting test performance turns the test into another validation set. Record every material comparison, including failed models. Otherwise the reported interval ignores the search process. ## Evaluation table | Dimension | Minimum report | | ------------------- | ----------------------------------------------- | | central performance | MAE, log loss or decision loss | | uncertainty | interval across periods/folds or bootstrap unit | | stability | by time, store, channel and relevant group | | calibration | predicted versus observed risk | | baseline | same records and metric | | stress | missing fields, peaks, policy or price shift | | latency | whether output arrives before action | ## Quick check A delivery model uses “number of support contacts in the next 24 hours.” It will be available before the weekly management meeting. Is it valid? ::legacy-details{title="Answer"} Only if the intended prediction is made after those 24 hours. It is invalid for a checkout-time promise decision. Availability must be assessed at the actual action time, not the later reporting meeting. :: [Next: Regression and Forecasting](https://www.pengjiaxin.com/10-regression-forecasting) # Regression and Forecasting []{#regression-and-forecasting} ## Conditional mean, not automatic causality A regression model may write daily orders as [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9386em;vertical-align:-0.2441em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[temperature]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9386em;vertical-align:-0.2441em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[promotion]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} describes a conditional relationship under the model. Calling it the effect of temperature or promotion requires assumptions about omitted causes, selection, timing and functional form. ## Small fitted example The following five-day dataset is a calculation exercise, not empirical evidence: | Temperature °C | Orders | | -------------: | -----: | | 10 | 120 | | 12 | 126 | | 14 | 133 | | 16 | 141 | | 18 | 150 | For simple least squares, [[[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4254em;vertical-align:-0.9857em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[x]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[x]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[)]{.mclose}]{.mord}]{style="top:-3.6897em;"}]{.vlist style="height:1.4397em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9857em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[x]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::pyodide --- code64: eCA9IFsxMCwgMTIsIDE0LCAxNiwgMThdCnkgPSBbMTIwLCAxMjYsIDEzMywgMTQxLCAxNTBdCgp4X2JhciA9IHN1bSh4KSAvIGxlbih4KQp5X2JhciA9IHN1bSh5KSAvIGxlbih5KQpzbG9wZSA9IHN1bSgoYS14X2JhcikqKGIteV9iYXIpIGZvciBhLCBiIGluIHppcCh4LCB5KSkgLyBzdW0oKGEteF9iYXIpKioyIGZvciBhIGluIHgpCmludGVyY2VwdCA9IHlfYmFyIC0gc2xvcGUqeF9iYXIKZml0dGVkID0gW2ludGVyY2VwdCArIHNsb3BlKmEgZm9yIGEgaW4geF0KbWFlID0gc3VtKGFicyhhLWIpIGZvciBhLCBiIGluIHppcCh5LCBmaXR0ZWQpKSAvIGxlbih5KQoKcHJpbnQoZiJvcmRlcnMgPSB7aW50ZXJjZXB0Oi4yZn0gKyB7c2xvcGU6LjJmfSDDlyB0ZW1wZXJhdHVyZSIpCnByaW50KGYiaW4tc2FtcGxlIE1BRSA9IHttYWU6LjJmfSBvcmRlcnMiKQpwcmludCgicmVzaWR1YWxzID0iLCBbcm91bmQoYS1iLCAyKSBmb3IgYSwgYiBpbiB6aXAoeSwgZml0dGVkKV0p layout: vertical locale: en title: Fit and audit a simple regression --- :: The fitted slope is about 3.75 orders per degree within this narrow sample. Extrapolating to 35°C or claiming a causal response is unsupported. ## Forecast origin and horizon A forecast is indexed by both origin [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and horizon [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1.0496em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[I]{.mord.mathcal style="margin-right:0.0738em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0738em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The information set [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[I]{.mord.mathcal style="margin-right:0.0738em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0738em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} must be frozen. A Monday replenishment forecast may use weather forecasts issued by Monday, not realised Thursday weather. ## Choose loss from consequences | Metric | Formula idea | Boundary | | ---------------------------- | ------------------------------ | ----------------------------------- | | MAE | mean $ | y-\hat y | | RMSE | square-root mean squared error | emphasises large misses | | MAPE | mean percentage error | unstable near zero | | weighted absolute percentage | $\sum | e | | pinball loss | asymmetric quantile error | useful for service/stock trade-offs | If under-forecasting fresh milk costs more than over-forecasting canned goods, a single unweighted RMSE can select the wrong operational model. ## Point and distribution Inventory and staffing require uncertainty, not just a point. Report quantiles or prediction intervals and test their empirical coverage. A nominal 90% interval should contain roughly 90% of comparable future outcomes. Coverage alone is not enough: an interval covering everything is uselessly wide. Compare calibration and sharpness. ## Residual audit Plot or tabulate residuals against: - fitted value and key inputs; - time and forecast horizon; - store, product and channel; - promotion and disruption periods; - missingness patterns. Systematic residuals are information the model failed to encode or a sign that the data-generating process changed. ## Quick check Model A has lower daily RMSE; Model B has lower shortage cost in a replenishment simulation. Which wins? ::legacy-details{title="Answer"} For that replenishment decision, B is preferable if the simulation and costs are credible and constraints match deployment. Report the statistical trade-off and test sensitivity rather than claiming B is universally more accurate. :: For deeper dynamic modelling, continue to the dedicated [Time Series course](https://www.pengjiaxin.com/../../time-series/00-intro/). [Next: Classification and Calibration](https://www.pengjiaxin.com/11-classification-calibration) # Classification and Calibration []{#classification-and-calibration} ## Start with the confusion matrix HarborMart has 10,000 eligible customers; 300 become inactive. At one threshold, a model flags 500 customers, including 180 who become inactive. | | Observed inactive | Observed active | Total | | ----------- | ----------------: | --------------: | -----: | | flagged | TP 180 | FP 320 | 500 | | not flagged | FN 120 | TN 9,380 | 9,500 | | total | 300 | 9,700 | 10,000 | Therefore: [[[]{.katex-mathml}[[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[precision]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[180/500]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9444em;vertical-align:-0.1944em;"}[36%]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[recall]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[180/300]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[60%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Accuracy is 95.6%, below the 97% accuracy of predicting “active” for everyone. Class imbalance makes accuracy a weak headline. ## Ranking and probability are different - **discrimination:** do higher scores belong to more positive cases? AUROC and precision–recall assess ranking. - **calibration:** among cases assigned probability 0.20, does the outcome occur about 20% of the time? A monotonic transformation can preserve ranking and destroy probability meaning. Decision thresholds using expected value require calibrated probabilities. ## Calibration table | Predicted-risk band | Customers | Mean predicted | Observed inactivity | | ------------------- | --------: | -------------: | ------------------: | | 0–5% | 6,000 | 2% | 0.5% (30) | | 5–15% | 2,500 | 9% | 1.6% (40) | | 15–30% | 1,000 | 22% | 5.0% (50) | | above 30% | 500 | 44% | 36.0% (180) | The observed counts sum to the same 300 inactive customers as the confusion matrix. The model ranks useful cases but overstates absolute risk, so an ROI calculation that treats its probabilities as literal will be optimistic. The Brier score is [[[]{.katex-mathml}[[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It assesses probability error but depends on prevalence; compare it with a base-rate forecast and inspect calibration by time and subgroup. ## Precision–recall under rare outcomes When positives are rare, false positives can dominate operations even with a low false-positive rate. Precision directly answers “of those flagged, how many were positive?” The random precision baseline equals prevalence. [Saito and Rehmsmeier (2015)](https://doi.org/10.1371/journal.pone.0118432){rel=""nofollow""} explain why precision–recall plots often reveal practical weakness that an ROC plot obscures under imbalance. ## Labels are measurements “Churn” might mean no order for 30, 60 or 90 days. Customers may be inactive because HarborMart stopped serving their postcode. Label windows must mature, and policy-driven labels can feed past decisions back into the model. Audit: - definition and horizon; - censoring and delayed outcomes; - class-specific label error; - whether action changes the observed label; - whether the target is a proxy for the real harm. ## Quick check Two models have the same AUROC. Model A is well calibrated; Model B overstates every probability by roughly 50%. Are they interchangeable? ::legacy-details{title="Answer"} Not for expected-value thresholds or resource forecasts. They may rank similarly, but B misstates absolute risk. Recalibrate on a valid validation period and recheck future/subgroup calibration. :: ## Foundation [Guo et al. (2017)](https://proceedings.mlr.press/v70/guo17a.html){rel=""nofollow""} show that strong classification accuracy does not guarantee well-calibrated confidence and evaluate post-processing calibration methods. [Next: Trees and Ensembles](https://www.pengjiaxin.com/12-trees-ensembles) # Trees and Ensembles []{#trees-and-ensembles} ## A tree partitions cases A shallow HarborMart tree might produce: | Rule | Historical late rate | Support | | ------------------------------------- | -------------------: | -----------: | | slot before 17:00 | 4% | 8,400 orders | | slot after 17:00 and utilisation ≤85% | 11% | 2,100 | | slot after 17:00 and utilisation >85% | 32% | 600 | Each terminal node estimates an outcome from cases following its path. The rules are readable, but the 32% is not a law of nature: report support, uncertainty and future validation. ## How a split is chosen Classification trees select splits that reduce impurity, such as Gini impurity [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.3521em;vertical-align:-1.3021em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Regression trees reduce squared or absolute error. Greedy splitting searches locally; a small data change can produce a different tree. Control complexity with maximum depth, minimum leaf size and pruning chosen on validation data. Growing a tree until every training leaf is pure memorises noise. ## Why ensembles help | Method | Main idea | Typical strength | Main caution | | --------------------- | --------------------------------------------- | --------------------------------- | ---------------------------------------------- | | bagging/random forest | average diverse trees | reduces variance, robust baseline | less transparent; correlated trees add less | | gradient boosting | sequentially improve residual/error direction | strong tabular prediction | sensitive to tuning and leakage | | stacking | combine out-of-fold model predictions | exploits complementary errors | base predictions must be genuinely out of fold | Complexity is justified by future performance and decision value, not by algorithm prestige. ## Compare on the same information A fair benchmark holds constant: - training and test rows; - feature availability cutoff; - preprocessing and missingness policy; - target and horizon; - metric, threshold and capacity; - uncertainty calculation. Giving the ensemble post-outcome features while the logistic model uses checkout-time fields is not a model comparison. ## Feature importance is not an effect Split counts, permutation importance and SHAP-style attributions describe model dependence under specific perturbations. Correlated features can share or exchange importance; a high-importance feature is not necessarily causal or safe to intervene on. If postcode is important, the next question is whether it encodes distance, service design, socioeconomic structure or data quality—not “change the customer’s postcode.” ## Quick check A boosted model improves AUROC from 0.79 to 0.80 but doubles latency and worsens high-risk calibration. Should it replace the baseline? ::legacy-details{title="Answer"} Not from AUROC alone. Evaluate decision loss at capacity, calibration, latency, maintenance, subgroup effects and whether the 0.01 ranking gain survives uncertainty. The simpler model may have higher total value. :: [Next: Decision Metrics and Thresholds](https://www.pengjiaxin.com/13-decision-metrics-thresholds) # Decision Metrics and Thresholds []{#decision-metrics-and-thresholds} ## A score does not act A threshold creates false positives and false negatives. Under simple constant costs, choose positive when [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[)]{.mclose}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[P]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so [[[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[P]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[P]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This formula assumes calibrated [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, mutually exclusive actions and correctly specified costs. ## Intervention value needs an effect Suppose retaining a would-be churner is worth £50 and a message costs £8. - If the message certainly prevents churn, act when [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[(]{.mopen}[50]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[8]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, or [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.16]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. - If it prevents only 20% of churn, act when [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[(]{.mopen}[0.20]{.mord}[)]{.mclose}[(]{.mopen}[50]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[8]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, or [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.80]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Risk is not treatment responsiveness. Targeting the highest-risk customers can waste capacity if they cannot be influenced. ## Threshold audit ::pyodide --- code64: c2NvcmVzID0gWzAuOTIsIDAuODEsIDAuNzMsIDAuNjEsIDAuNTUsIDAuNDQsIDAuMzgsIDAuMjcsIDAuMTgsIDAuMDhdCm91dGNvbWUgPSBbMSwgICAgMCwgICAgMSwgICAgMSwgICAgMCwgICAgMCwgICAgMSwgICAgMCwgICAgMCwgICAgMF0KZmFsc2VfcG9zaXRpdmVfY29zdCA9IDQKZmFsc2VfbmVnYXRpdmVfY29zdCA9IDMwCgpmb3IgdGhyZXNob2xkIGluIFswLjIsIDAuNCwgMC42LCAwLjhdOgogICAgcHJlZGljdGVkID0gW3AgPj0gdGhyZXNob2xkIGZvciBwIGluIHNjb3Jlc10KICAgIHRwID0gc3VtKGEgYW5kIHkgZm9yIGEsIHkgaW4gemlwKHByZWRpY3RlZCwgb3V0Y29tZSkpCiAgICBmcCA9IHN1bShhIGFuZCBub3QgeSBmb3IgYSwgeSBpbiB6aXAocHJlZGljdGVkLCBvdXRjb21lKSkKICAgIGZuID0gc3VtKChub3QgYSkgYW5kIHkgZm9yIGEsIHkgaW4gemlwKHByZWRpY3RlZCwgb3V0Y29tZSkpCiAgICBjb3N0ID0gZnAqZmFsc2VfcG9zaXRpdmVfY29zdCArIGZuKmZhbHNlX25lZ2F0aXZlX2Nvc3QKICAgIHByaW50KGYidD17dGhyZXNob2xkOi4xZn06IFRQPXt0cH0sIEZQPXtmcH0sIEZOPXtmbn0sIGNvc3Q9wqN7Y29zdH0iKQ== layout: vertical locale: en title: Compare thresholds by decision cost --- :: The sample is deliberately small. In practice, choose the threshold on validation data and report uncertainty on a later test period. ## Capacity changes the policy If HarborMart can contact only 1,000 customers, the policy may be “select the top 1,000 eligible expected incremental values,” not “score above 0.5.” Capacity, contact fatigue, fairness and channel constraints enter the ranking. Compare policies at equal capacity: | Policy | Customers contacted | Expected incremental contribution | | ------------------ | ------------------: | ----------------------------------------: | | random eligible | 1,000 | baseline | | highest churn risk | 1,000 | depends on effect overlap | | highest uplift | 1,000 | depends on credible causal model | | constrained uplift | 1,000 | effect minus cost with policy constraints | ## Decision curves, not metric shopping Plot or table value across plausible thresholds, costs and capacities. A model that wins at one threshold may lose elsewhere. AUROC averages ranking across thresholds the business may never use. F1 assigns a particular symmetric trade-off without pounds, capacity or intervention effects. Use them as diagnostics, not objectives by default. ## Quick check A model’s probabilities are perfectly calibrated overall but systematically too low for one customer group. Can the same economic threshold be applied safely? ::legacy-details{title="Answer"} Not without subgroup and impact analysis. Overall calibration can hide group error. Reassess data, calibration, consequences, fairness obligations and whether a group-specific repair is lawful and substantively justified. :: [Next: Explainability and Drift](https://www.pengjiaxin.com/14-explainability-drift) # Explainability, Monitoring and Drift []{#explainability-monitoring-and-drift} ## Explain the right object | Object | Question | | ----------- | ----------------------------------------------------------------- | | data | where did this feature come from and when was it available? | | model | which inputs changed this score under the fitted function? | | uncertainty | how stable is the score across samples or plausible models? | | decision | why did this score, threshold and constraint produce this action? | | outcome | did the action improve the intended result? | A local feature attribution answers none of the other four automatically. ## Three levels of explanation - **global:** broad model structure, important inputs, interactions and limits; - **cohort:** performance and behaviour for an operational or affected group; - **local:** evidence and rules behind one prediction/action. Correlated inputs can make local attributions unstable. Perturbations may create impossible cases. An explanation should be tested for fidelity, stability and usefulness to its intended reader. For high-stakes decisions, Rudin’s [interpretable-model argument](https://doi.org/10.1038/s42256-019-0048-x){rel=""nofollow""} asks whether an intrinsically understandable model can meet performance needs before explaining an avoidable black box. Longo et al.’s [XAI 2.0 agenda](https://doi.org/10.1016/j.inffus.2024.102301){rel=""nofollow""} broadens the problem toward actionable, interdisciplinary and falsifiable explanations. ## Drift taxonomy | Drift | What changed | HarborMart signal | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- | | data/covariate | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | more express orders | | prior | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | lateness rises during disruption | | concept | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | utilisation no longer maps to delay after automation | | label | outcome measurement | new delivery-event rule | | policy | who receives action | threshold or capacity changed | | feedback | action changes future data | re-promised orders disappear from late labels | Feature drift alone does not prove performance drift, and stable averages can hide concept failure. Monitor inputs, labels, calibration, decisions and outcomes. ## Monitoring card | Layer | Metric | Trigger | Owner response | | -------- | ------------------------------------ | ----------------------------- | ---------------------------------- | | data | missing route-distance rate | above 2% for two hours | fall back to rule; inspect feed | | model | weekly calibration error | outside validated band | recalibrate or investigate shift | | decision | override rate and reason | abrupt store-specific change | review policy usability | | outcome | late cost per accepted order | worse than baseline guardrail | rollback | | fairness | false-negative gap by reviewed group | exceeds approved tolerance | impact review, not silent retuning | Every trigger needs a window, comparator, owner and action. “Monitor accuracy” is not an operating control. Airbnb’s [Chronon](https://airbnb.tech/opensource/chronon/){rel=""nofollow""} is a current organisational example of treating temporally correct backfills, online/offline consistency and feature monitoring as infrastructure concerns. It illustrates architecture, not a universal vendor prescription. ## A compact model card - intended decision, population and non-use cases; - training/evaluation cutoff and feature availability; - baseline and performance with uncertainty; - calibration and subgroup results; - threshold, capacity and human override; - known failure modes and stress tests; - monitoring, rollback and accountable owners; - current version and change history. ## Quick check Input distributions are stable, but the same score band now has twice the observed late rate. What drift occurred? ::legacy-details{title="Answer"} The score–outcome relationship changed: concept or calibration drift. Investigate operations and labels; input-distribution monitoring alone would miss it. :: [Next: Prescriptive Analytics](https://www.pengjiaxin.com/../03-prescriptive/) # 2. Predictive Analytics []{#_2-predictive-analytics} Predictive analytics estimates an unknown future or withheld outcome from information available at a specified origin. Its core promise is out-of-sample performance, not explanation of why the world works. ## Learning outcomes After this module, you can: - construct train, validation and test sets that respect time and entity dependence; - compare regression and forecasting models with credible baselines; - evaluate classification ranking, calibration and subgroup errors; - explain what trees and ensembles add and what they obscure; - choose thresholds using consequences and capacity; - monitor data, concept, calibration and policy drift. ## Chapter route | Chapter | Question | Output | | -------------------------------------------------------------------------------------------- | ------------------------------------------------------- | --------------------------- | | [Validation and Leakage](https://www.pengjiaxin.com/09-validation-leakage) | What would have been knowable at the prediction origin? | evaluation protocol | | [Regression and Forecasting](https://www.pengjiaxin.com/10-regression-forecasting) | How large is the future quantity or conditional mean? | benchmarked forecast | | [Classification and Calibration](https://www.pengjiaxin.com/11-classification-calibration) | How well do scores rank and quantify risk? | probability audit | | [Trees and Ensembles](https://www.pengjiaxin.com/12-trees-ensembles) | Does nonlinear structure improve future performance? | complexity comparison | | [Decision Metrics and Thresholds](https://www.pengjiaxin.com/13-decision-metrics-thresholds) | Which score should trigger action? | cost/capacity threshold | | [Explainability and Drift](https://www.pengjiaxin.com/14-explainability-drift) | Can the system be understood and remain valid? | model card and monitor plan | ## Prepare, work, follow up - **Prepare:** draw the timeline of one historical prediction row. - **Workshop:** find leakage, fit a baseline and compare two thresholds under different costs. - **Follow up:** write a model card that includes the no-model alternative and rollback rule. All code has a static calculation beside it. Students may audit supplied outputs rather than execute code. [Start: Validation and Leakage](https://www.pengjiaxin.com/09-validation-leakage) # Decision-Making under Uncertainty []{#decision-making-under-uncertainty} ## Separate action from state HarborMart must decide evening picker capacity before demand is known. | Contribution after staffing cost | Normal demand, 60% | High demand, 40% | | -------------------------------- | -----------------: | ---------------: | | current staffing | £4,000 | £2,000 | | add one picker | £3,700 | £3,600 | | add two pickers | £3,200 | £4,200 | Expected values are: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.6]{.mord}[(]{.mopen}[4]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.4]{.mord}[(]{.mopen}[2]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£3]{.mord}[[,]{.mpunct}]{.mord}[200]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[£3]{.mord}[[,]{.mpunct}]{.mord}[660]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[2]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£3]{.mord}[[,]{.mpunct}]{.mord}[600.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With these probabilities and a risk-neutral objective, one extra picker wins by £60 over two. That small margin should trigger sensitivity analysis, not a confident slogan. ## Expected value of perfect information With advance knowledge, HarborMart would use current staffing under normal demand and two extra pickers under high demand: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[P]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[I]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.6]{.mord}[(]{.mopen}[4]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.4]{.mord}[(]{.mopen}[4]{.mord}[[,]{.mpunct}]{.mord}[200]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£4]{.mord}[[,]{.mpunct}]{.mord}[080.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[4]{.mord}[[,]{.mpunct}]{.mord}[080]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[3]{.mord}[[,]{.mpunct}]{.mord}[660]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£420.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} £420 is an upper bound on what perfect demand information is worth for this decision. A forecast costing £1,000 per evening cannot be justified by this simplified payoff table. ## Regret reveals fragility Regret is the gap from the best action in each state: | Regret | Normal | High | Maximum | | ---------------- | -----: | -----: | ------: | | current staffing | £0 | £2,200 | £2,200 | | add one | £300 | £600 | £600 | | add two | £800 | £0 | £800 | The minimax-regret action is also one extra picker. Agreement with expected value strengthens the case here; it is not guaranteed in general. ## Risk, ambiguity and model error - **risk:** probabilities are treated as known; - **parameter uncertainty:** probabilities/payoffs are estimated; - **model uncertainty:** the listed states omit plausible mechanisms; - **ambiguity:** no single probability distribution is credible. Use scenarios, intervals, robust optimisation or explicit judgement according to the source of uncertainty. Adding decimal places does not remove ambiguity. Recent decision theory explicitly studies models as approximations; see Cerreia-Vioglio et al., [Making Decisions Under Model Misspecification](https://doi.org/10.1093/restud/rdaf046){rel=""nofollow""}. Its formal treatment is a postgraduate extension, not a reason to abandon transparent classroom scenarios. ## Quick check High-demand probability rises from 40% to 45%. Which action now has highest expected value? ::legacy-details{title="Answer"} Current: £3,100; one extra: £3,655; two extra: £3,650. One extra still wins, now by only £5. The recommendation is extremely sensitive and implementation flexibility may dominate the nominal optimum. :: [Next: Linear Optimisation](https://www.pengjiaxin.com/16-linear-optimization) # Linear Optimisation []{#linear-optimisation} ## Formulation before solver HarborMart assembles standard meal boxes [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and express boxes [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} for one shift. | Box | Contribution | Picker-hours | Chilled-unit capacity | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -----------: | -----------: | --------------------: | | standard [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | £5 | 1 | 2 | | express [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | £8 | 2 | 1 | Available capacity is 40 picker-hours and 50 chilled units. [[[]{.katex-mathml}[[[]{.strut style="height:1.4805em;vertical-align:-0.8361em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8361em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.1667em;"}[5]{.mord}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[8]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} subject to [[[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[2]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[40]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[2]{.mord}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8304em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[50]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[x]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If boxes cannot be fractional, add [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[x]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6889em;"}[Z]{.mord.mathbb}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## Unit audit - objective: pounds per shift; - first left side: picker-hours per shift; - second left side: chilled units per shift; - right sides: capacity for the same shift. Combining weekly contribution with daily capacity silently invalidates the model. ::pyodide --- code64: YmVzdCA9IE5vbmUKZmVhc2libGUgPSBbXQoKZm9yIHN0YW5kYXJkIGluIHJhbmdlKDUxKToKICAgIGZvciBleHByZXNzIGluIHJhbmdlKDI2KToKICAgICAgICBwaWNrZXIgPSBzdGFuZGFyZCArIDIqZXhwcmVzcwogICAgICAgIGNoaWxsZWQgPSAyKnN0YW5kYXJkICsgZXhwcmVzcwogICAgICAgIGlmIHBpY2tlciA8PSA0MCBhbmQgY2hpbGxlZCA8PSA1MDoKICAgICAgICAgICAgdmFsdWUgPSA1KnN0YW5kYXJkICsgOCpleHByZXNzCiAgICAgICAgICAgIGZlYXNpYmxlLmFwcGVuZCgodmFsdWUsIHN0YW5kYXJkLCBleHByZXNzLCBwaWNrZXIsIGNoaWxsZWQpKQogICAgICAgICAgICBpZiBiZXN0IGlzIE5vbmUgb3IgdmFsdWUgPiBiZXN0WzBdOgogICAgICAgICAgICAgICAgYmVzdCA9ICh2YWx1ZSwgc3RhbmRhcmQsIGV4cHJlc3MsIHBpY2tlciwgY2hpbGxlZCkKCnZhbHVlLCBzdGFuZGFyZCwgZXhwcmVzcywgcGlja2VyLCBjaGlsbGVkID0gYmVzdApwcmludChmIkJlc3Q6IHg9e3N0YW5kYXJkfSwgeT17ZXhwcmVzc30sIGNvbnRyaWJ1dGlvbj3Co3t2YWx1ZX0iKQpwcmludChmIlBpY2tlciB1c2VkOiB7cGlja2VyfS80MDsgY2hpbGxlZCB1c2VkOiB7Y2hpbGxlZH0vNTAiKQpwcmludCgiTmV4dC1iZXN0IGZlYXNpYmxlIHBsYW5zOiIpCmZvciByb3cgaW4gc29ydGVkKGZlYXNpYmxlLCByZXZlcnNlPVRydWUpWzo1XToKICAgIHByaW50KHJvdyk= layout: vertical locale: en title: Enumerate a small integer allocation --- :: The optimum is [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[20]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, with £180 contribution; both constraints bind. ## Shadow price and range For a continuous linear programme, a shadow price estimates the objective improvement from one more unit of a binding resource while the current basis remains valid. It is local: - it can change after enough capacity is added; - integer restrictions can create jumps; - the capacity itself may have an acquisition cost; - uncertainty can make nominally optimal use brittle. Do not call every binding constraint a bottleneck without checking its marginal value. ## Common formulation failures | Failure | Repair | | --------------------------------------------------------- | -------------------------------------------------------- | | profit coefficient includes avoidable cost inconsistently | reconcile contribution definition | | demand limit omitted | add upper bounds or unmet-demand variables | | quality/people constraints left in prose | model them or state why they remain a review gate | | average capacity hides time windows | index resources by period/location | | uncertain demand entered as certain | use scenarios, safety margins or stochastic/robust model | | infeasible solver result blamed on software | find conflicting constraints and business assumptions | ## Validate the prescription 1. reproduce objective and resource use by hand; 2. compare with current and simple heuristic policies; 3. vary coefficients and capacity over plausible ranges; 4. test integer, timing and operational details; 5. assign an owner for exceptions and re-optimisation. ## Quick check The solver recommends 20.4 standard boxes. Can HarborMart round to 20 without further work? ::legacy-details{title="Answer"} Check all constraints and objective after rounding. In larger models, independent rounding can violate linked constraints or lose substantial value; solve the integer model or use a validated rounding procedure. :: [Next: Inventory and Allocation](https://www.pengjiaxin.com/17-inventory-allocation) # Inventory and Allocation []{#inventory-and-allocation} ## The newsvendor balance For one-period perishable inventory: - underage cost [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : consequence of one unit too few; - overage cost [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[o]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : consequence of one unit too many. The optimal demand quantile under the classical assumptions is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[o]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is a decision rule, not a forecast accuracy metric. ## HarborMart fresh meals Selling price is £8, purchase cost £5, end-of-day salvage £2, and an estimated service loss of £1 accompanies a stockout. [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[5]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[o]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£3.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Critical fractile is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[4/7]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.571]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Forecast demand distribution: | Demand | Probability | Cumulative probability | | -----: | ----------: | ---------------------: | | 80 | 0.20 | 0.20 | | 100 | 0.30 | 0.50 | | 120 | 0.30 | 0.80 | | 150 | 0.20 | 1.00 | The first quantity whose cumulative probability reaches 0.571 is 120 meals. ::pyodide --- code64: c2NlbmFyaW9zID0gWyg4MCwgLjIwKSwgKDEwMCwgLjMwKSwgKDEyMCwgLjMwKSwgKDE1MCwgLjIwKV0KdW5kZXJhZ2VfY29zdCA9IDQKb3ZlcmFnZV9jb3N0ID0gMwoKZm9yIHF1YW50aXR5IGluIFs4MCwgMTAwLCAxMjAsIDE1MF06CiAgICBleHBlY3RlZF9taXNtYXRjaF9jb3N0ID0gc3VtKAogICAgICAgIHByb2JhYmlsaXR5ICogKAogICAgICAgICAgICB1bmRlcmFnZV9jb3N0ICogbWF4KGRlbWFuZCAtIHF1YW50aXR5LCAwKQogICAgICAgICAgICArIG92ZXJhZ2VfY29zdCAqIG1heChxdWFudGl0eSAtIGRlbWFuZCwgMCkKICAgICAgICApCiAgICAgICAgZm9yIGRlbWFuZCwgcHJvYmFiaWxpdHkgaW4gc2NlbmFyaW9zCiAgICApCiAgICBwcmludChmIlE9e3F1YW50aXR5fTogZXhwZWN0ZWQgbWlzbWF0Y2ggY29zdCDCo3tleHBlY3RlZF9taXNtYXRjaF9jb3N0Oi4yZn0iKQ== layout: vertical locale: en title: Audit the newsvendor quantity --- :: The calculation depends on the forecast distribution and cost assumptions. If salvage, substitution or goodwill estimates change, so can the order. ## From forecast to inventory system The one-period model omits: - multi-period carryover and shelf life; - lead time and order frequency; - pack sizes and supplier minimums; - substitution and lost-sales observation; - capacity shared across products; - demand affected by stock visibility or price. For multi-period inventory, distinguish cycle stock, safety stock, reorder trigger and service measure. “95% service” could mean cycle-service probability or fill rate; define it. ## Allocation under scarcity When supply is fixed, allocate by expected **incremental** value, not historical sales alone. For each destination, consider: - probability of sale before expiry; - contribution and substitution; - stockout/service consequence; - transport and handling; - minimum fair/service constraints; - forecast and parameter uncertainty. A high-demand store may already have enough inventory; the next unit’s marginal value can be higher elsewhere. ## Current frontier The modern “predict then optimise” literature asks whether statistical errors matter equally to the downstream decision. [Smart Predict, then Optimize](https://doi.org/10.1287/mnsc.2020.3922){rel=""nofollow""} trains with optimisation structure, while the 2025 [contextual optimisation survey](https://doi.org/10.1016/j.ejor.2024.03.020){rel=""nofollow""} maps several frameworks and their assumptions. These are extensions after a transparent baseline, not permission to hide costs and constraints. ## Quick check Two demand models have identical MAE. Model A is best near the median; Model B estimates the 80th percentile better. Under critical fractile 0.80, which evidence matters most? ::legacy-details{title="Answer"} Accuracy around the decision quantile matters more. Validate the quantile and downstream inventory cost directly; equal overall MAE does not imply equal ordering value. :: [Next: Queues and Simulation](https://www.pengjiaxin.com/18-queueing-simulation) # Queueing and Simulation []{#queueing-and-simulation} ## Utilisation is nonlinear risk Orders arrive at 18 per hour. One picker completes 10 per hour on average. - two pickers provide capacity 20 per hour, utilisation [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[18/20]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.90]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - three provide capacity 30 per hour, [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.60]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Average capacity exceeds average demand with two pickers, yet random arrival and service variation create queues. Waiting rises sharply as utilisation approaches one. ## Little’s Law For a stable system over a consistent boundary, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[λW]{.mord.mathnormal style="margin-right:0.1389em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is average number in system, [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} throughput and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} average time in system. If throughput is 18 orders/hour and average system time is 20 minutes ( [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} hour), then [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} orders. Little’s Law does not by itself determine the waiting distribution or required capacity. ## Simulate the operating assumptions ::pyodide --- code64: aW1wb3J0IHJhbmRvbQpmcm9tIHN0YXRpc3RpY3MgaW1wb3J0IG1lYW4sIHF1YW50aWxlcwoKZGVmIHNpbXVsYXRlKHNlcnZlcnMsIGFycml2YWxzPTUwMDAsIGFycml2YWxfcmF0ZT0xOCwgc2VydmljZV9yYXRlPTEwLCBzZWVkPTIwMjYpOgogICAgcm5nID0gcmFuZG9tLlJhbmRvbShzZWVkKQogICAgYXZhaWxhYmxlID0gWzAuMF0gKiBzZXJ2ZXJzCiAgICBhcnJpdmFsX3RpbWUgPSAwLjAKICAgIHdhaXRzID0gW10KICAgIGZvciBfIGluIHJhbmdlKGFycml2YWxzKToKICAgICAgICBhcnJpdmFsX3RpbWUgKz0gcm5nLmV4cG92YXJpYXRlKGFycml2YWxfcmF0ZSkKICAgICAgICBuZXh0X3NlcnZlciA9IG1pbihyYW5nZShzZXJ2ZXJzKSwga2V5PWxhbWJkYSBqOiBhdmFpbGFibGVbal0pCiAgICAgICAgc3RhcnQgPSBtYXgoYXJyaXZhbF90aW1lLCBhdmFpbGFibGVbbmV4dF9zZXJ2ZXJdKQogICAgICAgIHdhaXRzLmFwcGVuZChzdGFydCAtIGFycml2YWxfdGltZSkKICAgICAgICBzZXJ2aWNlID0gcm5nLmV4cG92YXJpYXRlKHNlcnZpY2VfcmF0ZSkKICAgICAgICBhdmFpbGFibGVbbmV4dF9zZXJ2ZXJdID0gc3RhcnQgKyBzZXJ2aWNlCiAgICBwOTUgPSBxdWFudGlsZXMod2FpdHMsIG49MjAsIG1ldGhvZD0iaW5jbHVzaXZlIilbMThdCiAgICByZXR1cm4gbWVhbih3YWl0cykqNjAsIHA5NSo2MAoKZm9yIHNlcnZlcnMgaW4gWzIsIDNdOgogICAgYXZnLCBwOTUgPSBzaW11bGF0ZShzZXJ2ZXJzKQogICAgcHJpbnQoZiJ7c2VydmVyc30gcGlja2VyczogYXZlcmFnZSB3YWl0PXthdmc6LjFmfSBtaW47IHA5NT17cDk1Oi4xZn0gbWluIik= layout: vertical locale: en title: Compare two- and three-picker queues --- :: This is an M/M/c-style teaching simulation: exponential interarrival and service times, independent jobs, identical always-available pickers and no priorities. Real data may reject every assumption. ## Build a simulation audit | Component | Evidence needed | | ------------ | -------------------------------------------------------- | | arrivals | timestamp pattern by hour/day; batches and cancellations | | service | distribution by basket, picker and interruption | | routing | first-come, priority or skill matching | | resources | breaks, failures, shared tasks and shift boundaries | | warm-up | remove artificial empty-system start when appropriate | | replications | Monte Carlo error and stable quantiles | | validation | compare simulated and observed queue measures | Simulation code implements assumptions; it does not validate them. ## Capacity decision Compare staffing cost with the full distribution of waits, lateness, abandonment and service harm. Test peak and disruption scenarios. A policy can schedule a third picker only in vulnerable windows rather than permanently. ## Quick check Observed average arrivals are 18/hour and two-pick capacity is 20/hour. Why might the queue still be unstable during an evening? ::legacy-details{title="Answer"} Arrival rate varies within the period, jobs may be batched, service may slow for large baskets, staff may be unavailable, and dependence can create sustained peaks. A whole-evening average can hide intervals where offered load exceeds capacity. :: [Next: Pricing and Revenue Management](https://www.pengjiaxin.com/19-pricing-experimentation) # Pricing and Revenue Management []{#pricing-and-revenue-management} ## Revenue is not the objective by default At price £10, HarborMart sells 1,000 units with variable cost £6: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[contribution]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[6]{.mord}[)]{.mclose}[(]{.mopen}[1]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£4]{.mord}[[,]{.mpunct}]{.mord}[000.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At price £11, expected sales are 900: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[11]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[6]{.mord}[)]{.mclose}[(]{.mopen}[900]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£4]{.mord}[[,]{.mpunct}]{.mord}[500.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Revenue falls from £10,000 to £9,900 while contribution rises. The preferred metric depends on cost, capacity, repeat behaviour and strategic constraints. ## Elasticity needs a causal interpretation Point price elasticity is [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[ε]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2519em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[Q]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[Q]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Historical correlation between high price and low quantity can mix season, stock, competitor activity and targeted markdowns. Pricing needs the demand response to an intervention, not only prediction conditional on past price. Use randomised or credible quasi-experimental variation where lawful and feasible. Check spillovers: customers compare periods, stores and products; competitors react. ## Capacity changes the question With scarce delivery slots, the decision may combine: - price or fee by slot; - capacity protected for later high-value demand; - overbooking or no-show policy; - service and access constraints; - uncertainty in arrivals and cancellation. Revenue management values the opportunity cost of consuming capacity now. A low current price can displace a higher-value later order; excessive protection can leave capacity unused. ## A pricing experiment contract | Item | Example | | --------------- | -------------------------------------------------- | | unit | postcode cluster by week, not individual page view | | treatment | £1 evening delivery-fee difference | | primary outcome | contribution per eligible checkout | | demand outcomes | purchase, slot, basket and substitution | | guardrails | access, complaints, lateness and repeat use | | interference | cross-postcode shopping and capacity spillover | | horizon | immediate order plus repeat window | Price experimentation can raise fairness, consumer-protection and competition concerns. Obtain appropriate legal and ethics review; this course does not supply jurisdiction-specific legal advice. ## Current organisational example Uber’s [2024 investor update](https://investor.uber.com/files/doc_events/2024/Feb/14/uber-investor-update.pdf){rel=""nofollow""} presents matching, routing, dispatch, pricing and incentives as one marketplace system. The teaching lesson is integration: evaluating one model metric cannot establish marketplace value or distributional impact. ## Quick check After a price increase, quantity falls 8% and contribution rises 5%. Can the company conclude long-run profit improved? ::legacy-details{title="Answer"} Not yet. Examine causal identification, customer substitution, retention, competitor response, capacity, cost changes, heterogeneity and the observation horizon. Short-run contribution is evidence, not the complete long-run objective. :: [Next: Causal Targeting](https://www.pengjiaxin.com/20-causal-targeting) # Causal Targeting and Policy Learning []{#causal-targeting-and-policy-learning} ## Risk is not uplift For customer features [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, conditional treatment effect is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A high-risk customer may remain inactive whether contacted or not. A moderate-risk customer may respond strongly. If the action is a retention offer, rank expected **incremental value**, not churn risk alone. ## Four response types | Type | Outcome without offer | Outcome with offer | Targeting implication | | ----------------- | --------------------- | ------------------ | --------------------- | | persuadable | inactive | active | potential value | | sure thing | active | active | offer may be wasted | | lost cause | inactive | inactive | offer may be wasted | | adverse responder | active | inactive | treatment can harm | Individual types are not directly observed because only one potential outcome appears. Models estimate group-conditional effects under assumptions. ## Net-value rule If a retained customer is worth [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, offer cost is [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and estimated probability improvement is [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, act when [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6891em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} subject to eligibility, capacity and fairness constraints. ### Worked pair | Customer | Churn risk | Estimated risk reduction | Value | Offer cost | Expected net value | | -------- | ---------: | -----------------------: | ----: | ---------: | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | A | 80% | 2 points | £100 | £5 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.02]{.mord}[(]{.mopen}[100]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[5]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[−]{.mord}[£3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | B | 35% | 15 points | £80 | £5 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.15]{.mord}[(]{.mopen}[80]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[5]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£7]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Risk targeting chooses A; uplift value chooses B. ## Evidence requirements Prefer randomised treatment data with: - treatment and outcome definitions fixed; - sufficient overlap across relevant profiles; - no post-treatment features; - honest train/evaluation splits; - treatment-cost and outcome-value data; - policy evaluation at the intended capacity. With observational data, justify exchangeability, positivity and consistency; use propensity or outcome models as tools, not substitutes for the assumptions. ## Evaluate a policy, not only a CATE model Useful checks include: - incremental outcome/value versus random or current targeting; - uplift or policy-value curves on held-out data; - sensitivity to costs, capacity and nuisance models; - overlap and subgroup support; - off-policy assumptions if evaluating a new policy from old-policy data; - effects after deployment feedback. The 2025 [contextual optimisation survey](https://doi.org/10.1016/j.ejor.2024.03.020){rel=""nofollow""} places direct policy learning, predict-then-optimise and conditional stochastic optimisation in a common decision setting. A 2024 [fair multiobjective predict-then-optimise study](https://proceedings.mlr.press/v244/dinh24a.html){rel=""nofollow""} illustrates that downstream objectives can include fairness and robustness, not only efficiency. ## Quick check A treatment-effect model is trained using customers selected by the old high-risk policy. What problem arises? ::legacy-details{title="Answer"} Treatment and outcome evidence may have poor overlap outside the old policy’s selected region. The model cannot reliably learn effects for rarely treated profiles without design or strong extrapolation assumptions. Preserve exploration or run a suitable experiment. :: [Next: Deployment and Governance](https://www.pengjiaxin.com/../04-deployment/) # 3. Prescriptive Analytics []{#_3-prescriptive-analytics} Prescriptive analytics combines forecasts or effects with objectives and constraints. Its output is an action, policy or allocation—not merely a higher score. ## Learning outcomes After this module, you can: - compare actions with expected value, regret and scenario sensitivity; - formulate a linear optimisation model with auditable units; - convert demand uncertainty into inventory and allocation decisions; - use queueing and simulation without treating assumptions as observations; - connect pricing to contribution, capacity and causal demand response; - distinguish risk targeting from treatment-effect targeting. ## Chapter route | Chapter | Decision | Main output | | --------------------------------------------------------------------------------------- | --------------------------------------- | ----------------------------------------- | | [Decision under Uncertainty](https://www.pengjiaxin.com/15-decision-uncertainty) | act now with uncertain states | payoff and sensitivity table | | [Linear Optimisation](https://www.pengjiaxin.com/16-linear-optimization) | allocate scarce resources | objective, constraints and solution audit | | [Inventory and Allocation](https://www.pengjiaxin.com/17-inventory-allocation) | balance shortage and excess | order quantity or allocation policy | | [Queues and Simulation](https://www.pengjiaxin.com/18-queueing-simulation) | choose capacity under congestion | waiting/service distribution | | [Pricing and Revenue Management](https://www.pengjiaxin.com/19-pricing-experimentation) | set price or protect capacity | contribution-aware policy | | [Causal Targeting](https://www.pengjiaxin.com/20-causal-targeting) | intervene where action changes outcomes | net-uplift policy | ## Prepare, work, follow up - **Prepare:** write a decision variable, one objective and two constraints from a real allocation problem. - **Workshop:** solve the HarborMart model by hand, then vary one uncertain input until the chosen action changes. - **Follow up:** write an implementation rule, override and rollback condition—not just an optimum. Students may use a spreadsheet or inspect the supplied enumeration; solver software is not required. [Start: Decision under Uncertainty](https://www.pengjiaxin.com/15-decision-uncertainty) # Data Products and Monitoring []{#data-products-and-monitoring} ## Treat the model as one component HarborMart's score is usable only if five interfaces agree: | Producer gives | Consumer assumes | Contract test | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------- | -------------------------------------------- | | checkout service: `order_time` in UTC | feature job: event time, not load time | reject future or unparsable timestamps | | capacity service: available picker-minutes | model: value known at checkout | compare event timestamp with score timestamp | | model: probability in [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | policy: calibrated late-delivery risk | range and calibration test | | policy: accept, reroute or re-promise | operations: action before confirmation | latency and action-log test | | delivery system: actual arrival | evaluator: final label | label completeness after a fixed delay | Version the schema, feature definitions, model, policy and cost assumptions together. A score from model v4 interpreted by policy v2 is not reproducible merely because both files exist. ## Five monitors, five responses | Monitor | Example trigger | First response | | -------- | ------------------------------------------ | -------------------------------------------- | | service | p95 latency exceeds 300 ms for 10 min | fall back to the tested rule | | data | scheduled picker-minutes missing above 1% | stop scoring affected stores | | model | four-week Brier score exceeds the baseline | inspect calibration and segment error | | decision | override rate doubles | inspect workflow, incentives and incidents | | outcome | late rate rises while rejection rises | pause rollout; reassess effect and objective | Choose thresholds from operational tolerance and historical variation. “Alert when a line looks unusual” cannot be tested. ## Drift is a diagnosis, not a verdict - **Covariate drift:** [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} changes—for example, baskets become larger before a holiday. - **Prior shift:** [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} changes—for example, storms raise the late-delivery base rate. - **Concept drift:** [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} changes—for example, a routing redesign changes how distance predicts lateness. - **Policy drift:** the same score produces different actions because capacity or staff behaviour changes. A large feature shift may be harmless; a small shift in a high-cost subgroup may matter. Compare distributions, calibration and decision value, then investigate the process that generated the change. ### Worked incident On Monday, HarborMart deploys a faster routing process. By Friday: | Signal | Before | After | | ------------------------------- | -----: | ----: | | predicted late risk | 8.1% | 8.0% | | eventual late rate | 8.0% | 5.6% | | actions labelled after 48 hours | 99.4% | 71.0% | Two explanations fit the early dashboard: the intervention helped, or late labels are incomplete. Do not recalibrate until label delay and missingness are resolved. First freeze the evaluation cohort by decision date and wait for its defined maturity window. ## Selective labels and feedback If high-risk orders are rejected, their delivery outcomes are never observed. The deployed policy changes its own future training data. Similarly, extra staff assigned to high-risk slots can make the model appear pessimistic because the intervention prevents the predicted event. Log at least: 1. the information and score available at decision time; 2. the proposed and executed action; 3. override actor and reason; 4. exposure or treatment actually received; 5. outcome and its observation time. Without this decision log, one cannot separate model error from successful intervention. ## Release ladder | Stage | What changes | Exit evidence | | ----------------- | ----------------------------------------- | ------------------------------------------------ | | replay | nothing operational | historical pipeline reproduces known results | | shadow | scores logged, no action changed | latency, coverage and calibration acceptable | | limited pilot | a small eligible unit receives the policy | safety and outcome stop rules remain clear | | staged rollout | exposure expands by store or time | stable effects and no material subgroup harm | | routine operation | policy is default | recurring review, challenger and rollback tested | Keep a simple fallback that does not depend on the failing component. Test rollback before it is needed. ## Current organisational example Airbnb describes [Chronon](https://airbnb.tech/opensource/chronon/){rel=""nofollow""} as an end-to-end feature platform supporting temporally accurate backfills, online/offline consistency and automated monitoring for data quality, training–serving skew and feature drift. The transferable lesson is architectural: a feature is a time-indexed data product with producers, consumers and controls—not a column copied into a notebook. This is an organisation's engineering account, useful for system design but not independent evidence of business impact. ## Quick check The score distribution and AUROC are stable, but staff now override 45% of recommendations instead of 8%. Is the system healthy? ::legacy-details{title="Answer"} Not enough evidence says so. The model monitor is stable, but the decision interface has changed. Audit which cases are overridden, why, whether the action was feasible, and how outcomes differ. The cause may be workflow friction, a new constraint, poor trust, gaming or a model blind spot. :: [Next: Governance, Fairness and Privacy](https://www.pengjiaxin.com/22-governance-fairness-privacy) # Governance, Fairness and Privacy []{#governance-fairness-and-privacy} ## Governance begins before modelling “The data science team owns the model” is incomplete. A defensible system names: - a **decision owner** accountable for the policy; - a **data owner** accountable for meaning, access and retention; - a **technical owner** accountable for implementation and monitoring; - an **independent reviewer** able to challenge evidence and controls; - an **affected person** with a usable explanation and route to correction where appropriate. Responsibility cannot be outsourced to a metric or vendor. ## Use frameworks as questions The voluntary [NIST AI Risk Management Framework](https://www.nist.gov/itl/ai-risk-management-framework){rel=""nofollow""} organises work into four functions: | Function | HarborMart question | Evidence | | -------- | ------------------------------------------------------------ | ------------------------------------------- | | govern | Who can approve, change or stop the delivery policy? | roles, inventory, review cadence | | map | Which people, contexts and harms can the policy affect? | use-case boundary and impact map | | measure | How will validity, fairness, privacy and safety be tested? | test protocol and results by group | | manage | Which risks are accepted, mitigated, transferred or avoided? | controls, owner, deadline and residual risk | NIST states that AI RMF 1.0 is being revised, so cite the version and review date. [ISO/IEC 42001:2023](https://www.iso.org/standard/42001){rel=""nofollow""} takes a management-system approach: policies, objectives, processes and continual improvement across an organisation. Neither framework turns a harmful objective into a good one; both require substantive judgement. ## Fairness needs a decision and a harm Suppose the system flags customers for manual delivery-window review. On a test set of 200 customers in each group: | Group | TP | FN | FP | TN | TPR | FPR | PPV | | ----- | -: | -: | -: | --: | ----: | ----: | ----: | | A | 36 | 4 | 16 | 144 | 90.0% | 10.0% | 69.2% | | B | 27 | 13 | 8 | 152 | 67.5% | 5.0% | 77.1% | Both groups have about 90% accuracy, yet Group B experiences more missed late deliveries. Group A experiences more unnecessary reviews. No single column defines fairness because the harms differ. Audit in this order: 1. **meaning:** are groups and outcomes measured comparably? 2. **representation:** who is absent, rare or poorly labelled? 3. **performance:** calibration and relevant errors with uncertainty; 4. **allocation:** who receives benefits, burdens and human review? 5. **recourse:** can an affected person correct data or challenge an action? 6. **repair:** change data, objective, workflow, threshold or product boundary—and retest consequences. Small groups produce unstable rates. Report counts and intervals, not only percentages. A group-specific threshold may create new legal or ethical problems; obtain domain and legal review rather than treating it as an automatic technical fix. ## Privacy by necessity For each field, ask “what decision-relevant purpose requires this value?” | Proposed field | Tempting rationale | Better control | | ----------------------- | -------------------------- | -------------------------------------------------------- | | exact date of birth | “might improve prediction” | use a justified age band or omit it | | full postcode | captures distance | derive coarse distance, then restrict or delete source | | free-text service notes | rich context | exclude by default; may contain sensitive or unsafe text | | customer identifier | joins outcomes | replace with controlled pseudonymous key | Minimisation reduces breach impact and spurious proxy use. It does not by itself make processing lawful. Specify purpose, lawful basis where relevant, access, retention, deletion, provenance and permitted downstream use with appropriate experts. ## Security is part of analytic validity Threats include altered source data, stolen credentials, poisoned labels, model extraction, prompt or input injection in AI-assisted workflows, and unauthorised policy changes. Controls should cover least privilege, secrets management, integrity checks, dependency review, immutable logs and tested incident response. A perfectly calibrated model fed manipulated capacity data is an unsafe decision system. ## Human review must be designed “A human is in the loop” is not a safeguard unless the person has: - time and information to disagree; - authority to change the action; - guidance for difficult cases; - protection from automation bias and rubber-stamping incentives; - an override log reviewed for systematic patterns. For a delivery disruption, show the reason, material evidence, alternatives and uncertainty—not an unexplained risk score. ## A dated legal boundary The original EU AI Act, [Regulation (EU) 2024/1689](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32024R1689){rel=""nofollow""}, was amended by [Regulation (EU) 2026/1744](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32026R1744){rel=""nofollow""}. The European Commission's [31 July 2026 update](https://digital-strategy.ec.europa.eu/en/news/ai-omnibus-enters-force){rel=""nofollow""} reports that the amendment entered into force on 27 July 2026 and changed important high-risk-system timelines. Therefore, never label a system or deadline from memory. Identify jurisdiction, role, intended purpose, affected people and the provision in force on the review date. This course offers analytical governance, not legal advice. ## Quick check HarborMart removes the customer-group field from training. Has it solved unfairness? ::legacy-details{title="Answer"} No. Other fields may act as proxies, historical labels may encode unequal service, and the policy may allocate burdens unevenly. Keep protected or audit attributes in a tightly controlled evaluation process where lawful and appropriate; removing them from model inputs does not remove the need to measure impact. :: [Next: Adoption and Business Value](https://www.pengjiaxin.com/23-adoption-value) # Adoption and Business Value []{#adoption-and-business-value} ## Deployment is not impact A model can be available, accurate and unused. It can also be used frequently and destroy value. Measure the full adoption funnel: | Stage | Example measure | Failure revealed | | --------- | ------------------------------------------ | ---------------------------- | | eligible | orders for which a score should exist | poor coverage | | delivered | score arrived before checkout confirmation | pipeline or latency failure | | viewed | planner saw the recommendation | interface failure | | accepted | planner chose the proposed action | trust or feasibility problem | | executed | capacity or promise actually changed | downstream process failure | | effective | intended outcome improved | weak or harmful intervention | Do not call acceptance “value.” It is an intermediate behaviour. ## Value is incremental A compact value model is [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[net value]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[[incremental outcomes]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[value per outcome]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7512em;vertical-align:-0.0833em;"}[[intervention cost]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8095em;vertical-align:-0.1944em;"}[[system cost]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[harm]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} All terms require a time period and counterfactual. Revenue attributed to customers who would have purchased anyway is not incremental value. ### Worked pilot HarborMart pilots a staffing recommendation in comparable stores: | Stores | Before late rate | After late rate | Change | | ---------- | ---------------: | --------------: | ----------: | | pilot | 8.0% | 6.2% | −1.8 points | | comparison | 7.8% | 7.5% | −0.3 points | A simple difference-in-differences estimate is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[1.8]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[0.3]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[−]{.mord}[1.5]{.mord}[[ percentage points]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At 12,000 eligible monthly orders, this corresponds to about 180 fewer late orders. If a prevented late order is worth £7 and monthly operating cost is £900, estimated net value is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[180]{.mord}[(]{.mopen}[£7]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£900]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£360.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The arithmetic is easy; the identification is not. Were trends parallel? Did stores share staff? Did order mix or weather change? Report an interval for the effect and sensitivity to the £7 valuation. ## Choose an evaluation design | Situation | Strong practical option | Main threat | | --------------------------------- | --------------------------------------- | ------------------------------ | | units can be randomised | cluster or individual randomised trial | spillovers and non-compliance | | rollout must be gradual | randomised or justified stepped rollout | calendar trends | | threshold determines action | regression discontinuity near cutoff | manipulation and limited scope | | only observational history exists | matched or adjusted comparison | unmeasured confounding | | no credible counterfactual | descriptive monitoring only | causal claim is not justified | Pre-specify the unit, assignment, estimand, primary outcome, guardrails, analysis and stop rules. Analyse by assigned policy where possible; adoption analysis can then explain why the effect was diluted. ## Diagnose low adoption with evidence Suppose 10,000 recommendations were eligible: | Funnel step | Count | Conditional rate | | ----------------- | ----: | -----------------: | | delivered on time | 9,600 | 96.0% of eligible | | viewed | 7,200 | 75.0% of delivered | | accepted | 5,400 | 75.0% of viewed | | executed | 3,240 | 60.0% of accepted | The largest absolute loss after delivery is execution, not acceptance. Interviewing users about “trust in AI” may miss a capacity-system integration failure. Join event logs to short, purposeful qualitative inquiry. ## Roll out with stopping rules Before exposure, state: - **success:** a minimum decision-relevant effect over a fixed horizon; - **guardrails:** service, safety, fairness and customer measures that must not deteriorate materially; - **pause:** data or process conditions that make inference unreliable; - **rollback:** trigger, owner and tested fallback; - **review:** who sees adverse events and unresolved overrides. Avoid repeatedly checking significance and stopping when a favourable result appears. Sequential methods are possible, but the rule must be designed before observing the result. ## Current organisational example [Walmart's fiscal-2026 10-K](https://stock.walmart.com/sec-filings/all-sec-filings/content/0000104169-26-000055/wmt-20260131.htm){rel=""nofollow""} describes AI-powered tools, supply-chain automation and changes intended to combine capabilities across Walmart and Sam's Club. It illustrates that analytics adoption involves operating processes, physical capacity and organisational design—not only model selection. Treat an annual report as management disclosure, not an independent causal evaluation. Ask which baseline, costs, failed pilots and distributional effects are not visible. ## Quick check The pilot lowers late deliveries but also rejects more orders. Which metric decides whether to scale? ::legacy-details{title="Answer"} Neither rate alone. Compare incremental contribution after delivery costs, rejection opportunity cost, service harm and capacity constraints. Report both outcomes and subgroup effects. The objective and guardrails should have been agreed before the pilot. :: [Next: Capstone](https://www.pengjiaxin.com/../capstone/) # 4. Deployment and Governance []{#_4-deployment-and-governance} A notebook ends when the result is produced. A decision system begins when the result can affect people, money or operations repeatedly. [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[data]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[features]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[model]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[policy]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6679em;"}[[action]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6151em;"}[[outcome]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[new data]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Every arrow is a possible failure point. Monitoring only model accuracy is therefore insufficient. ## Learning outcomes After this module, you should be able to: 1. specify a data product and decision-policy interface; 2. monitor service, data, model, decision and outcome behaviour separately; 3. design shadow tests, staged rollout, rollback and incident review; 4. audit fairness, privacy, security, human review and contestability; 5. distinguish technical adoption from causally demonstrated business value. ## The operating question | Layer | Question | HarborMart evidence | | ------- | --------------------------------------------------------------- | ----------------------------------------------- | | service | Did the system respond correctly and on time? | latency, failed requests, stale features | | data | Do inputs still mean what the contract says? | schema, missingness, timestamp and range checks | | model | Do scores still rank and calibrate? | later labelled outcomes by period and group | | policy | Were scores converted into the intended actions? | threshold, capacity rule and override log | | outcome | Did the action improve the objective without unacceptable harm? | experiment or credible comparison | The owner and response rule must be written beside every alert. An unattended dashboard is not a control. ## Chapter route 1. [Data Products and Monitoring](https://www.pengjiaxin.com/21-data-products-monitoring) — contracts, drift, feedback and rollback. 2. [Governance, Fairness and Privacy](https://www.pengjiaxin.com/22-governance-fairness-privacy) — accountability across the lifecycle. 3. [Adoption and Business Value](https://www.pengjiaxin.com/23-adoption-value) — test whether the deployed policy changes behaviour and value. ## Prepare, work, follow up - **Prepare (45 min):** draw the complete path from an order event to a capacity action. Mark every timestamp and owner. - **Workshop (120 min):** run a simulated incident review: stale capacity data makes the late-delivery score understate risk during a storm. - **Follow up (60 min):** submit a one-page control plan containing five monitors, alert thresholds, owners, rollback criteria and one value test. Postgraduate extension: treat the policy as an adaptive intervention. Explain how selective labels, feedback loops and changing treatment effects invalidate a static evaluation. [Next: Data Products and Monitoring](https://www.pengjiaxin.com/21-data-products-monitoring) # Formula and Decision Map []{#formula-and-decision-map} ## Describe what happened | Question | Quantity | Audit before use | | -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | | What is typical? | [[]{.katex-mathml}[[[]{.strut style="height:0.5678em;"}[[[[[[]{.pstrut style="height:3em;"}[x]{.mord,mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord,accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[n]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}; median for the middle observation | skew, weights, repeated units, missingness | | What share experienced an event? | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[p]{.mord,mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[y]{.mord,mathnormal style="margin-right:0.0359em;"}[/]{.mord}[n]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | eligible denominator, complete follow-up, duplicate rows | | How uncertain is a simple rate? | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[S]{.mord,mathnormal style="margin-right:0.0576em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[p]{.mord,mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.24em;vertical-align:-0.305em;"}[[[[[[]{.pstrut style="height:3.2em;"}[[[[[[[]{.pstrut style="height:3em;"}[p]{.mord,mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,accent}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[p]{.mord,mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,accent}[)]{.mclose}[/]{.mord}[n]{.mord,mathnormal}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.2em;"}[[]{.pstrut style="height:3.2em;"}[]{.hide-tail style="min-width:1.02em;height:1.28em;"}]{style="top:-2.895em;"}]{.vlist style="height:0.935em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.305em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | independence and adequate counts; use better interval methods near 0 or 1 | | How did a KPI change? | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[/]{.mord}[[x]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | same definition, period and currency; distinguish percent from percentage points | | Which stage loses volume? | funnel conversion [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[n]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[k]{.mord,mathnormal,mtight style="margin-right:0.0315em;"}[+]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[[n]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord,mathnormal,mtight style="margin-right:0.0315em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | ordered eligibility and consistent cohort | Example: a late rate moving from 8% to 6% falls by **2 percentage points**, or **25% relative**. State which one. ## Predict an unknown outcome | Question | Quantity | Decision interpretation | | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- | | How large is numeric error? | $MAE=n^{-1}\sum | y\_i-\hat y\_i | | Are large errors especially costly? | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord,mathnormal style="margin-right:0.0077em;"}[M]{.mord,mathnormal style="margin-right:0.109em;"}[S]{.mord,mathnormal style="margin-right:0.0576em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.24em;vertical-align:-0.305em;"}[[[[[[]{.pstrut style="height:3.2em;"}[[[n]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[(]{.mopen}[[y]{.mord,mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord,mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.2em;"}[[]{.pstrut style="height:3.2em;"}[]{.hide-tail style="min-width:1.02em;height:1.28em;"}]{style="top:-2.895em;"}]{.vlist style="height:0.935em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.305em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | large misses receive quadratic weight | | Are probabilities accurate? | Brier [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[n]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[(]{.mopen}[[y]{.mord,mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[p]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | calibration and discrimination together | | Does ranking separate events? | AUROC or precision–recall curve | ranking over thresholds, not policy value | | Is a chosen action threshold worthwhile? | act if expected incremental benefit exceeds cost | requires calibrated risk **and** credible intervention effect | Always compare with a feasible baseline on data later than training. A lower test error is evidence about the defined population and period, not a permanent property. ## Choose an action | Decision | Core object | Main assumption | | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | uncertain alternatives | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[V]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[a]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0497em;vertical-align:-0.2997em;"}[[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.0017em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[s]{.mord,mathnormal}[)]{.mclose}[V]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[a]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[s]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | probabilities and consequences are adequate | | value of perfect information | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[V]{.mord,mathnormal style="margin-right:0.2222em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[I]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0497em;vertical-align:-0.2997em;"}[[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.0017em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[s]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[max]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[a]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[V]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[a]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[s]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[max]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[a]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[V]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[a]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | perfect, costless and timely information benchmark | | constrained allocation | [[]{.katex-mathml}[[[]{.strut style="height:0.9913em;vertical-align:-0.15em;"}[[max]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[c]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord,mathnormal,mtight style="margin-right:0.1389em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8413em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[x]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} subject to [[]{.katex-mathml}[[[]{.strut style="height:0.8193em;vertical-align:-0.136em;"}[A]{.mord,mathnormal}[x]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[b]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | objective, units and feasible set represent reality | | one-period inventory | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[[Q]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[C]{.mord,mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[(]{.mopen}[[C]{.mord,mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[C]{.mord,mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[o]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | demand distribution and shortage/overage costs are stable | | stable flow system | Little's Law [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[λW]{.mord,mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | consistent boundary and long-run averages | | target an intervention | act if [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[τ]{.mord,mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[V]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6891em;vertical-align:-0.15em;"}[[c]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord,mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is a credible individual or group treatment-effect estimate | Optimisation returns the best action **inside the stated model**. Test excluded constraints, alternative objectives and parameter ranges. ## Estimate whether an action caused change | Design | Estimand or contrast | Key threat | | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | | randomised experiment | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} under assignment | non-compliance, attrition, spillovers | | difference in differences | [[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[(]{.mopen}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[T]{.mord,mathnormal,mtight style="margin-right:0.1389em;"}[,]{.mpunct,mtight}[a]{.mord,mathnormal,mtight}[f]{.mord,mathnormal,mtight style="margin-right:0.1076em;"}[t]{.mord,mathnormal,mtight}[er]{.mord,mathnormal,mtight style="margin-right:0.0278em;"}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[T]{.mord,mathnormal,mtight style="margin-right:0.1389em;"}[,]{.mpunct,mtight}[b]{.mord,mathnormal,mtight}[e]{.mord,mathnormal,mtight}[f]{.mord,mathnormal,mtight style="margin-right:0.1076em;"}[or]{.mord,mathnormal,mtight style="margin-right:0.0278em;"}[e]{.mord,mathnormal,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[(]{.mopen}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord,mathnormal,mtight style="margin-right:0.0715em;"}[,]{.mpunct,mtight}[a]{.mord,mathnormal,mtight}[f]{.mord,mathnormal,mtight style="margin-right:0.1076em;"}[t]{.mord,mathnormal,mtight}[er]{.mord,mathnormal,mtight style="margin-right:0.0278em;"}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord,mathnormal,mtight style="margin-right:0.0715em;"}[,]{.mpunct,mtight}[b]{.mord,mathnormal,mtight}[e]{.mord,mathnormal,mtight}[f]{.mord,mathnormal,mtight style="margin-right:0.1076em;"}[or]{.mord,mathnormal,mtight style="margin-right:0.0278em;"}[e]{.mord,mathnormal,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | non-parallel counterfactual trends | | regression discontinuity | outcome jump at assignment cutoff | manipulation and extrapolation away from cutoff | | adjusted observation | conditional treated–comparison contrast | unmeasured confounding and weak overlap | Prediction asks about [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; causal analysis asks about [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A high predicted risk can coexist with zero treatment effect. ## Operate the system | Layer | Numerator or signal | Denominator or reference | | ----------------- | ----------------------------------- | -------------------------------------------------------------- | | coverage | eligible cases scored on time | all eligible cases | | adoption | executed recommendations | delivered or viewed recommendations—state which | | calibration | observed event rate in a score band | mature, labelled decisions in that band | | subgroup error | relevant errors for a defined group | actual negatives, positives or predictions according to metric | | incremental value | outcome difference caused by policy | credible counterfactual, not historical total | A metric without its denominator, comparison and response rule is not operationally complete. [Next: Worked Examples and Pitfalls](https://www.pengjiaxin.com/25-worked-examples-pitfalls) # Worked Examples and Pitfalls []{#worked-examples-and-pitfalls} ## 1. A correct average can tell the wrong story | Store | Mobile late | Desktop late | Overall late | | ----- | ----------: | -----------: | -------------: | | A | 8/100 = 8% | 18/100 = 18% | 26/200 = 13.0% | | B | 45/500 = 9% | 4/20 = 20% | 49/520 = 9.4% | Store B is worse within both channels but looks better overall because it serves many more low-risk mobile orders. This is a composition reversal, not a calculation error. **Decision:** compare like with like, show weights, then ask whether standardisation or a model is appropriate. Do not choose a store intervention from the pooled rate alone. ## 2. The denominator can reward avoidance Of 1,000 accepted orders, 950 are completed and 902 meet the original promise. - on time among completed: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[902/950]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[94.9%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - original promise met among accepted: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[902/1]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[90.2%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - cancellation rate: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[50/1]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[5.0%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. If cancellations rise, the first KPI can improve while customers receive worse service. **Decision:** use a metric family: completion, original-promise service, revised-promise service and cancellation. Freeze definitions before an experiment. ## 3. A one-to-many join changes the unit There are 100 orders and 300 item rows. Joining `orders` to `order_items` repeats an order once per item. If larger baskets are more often late, a row-level mean estimates an **item-weighted** late rate, not an order late rate. **Repair:** aggregate item features to one row per `order_id`, verify row count and key uniqueness, then join. State when an item-weighted question is actually intended. ## 4. Leakage often looks like excellent prediction A checkout model includes `actual_picker_minutes`. Cross-validation split randomly across rows gives AUROC 0.93. But actual minutes are finalised after the delivery shift. **Repair:** create an availability table for every feature, reconstruct values as known at checkout, and split by time. A weaker honest score can support a real decision; the stronger leaked score cannot. ## 5. Accuracy can reward doing nothing Only 3% of customers churn. Predicting “no churn” for everyone is 97% accurate, with zero recall for churners. **Repair:** compare against that baseline; report confusion counts, precision–recall behaviour, calibration and expected value at the actual contact capacity. Do not replace one context-free metric with another. ## 6. Risk is not treatment response | Customer | Churn risk | Estimated reduction from message | Retained value | Message cost | Expected net | | -------- | ---------: | -------------------------------: | -------------: | -----------: | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | A | 80% | 2 points | £100 | £3 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.02]{.mord}[(]{.mopen}[£100]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£3]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[−]{.mord}[£1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | B | 35% | 8 points | £100 | £3 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.08]{.mord}[(]{.mopen}[£100]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£3]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | A risk-ranked campaign chooses A; an effect-and-value policy chooses B. Both effect estimates still need credible causal evidence and uncertainty. ## 7. A forecast does not determine inventory Two products have the same mean demand of 20 units. Product F is perishable with high overage cost; Product S is durable with high stockout cost. Their optimal quantities differ because the critical fractile depends on [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[o]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, not only the mean. **Decision:** estimate a demand distribution, define salvage, shortage and service consequences, then test the order quantity under alternative costs. “Forecast 20, order 20” is not a policy. ## 8. An optimiser obeys the wrong model perfectly A schedule maximises contribution subject to picker hours and returns 140 orders. It omits refrigerated-van capacity, so only 110 can be delivered safely. **Repair:** run a feasibility review with operators, audit units, compare solver output with a hand-checked case, and record excluded constraints. If a constraint is difficult to model, it does not cease to exist. ## 9. A stable model can support a failing policy Calibration is unchanged, but staff acceptance drops from 80% to 35% after a new rota. Investigation shows recommended shifts now violate contracted availability. **Decision:** monitor recommendation feasibility and execution, not only scores. Retraining the model would treat the symptom as if it were a statistical failure. ## One-minute audit Before accepting any result, ask: 1. What is the unit and denominator? 2. Was every input available at the decision time? 3. Is this a descriptive, predictive, causal or prescriptive claim? 4. What baseline and uncertainty accompany it? 5. Which action changes, and what happens if the assumption is wrong? [Next: Reading and Evidence Map](https://www.pengjiaxin.com/26-reading-map) # Reading and Evidence Map []{#reading-and-evidence-map} This selective teaching map was checked on **1 August 2026**. It is not a systematic review. Sources were chosen for conceptual importance, methodological clarity, recency or direct relevance to the HarborMart decisions. Follow the links and check later amendments before applying them. ## Read by question ### What kind of claim am I making? - Shmueli (2010), [*To Explain or to Predict?*](https://doi.org/10.1214/10-STS330){rel=""nofollow""}, distinguishes explanatory and predictive modelling aims. - Bertsimas and Kallus (2020), [*From Predictive to Prescriptive Analytics*](https://doi.org/10.1287/mnsc.2018.3253){rel=""nofollow""}, formalises decisions that use contextual data. - Kleinberg et al. (2018), [*Human Decisions and Machine Predictions*](https://doi.org/10.1093/qje/qjx032){rel=""nofollow""}, shows why evaluating predictions requires attention to the decisions and selectively observed outcomes they affect. **Use:** chapters 1, 8, 13 and 20. None of these licenses a causal claim from predictive accuracy. ### How should evidence be displayed and evaluated? - Cleveland and McGill (1984), [graphical perception](https://doi.org/10.1080/01621459.1984.10478080){rel=""nofollow""}, provides experimental foundations for comparing visual encodings. - Hullman et al. (2019), [a survey of uncertainty visualisation evaluation](https://idl.cs.washington.edu/files/2019-UncertaintyEval-InfoVis.pdf){rel=""nofollow""}, maps what uncertainty displays are intended to achieve. - Saito and Rehmsmeier (2015), [precision–recall versus ROC](https://doi.org/10.1371/journal.pone.0118432){rel=""nofollow""}, explains why class imbalance changes evaluation interpretation. - Guo et al. (2017), [calibration of modern neural networks](https://proceedings.mlr.press/v70/guo17a.html){rel=""nofollow""}, motivates reliability checks after training. **Use:** chapters 4, 7, 11 and 13. A display or metric is evidence only for its defined task, population and period. ### How do experiments support decisions? - Kohavi et al. (2009), [controlled experiments on the web](https://doi.org/10.1007/s10618-008-0114-1){rel=""nofollow""}, gives practical experimentation principles and failure modes. - Kohavi, Tang and Xu (2020), [*Trustworthy Online Controlled Experiments*](https://doi.org/10.1017/9781108653985){rel=""nofollow""}, develops design, metrics and organisational practice. **Use:** chapters 8, 19, 20 and 23. Randomisation solves assignment confounding, not bad measurement, interference or non-compliance automatically. ### How should models be interpreted and operated? - Rudin (2019), [interpretable rather than post-hoc explained models](https://doi.org/10.1038/s42256-019-0048-x){rel=""nofollow""}, argues for transparent models in high-stakes settings where feasible. - Sculley et al. (2015), [*Hidden Technical Debt in Machine Learning Systems*](https://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems){rel=""nofollow""}, catalogues system-level maintenance risks. - Breck et al. (2017), [*The ML Test Score*](https://research.google/pubs/the-ml-test-score-a-rubric-for-ml-production-readiness-and-technical-debt-reduction/){rel=""nofollow""}, offers a production-readiness rubric. - Gebru et al. (2021), [*Datasheets for Datasets*](https://doi.org/10.1145/3458723){rel=""nofollow""}, structures documentation of dataset motivation, composition, collection and use. - Mitchell et al. (2019), [*Model Cards for Model Reporting*](https://doi.org/10.1145/3287560.3287596){rel=""nofollow""}, structures intended use, evaluation and limitations. **Use:** chapters 2, 14, 21 and 22. Documentation supports accountability only when it is accurate, reviewed and tied to controls. ## Current research extensions These sources connect established analytics to current decision and system questions: - Longo et al. (2024), [*Explainable Artificial Intelligence (XAI) 2.0*](https://doi.org/10.1016/j.inffus.2024.102301){rel=""nofollow""}, surveys the move from isolated explanations toward broader, human-centred evaluation. - Smyth et al. (2024), [AI and prescriptive analytics for supply-chain resilience](https://doi.org/10.1080/00207543.2024.2341415){rel=""nofollow""}, reviews links among descriptive, predictive and prescriptive capabilities while identifying fragmented evidence. - Sadana et al. (2025), [a survey of contextual optimisation methods](https://doi.org/10.1016/j.ejor.2024.03.020){rel=""nofollow""}, connects prediction with downstream decisions under uncertainty. - Dinh, Kotary and Fioretto (2024), [fair multi-objective predict-then-optimise](https://proceedings.mlr.press/v244/dinh24a.html){rel=""nofollow""}, shows that downstream performance may combine efficiency, robustness and fairness objectives. - Cerreia-Vioglio et al. (2026), [*Making Decisions Under Model Misspecification*](https://doi.org/10.1093/restud/rdaf046){rel=""nofollow""}, develops decision criteria that explicitly recognise models as approximations. **Teaching boundary:** these works are not interchangeable. A review maps a field; a theoretical paper establishes results under assumptions; an empirical study estimates within its design. Translate each into the claim it can support. ## Official governance sources | Source | What it contributes | Boundary | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ | -------------------------------------------------------------------------- | | [NIST AI RMF](https://www.nist.gov/itl/ai-risk-management-framework){rel=""nofollow""} | voluntary govern–map–measure–manage structure | NIST says version 1.0 is being revised | | [NIST Generative AI Profile](https://nvlpubs.nist.gov/nistpubs/ai/NIST.AI.600-1.pdf){rel=""nofollow""} | GenAI-specific risk actions, released July 2024 | profile, not a universal legal rule | | [ISO/IEC 42001:2023](https://www.iso.org/standard/42001){rel=""nofollow""} | requirements for an AI management system and continual improvement | standard text and certification scope require careful interpretation | | [OECD AI Principles, updated 2024](https://oecd.ai/en/principles){rel=""nofollow""} | human-centred values and policy recommendations | principles, not an implementation test suite | | [EU Regulation 2024/1689](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32024R1689){rel=""nofollow""} and [2026/1744 amendment](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32026R1744){rel=""nofollow""} | binding EU framework and current amendments | identify jurisdiction, role, system category and date; obtain legal advice | The Commission's [AI Omnibus update](https://digital-strategy.ec.europa.eu/en/news/ai-omnibus-enters-force){rel=""nofollow""} was last updated 31 July 2026. It is included to demonstrate why compliance slides need dates. ## Organisational cases - [Airbnb Chronon](https://airbnb.tech/opensource/chronon/){rel=""nofollow""} illustrates feature lineage, temporal backfills, online/offline consistency and drift monitoring. - [Uber's 2024 investor update](https://investor.uber.com/files/doc_events/2024/Feb/14/uber-investor-update.pdf){rel=""nofollow""} describes matching, routing, dispatch, pricing and incentives as linked marketplace decisions. - [Walmart's fiscal-2026 10-K](https://stock.walmart.com/sec-filings/all-sec-filings/content/0000104169-26-000055/wmt-20260131.htm){rel=""nofollow""} describes AI tools, automation and supply-chain investment within a large operating system. These are primary accounts of organisational practice. They can illustrate architecture and managerial claims; they are not independent estimates of causal impact. ## Emerging evidence Sun et al. (June 2026), [*Decision-Centered Learning in Closed-Loop Optimization and Control*](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=7017278){rel=""nofollow""}, is an emerging working paper. It is included to show a live research direction—learning evaluated through downstream decisions and feedback—not as settled or peer-reviewed evidence. When citing emerging work, label its status, version and access date. Prefer established results for core teaching and use preprints to formulate questions or replication exercises. ## A five-line reading note For any source, record: 1. question and claim; 2. data or formal setting; 3. identification or assumptions; 4. main result and uncertainty; 5. what it changes—and does not change—in a HarborMart decision. [Return to the course guide](https://www.pengjiaxin.com/../00-index) # Appendix and Revision Tools []{#appendix-and-revision-tools} Use these pages to revise decisions, not to memorise disconnected techniques. | Resource | Use it when | | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | | [Formula and decision map](https://www.pengjiaxin.com/24-formula-map) | you know the business question but need the right analytic object | | [Worked examples and pitfalls](https://www.pengjiaxin.com/25-worked-examples-pitfalls) | a plausible result may hide a denominator, timing or causal mistake | | [Reading and evidence map](https://www.pengjiaxin.com/26-reading-map) | you need the foundational source, a current extension or an official standard | For each formula, say its unit, information time, estimand or objective, and failure consequence. If those four items are unclear, calculation should wait. [Return to the course guide](https://www.pengjiaxin.com/../00-index) # Capstone — The Evening Delivery Promise []{#capstone-the-evening-delivery-promise} ## The decision HarborMart's regional manager asks: “Can the risk model reduce evening delivery failures?” Your task is not to praise or reject the model. You must design a defensible decision system. At checkout, the system may: 1. accept the requested window; 2. offer a later promise; 3. reroute to a nearby fulfilment centre when feasible; or 4. call additional picker capacity for a future slot. The customer must see the promise before payment. Information observed after that moment is unavailable to the decision. ## Evidence pack A: eight-week operating summary There were 24,000 completed evening orders and 312 cancellations after acceptance. | Window | Completed orders | Late | Late rate | | ----------- | ---------------: | --------: | --------: | | 16:00–17:00 | 6,000 | 330 | 5.5% | | 17:00–18:00 | 7,000 | 560 | 8.0% | | 18:00–19:00 | 6,500 | 715 | 11.0% | | 19:00–20:00 | 4,500 | 770 | 17.1% | | **total** | **24,000** | **2,375** | **9.9%** | This table does not prove that the time window causes lateness. Store, distance, basket and capacity mix also change through the evening. ## Evidence pack B: data dictionary | Field | Grain or timing | Audit note | | ------------------------------ | ----------------------------------- | -------------------------------------------- | | `orders.order_id` | one accepted order | primary key; cancelled orders remain | | `order_items` | many rows per order | joining before aggregation duplicates orders | | `score_at_checkout` | stored before promise | legitimate historical prediction | | `scheduled_picker_minutes` | known at checkout | legitimate capacity feature | | `actual_picker_minutes` | final shift record | leakage for checkout prediction | | `weather_forecast_at_checkout` | forecast version stored at checkout | legitimate if timestamp is preserved | | `actual_weather` | observed later | outcome-time information | | `arrival_time` | observed for completed delivery | missing for cancellations | | `customer_service_note` | free text after delivery | possible leakage and sensitive content | | `service_area` | operational zone | use for error and impact audit | The late label is `arrival_time > promise_end`. Decide explicitly how cancellation, re-promise and missing arrival should enter the business outcome; silently dropping them rewards avoidance. ## Evidence pack C: model audit The candidate model was evaluated on the latest four weeks, after all training periods. | Risk band | Orders | Mean predicted risk | Observed late rate | | --------- | -----: | ------------------: | -----------------: | | below 5% | 8,000 | 3.0% | 3.0% | | 5%–10% | 7,000 | 7.0% | 7.0% | | 10%–20% | 5,500 | 14.0% | 14.0% | | above 20% | 3,500 | 25.0% | 25.0% | | Measure | Constant-risk baseline | Candidate | | ----------- | ---------------------: | --------: | | Brier score | 0.089 | 0.078 | | AUROC | 0.500 | 0.720 | Aggregate calibration hides one issue: | Service area | Orders | Mean prediction | Observed rate | | ----------------- | -----: | --------------: | ------------: | | central and inner | 19,200 | 9.7% | 8.5% | | outer | 4,800 | 10.6% | 15.4% | The outer-area result may reflect model error, changed road conditions, weak labels or a different data-generating process. Diagnose before changing a threshold. ## Evidence pack D: candidate actions The finance team values a prevented late delivery at £9 after refunds, support time and estimated retention effects. Treat this figure as an assumption requiring sensitivity analysis. | Action over eight weeks | Direct cost | Estimated consequence | Evidence quality | | ------------------------------------ | -----------------------: | --------------------------------------- | --------------------------------- | | add one picker, 17:00–20:00 | £2,160 | 420 fewer late orders, interval 250–580 | randomised shift pilot | | reroute up to 600 eligible orders | £1,440 | 210 fewer late orders | adjusted observational comparison | | offer later windows to top 300 risks | £1,800 lost contribution | 90 fewer recorded late orders | model simulation only | | keep current rule | £0 | baseline | observed history | Capacity allows only one additional picker. Rerouting is unavailable for chilled baskets and adds a median 11 minutes to travel. A re-promised order is not “on time” under the original promise; retain both original- and revised-promise measures. ## Your six decisions ### A. Frame Write an analytics contract naming owner, decision time, unit, eligible population, actions, objective, constraints, baseline, horizon and review rule. State one descriptive, predictive, causal and prescriptive claim the evidence can or cannot support. ### B. Audit Specify the order-level analysis table. Show how you will prevent item-join duplication, temporal leakage and silent cancellation exclusion. Add five executable data checks. ### C. Diagnose Produce one decision display that separates volume from late rate and exposes the outer-area problem. Include counts, denominators and uncertainty. Give two rival process explanations. ### D. Predict Decide whether the candidate improves on the baseline for this decision. Evaluate temporal validity, calibration, ranking, subgroup error and the cost/capacity range. Do not select a threshold from AUROC alone. ### E. Prescribe Recommend an action or staged combination. Calculate expected net value, test the £9 assumption and use the intervention evidence quality. State why “offer later windows to top risks” may optimise the reported metric while harming service. ### F. Deploy and learn Design a shadow stage and a controlled rollout. Specify five monitors, two guardrails, one pause condition, one rollback rule, owners and a causal value evaluation. Explain how selective labels will arise. ## Deliverable template This is a teaching template, not an institutional rule: 1. **executive decision memo:** recommendation, expected value range, material uncertainty and next decision; 2. **technical appendix:** contract, data audit, validation, policy calculation and sensitivity; 3. **control sheet:** monitoring, fairness/privacy review, incident and rollback rules; 4. **reproducibility record:** data snapshot, code/environment, assumptions and generated outputs. ## Evaluation rubric | Criterion | Strong work demonstrates | | ------------------- | ------------------------------------------------------------------------------ | | decision logic | objective, alternatives, constraints and counterfactual align | | evidence discipline | description, prediction, causation and prescription are not conflated | | technical validity | grain, time, denominator, baseline, calibration and uncertainty are audited | | operational realism | action is feasible; ownership, latency, feedback and rollback are explicit | | responsibility | affected groups, privacy, security, review and contestability shape the design | | communication | conclusion is concise, traceable and honest about what is unknown | Postgraduate work should add an identification diagram, a formal estimand, robustness to model misspecification and decision-regret comparison. ::legacy-details{title="Instructor checkpoint — not a unique solution"} The additional picker has point-estimate gross value [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[420]{.mord}[(]{.mopen}[£9]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£3]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[780]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and net value £1,620. At the pilot interval endpoints, net value ranges from £90 to £3,060; break-even value per prevented late order is about £5.14. That makes a staged picker rollout defensible, not certain. Rerouting has point-estimate net value [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[210]{.mord}[(]{.mopen}[£9]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[440]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£450]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, but weaker causal evidence and eligibility constraints. Re-promising may reduce the recorded late rate by redefining service rather than improving it. Preserve original-promise outcomes. A strong answer investigates outer-area calibration, keeps cancellations in a guardrail, logs proposed and executed actions, and randomises rollout where feasible. It does not feed `actual_picker_minutes`, `actual_weather` or service notes into a checkout-time model. :: Use the [formula map](https://www.pengjiaxin.com/../appendix/24-formula-map), then compare your reasoning with the [worked pitfalls](https://www.pengjiaxin.com/../appendix/25-worked-examples-pitfalls). # Financial and Economic Time Series ## What this course adds The [Classical Time Series course](https://www.pengjiaxin.com/en/time-series/00-intro/) begins with stochastic processes, Toeplitz covariance matrices, ARMA equations, linear projection, and likelihood. This course keeps that mathematical spine but changes the question: > How should a time-series model change when the decision concerns financial risk, an economic forecast, or a policy intervention? The answer is not “use a larger ARIMA model.” Financial and economic data introduce different clocks, transformations, losses, and identification problems: - a stock price is observed almost continuously, but a national-account series is revised long after its first release; - return means are weak and volatility is highly persistent, while macroeconomic levels often contain trends and cointegrating relations; - a risk manager cares about tail losses, whereas a central-bank forecaster may care about a quarterly nowcast and the response to a policy shock; - a forecasting relation need not be a causal or structural relation. This is therefore an **applied time-series econometrics course**, not a replacement for the classical theory course and not a trading-strategy cookbook. ## Preparation Before starting, you should be able to: - write OLS as [[]{.katex-mathml}[[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and interpret a covariance matrix; - recognise a stationary AR process and a unit root; - read an ARMA equation and a first-order state equation; - use logarithms, conditional expectation, likelihood, and matrix multiplication; - run a self-contained base-R example. If these are unfamiliar, complete the first five modules of [Classical Time Series](https://www.pengjiaxin.com/en/time-series/00-intro/) first. ::legacy-details{title="Ten-minute readiness check"} 1. Why do we usually model a liquid asset's return rather than its price level? 2. If [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are both [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, when can a regression in levels still be meaningful? 3. Why does an [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -period overlapping return create serially correlated regression errors? 4. What extra assumption turns a reduced-form VAR innovation into a named policy shock? 5. Why is a revised GDP series inappropriate for evaluating a historical real-time forecast? Short answers: returns are closer to stationary and directly measure gains or losses; when a stationary linear combination exists; adjacent outcomes share observations; an identification restriction; the revised value was unavailable when the forecast was made. :: ## Learning outcomes By the end, you will be able to: - choose defensible transformations for prices, returns, yields, macroeconomic levels, growth rates, and revised releases; - derive predictive regressions and Newey–West covariance estimators in matrix form; - estimate and diagnose ARCH/GARCH models and convert conditional variance forecasts into risk measures; - distinguish unit-root, cointegration, error-correction, and spurious-regression arguments; - derive reduced-form VAR forecasts and explain what additional restrictions identify structural shocks; - implement a Kalman filter for missing and mixed-frequency observations; - compare point, density, and tail-risk forecasts with losses matched to the decision; - state clearly whether a result is descriptive, predictive, or structural; - reproduce each core calculation in browser-based base R. ## One mathematical spine, two applied tracks Let [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} denote information available before time [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Both tracks use [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} They emphasise different parts: | Track | Typical observation | Dominant uncertainty | Decision | | --------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- | | Finance | daily or intraday return, spread, yield | time-varying [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[H]{.mord,mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, heavy tails, market timing | hedge, allocate, price, limit risk | | Economics | monthly or quarterly level/growth release | persistent [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[μ]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, revisions, latent current state | forecast, nowcast, explain, evaluate policy | Finance is not “only variance,” and economics is not “only the mean.” The distinction tells us where model failure is most costly. ## Course map | Module | Central question | Matrix object | Main output | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------- | ------------------------------------ | | [1. Three versions of time series](https://www.pengjiaxin.com/../01-bridge/) | what changes across statistics, finance, and economics? | covariance, information set, loss | method-selection memo | | [2. Data and transformations](https://www.pengjiaxin.com/../02-data-transformations/) | what is the estimand after transforming raw observations? | differencing and aggregation operators | auditable data transformation | | [3. Predictive regressions](https://www.pengjiaxin.com/../03-predictive-regressions/) | does a persistent variable improve a forecast? | projection and HAC covariance | horizon-specific forecast regression | | [4. Volatility and risk](https://www.pengjiaxin.com/../04-volatility-risk/) | how does conditional risk evolve? | variance recursion and likelihood | volatility, VaR, and ES forecast | | [5. Unit roots and cointegration](https://www.pengjiaxin.com/../05-unit-roots-cointegration/) | is a level relation genuine or spurious? | long-run rank and error correction | equilibrium-and-adjustment argument | | [6. VAR and identification](https://www.pengjiaxin.com/../06-var-identification/) | what propagates through a system, and what is a shock? | companion matrix and impact matrix | identified impulse-response analysis | | [7. State space and nowcasting](https://www.pengjiaxin.com/../07-state-space-nowcasting/) | how do we estimate an unobserved current state? | prediction/update covariance recursion | ragged-edge nowcast | | [8. Forecast evaluation](https://www.pengjiaxin.com/../08-forecast-evaluation/) | is one forecast useful for the actual decision? | loss differential and long-run variance | comparative evaluation report | | [9. R laboratory](https://www.pengjiaxin.com/../09-r-laboratory/) | can the complete workflow be reproduced? | reusable matrix checks | finance and economics mini-cases | | [10. Capstone and readings](https://www.pengjiaxin.com/../10-capstone-readings/) | can evidence support a bounded decision? | end-to-end audit trail | finance or economics project | ## How every module works Each module has four layers: 1. **Prepare:** identify the data clock, transformation, information set, and decision. 2. **Derive:** express the model as a projection, covariance, companion, or state-space matrix. 3. **Execute:** run a small base-R example whose numerical result checks the derivation. 4. **Interpret:** write one sentence separating description, prediction, and identification. The examples are deliberately small. A short simulation can expose a failed assumption more clearly than a large opaque download. ## A ten-week route | Week | Preparation | Seminar or laboratory evidence | | ---: | ---------------------------------------------- | ------------------------------------------------------------------------- | | 1 | classical ARMA and projection review | classify six questions as statistical, financial, economic, or structural | | 2 | log changes and aggregation | build a transformation matrix and audit units | | 3 | persistent regressors and overlapping horizons | derive OLS and HAC covariance | | 4 | conditional heteroskedasticity | estimate a GARCH model and explain persistence | | 5 | unit roots | diagnose a spurious level regression | | 6 | cointegration and error correction | separate long-run relation from short-run adjustment | | 7 | reduced-form VAR | compute forecasts and impulse propagation | | 8 | structural identification | compare two defensible shock definitions | | 9 | state space and real-time data | produce a ragged-edge nowcast | | 10 | forecast evaluation and synthesis | defend one decision using an honest pseudo-out-of-sample design | ## Suggested assessment map This is a teaching design, not an institutional grading policy. | Evidence | Suggested share | Observable standard | | ---------------------------------------- | --------------: | ------------------------------------------------------------- | | transformation and information-set audit | 20% | units, timing, releases, and revisions are explicit | | matrix derivations and R checks | 30% | dimensions, assumptions, and numerical identities agree | | comparative forecast exercise | 20% | benchmark, loss, horizon, and evaluation window are justified | | finance or economics capstone | 30% | claim is bounded; uncertainty and failure modes are reported | Expected independent work is about 4–6 hours per module: 1 hour preparation, 1.5 hours guided reading, 1.5 hours code, and 1–2 hours interpretation. All core R cells run in the browser. A learner who cannot use the interactive runtime may copy the same base-R code into a local R session and submit text tables instead of plots. ## Start Begin with [Three Versions of Time Series](https://www.pengjiaxin.com/../01-bridge/). Do not choose a model until you can name the observation clock, the forecast horizon, the available information, and the loss attached to a wrong decision. # Three Versions of Time Series []{#three-versions-of-time-series} ## The shortest useful distinction All three fields study ordered random variables. They differ in what makes an analysis credible: | Question | Classical statistical time series | Financial time series | Economic time series | | -------------------- | ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | primary object | stochastic process and dependence structure | returns, volatility, liquidity, and tail loss | growth, cycles, long-run relations, and policy transmission | | common clock | regular, fixed interval | trading time; daily to tick-by-tick | release time; monthly/quarterly, mixed frequency | | usual transformation | centre, detrend, seasonally adjust | adjusted price [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[→]{.mrel}]{.base}]{.katex-html ariaHidden="true"}]{.katex} log return | level [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[→]{.mrel}]{.base}]{.katex-html ariaHidden="true"}]{.katex} log, difference, growth, gap | | dominant difficulty | valid covariance and stable dynamics | weak mean signal, changing variance, heavy tails | persistence, unit roots, revisions, latent current state | | validation target | model adequacy and prediction error | economic value and tail calibration after costs | real-time forecast or credible structural interpretation | | costly error | invalid stochastic model | underestimated loss or false predictability | bad nowcast or misidentified policy effect | The classical course asks, “What follows from this stochastic model?” The applied course asks, “Is this model aligned with the data available and the decision being made?” ## What remains unchanged For the finite vector [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the common language is still: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathbf}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[u]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[u]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Ω.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - Classical analysis studies what structures such as Toeplitz [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Ω]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} imply. - Finance often allows diagonal elements of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Ω]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to evolve through time and evaluates tail functionals. - Economics often models persistent means, common trends, simultaneous systems, and imperfectly observed states. The algebra transfers. The information set, interpretation, and loss do not transfer automatically. ## One method, three uses | Method | Classical use | Finance use | Economics use | | ---------------- | ----------------------------------------- | ------------------------------------------- | ---------------------------------------------------- | | AR/ARMA | represent stationary dependence | short-horizon return or spread dynamics | inflation, growth, or forecast benchmark | | HAC covariance | inference with serial correlation | overlapping multi-period returns | distributed lags and persistent macro regressors | | GARCH | example of nonlinear conditional variance | volatility, VaR, derivative/risk inputs | inflation or exchange-rate uncertainty when relevant | | cointegration | reduced-rank long-run system | spreads, term structure, price discovery | money–prices, consumption–income, output relations | | VAR | multivariate forecasting | return–volatility–liquidity interactions | policy transmission and macro forecasting | | Kalman filter | efficient state recursion | latent volatility, beta, or efficient price | nowcasting, output gaps, mixed-frequency factors | | spectral methods | frequency decomposition | cycles in volatility or market activity | business-cycle and seasonal frequency separation | ::warning{title="Same equation, different claim"} A VAR can forecast without identifying a structural shock. A stationary spread can exist without yielding a profitable trade. A significant return predictor can fail after transaction costs. Never upgrade a statistical relation into an economic claim without the missing assumptions. :: ## Matched example 1: a persistent level Suppose [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[η]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} In the classical course, this is a unit root: shocks have permanent effects and the level is nonstationary. In finance, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may be a log price. We usually analyse the return [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[η]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} because it is the investable one-period gain and is closer to stationary. In economics, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may be log real GDP. Differencing produces growth, but discards the level relation needed for questions about potential output or cointegration. The transformation must follow the estimand, not a stationarity ritual. ## Matched example 2: a VAR innovation Write a reduced-form VAR(1): [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[A]{.mord.mathnormal}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The forecast response to [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is well defined. A named shock requires [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} There are many matrices [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} satisfying the last equality. - A finance study may order returns before liquidity and interpret a recursive response cautiously. - A macro study may use timing restrictions, sign restrictions, or an external instrument to identify a monetary-policy shock. - The reduced-form fit alone cannot decide which [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is economically correct. [Jordà's local projections](https://www.aeaweb.org/articles?id=10.1257%2F0002828053828518){rel=""nofollow""} estimate horizon-specific responses directly. [Plagborg-Møller and Wolf](https://onlinelibrary.wiley.com/doi/10.3982/ECTA17813){rel=""nofollow""} show that unrestricted local projections and VARs target the same impulse responses; practical differences arise from regularisation, lag choices, and finite samples, not from automatic identification. ## Matched example 3: the forecast loss Let [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0496em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. - A classical exercise may minimise [[]{.katex-mathml}[[[]{.strut style="height:1.1555em;vertical-align:-0.3414em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4169em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3414em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. - A portfolio desk may care more about underpredicting the lower tail than a symmetric mean error. - A policy institution may care about forecast revisions before a meeting, conditional performance during recessions, or a density covering multiple scenarios. The correct model comparison is therefore [[[]{.katex-mathml}[[[]{.strut style="height:1.3131em;vertical-align:-0.3552em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[L]{.mord.mathnormal}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is chosen **before** seeing the winning model. ## The usage decision Use this sequence before fitting anything: | Decision | If yes | Consequence | | --------------------------------------- | ------------------------------------------------------------------------------ | ----------------------------------------------------------------- | | Is the object a traded price? | transform to an adjusted return unless the level relation is itself the target | inspect market calendar, corporate actions, costs, and tails | | Is the target a macroeconomic level? | test whether trends and long-run relations are substantively meaningful | compare difference, cointegration, and state-space specifications | | Was the value revised after release? | preserve vintage and release timestamps | evaluate against information available at each forecast origin | | Is the claim causal or structural? | forecasting fit is insufficient | state and defend an identification design | | Is the loss asymmetric or tail-focused? | RMSE is insufficient | evaluate quantiles, VaR/ES, or decision-specific utility | | Do horizons overlap? | residuals share observations | use an appropriate long-run covariance and honest split | ## Three common category errors 1. **Stationary therefore useful:** a spread may be stationary but too slow, costly, or unstable to trade. 2. **Predictive therefore causal:** a yield spread may forecast activity without representing an intervention. 3. **Revised therefore known:** a final macro series can make a historical nowcast look better than information available in real time. ## Practice For each case, choose the track and the missing safeguard. 1. Daily close-to-close equity returns are used to estimate tomorrow's 1% loss quantile. 2. Quarterly consumption and income levels are modelled jointly to study long-run adjustment. 3. Monthly inflation and policy rates are used to report the response to a monetary-policy shock. 4. An ARMA simulation is used to verify a Yule–Walker identity. ::legacy-details{title="Answers"} 1. Finance: adjusted prices, tail loss, changing volatility, and out-of-sample VaR calibration. 2. Economics with cointegration: test rank and interpret the error-correction relation. 3. Economics with structural identification: define why the innovation is a policy shock. 4. Classical statistics: covariance validity and algebra are the main objects. :: ## Working rule Use the classical course to justify the stochastic machinery. Use this course to justify the transformation, information set, identification, and decision. A strong analysis needs both. Next: [Data, Clocks, and Transformations](https://www.pengjiaxin.com/../02-data-transformations/). # Data, Clocks, and Transformations []{#data-clocks-and-transformations} ## The transformation is part of the estimand Write raw observations as [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[z]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and analysed observations as [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[z]{.mord.mathbf}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The matrix [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is not preprocessing trivia. It determines the units, timing, and economic meaning of every coefficient that follows. ## Finance: from recorded price to investable return For an adjusted price [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the log return is [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[p]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then [[[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[r]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[p]{.mord.mathbf}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[−]{.mord}[1]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-5.64em;"}[[]{.pstrut style="height:3.5em;"}[[−]{.mord}[1]{.mord}]{.mord}]{style="top:-4.44em;"}[[]{.pstrut style="height:3.5em;"}[]{.mord}]{style="top:-2.58em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-1.38em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-5.64em;"}[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-4.44em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-2.58em;"}[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-1.38em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-5.64em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-4.44em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-2.58em;"}[[]{.pstrut style="height:3.5em;"}[[−]{.mord}[1]{.mord}]{.mord}]{style="top:-1.38em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[1]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Log returns add across time: [[[]{.katex-mathml}[[[]{.strut style="height:3.2499em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Before using this identity, resolve: - splits and dividends: use a documented total-return or adjusted-price convention; - non-trading days: calendar time and trading time are not interchangeable; - bid–ask bounce and asynchronous prices: intraday observations can create mechanical serial dependence; - currency and timezone: a “daily” return must have a common valuation instant; - survivorship and delisting: today's constituent list cannot define yesterday's investable universe. Arithmetic returns compound rather than add: [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2499em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∏]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Confusing sums with compounding is a units error, not a model-choice error. ## Economics: levels, growth, gaps, and releases For a positive level [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, common targets include: [[[]{.katex-mathml}[[[]{.strut style="height:1.2906em;vertical-align:-0.2458em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4542em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[(]{.mopen.mtight}[1]{.mord.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2458em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2906em;vertical-align:-0.2458em;"}[100Δ]{.mord}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4542em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[(]{.mopen.mtight}[a]{.mord.mathnormal.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2458em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[100]{.mord}[m]{.mord.mathnormal}[Δ]{.mord}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[12]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} for annualised monthly growth and [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} for annualised quarterly growth. Year-over-year growth is instead [[[]{.katex-mathml}[[[]{.strut style="height:1.2906em;vertical-align:-0.2458em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4542em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[(]{.mopen.mtight}[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[/]{.mord.mtight}[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2458em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[100]{.mord}[(]{.mopen}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[m]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} These targets answer different questions. Annualising one-period growth rescales the latest pace; year-over-year growth compares levels a year apart and smooths short-run movement. For macro data, record three dates: 1. **reference period:** the month or quarter being measured; 2. **release date:** when the estimate became public; 3. **vintage date:** which subsequently revised value is stored. [ALFRED](https://alfred.stlouisfed.org/help){rel=""nofollow""} preserves historical vintages, and the [FRED real-time-period documentation](https://fred.stlouisfed.org/docs/api/fred/realtime_period.html){rel=""nofollow""} explains why observation dates and real-time dates are separate. A real-time forecast must not use a later revision. ## Aggregation is also a matrix Suppose monthly growth is [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Quarterly log growth is obtained by summing non-overlapping blocks: [[[]{.katex-mathml}[[[]{.strut style="height:0.7305em;vertical-align:-0.2861em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[q]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[A]{.mord.mathnormal}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[A]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:4.26em;vertical-align:-1.88em;"}[[[[[[[[]{.pstrut style="height:6.2em;"}[]{style="width:0.667em;height:4.2em;"}]{style="top:-4.35em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[1]{.mord}]{.mord}]{style="top:-5.2275em;"}[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-4.0275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.1675em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-5.04em;"}[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-3.84em;"}[[]{.pstrut style="height:3.5em;"}[]{.mord}]{style="top:-1.98em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-5.04em;"}[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-3.84em;"}[[]{.pstrut style="height:3.5em;"}[]{.mord}]{style="top:-1.98em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-5.04em;"}[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-3.84em;"}[[]{.pstrut style="height:3.5em;"}[]{.mord}]{style="top:-1.98em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-5.04em;"}[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-3.84em;"}[[]{.pstrut style="height:3.5em;"}[]{.mord}]{style="top:-1.98em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-5.04em;"}[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-3.84em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-1.98em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[⋯]{.minner}]{.mord}]{style="top:-4.54em;"}[[]{.pstrut style="height:3em;"}[[⋯]{.minner}]{.mord}]{style="top:-3.34em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.02em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:6.2em;"}[]{style="width:0.667em;height:4.2em;"}]{style="top:-4.35em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Stocks and flows aggregate differently: | Variable | Economic type | Typical quarterly mapping | | -------------------------- | -------------- | --------------------------------------------------------- | | end-of-month interest rate | stock | last observation or average, depending on question | | monthly sales | flow | sum | | price index | index | average level, then compute change with stated convention | | log growth | rate of change | sum for exact log change | There is no universal “convert monthly to quarterly” command. ## R laboratory: make the operators visible ::web-r --- code64: c2V0LnNlZWQoNDIpCgojIEZpbmFuY2U6IGEgbG9nLXByaWNlIHBhdGggYW5kIGl0cyBmaXJzdC1kaWZmZXJlbmNlIG9wZXJhdG9yClRuIDwtIDEyCnIgPC0gcm5vcm0oVG4gLSAxLCBtZWFuID0gMC4wMDA0LCBzZCA9IDAuMDEyKQpsb2dfcHJpY2UgPC0gYyhsb2coMTAwKSwgbG9nKDEwMCkgKyBjdW1zdW0ocikpCgpEIDwtIG1hdHJpeCgwLCBucm93ID0gVG4gLSAxLCBuY29sID0gVG4pCmZvciAoaSBpbiBzZXFfbGVuKFRuIC0gMSkpIHsKICBEW2ksIGldIDwtIC0xCiAgRFtpLCBpICsgMV0gPC0gMQp9CnJfbWF0cml4IDwtIGRyb3AoRCAlKiUgbG9nX3ByaWNlKQoKIyBFY29ub21pY3M6IG1vbnRobHkgbG9nIGdyb3d0aCBhZ2dyZWdhdGVkIGludG8gZm91ciBxdWFydGVycwptb250aGx5X2dyb3d0aCA8LSBjKDAuMDA0LCAwLjAwMywgMC4wMDIsCiAgICAgICAgICAgICAgICAgICAgMC4wMDEsIC0wLjAwMiwgLTAuMDA0LAogICAgICAgICAgICAgICAgICAgIDAuMDAyLCAwLjAwNCwgMC4wMDUsCiAgICAgICAgICAgICAgICAgICAgMC4wMDMsIDAuMDAyLCAwLjAwMSkKQSA8LSBtYXRyaXgoMCwgbnJvdyA9IDQsIG5jb2wgPSAxMikKZm9yIChxIGluIDE6NCkgQVtxLCAoMyAqIHEgLSAyKTooMyAqIHEpXSA8LSAxCnF1YXJ0ZXJseV9ncm93dGggPC0gZHJvcChBICUqJSBtb250aGx5X2dyb3d0aCkKCiMgRXhhY3QgY2hlY2tzCmNoZWNrcyA8LSBjKAogIGRpZmZlcmVuY2luZ19lcnJvciA9IG1heChhYnMocl9tYXRyaXggLSBkaWZmKGxvZ19wcmljZSkpKSwKICByZXR1cm5fYWRkaXRpdml0eV9lcnJvciA9CiAgICBhYnMoc3VtKHJfbWF0cml4WzE6M10pIC0gKGxvZ19wcmljZVs0XSAtIGxvZ19wcmljZVsxXSkpLAogIGFnZ3JlZ2F0aW9uX2Vycm9yID0KICAgIGFicyhxdWFydGVybHlfZ3Jvd3RoWzJdIC0gc3VtKG1vbnRobHlfZ3Jvd3RoWzQ6Nl0pKQopCgpsaXN0KAogIERfZGltZW5zaW9uID0gZGltKEQpLAogIEFfZGltZW5zaW9uID0gZGltKEEpLAogIHF1YXJ0ZXJseV9ncm93dGhfcGVyY2VudCA9IHJvdW5kKDEwMCAqIHF1YXJ0ZXJseV9ncm93dGgsIDMpLAogIG51bWVyaWNhbF9jaGVja3MgPSBjaGVja3MKKQ== layout: vertical locale: en title: Price returns and monthly-to-quarterly aggregation --- :: The three errors should be at machine precision. The important result is not the printed percentage; it is that the differencing and aggregation claims are explicit linear maps. ## Worked choice: level, change, or gap? Suppose the question is “Does the yield curve forecast recession?” - If the predictor is the ten-year minus three-month yield, the level difference is already an economically defined spread. - If the outcome is quarterly real GDP growth, use a documented growth convention. - If the outcome is a recession indicator, the model and loss must respect a binary event. - Differencing the spread merely because it is persistent changes the question from the curve's shape to the change in its shape. The transformation should preserve the substantive signal the question names. ## Transformation audit Before estimation, write a one-row data contract for every variable: | Field | Required statement | | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | raw source | provider, series, and access date | | observation unit | currency, index, percentage points, or return | | reference clock | calendar, trading, month, quarter | | availability | release lag and publication timestamp | | revision | first release, specified vintage, or latest revised | | transformation | exact formula and order of operations | | missing values | why absent and how treated | | target horizon | one period, fixed [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, or cumulative/overlapping | ## Practice 1. Show that [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[1]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. What information does differencing remove? 2. Replace the quarterly rows of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} by weights [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1/3]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1/3]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1/3]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Which variables would this suit? 3. A backtest formed in January uses a GDP value revised in June. Name the failure. ::legacy-details{title="Answers"} 1. Every row contains [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; differencing removes a constant level and loses the initial condition. 2. A variable whose quarterly concept is an average stock or index, provided that convention matches the source. 3. Look-ahead through data revision: the June vintage was outside January's information set. :: Next: [Predictive Regressions and Persistent Predictors](https://www.pengjiaxin.com/../03-predictive-regressions/). # Predictive Regressions and Persistent Predictors []{#predictive-regressions-and-persistent-predictors} ## Forecast first, explain second A one-step predictive regression is [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - In finance, [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may be an excess return and [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} a valuation ratio or yield spread. - In economics, [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may be inflation or output growth and [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} a financial or survey indicator. The timing is the claim: [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} must be available at the forecast origin. A contemporaneous regression of [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} on a revised [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is not the same experiment. ## Matrix projection Stack the outcomes and dated predictors: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[1]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[1]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[1]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[y]{.mord.mathbf style="margin-right:0.016em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathbf}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.0134em;"}]{.vlist style="height:0.7079em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The normal equations establish sample orthogonality. They do not prove that [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} was genuinely known, that the relation is stable, or that the forecast has economic value. ## Why persistence changes inference Predictors such as dividend–price ratios and interest-rate spreads are often well approximated by [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[ρ]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6776em;vertical-align:-0.1944em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are correlated, an unexpectedly high return changes both the dependent variable and the future predictor path. In short samples, the OLS slope can then be biased. [Stambaugh](https://www.nber.org/papers/t0240){rel=""nofollow""} derives this problem for return predictability; [Campbell and Yogo](https://www.nber.org/papers/w10026){rel=""nofollow""} develop inference designed for highly persistent regressors. Practical response: 1. report the estimated persistence and uncertainty around it; 2. use theory-appropriate inference, not only an IID t-test; 3. test stability across forecast origins; 4. compare genuine out-of-sample performance with a simple benchmark; 5. call the result predictive unless a separate identification argument exists. ## Overlapping horizons For an [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -period cumulative target, [[[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2499em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.4044em;vertical-align:-0.3596em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3987em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[(]{.mopen.mtight}[h]{.mord.mathnormal.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3596em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Adjacent outcomes share [[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[h]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} observations. Even if one-period innovations are independent, [[]{.katex-mathml}[[[]{.strut style="height:1.4044em;vertical-align:-0.3596em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3987em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[(]{.mopen.mtight}[h]{.mord.mathnormal.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3596em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is serially correlated. The coefficient may remain an OLS projection, but the IID covariance formula is wrong. ## HAC covariance in matrix form Let [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be the residual and [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[x]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Define [[[]{.katex-mathml}[[[]{.strut style="height:1.0968em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Γ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[ℓ]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.1888em;vertical-align:-1.3604em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[ℓ]{.mord.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3604em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[ℓ]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.016em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and the Bartlett-weighted long-run covariance [[[]{.katex-mathml}[[[]{.strut style="height:0.9468em;"}[[[[[[]{.pstrut style="height:3em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0968em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Γ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.1304em;vertical-align:-1.3021em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[ℓ]{.mord.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[L]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[ℓ]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[Γ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[ℓ]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1968em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[Γ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[ℓ]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The sandwich estimator is [[[]{.katex-mathml}[[[]{.strut style="height:1.2079em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[[Var]{.mord.mathrm}]{.mop}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[[HAC]{.mord.mathrm.mtight}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1968em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[[[[[]{.pstrut style="height:3em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is the matrix form of the [Newey–West estimator](https://www.nber.org/papers/t0055){rel=""nofollow""}. HAC repairs a covariance estimate under stated dependence conditions; it does not repair look-ahead bias, unstable coefficients, a bad transformation, or data mining. ## R laboratory: overlapping forecasts ::web-r --- code64: c2V0LnNlZWQoNzMxKQpUbiA8LSA0MjAKaCA8LSA2CgojIEEgcGVyc2lzdGVudCBwcmVkaWN0b3Iga25vd24gYXQgZWFjaCBmb3JlY2FzdCBvcmlnaW4KeCA8LSBudW1lcmljKFRuKQpmb3IgKHQgaW4gMjpUbikgeFt0XSA8LSAwLjk2ICogeFt0IC0gMV0gKyBybm9ybSgxLCBzZCA9IDAuMjApCgojIEVhY2ggaC1wZXJpb2Qgb3V0Y29tZSBzaGFyZXMgZnV0dXJlIG9uZS1wZXJpb2Qgc2hvY2tzIHdpdGggaXRzIG5laWdoYm91cnMKc2hvY2sgPC0gcm5vcm0oVG4gKyBoIC0gMSwgc2QgPSAxKQp5X2ggPC0gbnVtZXJpYyhUbikKZm9yICh0IGluIDE6VG4pIHsKICB5X2hbdF0gPC0gMC4xMCArIDAuMzUgKiB4W3RdICsgc3VtKHNob2NrW3Q6KHQgKyBoIC0gMSldKQp9CgpYIDwtIGNiaW5kKGludGVyY2VwdCA9IDEsIHByZWRpY3RvciA9IHgpCmJfaGF0IDwtIGRyb3Aoc29sdmUoY3Jvc3Nwcm9kKFgpLCBjcm9zc3Byb2QoWCwgeV9oKSkpCnVfaGF0IDwtIGRyb3AoeV9oIC0gWCAlKiUgYl9oYXQpCmJyZWFkIDwtIHNvbHZlKGNyb3NzcHJvZChYKSkKCiMgSUlEIGNvdmFyaWFuY2UKczIgPC0gc3VtKHVfaGF0XjIpIC8gKFRuIC0gbmNvbChYKSkKVl9paWQgPC0gczIgKiBicmVhZAoKIyBOZXdleS1XZXN0IGNvdmFyaWFuY2Ugd2l0aCBCYXJ0bGV0dCB3ZWlnaHRzIGFuZCBMID0gaCAtIDEKRyA8LSBYICogdV9oYXQKTCA8LSBoIC0gMQpTIDwtIGNyb3NzcHJvZChHKQpmb3IgKGVsbCBpbiAxOkwpIHsKICBHYW1tYV9lbGwgPC0gY3Jvc3Nwcm9kKAogICAgR1soZWxsICsgMSk6VG4sICwgZHJvcCA9IEZBTFNFXSwKICAgIEdbMTooVG4gLSBlbGwpLCAsIGRyb3AgPSBGQUxTRV0KICApCiAgd2VpZ2h0IDwtIDEgLSBlbGwgLyAoTCArIDEpCiAgUyA8LSBTICsgd2VpZ2h0ICogKEdhbW1hX2VsbCArIHQoR2FtbWFfZWxsKSkKfQpWX2hhYyA8LSBicmVhZCAlKiUgUyAlKiUgYnJlYWQKCnJlc3VsdCA8LSBjYmluZCgKICBlc3RpbWF0ZSA9IGJfaGF0LAogIFNFX0lJRCA9IHNxcnQoZGlhZyhWX2lpZCkpLAogIFNFX0hBQyA9IHNxcnQoZGlhZyhWX2hhYykpLAogIHRfSEFDID0gYl9oYXQgLyBzcXJ0KGRpYWcoVl9oYWMpKQopCgpsaXN0KAogIGNvZWZmaWNpZW50X3RhYmxlID0gcm91bmQocmVzdWx0LCA0KSwKICByZXNpZHVhbF9hdXRvY29ycmVsYXRpb25fbGFnMSA9IHJvdW5kKGNvcih1X2hhdFstMV0sIHVfaGF0Wy1Ubl0pLCAzKSwKICBub3JtYWxfZXF1YXRpb25fZXJyb3IgPSBtYXgoYWJzKGNyb3NzcHJvZChYLCB1X2hhdCkpKSwKICBoYWNfc3ltbWV0cnlfZXJyb3IgPSBtYXgoYWJzKFZfaGFjIC0gdChWX2hhYykpKQop layout: vertical locale: en title: OLS and Newey-West covariance for overlapping outcomes --- :: The lag-one residual correlation should be large because outcomes overlap. The HAC and IID standard errors therefore need not agree. The final two values verify the projection and covariance algebra. ## Finance and economics: same regression, different audit | Audit question | Finance | Economics | | ---------------- | ---------------------------------------------------- | ------------------------------------------------- | | target | excess return, premium, volatility, or spread change | growth, inflation, unemployment, recession | | predictor timing | close, rebalance, and execution time | release calendar and vintage | | friction | turnover, costs, shorting, capacity | publication lag and revisions | | benchmark | historical mean or market-implied forecast | AR benchmark, survey, or institutional forecast | | value | certainty equivalent, utility, tail loss | real-time RMSE, density score, decision relevance | ## Practice 1. For a 12-month rolling return sampled monthly, why is [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} indefensible? 2. If [[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is significant in-sample but loses to the historical mean out-of-sample, what is supported? 3. Why can adding the final revised value of a leading indicator inflate performance? ::legacy-details{title="Answers"} 1. Adjacent targets share eleven monthly returns, creating serial dependence. 2. At most an in-sample projection relation; useful forecast improvement has not been shown. 3. It leaks information unavailable at historical forecast origins. :: Next: [Volatility, Tails, and Financial Risk](https://www.pengjiaxin.com/../04-volatility-risk/). # Volatility, Tails, and Financial Risk []{#volatility-tails-and-financial-risk} ## Why finance changes the second moment Daily returns often have weak linear autocorrelation but strong dependence in squared or absolute returns. A useful decomposition is [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2561em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3.2em;"}[[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.2em;"}[[]{.pstrut style="height:3.2em;"}[]{.hide-tail style="min-width:1.02em;height:1.28em;"}]{style="top:-2.9661em;"}]{.vlist style="height:1.0061em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2339em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.044em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The conditional mean [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and conditional variance [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are separate modelling problems. An unconditional ARMA model can describe [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} while missing the risk clustering in [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## From ARCH to GARCH [Engle's ARCH model](https://doi.org/10.2307/1912773){rel=""nofollow""} lets recent squared shocks drive variance. [Bollerslev's GARCH model](https://doi.org/10.1016/0304-4076\(86\)90063-1){rel=""nofollow""} adds lagged variance: [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1694em;vertical-align:-0.3053em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the unconditional variance is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.988em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Interpretation: - [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is the immediate variance response to news; - [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is persistence in the variance state; - [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} controls the decay of a volatility shock; - [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} sets the long-run scale jointly with persistence. When [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is close to one, volatility forecasts revert slowly. That is not the same as a unit root in the return level. ## Conditional covariance as a matrix Given past information, a block of future shocks has covariance [[[]{.katex-mathml}[[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[:]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1052em;vertical-align:-0.3552em;"}[[diag]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} only when future standardised innovations are conditionally uncorrelated. In a multivariate model, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is a full positive-definite matrix and must simultaneously control variances and correlations. The one-step GARCH forecast is [[[]{.katex-mathml}[[[]{.strut style="height:1.0496em;vertical-align:-0.3552em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For [[]{.katex-mathml}[[[]{.strut style="height:0.8304em;vertical-align:-0.136em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.0496em;vertical-align:-0.3552em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1052em;vertical-align:-0.3552em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[−]{.mbin.mtight}[1]{.mord.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Gaussian quasi-likelihood Ignoring constants, the conditional Gaussian objective is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0954em;vertical-align:-1.2671em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It is a **quasi**-likelihood when [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is not Gaussian. Under suitable conditions it can still estimate the variance recursion consistently, but Gaussian tail probabilities and conventional standard errors need not be valid. Always inspect standardised residuals [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[z]{.mord.mathnormal style="margin-right:0.044em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.84em;vertical-align:-0.4022em;"}[[[[[[[]{.pstrut style="height:3em;"}[ε]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[[[[[[]{.pstrut style="height:3.8em;"}[[[[[[[[]{.pstrut style="height:3em;"}[h]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.8em;"}[[]{.pstrut style="height:3.8em;"}[]{.hide-tail style="min-width:1.02em;height:1.88em;"}]{style="top:-3.3978em;"}]{.vlist style="height:1.4378em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4022em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Remaining dependence in [[]{.katex-mathml}[[[]{.strut style="height:1.0611em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[z]{.mord.mathnormal style="margin-right:0.044em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.044em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} signals an inadequate variance recursion; heavy tails in [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[z]{.mord.mathnormal style="margin-right:0.044em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} signal an inadequate innovation distribution. ## R laboratory: estimate GARCH by recursion ::web-r --- code64: c2V0LnNlZWQoMTk4NikKVG4gPC0gOTAwCnRydWUgPC0gYyhvbWVnYSA9IDAuMDUsIGFscGhhID0gMC4wOCwgYmV0YSA9IDAuODkpCgpoIDwtIG51bWVyaWMoVG4pCnIgPC0gbnVtZXJpYyhUbikKaFsxXSA8LSB0cnVlWyJvbWVnYSJdIC8gKDEgLSB0cnVlWyJhbHBoYSJdIC0gdHJ1ZVsiYmV0YSJdKQpmb3IgKHQgaW4gMjpUbikgewogIHJbdCAtIDFdIDwtIHNxcnQoaFt0IC0gMV0pICogcm5vcm0oMSkKICBoW3RdIDwtIHRydWVbIm9tZWdhIl0gKwogICAgdHJ1ZVsiYWxwaGEiXSAqIHJbdCAtIDFdXjIgKwogICAgdHJ1ZVsiYmV0YSJdICogaFt0IC0gMV0KfQpyW1RuXSA8LSBzcXJ0KGhbVG5dKSAqIHJub3JtKDEpCgojIE1hcCB1bnJlc3RyaWN0ZWQgcGFyYW1ldGVycyBpbnRvIG9tZWdhID4gMCwgYWxwaGEgPj0gMCwKIyBiZXRhID49IDAsIGFuZCBhbHBoYSArIGJldGEgPCAwLjk5NS4KdW5wYWNrIDwtIGZ1bmN0aW9uKHRoZXRhKSB7CiAgcmF3IDwtIGV4cCh0aGV0YVsyOjNdKQogIGMoCiAgICBvbWVnYSA9IGV4cCh0aGV0YVsxXSksCiAgICBhbHBoYSA9IDAuOTk1ICogcmF3WzFdIC8gKDEgKyBzdW0ocmF3KSksCiAgICBiZXRhID0gMC45OTUgKiByYXdbMl0gLyAoMSArIHN1bShyYXcpKQogICkKfQoKZmlsdGVyX3ZhcmlhbmNlIDwtIGZ1bmN0aW9uKHBhciwgeCkgewogIGh0IDwtIG51bWVyaWMobGVuZ3RoKHgpKQogIGh0WzFdIDwtIHZhcih4KQogIGZvciAodCBpbiAyOmxlbmd0aCh4KSkgewogICAgaHRbdF0gPC0gcGFyWyJvbWVnYSJdICsKICAgICAgcGFyWyJhbHBoYSJdICogeFt0IC0gMV1eMiArCiAgICAgIHBhclsiYmV0YSJdICogaHRbdCAtIDFdCiAgfQogIGh0Cn0KCm5sbCA8LSBmdW5jdGlvbih0aGV0YSwgeCkgewogIHBhciA8LSB1bnBhY2sodGhldGEpCiAgaHQgPC0gZmlsdGVyX3ZhcmlhbmNlKHBhciwgeCkKICAwLjUgKiBzdW0obG9nKGh0KSArIHheMiAvIGh0KQp9CgpmaXQgPC0gb3B0aW0oYyhsb2coMC4wNSksIGxvZygwLjA4IC8gMC4wMyksIGxvZygwLjg5IC8gMC4wMykpLAogICAgICAgICAgICAgbmxsLCB4ID0gciwgbWV0aG9kID0gIkJGR1MiKQplc3RpbWF0ZSA8LSB1bnBhY2soZml0JHBhcikKaF9oYXQgPC0gZmlsdGVyX3ZhcmlhbmNlKGVzdGltYXRlLCByKQoKaF9uZXh0IDwtIGVzdGltYXRlWyJvbWVnYSJdICsKICBlc3RpbWF0ZVsiYWxwaGEiXSAqIHRhaWwociwgMSleMiArCiAgZXN0aW1hdGVbImJldGEiXSAqIHRhaWwoaF9oYXQsIDEpCgojIE9uZS1kYXkgbG93ZXItdGFpbCBOb3JtYWwgVmFSIGFuZCBFUywgcmVwb3J0ZWQgYXMgcG9zaXRpdmUgbG9zc2VzCnAgPC0gMC4wMQpyZXR1cm5fcXVhbnRpbGUgPC0gcW5vcm0ocCkgKiBzcXJ0KGhfbmV4dCkKVmFSXzk5IDwtIC1yZXR1cm5fcXVhbnRpbGUKRVNfOTkgPC0gc3FydChoX25leHQpICogZG5vcm0ocW5vcm0ocCkpIC8gcAoKel9oYXQgPC0gciAvIHNxcnQoaF9oYXQpCnJlc3VsdCA8LSByYmluZCh0cnVlID0gdHJ1ZSwgZXN0aW1hdGVkID0gcm91bmQoZXN0aW1hdGUsIDQpKQoKbGlzdCgKICBwYXJhbWV0ZXJzID0gcmVzdWx0LAogIHBlcnNpc3RlbmNlID0gcm91bmQoc3VtKGVzdGltYXRlW2MoImFscGhhIiwgImJldGEiKV0pLCA0KSwKICBuZXh0X3ZhcmlhbmNlID0gcm91bmQoaF9uZXh0LCA0KSwKICByaXNrX2luX3JldHVybl91bml0cyA9IHJvdW5kKGMoVmFSXzk5ID0gVmFSXzk5LCBFU185OSA9IEVTXzk5KSwgNCksCiAgc3F1YXJlZF9yZXNpZHVhbF9hY2YxID0gcm91bmQoY29yKHpfaGF0Wy0xXV4yLCB6X2hhdFstVG5dXjIpLCAzKSwKICBvcHRpbWlzYXRpb25fY29udmVyZ2VuY2UgPSBmaXQkY29udmVyZ2VuY2UKKQ== layout: vertical locale: en title: Simulate and estimate a GARCH(1,1) with base R --- :: The constraints are built into the parameter transformation. This is safer than accepting negative variances after optimisation. The simulated returns are in percentage-like units, so the reported VaR and ES use the same units. ## Heavy tails and leverage Two extensions answer different diagnostics: - **Student- [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} innovations:** large standardised shocks occur more often than under a Normal distribution. - **Asymmetric variance dynamics:** negative and positive shocks of equal magnitude can affect future volatility differently. For example, a GJR-style recursion is [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1694em;vertical-align:-0.3053em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1694em;vertical-align:-0.3053em;"}[0]{.mord}[)]{.mclose}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} represents a larger variance response after negative news. Do not use asymmetry and heavy tails as interchangeable explanations. ## From volatility to a risk decision For lower-tail probability [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, define the return quantile [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} by [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Pr]{.mop}[(]{.mopen}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathcal style="margin-right:0.0993em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0993em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If losses are [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[−]{.mord}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[[VaR]{.mord.mathrm}]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8694em;vertical-align:-0.2861em;"}[−]{.mord}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Expected shortfall is the expected loss beyond VaR. State the sign convention; otherwise a “negative VaR” can mean either a gain or a loss. A volatility model is not validated merely because its likelihood is high: | Layer | Diagnostic | | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | variance dynamics | dependence remaining in [[]{.katex-mathml}[[[]{.strut style="height:1.0611em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[z]{.mord,mathnormal style="margin-right:0.044em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord,accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.453em;margin-left:-0.044em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | distribution | quantile and tail calibration | | decision | VaR exceptions, expected-shortfall loss, capital or utility impact | | stability | rolling performance through calm and stressed periods | ::warning{title="Scope"} Normal GARCH in the example teaches recursion and likelihood. It is not automatically suitable for regulatory capital, intraday microstructure, options, or a portfolio with changing weights. :: ## Finance versus economics GARCH is central in finance because the conditional scale of returns is itself a decision input. In macroeconomics it is useful only when time-varying uncertainty is part of the question—for example inflation uncertainty or exchange-rate volatility. For GDP nowcasting, publication timing and latent-state estimation are usually more central than a daily GARCH recursion. ## Practice 1. If [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.98]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, what fraction of a variance deviation remains after ten forecast steps? 2. Why can uncorrelated returns still be dependent? 3. A model has correct average VaR coverage but all exceptions occur in one crisis month. Is it calibrated? ::legacy-details{title="Answers"} 1. Approximately [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[0.9]{.mord}[[8]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[10]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.817]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; mean reversion is slow. 2. Their conditional variances can be dependent, so squared returns cluster. 3. Not dynamically: unconditional coverage can hide clustered exceptions. :: Next: [Unit Roots, Cointegration, and Error Correction](https://www.pengjiaxin.com/../05-unit-roots-cointegration/). # Unit Roots, Cointegration, and Error Correction []{#unit-roots-cointegration-and-error-correction} ## Persistence is not one phenomenon Compare: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[ρ]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - If [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ρ]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, shocks decay and [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is stationary under stable conditions. - If [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and shocks permanently change the level. - If [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is close to one, finite samples may not reliably distinguish the two. This distinction affects forecasts, standard errors, and the meaning of a level regression. A unit-root test is evidence about a maintained model, not a mechanical permission slip to difference every series. ## Why unrelated trends can look convincing Let [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with independent innovations. Regressing [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} on [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} can produce a high [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and a conventional-looking t-statistic even though the innovations are unrelated. The regression treats persistent excursions as repeated independent evidence. Reasonable responses are: - difference the variables if the question concerns short-run changes; - model deterministic trends if theory specifies them; - use cointegration if theory concerns a stable linear combination of nonstationary levels. ## Cointegration For an [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -vector [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} whose components are [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, cointegration rank [[]{.katex-mathml}[[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} means that an [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} matrix [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} exists such that [[[]{.katex-mathml}[[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} is stationary. The columns of [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} define long-run relations; they are not automatically causal parameters. A VAR in levels can be rewritten as a vector error-correction model: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[Π]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.1259em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[p]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3471em;margin-left:0em;"}]{.vlist style="height:1.8482em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Δ]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:0.6835em;vertical-align:-0.0391em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[rank]{.mord.mathrm}]{.mop}[(]{.mopen}[Π]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, factor [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Π]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where: - [[]{.katex-mathml}[[[]{.strut style="height:1.0574em;vertical-align:-0.2083em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contains the long-run disequilibria; - [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contains the adjustment speeds; - [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} describe short-run dynamics. [Johansen's likelihood framework](https://www.econometricsociety.org/publications/econometrica/browse/1991/11/01/estimation-and-hypothesis-testing-cointegration-vectors){rel=""nofollow""} turns the rank question into a reduced-rank multivariate estimation problem. ## Bivariate derivation Suppose [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[ρ]{.mord.mathnormal}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[∣]{.mord}[ρ]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} while [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Then the spread [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is stationary. Differencing gives [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[Δ]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The coefficient [[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6835em;vertical-align:-0.0391em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is error correction: a positive deviation in the previous period predicts downward adjustment in [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, conditional on [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## R laboratory: recover equilibrium and adjustment ::web-r --- code64: c2V0LnNlZWQoMTk5MSkKVG4gPC0gNTAwCnRoZXRhIDwtIDEuNTAKcmhvX3UgPC0gMC42NQoKeCA8LSBjdW1zdW0ocm5vcm0oVG4pKQp1IDwtIG51bWVyaWMoVG4pCmZvciAodCBpbiAyOlRuKSB1W3RdIDwtIHJob191ICogdVt0IC0gMV0gKyBybm9ybSgxLCBzZCA9IDAuNykKeSA8LSB0aGV0YSAqIHggKyB1CgojIExvbmctcnVuIGxldmVsIHJlbGF0aW9uClhfbGV2ZWwgPC0gY2JpbmQoaW50ZXJjZXB0ID0gMSwgeCA9IHgpCmJfbGV2ZWwgPC0gZHJvcChzb2x2ZShjcm9zc3Byb2QoWF9sZXZlbCksIGNyb3NzcHJvZChYX2xldmVsLCB5KSkpCnNwcmVhZF9oYXQgPC0gZHJvcCh5IC0gWF9sZXZlbCAlKiUgYl9sZXZlbCkKCiMgRXJyb3IgY29ycmVjdGlvbjogRGVsdGEgeV90IG9uIHRoZSBsYWdnZWQgc3ByZWFkIGFuZCBEZWx0YSB4X3QKWF9lY20gPC0gY2JpbmQoCiAgaW50ZXJjZXB0ID0gMSwKICBsYWdnZWRfc3ByZWFkID0gc3ByZWFkX2hhdFstVG5dLAogIGRlbHRhX3ggPSBkaWZmKHgpCikKZHkgPC0gZGlmZih5KQpiX2VjbSA8LSBkcm9wKHNvbHZlKGNyb3NzcHJvZChYX2VjbSksIGNyb3NzcHJvZChYX2VjbSwgZHkpKSkKCiMgQSBjb21wYWN0IERpY2tleS1GdWxsZXItc3R5bGUgdCBzdGF0aXN0aWMgZm9yIHBlcnNpc3RlbmNlIGNvbXBhcmlzb24KZGZfdCA8LSBmdW5jdGlvbih6KSB7CiAgZHogPC0gZGlmZih6KQogIFggPC0gY2JpbmQoMSwgelstbGVuZ3RoKHopXSkKICBiIDwtIGRyb3Aoc29sdmUoY3Jvc3Nwcm9kKFgpLCBjcm9zc3Byb2QoWCwgZHopKSkKICBlIDwtIGRyb3AoZHogLSBYICUqJSBiKQogIFYgPC0gc3VtKGVeMikgLyAobnJvdyhYKSAtIG5jb2woWCkpICogc29sdmUoY3Jvc3Nwcm9kKFgpKQogIGJbMl0gLyBzcXJ0KFZbMiwgMl0pCn0KCiMgQW4gdW5yZWxhdGVkIHJhbmRvbSB3YWxrIGlsbHVzdHJhdGVzIGEgc3B1cmlvdXMgbGV2ZWwgZml0CncgPC0gY3Vtc3VtKHJub3JtKFRuKSkKc3B1cmlvdXNfZml0IDwtIGxtKHcgfiB4KQoKbGlzdCgKICBjb2ludGVncmF0aW5nX3Nsb3BlID0gcm91bmQoYl9sZXZlbFsieCJdLCAzKSwKICBleHBlY3RlZF9zbG9wZSA9IHRoZXRhLAogIGVjbV9jb2VmZmljaWVudHMgPSByb3VuZChiX2VjbSwgMyksCiAgZXhwZWN0ZWRfZXJyb3JfY29ycmVjdGlvbiA9IHJob191IC0gMSwKICBwZXJzaXN0ZW5jZV90X3N0YXRpc3RpY3MgPQogICAgcm91bmQoYyh4X2xldmVsID0gZGZfdCh4KSwgc3ByZWFkID0gZGZfdChzcHJlYWRfaGF0KSksIDIpLAogIHNwdXJpb3VzX1Jfc3F1YXJlZCA9IHJvdW5kKHN1bW1hcnkoc3B1cmlvdXNfZml0KSRyLnNxdWFyZWQsIDMpCik= layout: vertical locale: en title: Cointegrated random walks and an error-correction model --- :: The estimated long-run slope should be near [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[1.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and the error-correction coefficient near [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.35]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The test statistic is included only as a persistence contrast; valid unit-root inference uses nonstandard critical values and a carefully specified deterministic component. ## Finance use: spread, price discovery, or trading? Examples include: - spot and futures prices linked by carry; - yields at different maturities under a term-structure relation; - prices of economically linked securities; - multiple venues contributing to price discovery. Cointegration supports a statistical long-run relation. A trading claim additionally needs: - stability after the formation sample; - adjustment fast enough relative to the horizon; - tradability of both legs; - transaction costs, funding, shorting, and execution; - a rule fixed before the test sample; - tail exposure when the historical relation breaks. “Stationary spread” is not synonymous with “arbitrage.” ## Economics use: equilibrium and adjustment Examples include consumption and income, prices and monetary aggregates, or related output measures. Here [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is usually interpreted through economic theory, and [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} asks which variables respond when the system departs from the long-run relation. That interpretation requires care: - normalising one coefficient to one does not make that variable exogenous; - rank can be sensitive to lag length, deterministic terms, breaks, and sample span; - a policy regime change can alter both [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - cointegration does not by itself identify a structural mechanism. ## Levels VAR, VECM, or differences? | Goal | Defensible starting point | | ------------------------------------------ | ---------------------------------------------------------------- | | short-run forecast with no long-run claim | compare differences, levels, and robust benchmarks out-of-sample | | preserve a theorised stable level relation | VECM with rank and stability analysis | | structural impulse responses | levels/VECM plus explicit shock identification | | trade a spread | cointegration plus execution, costs, stability, and risk design | ## Practice 1. If [[]{.katex-mathml}[[[]{.strut style="height:1.0435em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is stationary, must every element of [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be stationary? 2. In [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Π]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0435em;vertical-align:-0.1944em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, which matrix describes disequilibrium and which describes response? 3. Why can a structural break resemble failure of cointegration? ::legacy-details{title="Answers"} 1. No. Cointegration is precisely a stationary combination of individually nonstationary variables. 2. [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} defines long-run relations; [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} gives adjustment loading. 3. A relation that changes once is not stationary around one constant parameter over the full sample. :: Next: [VAR, Structural Identification, and Local Projections](https://www.pengjiaxin.com/../06-var-identification/). # VAR, Structural Identification, and Local Projections []{#var-structural-identification-and-local-projections} ## Reduced form first A [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -variable VAR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) is [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It provides: - conditional forecasts; - forecast-error covariance; - Granger-predictive relations; - a compact representation of dynamic propagation. It does **not** label [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} as an economic shock. Reduced-form innovations can be contemporaneously correlated and can combine several underlying disturbances. ## Companion matrix Stack the state [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2822em;vertical-align:-0.3831em;"}[(]{.mopen}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.016em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.016em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.016em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[G]{.mord.mathnormal}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where the first block row of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contains [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and lower blocks shift lags. Stability requires every eigenvalue of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to lie inside the unit circle. The [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -step propagation is [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. This is the direct bridge from the classical companion matrix to multivariate finance and macroeconomics. ## Structural impact matrix Suppose [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[u]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8991em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The covariance matrix supplies [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[/2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} distinct equations, while unrestricted [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} has [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} entries. Additional restrictions are required. Common approaches include: | Restriction | Meaning | Main risk | | ------------------- | ----------------------------------------------------------------- | --------------------------------------------- | | recursive/Cholesky | some contemporaneous effects are zero under an ordering | conclusions inherit the ordering | | long-run | specified shocks have zero long-run effects on selected variables | sensitive to long-horizon estimation | | sign | responses obey theory-based signs over selected horizons | set identification and researcher choices | | external instrument | a proxy correlates with one shock but not others | instrument relevance and exclusion | | narrative | historically documented episodes reveal a shock | episode classification and representativeness | Identification is an economic argument represented by matrix restrictions. ## R laboratory: ordering changes the named shock Consider a reduced-form VAR(1) with the same [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} under two recursive orderings. ::web-r --- code64: QSA8LSBtYXRyaXgoYygwLjU1LCAwLjE1LAogICAgICAgICAgICAgLTAuMTAsIDAuNDUpLCBucm93ID0gMiwgYnlyb3cgPSBUUlVFKQpTaWdtYV91IDwtIG1hdHJpeChjKDEuMDAsIDAuNjUsCiAgICAgICAgICAgICAgICAgICAgMC42NSwgMS4wMCksIG5yb3cgPSAyLCBieXJvdyA9IFRSVUUpCgojIE9yZGVyaW5nIDE6IHZhcmlhYmxlIDEgaXMgY29udGVtcG9yYW5lb3VzbHkgZmlyc3QKUF8xMiA8LSB0KGNob2woU2lnbWFfdSkpCmltcGFjdF8xMiA8LSBQXzEyWywgMV0gLyBQXzEyWzEsIDFdCgojIE9yZGVyaW5nIDI6IHZhcmlhYmxlIDIgaXMgZmlyc3Q7IG1hcCB0aGUgcmVzdWx0IGJhY2sgdG8gb3JpZ2luYWwgcm93cwpKIDwtIG1hdHJpeChjKDAsIDEsCiAgICAgICAgICAgICAgMSwgMCksIG5yb3cgPSAyLCBieXJvdyA9IFRSVUUpClNpZ21hXzIxIDwtIEogJSolIFNpZ21hX3UgJSolIHQoSikKUF8yMV9yZW9yZGVyZWQgPC0gdChjaG9sKFNpZ21hXzIxKSkKUF8yMV9vcmlnaW5hbF9yb3dzIDwtIHQoSikgJSolIFBfMjFfcmVvcmRlcmVkCmltcGFjdF8yMSA8LSBQXzIxX29yaWdpbmFsX3Jvd3NbLCAyXSAvIFBfMjFfb3JpZ2luYWxfcm93c1sxLCAyXQoKbWF0cml4X3Bvd2VyIDwtIGZ1bmN0aW9uKE0sIGgpIHsKICBvdXQgPC0gZGlhZyhucm93KE0pKQogIGlmIChoID4gMCkgZm9yIChqIGluIDE6aCkgb3V0IDwtIG91dCAlKiUgTQogIG91dAp9Cgpob3Jpem9ucyA8LSAwOjgKaXJmXzEyIDwtIHQoc2FwcGx5KGhvcml6b25zLCBmdW5jdGlvbihoKSBtYXRyaXhfcG93ZXIoQSwgaCkgJSolIGltcGFjdF8xMikpCmlyZl8yMSA8LSB0KHNhcHBseShob3Jpem9ucywgZnVuY3Rpb24oaCkgbWF0cml4X3Bvd2VyKEEsIGgpICUqJSBpbXBhY3RfMjEpKQoKY29tcGFyaXNvbiA8LSBkYXRhLmZyYW1lKAogIGhvcml6b24gPSBob3Jpem9ucywKICByZXNwb25zZV95MV9vcmRlcjEyID0gcm91bmQoaXJmXzEyWywgMV0sIDMpLAogIHJlc3BvbnNlX3kyX29yZGVyMTIgPSByb3VuZChpcmZfMTJbLCAyXSwgMyksCiAgcmVzcG9uc2VfeTFfb3JkZXIyMSA9IHJvdW5kKGlyZl8yMVssIDFdLCAzKSwKICByZXNwb25zZV95Ml9vcmRlcjIxID0gcm91bmQoaXJmXzIxWywgMl0sIDMpCikKCmxpc3QoCiAgY29tcGFuaW9uX2VpZ2VudmFsdWVzID0gcm91bmQoZWlnZW4oQSkkdmFsdWVzLCAzKSwKICBpbXBhY3RfaWZfeTFfZmlyc3QgPSByb3VuZChpbXBhY3RfMTIsIDMpLAogIGltcGFjdF9pZl95MV9zZWNvbmQgPSByb3VuZChpbXBhY3RfMjEsIDMpLAogIGltcHVsc2VfcmVzcG9uc2VzID0gY29tcGFyaXNvbiwKICBjb3ZhcmlhbmNlX2ZhY3RvcmlzYXRpb25fZXJyb3JzID0gYygKICAgIG9yZGVyXzEyID0gbWF4KGFicyhTaWdtYV91IC0gUF8xMiAlKiUgdChQXzEyKSkpLAogICAgb3JkZXJfMjEgPSBtYXgoYWJzKFNpZ21hXzIxIC0KICAgICAgUF8yMV9yZW9yZGVyZWQgJSolIHQoUF8yMV9yZW9yZGVyZWQpKSkKICApCik= layout: vertical locale: en title: Compare recursive impulse responses under two orderings --- :: Both factorizations reproduce the same reduced-form covariance. Yet the response of variable 2 on impact differs because “a shock to variable 1” has been defined differently. Statistical fit cannot select the ordering. ## Local projections At each horizon [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, a local projection estimates [[[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is the identified shock or treatment-like innovation and [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contains controls and lags. The sequence [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} forms the response. Local projections make horizon-specific controls and nonlinearities convenient, but: - overlapping horizons require serial-correlation-robust inference; - the shock still requires identification; - flexible horizon-by-horizon estimates can be noisy; - post-selection of controls or horizons changes inference. [Jordà (2005)](https://www.aeaweb.org/articles?id=10.1257%2F0002828053828518){rel=""nofollow""} introduced this approach for impulse responses. [Plagborg-Møller and Wolf (2021)](https://onlinelibrary.wiley.com/doi/10.3982/ECTA17813){rel=""nofollow""} establish the population equivalence between unrestricted LP and VAR impulse responses under common identification; regularisation and finite-sample choices drive practical differences. ## Finance and economics use VARs differently | Use | Finance | Economics | | ------------------- | ---------------------------------------------------- | ---------------------------------------------------- | | system | returns, volatility, liquidity, flows, yields | output, inflation, employment, rates, money | | horizon | often short and high-frequency | monthly to multi-year | | innovation label | market, liquidity, order-flow, volatility shock | monetary, fiscal, supply, demand shock | | key threat | asynchronous trading and rapidly changing covariance | policy anticipation, simultaneity, regime change | | evidence beyond fit | executable timing and market mechanism | institutional timing and identification restrictions | In finance, connectedness or variance decomposition is descriptive unless shocks are identified. In economics, a policy response is structural only to the extent that the restrictions isolate an exogenous policy disturbance. ## Identification checklist Before reporting an impulse response, state: 1. the reduced-form variables, transformations, frequency, and lags; 2. the matrix restriction or instrument defining the shock; 3. why that restriction matches institutional timing; 4. shock scale and sign; 5. whether the response is cumulative, in levels, or in growth; 6. uncertainty method and horizon multiplicity; 7. sensitivity to ordering, lag length, sample, trends, and alternative identification. ## Practice 1. Does a diagonal [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} solve all structural identification problems? 2. If reversing a Cholesky order changes the conclusion, what has been learned? 3. Can an LP turn a poorly identified innovation into a causal shock? ::legacy-details{title="Answers"} 1. No. It removes contemporaneous correlation under the reduced form but does not attach economic labels without assumptions. 2. The substantive result depends on contemporaneous zero restrictions and must be justified or reported as fragile. 3. No. LP changes response estimation, not the credibility of the shock. :: Next: [State Space, Mixed Frequency, and Nowcasting](https://www.pengjiaxin.com/../07-state-space-nowcasting/). # State Space, Mixed Frequency, and Nowcasting []{#state-space-mixed-frequency-and-nowcasting} ## One architecture for unobserved states A linear Gaussian state-space model is [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9275em;vertical-align:-0.2441em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[η]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[η]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The state [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is not directly observed. The data [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are noisy, incomplete measurements of it. | Finance state | Possible measurements | | ---------------------- | --------------------------------------------------- | | latent efficient price | transaction prices from several venues | | time-varying beta | asset and factor returns | | latent volatility | returns, realised measures, option-implied measures | | yield-curve factors | yields at multiple maturities | | Economics state | Possible measurements | | ------------------------- | ---------------------------------------------- | | current economic activity | employment, surveys, production, quarterly GDP | | output gap | output, inflation, unemployment | | common inflation trend | sectoral price indices and expectations | | potential growth | noisy and revised national accounts | The equations are shared. The measurement calendar and substantive interpretation differ. ## Prediction and update Given filtered state [[]{.katex-mathml}[[[]{.strut style="height:1.1052em;vertical-align:-0.3552em;"}[(]{.mopen}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : **Predict** [[[]{.katex-mathml}[[[]{.strut style="height:0.7996em;vertical-align:-0.3552em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2543em;vertical-align:-0.3552em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **Measure** [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[v]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2543em;vertical-align:-0.3552em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **Update** [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2543em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.7996em;vertical-align:-0.3552em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9385em;vertical-align:-0.3552em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[v]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The Kalman gain weights new information by relative uncertainty. A noisy release receives less weight; a precise surprise receives more. ## Missing values are a measurement design If a series is unavailable at time [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, remove its row from [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and the matching rows and columns from [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The state transition still runs. This matters in two different ways: - **Finance:** markets close at different times, instruments become illiquid, and high-frequency measures are asynchronous. - **Economics:** releases arrive on different dates, quarterly outcomes are absent in most months, and the latest panel has a ragged edge. Imputing future releases before filtering would destroy the information-set interpretation. ## Mixed-frequency measurement Let monthly latent activity be [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and define the state [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A monthly indicator measures [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2em;vertical-align:-0.35em;"}[[[\[]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[0]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[0]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[m]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} while a quarterly average released every third month measures [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2em;vertical-align:-0.35em;"}[[[\[]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[1/3]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[1/3]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[1/3]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[q]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The frequency mismatch is encoded in [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} rather than erased by filling the quarterly series forward. ## R laboratory: a ragged-edge nowcast ::web-r --- code64: c2V0LnNlZWQoMjAwOCkKVG4gPC0gMzYKcGhpIDwtIDAuODIKcV9zdGF0ZSA8LSAwLjE4CnJfbW9udGhseSA8LSAwLjU1CnJfcXVhcnRlcmx5IDwtIDAuMTIKCiMgU2ltdWxhdGUgbW9udGhseSBsYXRlbnQgYWN0aXZpdHkKeCA8LSBudW1lcmljKFRuKQpmb3IgKHQgaW4gMjpUbikgeFt0XSA8LSBwaGkgKiB4W3QgLSAxXSArIHJub3JtKDEsIHNkID0gc3FydChxX3N0YXRlKSkKbW9udGhseSA8LSB4ICsgcm5vcm0oVG4sIHNkID0gc3FydChyX21vbnRobHkpKQoKIyBRdWFydGVybHkgb2JzZXJ2YXRpb25zIGV4aXN0IGV2ZXJ5IHRoaXJkIG1vbnRoLCBidXQgdGhlIGxhdGVzdCBvbmUgaXMgZGVsYXllZApxdWFydGVybHkgPC0gcmVwKE5BX3JlYWxfLCBUbikKZm9yICh0IGluIHNlcSgzLCBUbiwgYnkgPSAzKSkgewogIHF1YXJ0ZXJseVt0XSA8LSBtZWFuKHhbKHQgLSAyKTp0XSkgKyBybm9ybSgxLCBzZCA9IHNxcnQocl9xdWFydGVybHkpKQp9CnF1YXJ0ZXJseVtUbl0gPC0gTkFfcmVhbF8KCkZfc3RhdGUgPC0gbWF0cml4KGMocGhpLCAwLCAwLAogICAgICAgICAgICAgICAgICAgIDEsICAgMCwgMCwKICAgICAgICAgICAgICAgICAgICAwLCAgIDEsIDApLCBucm93ID0gMywgYnlyb3cgPSBUUlVFKQpRX3N0YXRlIDwtIGRpYWcoYyhxX3N0YXRlLCAwLCAwKSkKCmthbG1hbl9ydW4gPC0gZnVuY3Rpb24odXNlX3F1YXJ0ZXJseSkgewogIGEgPC0gcmVwKDAsIDMpCiAgUCA8LSBkaWFnKDUsIDMpCiAgZmlsdGVyZWQgPC0gdmFyaWFuY2UgPC0gbnVtZXJpYyhUbikKCiAgZm9yICh0IGluIDE6VG4pIHsKICAgIGFfcHJlZCA8LSBkcm9wKEZfc3RhdGUgJSolIGEpCiAgICBQX3ByZWQgPC0gRl9zdGF0ZSAlKiUgUCAlKiUgdChGX3N0YXRlKSArIFFfc3RhdGUKCiAgICBaIDwtIG1hdHJpeChjKDEsIDAsIDApLCBucm93ID0gMSkKICAgIG9icyA8LSBtb250aGx5W3RdCiAgICBIIDwtIG1hdHJpeChyX21vbnRobHksIDEsIDEpCgogICAgaWYgKHVzZV9xdWFydGVybHkgJiYgIWlzLm5hKHF1YXJ0ZXJseVt0XSkpIHsKICAgICAgWiA8LSByYmluZChaLCBjKDEvMywgMS8zLCAxLzMpKQogICAgICBvYnMgPC0gYyhvYnMsIHF1YXJ0ZXJseVt0XSkKICAgICAgSCA8LSBkaWFnKGMocl9tb250aGx5LCByX3F1YXJ0ZXJseSkpCiAgICB9CgogICAgaW5ub3ZhdGlvbiA8LSBkcm9wKG9icyAtIFogJSolIGFfcHJlZCkKICAgIFMgPC0gWiAlKiUgUF9wcmVkICUqJSB0KFopICsgSAogICAgSyA8LSBQX3ByZWQgJSolIHQoWikgJSolIHNvbHZlKFMpCiAgICBhIDwtIGRyb3AoYV9wcmVkICsgSyAlKiUgaW5ub3ZhdGlvbikKICAgIFAgPC0gUF9wcmVkIC0gSyAlKiUgUyAlKiUgdChLKQogICAgUCA8LSAoUCArIHQoUCkpIC8gMgoKICAgIGZpbHRlcmVkW3RdIDwtIGFbMV0KICAgIHZhcmlhbmNlW3RdIDwtIFBbMSwgMV0KICB9CiAgbGlzdChtZWFuID0gZmlsdGVyZWQsIHZhcmlhbmNlID0gdmFyaWFuY2UpCn0KCm1vbnRobHlfb25seSA8LSBrYWxtYW5fcnVuKEZBTFNFKQptaXhlZCA8LSBrYWxtYW5fcnVuKFRSVUUpCgpjb21wYXJpc29uIDwtIGRhdGEuZnJhbWUoCiAgbW9udGggPSAzMTozNiwKICB0cnV0aCA9IHJvdW5kKHhbMzE6MzZdLCAzKSwKICBtb250aGx5X29ubHkgPSByb3VuZChtb250aGx5X29ubHkkbWVhblszMTozNl0sIDMpLAogIG1peGVkX2ZyZXF1ZW5jeSA9IHJvdW5kKG1peGVkJG1lYW5bMzE6MzZdLCAzKSwKICBtaXhlZF9zdGFuZGFyZF9lcnJvciA9IHJvdW5kKHNxcnQobWl4ZWQkdmFyaWFuY2VbMzE6MzZdKSwgMyksCiAgcXVhcnRlcmx5X2F2YWlsYWJsZSA9ICFpcy5uYShxdWFydGVybHlbMzE6MzZdKQopCgpsaXN0KAogIGZpbmFsX21vbnRoX2NvbXBhcmlzb24gPSBjb21wYXJpc29uLAogIHVuY2VydGFpbnR5X2FmdGVyX2xhc3RfYXZhaWxhYmxlX3F1YXJ0ZXIgPSByb3VuZChjKAogICAgbW9udGhseV9vbmx5ID0gc3FydChtb250aGx5X29ubHkkdmFyaWFuY2VbMzNdKSwKICAgIG1peGVkX2ZyZXF1ZW5jeSA9IHNxcnQobWl4ZWQkdmFyaWFuY2VbMzNdKQogICksIDMpLAogIG1pbmltdW1fZmlsdGVyZWRfdmFyaWFuY2UgPSBtaW4obWl4ZWQkdmFyaWFuY2UpCik= layout: vertical locale: en title: Kalman nowcast with monthly and delayed quarterly measurements --- :: At month 33 the quarterly release usually reduces uncertainty. At month 36 it is missing, so the filter nowcasts from the monthly indicator and propagated state rather than pretending that GDP has already been observed. ## Real-time macroeconomic nowcasting [Giannone, Reichlin, and Small](https://doi.org/10.1016/j.jmoneco.2008.05.010){rel=""nofollow""} show how a dynamic-factor framework can update the current-quarter assessment as new releases arrive. A credible nowcast records: 1. the release calendar and vintage; 2. the state or factor specification estimated at that date; 3. the news component [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[v]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} of each release; 4. the Kalman weight translating news into the nowcast revision; 5. later data revisions separately from model error. Evaluating on the latest revised panel answers “How well can final values be reconstructed?” It does not answer “What could have been known in real time?” ## Finance interpretation For a time-varying beta, [[[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[m]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[η]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The filter balances noisy current returns against gradual beta movement. The same warning applies: a filtered beta is a model-dependent latent estimate, not a directly observed characteristic. Trading use additionally requires an execution rule and out-of-sample risk assessment. ## Smoothing is not forecasting - Filtering estimates [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} using data through [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. - Forecasting estimates a future state using data through [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. - Smoothing estimates a past state using later data. Smoothing is valuable for historical decomposition but leaks future information if presented as a real-time signal. ## Practice 1. What happens to [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} as measurement variance [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} becomes very large? 2. Why does carrying the last quarterly GDP value forward create a false measurement? 3. When is a smoothed recession state inappropriate? ::legacy-details{title="Answers"} 1. The gain on that measurement approaches zero; the filter trusts the state prediction. 2. It says the old value is a new observation with artificial precision. 3. When evaluating what an analyst could classify or forecast at the historical date. :: Next: [Forecast Evaluation for Decisions](https://www.pengjiaxin.com/../08-forecast-evaluation/). # Forecast Evaluation for Decisions []{#forecast-evaluation-for-decisions} ## A forecast is an information experiment A historical forecast [[]{.katex-mathml}[[[]{.strut style="height:1.3131em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is valid only if it can be reconstructed from information available at origin [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. This requires: - a training window ending at [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - the release vintage available at [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - transformations estimated without future observations; - model and hyperparameter choices made inside the training procedure; - a benchmark and loss fixed before comparing results. Random train/test splitting is generally inappropriate because it lets later observations help predict earlier ones. ## Match the loss to the action | Forecast | Functional | Example loss | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | conditional mean | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[y]{.mord,mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord,mathcal style="margin-right:0.0993em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | squared error [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[y]{.mord,mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[y]{.mord,mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.mord,accent}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | conditional median | median [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[y]{.mord,mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord,mathcal style="margin-right:0.0993em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | absolute error $ | | quantile [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord,mathnormal style="margin-right:0.1132em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[q]{.mord,mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[τ]{.mord,mathnormal,mtight style="margin-right:0.1132em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[y]{.mord,mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord,mathcal style="margin-right:0.0993em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | check loss [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[τ]{.mord,mathnormal style="margin-right:0.1132em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[I]{.mord,mathnormal style="margin-right:0.0785em;"}[{]{.mopen}[y]{.mord,mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}[})]{.mclose}[(]{.mopen}[y]{.mord,mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | density | full predictive distribution | negative log score or CRPS | | volatility | conditional scale/variance | QLIKE or decision-specific loss | | VaR and ES | lower-tail risk functionals | joint strictly consistent score | A model can win under RMSE and lose under tail loss. That is not a contradiction; the losses reward different decisions. ## Pseudo-out-of-sample design For origins [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : 1. reconstruct the data available at [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 2. estimate each model on a rolling or expanding window; 3. issue an [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -step forecast; 4. wait for the target according to a stated vintage convention; 5. record all model losses at the same origin. Use an expanding window when parameters are assumed stable and old data remain informative. Use a rolling window when adaptation to structural change is part of the design. Comparing many window lengths on the final test period turns that period into training data. ## Comparing two forecasts Let [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.244em;vertical-align:-0.2861em;"}[L]{.mord.mathnormal}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.244em;vertical-align:-0.2861em;"}[L]{.mord.mathnormal}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[2]{.mord.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then model 2 has lower average loss when [[]{.katex-mathml}[[[]{.strut style="height:0.8703em;vertical-align:-0.0391em;"}[[[[[[]{.pstrut style="height:3em;"}[d]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.8312em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The [Diebold–Mariano test](https://doi.org/10.1080/07350015.1995.10524599){rel=""nofollow""} standardises [[]{.katex-mathml}[[[]{.strut style="height:0.8312em;"}[[[[[[]{.pstrut style="height:3em;"}[d]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.8312em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} by an estimate of the long-run variance of [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2382em;vertical-align:-1.73em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3.3334em;"}[[[[[[[]{.pstrut style="height:3.8em;"}[[[[[[[[]{.pstrut style="height:3em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.8em;"}[[]{.pstrut style="height:3.8em;"}[]{.hide-tail style="min-width:1.02em;height:1.88em;"}]{style="top:-3.2934em;"}]{.vlist style="height:1.3334em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.5066em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.mord}]{style="top:-2.11em;"}[[]{.pstrut style="height:3.3334em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.5634em;"}[[]{.pstrut style="height:3.3334em;"}[[[[[[[]{.pstrut style="height:3em;"}[d]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.8312em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.mord}]{style="top:-4.0104em;"}]{.vlist style="height:1.5082em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.73em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is the number of forecast comparisons. Multi-step and overlapping forecasts require serial-dependence adjustment. A [2026 extension](https://doi.org/10.1002/for.70150){rel=""nofollow""} develops joint comparison across multiple horizons rather than selecting one favourable horizon after inspection. [Giacomini and White](https://doi.org/10.1111/j.1468-0262.2006.00718.x){rel=""nofollow""} ask a conditional question: does relative performance vary with the information state? This is often more useful than one full-sample winner when recessions and crises matter. ## R laboratory: mean forecasts and tail calibration ::web-r --- code64: c2V0LnNlZWQoMTk5NSkKCiMgUGFydCBBOiBjb21wYXJlIGFuIEFSIGZvcmVjYXN0IHdpdGggYSB6ZXJvIGJlbmNobWFyawpUbiA8LSA0MjAKeSA8LSBudW1lcmljKFRuKQpmb3IgKHQgaW4gMjpUbikgeVt0XSA8LSAwLjY1ICogeVt0IC0gMV0gKyBybm9ybSgxKQoKYWN0dWFsIDwtIHlbMjpUbl0KZm9yZWNhc3RfMSA8LSByZXAoMCwgVG4gLSAxKQpmb3JlY2FzdF8yIDwtIDAuNjUgKiB5WzE6KFRuIC0gMSldCmQgPC0gKGFjdHVhbCAtIGZvcmVjYXN0XzEpXjIgLSAoYWN0dWFsIC0gZm9yZWNhc3RfMileMgoKbG9uZ19ydW5fdmFyaWFuY2UgPC0gZnVuY3Rpb24oeCwgTCkgewogIHhjIDwtIHggLSBtZWFuKHgpCiAgbiA8LSBsZW5ndGgoeCkKICBvdXQgPC0gc3VtKHhjXjIpIC8gbgogIGlmIChMID4gMCkgewogICAgZm9yIChlbGwgaW4gMTpMKSB7CiAgICAgIGdhbW1hX2VsbCA8LSBzdW0oeGNbKGVsbCArIDEpOm5dICogeGNbMToobiAtIGVsbCldKSAvIG4KICAgICAgb3V0IDwtIG91dCArIDIgKiAoMSAtIGVsbCAvIChMICsgMSkpICogZ2FtbWFfZWxsCiAgICB9CiAgfQogIG91dAp9CgpTX2QgPC0gbG9uZ19ydW5fdmFyaWFuY2UoZCwgTCA9IDQpCkRNIDwtIG1lYW4oZCkgLyBzcXJ0KFNfZCAvIGxlbmd0aChkKSkKCiMgUGFydCBCOiBlcXVhbCBvdmVyYWxsIFZhUiBjb3ZlcmFnZSBjYW4gaGlkZSByZWdpbWUgZmFpbHVyZQpuX3Jpc2sgPC0gNjAwCnNpZ21hX3QgPC0gYyhyZXAoMC43LCBuX3Jpc2sgLyAyKSwgcmVwKDIuMCwgbl9yaXNrIC8gMikpCnJldHVybnMgPC0gc2lnbWFfdCAqIHJub3JtKG5fcmlzaykKcCA8LSAwLjA1CnFfZHluYW1pYyA8LSBxbm9ybShwKSAqIHNpZ21hX3QKcV9jb25zdGFudCA8LSByZXAocW5vcm0ocCkgKiBzcXJ0KG1lYW4oc2lnbWFfdF4yKSksIG5fcmlzaykKCmV4Y2VwdGlvbl9yYXRlIDwtIGZ1bmN0aW9uKHEsIGluZGV4KSBtZWFuKHJldHVybnNbaW5kZXhdIDwgcVtpbmRleF0pCmNhbG0gPC0gMToobl9yaXNrIC8gMikKdm9sYXRpbGUgPC0gKG5fcmlzayAvIDIgKyAxKTpuX3Jpc2sKCmNvdmVyYWdlIDwtIHJiaW5kKAogIGR5bmFtaWMgPSBjKAogICAgb3ZlcmFsbCA9IG1lYW4ocmV0dXJucyA8IHFfZHluYW1pYyksCiAgICBjYWxtID0gZXhjZXB0aW9uX3JhdGUocV9keW5hbWljLCBjYWxtKSwKICAgIHZvbGF0aWxlID0gZXhjZXB0aW9uX3JhdGUocV9keW5hbWljLCB2b2xhdGlsZSkKICApLAogIGNvbnN0YW50ID0gYygKICAgIG92ZXJhbGwgPSBtZWFuKHJldHVybnMgPCBxX2NvbnN0YW50KSwKICAgIGNhbG0gPSBleGNlcHRpb25fcmF0ZShxX2NvbnN0YW50LCBjYWxtKSwKICAgIHZvbGF0aWxlID0gZXhjZXB0aW9uX3JhdGUocV9jb25zdGFudCwgdm9sYXRpbGUpCiAgKQopCgpsaXN0KAogIG1lYW5fc3F1YXJlZF9lcnJvcnMgPSByb3VuZChjKAogICAgemVyb19iZW5jaG1hcmsgPSBtZWFuKChhY3R1YWwgLSBmb3JlY2FzdF8xKV4yKSwKICAgIEFSX2ZvcmVjYXN0ID0gbWVhbigoYWN0dWFsIC0gZm9yZWNhc3RfMileMikKICApLCAzKSwKICBtZWFuX2xvc3NfZGlmZmVyZW5jZSA9IHJvdW5kKG1lYW4oZCksIDMpLAogIERNX3N0YXRpc3RpY19IQUMgPSByb3VuZChETSwgMiksCiAgVmFSX2V4Y2VwdGlvbl9yYXRlcyA9IHJvdW5kKGNvdmVyYWdlLCAzKSwKICB0YXJnZXRfZXhjZXB0aW9uX3JhdGUgPSBwCik= layout: vertical locale: en title: HAC forecast comparison and regime-sensitive VaR coverage --- :: A positive DM statistic favours the AR forecast under squared loss in this simulation. For VaR, inspect both regimes: overall coverage can conceal too many exceptions in volatile periods and too few in calm periods. ## Tail-risk evaluation For VaR, test at least: - **unconditional coverage:** is the exception frequency close to [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? - **independence:** do exceptions cluster? - **conditional coverage:** are both frequency and dynamics acceptable? Expected shortfall cannot be validated by counting a single threshold alone. Joint scoring and regression-based tests use both VaR and ES; [Fissler, Ziegel, and Gneiting](https://arxiv.org/abs/1507.00244){rel=""nofollow""} provide a foundation for comparative backtesting. ## Finance versus economics | Design element | Finance | Economics | | --------------------- | --------------------------------------------- | ------------------------------------------------------- | | origin | trade/rebalance timestamp | release date or policy meeting | | target | return, volatility, quantile, portfolio loss | growth, inflation, unemployment, recession | | real-world constraint | cost, turnover, liquidity, capacity | publication lag, revision, institutional forecast cycle | | benchmark | historical mean, random walk, implied measure | AR, no-change, survey, official benchmark | | stress analysis | crises, volatility regimes, market closures | recessions, policy regimes, revision episodes | | preferred report | statistical loss plus economic value | real-time accuracy plus decision/structural limits | ## What not to conclude - A lower RMSE does not imply a profitable strategy. - Correct unconditional VaR coverage does not imply independent exceptions. - A forecast winner on revised data need not have won in real time. - A forecast comparison does not identify a causal mechanism. - One favourable horizon among many is not confirmatory evidence unless multiplicity was handled. ## Practice 1. Why must two models be scored on the same origins? 2. What does [[]{.katex-mathml}[[[]{.strut style="height:0.8703em;vertical-align:-0.0391em;"}[[[[[[]{.pstrut style="height:3em;"}[d]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.0833em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.8312em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} mean under the stated definition? 3. When should a rolling window be preferred to an expanding window? ::legacy-details{title="Answers"} 1. Otherwise differences can reflect unequal evaluation periods rather than forecast quality. 2. Model 2 has lower average stated loss. 3. When parameter adaptation is part of the prior design and discarding old regimes is substantively defensible. :: Next: [Integrated R Laboratory](https://www.pengjiaxin.com/../09-r-laboratory/). # Integrated R Laboratory []{#integrated-r-laboratory} ## Laboratory standard Every result should expose five objects: 1. **target:** what will be known, and at which horizon; 2. **information set:** what is available when the forecast is issued; 3. **transformation:** units and matrix operation; 4. **recursion or estimator:** the exact equation implemented; 5. **evaluation:** benchmark and decision-aligned loss. The two labs below use simulated data so that the true mechanism and information boundary are visible. Replace the simulation only after the audit trail works. ## Lab A — financial tail risk without look-ahead ### Question Does a dynamic variance forecast improve one-day risk measurement relative to a variance fixed in the training sample? The exponentially weighted recursion [[[]{.katex-mathml}[[[]{.strut style="height:1.3131em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[h]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.3131em;vertical-align:-0.3552em;"}[λ]{.mord.mathnormal}[[[[[[[]{.pstrut style="height:3em;"}[h]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1∣]{.mord.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1694em;vertical-align:-0.3053em;"}[λ]{.mord.mathnormal}[)]{.mclose}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} uses only returns observed before [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. It is not a full GARCH estimate, but it makes the timing transparent. ::web-r --- code64: c2V0LnNlZWQoOTQpClRuIDwtIDkwMAp0cmFpbl9lbmQgPC0gNTUwCgojIERhdGEtZ2VuZXJhdGluZyBwcm9jZXNzOiBwZXJzaXN0ZW50IGNvbmRpdGlvbmFsIHZhcmlhbmNlCm9tZWdhIDwtIDAuMDMKYWxwaGEgPC0gMC4wOApiZXRhIDwtIDAuOTAKaF90cnVlIDwtIHIgPC0gbnVtZXJpYyhUbikKaF90cnVlWzFdIDwtIG9tZWdhIC8gKDEgLSBhbHBoYSAtIGJldGEpCmZvciAodCBpbiAyOlRuKSB7CiAgclt0IC0gMV0gPC0gc3FydChoX3RydWVbdCAtIDFdKSAqIHJub3JtKDEpCiAgaF90cnVlW3RdIDwtIG9tZWdhICsgYWxwaGEgKiByW3QgLSAxXV4yICsgYmV0YSAqIGhfdHJ1ZVt0IC0gMV0KfQpyW1RuXSA8LSBzcXJ0KGhfdHJ1ZVtUbl0pICogcm5vcm0oMSkKCiMgRml4ZWQgY2hvaWNlcyBtYWRlIGJlZm9yZSB0aGUgZXZhbHVhdGlvbiBzYW1wbGUKbGFtYmRhIDwtIDAuOTQKcCA8LSAwLjA1CnRlc3QgPC0gKHRyYWluX2VuZCArIDEpOlRuCmNvbnN0YW50X3ZhcmlhbmNlIDwtIHZhcihyWzE6dHJhaW5fZW5kXSkKCiMgRm9yZWNhc3QgaF90IGJlZm9yZSBvYnNlcnZpbmcgcl90CmhfZXdtYSA8LSByZXAoTkFfcmVhbF8sIFRuKQpwcmV2aW91c192YXJpYW5jZSA8LSBjb25zdGFudF92YXJpYW5jZQpmb3IgKHQgaW4gdGVzdCkgewogIGhfZXdtYVt0XSA8LSBsYW1iZGEgKiBwcmV2aW91c192YXJpYW5jZSArCiAgICAoMSAtIGxhbWJkYSkgKiByW3QgLSAxXV4yCiAgcHJldmlvdXNfdmFyaWFuY2UgPC0gaF9ld21hW3RdCn0KCnFfZHluYW1pYyA8LSBxbm9ybShwKSAqIHNxcnQoaF9ld21hW3Rlc3RdKQpxX2NvbnN0YW50IDwtIHJlcChxbm9ybShwKSAqIHNxcnQoY29uc3RhbnRfdmFyaWFuY2UpLCBsZW5ndGgodGVzdCkpCnRlc3RfcmV0dXJuIDwtIHJbdGVzdF0KCnFsaWtlIDwtIGZ1bmN0aW9uKHgsIHZhcmlhbmNlKSBsb2codmFyaWFuY2UpICsgeF4yIC8gdmFyaWFuY2UKZXhjZXB0aW9uX3JhdGUgPC0gZnVuY3Rpb24ocSkgbWVhbih0ZXN0X3JldHVybiA8IHEpCgojIFNwbGl0IHJlcG9ydGluZyBjaGVja3MgcGVyZm9ybWFuY2Ugc3RhYmlsaXR5IHdpdGhvdXQgcmVzZWxlY3RpbmcgbGFtYmRhCmhhbGYgPC0gZmxvb3IobGVuZ3RoKHRlc3QpIC8gMikKcGVyaW9kIDwtIGxpc3QoZWFybHkgPSAxOmhhbGYsIGxhdGUgPSAoaGFsZiArIDEpOmxlbmd0aCh0ZXN0KSkKY292ZXJhZ2VfYnlfcGVyaW9kIDwtIHNhcHBseShwZXJpb2QsIGZ1bmN0aW9uKGlpKSBjKAogIGR5bmFtaWMgPSBtZWFuKHRlc3RfcmV0dXJuW2lpXSA8IHFfZHluYW1pY1tpaV0pLAogIGNvbnN0YW50ID0gbWVhbih0ZXN0X3JldHVybltpaV0gPCBxX2NvbnN0YW50W2lpXSkKKSkKCmxpc3QoCiAgZXZhbHVhdGlvbl9vYnNlcnZhdGlvbnMgPSBsZW5ndGgodGVzdCksCiAgYXZlcmFnZV9RTElLRSA9IHJvdW5kKGMoCiAgICBkeW5hbWljID0gbWVhbihxbGlrZSh0ZXN0X3JldHVybiwgaF9ld21hW3Rlc3RdKSksCiAgICBjb25zdGFudCA9IG1lYW4ocWxpa2UodGVzdF9yZXR1cm4sIGNvbnN0YW50X3ZhcmlhbmNlKSkKICApLCAzKSwKICBleGNlcHRpb25fcmF0ZSA9IHJvdW5kKGMoCiAgICBkeW5hbWljID0gZXhjZXB0aW9uX3JhdGUocV9keW5hbWljKSwKICAgIGNvbnN0YW50ID0gZXhjZXB0aW9uX3JhdGUocV9jb25zdGFudCksCiAgICB0YXJnZXQgPSBwCiAgKSwgMyksCiAgZXhjZXB0aW9uX3JhdGVfYnlfcGVyaW9kID0gcm91bmQoY292ZXJhZ2VfYnlfcGVyaW9kLCAzKSwKICB0aW1pbmdfY2hlY2tfZmlyc3RfZm9yZWNhc3RfdXNlc19yZXR1cm4gPSB0cmFpbl9lbmQKKQ== layout: vertical locale: en title: "Finance mini-case: dynamic versus constant one-day risk" --- :: ### Interpretation A good conclusion is: > The dynamic forecast has lower QLIKE in this fixed test sample and adapts its quantile to recent squared returns. Coverage is reported overall and by subperiod; neither result establishes adequacy for another asset or a regulatory decision. A weak conclusion is “EWMA works.” The experiment supports only a model, horizon, loss, and simulated regime. ### Extension Replace the EWMA recursion with the GARCH estimate from [Module 4](https://www.pengjiaxin.com/../04-volatility-risk/). Estimate parameters using observations through the training endpoint, freeze them, and update only the variance state during evaluation. Then compare Normal and Student- [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} quantiles without choosing between them on the final test sample. ## Lab B — revised macro data and an impossible forecast ### Question How much apparent accuracy can arise from using a later revision that was unavailable at the forecast origin? Suppose a first release is noisy and the final revised estimate is more precise. At origin [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the forecaster observes the first release for period [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, not its final value. ::web-r --- code64: c2V0LnNlZWQoMjAyNikKVG4gPC0gMTkwCmxhdGVudCA8LSBudW1lcmljKFRuKQpmb3IgKHQgaW4gMjpUbikgbGF0ZW50W3RdIDwtIDAuNzggKiBsYXRlbnRbdCAtIDFdICsgcm5vcm0oMSwgc2QgPSAwLjY1KQoKZmlyc3RfcmVsZWFzZSA8LSBsYXRlbnQgKyBybm9ybShUbiwgc2QgPSAwLjY1KQpmaW5hbF92aW50YWdlIDwtIGxhdGVudCArIHJub3JtKFRuLCBzZCA9IDAuMTApCgpmaXJzdF9vcmlnaW4gPC0gNjUKbGFzdF9vcmlnaW4gPC0gVG4gLSAxCm9yaWdpbnMgPC0gZmlyc3Rfb3JpZ2luOmxhc3Rfb3JpZ2luCmZvcmVjYXN0X3JlYWx0aW1lIDwtIGZvcmVjYXN0X2xlYWt5IDwtIGJlbmNobWFyayA8LSBhY3R1YWwgPC0gbnVtZXJpYyhsZW5ndGgob3JpZ2lucykpCgpmb3IgKGogaW4gc2VxX2Fsb25nKG9yaWdpbnMpKSB7CiAgdCA8LSBvcmlnaW5zW2pdCgogICMgQXNzdW1lIGZpbmFsIGRhdGEgYmVjb21lIGF2YWlsYWJsZSBhZnRlciB0aHJlZSBwZXJpb2RzLgogICMgVHJhaW5pbmcgcGFpcnMgZW5kIGVhcmx5IGVub3VnaCB0byBiZSBmaW5hbCBhdCBvcmlnaW4gdC4KICBzIDwtIDE6KHQgLSA0KQogIHRhcmdldF90cmFpbiA8LSBmaW5hbF92aW50YWdlW3MgKyAxXQoKICBYX3JlYWx0aW1lIDwtIGNiaW5kKDEsIGZpcnN0X3JlbGVhc2Vbc10pCiAgYl9yZWFsdGltZSA8LSBzb2x2ZShjcm9zc3Byb2QoWF9yZWFsdGltZSksCiAgICAgICAgICAgICAgICAgICAgICBjcm9zc3Byb2QoWF9yZWFsdGltZSwgdGFyZ2V0X3RyYWluKSkKICBmb3JlY2FzdF9yZWFsdGltZVtqXSA8LSBjKDEsIGZpcnN0X3JlbGVhc2VbdF0pICUqJSBiX3JlYWx0aW1lCgogICMgSW1wb3NzaWJsZSBoaXN0b3JpY2FsIGV4ZXJjaXNlOiBmaW5hbF92aW50YWdlW3RdIHdhcyBub3Qga25vd24gYXQgdC4KICBYX2xlYWt5IDwtIGNiaW5kKDEsIGZpbmFsX3ZpbnRhZ2Vbc10pCiAgYl9sZWFreSA8LSBzb2x2ZShjcm9zc3Byb2QoWF9sZWFreSksCiAgICAgICAgICAgICAgICAgICBjcm9zc3Byb2QoWF9sZWFreSwgdGFyZ2V0X3RyYWluKSkKICBmb3JlY2FzdF9sZWFreVtqXSA8LSBjKDEsIGZpbmFsX3ZpbnRhZ2VbdF0pICUqJSBiX2xlYWt5CgogIGJlbmNobWFya1tqXSA8LSBtZWFuKHRhcmdldF90cmFpbikKICBhY3R1YWxbal0gPC0gZmluYWxfdmludGFnZVt0ICsgMV0KfQoKcm1zZSA8LSBmdW5jdGlvbihmKSBzcXJ0KG1lYW4oKGFjdHVhbCAtIGYpXjIpKQptYWUgPC0gZnVuY3Rpb24oZikgbWVhbihhYnMoYWN0dWFsIC0gZikpCgpzY29yZSA8LSByYmluZCgKICByZWFsX3RpbWUgPSBjKFJNU0UgPSBybXNlKGZvcmVjYXN0X3JlYWx0aW1lKSwKICAgICAgICAgICAgICAgIE1BRSA9IG1hZShmb3JlY2FzdF9yZWFsdGltZSkpLAogIGxlYWt5X3JldmlzZWQgPSBjKFJNU0UgPSBybXNlKGZvcmVjYXN0X2xlYWt5KSwKICAgICAgICAgICAgICAgICAgICBNQUUgPSBtYWUoZm9yZWNhc3RfbGVha3kpKSwKICBoaXN0b3JpY2FsX21lYW4gPSBjKFJNU0UgPSBybXNlKGJlbmNobWFyayksCiAgICAgICAgICAgICAgICAgICAgICBNQUUgPSBtYWUoYmVuY2htYXJrKSkKKQoKbGlzdCgKICBzY29yZV90YWJsZSA9IHJvdW5kKHNjb3JlLCAzKSwKICBmaXJzdF9mb3JlY2FzdF9vcmlnaW4gPSBmaXJzdF9vcmlnaW4sCiAgbGFzdF9mb3JlY2FzdF9vcmlnaW4gPSBsYXN0X29yaWdpbiwKICB1bmF2YWlsYWJsZV92YWx1ZV91c2VkX2J5X2xlYWt5X21vZGVsID0KICAgIHJvdW5kKGZpbmFsX3ZpbnRhZ2VbZmlyc3Rfb3JpZ2luXSwgMyksCiAgYXZhaWxhYmxlX2ZpcnN0X3JlbGVhc2VfYXRfc2FtZV9vcmlnaW4gPQogICAgcm91bmQoZmlyc3RfcmVsZWFzZVtmaXJzdF9vcmlnaW5dLCAzKQop layout: vertical locale: en title: "Economics mini-case: real-time versus revised-data leakage" --- :: The leaky forecast will often look better because it observes a more precise value for the current latent state. That is exactly why it is invalid. A feasible forecast must be reconstructed from a vintage panel, not from the final column of a modern download. ## Matrix and timing audit For either lab, annotate code with: | Check | Evidence | | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | dimensions | rows of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} equal target observations; covariance matrices are square | | dating | every predictor date precedes or equals its forecast origin | | state recursion | the forecast at [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} uses data no later than [[]{.katex-mathml}[[[]{.strut style="height:0.6984em;vertical-align:-0.0833em;"}[t]{.mord,mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} when required | | numerical identity | symmetry, factorisation, or normal-equation error is near zero | | test integrity | no model choice uses final test losses | | interpretation | conclusion names horizon, loss, and population limits | ## Submission exercise Choose one lab and make one predeclared change: - Finance: compare two fixed [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} values using a validation window, then evaluate the selected value once on a separate test window. - Economics: increase the revision delay from three to six periods and rebuild the vintage information set. Submit the changed equation, code diff, result table, and a 150-word conclusion. A correct null or disappointing result earns the same evidential credit as improvement when the design is honest. Next: [Capstones, Data, and Reading Ladder](https://www.pengjiaxin.com/../10-capstone-readings/). # Capstones, Data, and Reading Ladder []{#capstones-data-and-reading-ladder} ## The common capstone standard Choose either the finance or economics route. Both must produce an auditable chain: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[decision]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[information set]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[transformation]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[model]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[loss or identification]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[bounded conclusion]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The capstone is complete only when another learner can reconstruct what was known at each forecast origin and reproduce the main table from raw inputs. ## Route A — finance Choose one bounded question: - Does a fixed GARCH specification improve one-day volatility or VaR forecasts over a rolling variance benchmark? - Does a yield or valuation predictor improve an excess-return forecast after persistent-regressor and overlapping-horizon inference? - Is a theoretically motivated spread stable enough to support an out-of-sample monitoring rule? - Does a small VAR improve forecasts of returns, volatility, and liquidity without claiming unidentified shocks are causal? ### Required evidence 1. adjusted-price, return, calendar, and execution conventions; 2. training, validation, and test endpoints fixed in advance; 3. a simple benchmark; 4. matrix derivation of the estimator or recursion; 5. point, volatility, or tail loss matched to the decision; 6. turnover, costs, liquidity, and stressed-period limitations where relevant; 7. no claim of profit unless an executable portfolio rule is actually evaluated. ### Example boundary Defensible: > For this liquid index and fixed 2018–2025 evaluation design, the GARCH forecast reduced average QLIKE relative to a constant-variance benchmark, but 1% exceptions remained clustered in the stressed subsample. Not defensible: > GARCH predicts crashes and is the best model for markets. ## Route B — economics Choose one bounded question: - Do financial conditions improve a real-time inflation or output-growth forecast over an autoregressive benchmark? - Does a small mixed-frequency state-space model improve a current-quarter nowcast as releases arrive? - Is a theory-motivated long-run relation stable enough for an error-correction model? - How sensitive is a reported policy response to recursive ordering, lag length, and a local-projection specification? ### Required evidence 1. reference, release, and vintage dates; 2. level, growth, seasonal, and aggregation conventions; 3. a real-time or explicitly retrospective estimand; 4. benchmark and pseudo-out-of-sample design; 5. cointegration rank or structural identification when claimed; 6. revision, regime, and lag sensitivity; 7. a clear separation between predictive and structural conclusions. ### Example boundary Defensible: > Using vintages available before each monthly origin, the mixed-frequency model reduced current-quarter GDP RMSE relative to an AR benchmark; most improvement arrived after labour-market releases, and results weakened before the structural break. Not defensible: > Employment causes GDP because it improves the nowcast. ## Deliverables | Deliverable | Purpose | Suggested length | | -------------------------- | ----------------------------------------------- | -----------------------------: | | question and decision memo | define target, user, horizon, and loss | 1 page | | data and vintage contract | make availability and transformations auditable | 1–2 pages | | derivation sheet | show dimensions and assumptions | 2–3 pages | | reproducible R analysis | rebuild tables from raw or archived data | one documented script/notebook | | results brief | benchmark, uncertainty, stability, and failures | 4–6 pages | | oral defence | explain one design choice and one limitation | 8–10 minutes | Expected effort is 25–35 hours across question design, data audit, derivation, implementation, evaluation, and revision. A text-only table is an acceptable alternative to a plot if it exposes the same values, units, labels, and uncertainty. ## Suggested evaluation rubric This rubric is a course-design recommendation, not an institutional policy. | Criterion | Share | Strong evidence | | --------------------- | ----: | ------------------------------------------------------------ | | question and scope | 15% | one target, horizon, decision, and bounded population | | information integrity | 20% | no future timestamps, revisions, or test selection leak | | statistical reasoning | 25% | assumptions, matrices, identification, and uncertainty agree | | implementation | 20% | reproducible code with numerical checks and benchmark | | interpretation | 20% | distinguishes statistical, economic, and structural claims | ## Authoritative data starting points | Source | Suitable use | Required caution | | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------- | ----------------------------------------------------- | | [Kenneth French Data Library](https://mba.tuck.dartmouth.edu/pages/faculty/ken.french/data_library.html){rel=""nofollow""} | documented factor and portfolio returns | read frequency, weighting, and construction notes | | [Federal Reserve H.15](https://www.federalreserve.gov/Releases/h15/){rel=""nofollow""} | official interest-rate series | maturity, business-day, and discontinuity conventions | | [Federal Reserve yield-curve models](https://www.federalreserve.gov/data/yield-curve-models.htm){rel=""nofollow""} | fitted Treasury curves and model comparison | fitted values are model outputs, not raw trades | | [FRED](https://fred.stlouisfed.org/){rel=""nofollow""} | broad economic series and metadata | latest download may contain revised observations | | [ALFRED](https://alfred.stlouisfed.org/help){rel=""nofollow""} | historical macroeconomic vintages | preserve both observation and real-time dates | Archive the exact input or retrieval recipe where licensing permits. “Downloaded from FRED” is not a complete provenance statement. ## Reading ladder ### Foundations carried from classical time series - [Brockwell and Davis, *Time Series: Theory and Methods*](https://doi.org/10.1007/978-1-4419-0320-4){rel=""nofollow""}: stationary processes, linear prediction, ARMA, and spectra. - [Durbin and Koopman, *Time Series Analysis by State Space Methods*](https://doi.org/10.1093/acprof\:oso/9780199641178.001.0001){rel=""nofollow""}: matrix filtering, smoothing, likelihood, and missing observations. ### Finance - [Engle (1982)](https://doi.org/10.2307/1912773){rel=""nofollow""}: ARCH and time-varying conditional variance. - [Bollerslev (1986)](https://doi.org/10.1016/0304-4076\(86\)90063-1){rel=""nofollow""}: parsimonious GARCH persistence. - [Stambaugh (1999)](https://www.nber.org/papers/t0240){rel=""nofollow""}: small-sample bias with persistent return predictors. - [Campbell and Yogo (2006)](https://www.nber.org/papers/w10026){rel=""nofollow""}: predictive inference near a unit root. - [Fissler, Ziegel, and Gneiting](https://arxiv.org/abs/1507.00244){rel=""nofollow""}: comparative backtesting of VaR and expected shortfall. ### Economics and structural dynamics - [Johansen (1991)](https://www.econometricsociety.org/publications/econometrica/browse/1991/11/01/estimation-and-hypothesis-testing-cointegration-vectors){rel=""nofollow""}: reduced-rank cointegration testing. - [Jordà (2005)](https://www.aeaweb.org/articles?id=10.1257%2F0002828053828518){rel=""nofollow""}: local-projection impulse responses. - [Giannone, Reichlin, and Small (2008)](https://doi.org/10.1016/j.jmoneco.2008.05.010){rel=""nofollow""}: real-time information flow and nowcasting. - [Plagborg-Møller and Wolf (2021)](https://onlinelibrary.wiley.com/doi/10.3982/ECTA17813){rel=""nofollow""}: population equivalence of unrestricted LP and VAR impulse responses. ### Forecast evaluation - [Newey and West](https://www.nber.org/papers/t0055){rel=""nofollow""}: positive-semidefinite HAC covariance. - [Diebold and Mariano (1995)](https://doi.org/10.1080/07350015.1995.10524599){rel=""nofollow""}: predictive-accuracy comparison. - [Giacomini and White (2006)](https://doi.org/10.1111/j.1468-0262.2006.00718.x){rel=""nofollow""}: conditional predictive ability. ### Recent extensions - [Düker et al. (2024/25)](https://pmc.ncbi.nlm.nih.gov/articles/PMC11729849/){rel=""nofollow""}: a modern review of VARMA identification and estimation. - [Zheng (2024/25)](https://doi.org/10.1080/01621459.2024.2311365){rel=""nofollow""}: interpretable high-dimensional infinite-order VAR modelling. - [Fosten and Gutknecht (2026)](https://doi.org/10.1002/for.70150){rel=""nofollow""}: simultaneous predictive-accuracy testing across multiple horizons. The recent papers extend rather than replace the foundations. A capstone should use a newer method only when the data size, estimand, and evaluation design require it. ## Final defence questions Be ready to answer: 1. What exactly was observable at the forecast origin? 2. Which mathematical assumption is doing the most work? 3. Why is the benchmark credible? 4. What changes if the horizon or loss changes? 5. Is the main result descriptive, predictive, or structural? 6. Which failure would reverse the decision? 7. Which part belongs to finance or economics rather than generic time-series theory? ::legacy-details{title="Completion check"} A strong project can answer all seven without referring to software output alone. The code verifies the argument; it is not the argument. :: Return to the [course guide](https://www.pengjiaxin.com/../00-intro/) or compare the applied route with [Classical Time Series](https://www.pengjiaxin.com/en/time-series/00-intro/). ## Subjects Use this page as the English entry point. Each subject has its own roadmap or course overview, and interactive tools live in the playground. # Introduction to Economics — Course Guide Economics studies how people and institutions choose under constraints, how those choices interact, and how we can test the resulting explanations. The course has one recurring discipline: > **Name the decision-maker, constraint, change, mechanism, outcome, distributional effect, and model boundary.** :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQ2hvaWNlW0Nob2ljZSB1bmRlciBzY2FyY2l0eV0gLS0+IE1hcmtldFtNYXJrZXQgaW50ZXJhY3Rpb25dCiAgTWFya2V0IC0tPiBXZWxmYXJlW0VmZmljaWVuY3kgYW5kIGRpc3RyaWJ1dGlvbl0KICBXZWxmYXJlIC0tPiBNYWNyb1tFY29ub215LXdpZGUgbWVhc3VyZW1lbnRdCiAgTWFjcm8gLS0+IFNob2NrW0dyb3d0aCBhbmQgc2hvcnQtcnVuIHNob2Nrc10KICBTaG9jayAtLT4gUG9saWN5W01vbmV0YXJ5IGFuZCBmaXNjYWwgcG9saWN5XQogIFBvbGljeSAtLT4gT3BlbltUcmFkZSBhbmQgZXhjaGFuZ2UgcmF0ZXNdCiAgT3BlbiAtLT4gRXZpZGVuY2VbRXZpZGVuY2UgYW5kIHJldmlzaW9uXQ==" locale="en"} ## Teaching goal By the end, a student should be able to take an unfamiliar economic claim—“a tax hurts consumers,” “GDP measures wealth,” “banks lend deposits,” or “a weaker currency helps exports”—and replace it with a conditional, testable explanation. The sequence is designed for first-year undergraduates. Postgraduate students can use the extension prompts to audit assumptions before moving to microeconomics, macroeconomics, econometrics, finance, or policy analysis. ## Learning outcomes You will be able to: 1. calculate opportunity cost and use marginal reasoning; 2. solve and interpret a simple market equilibrium; 3. use elasticity to analyse revenue, tax incidence, and adjustment; 4. connect market power and market failure to appropriate policy tools; 5. interpret GDP, inflation, unemployment, and productivity without confusing measurement with welfare; 6. explain bank balance sheets, credit creation, and financial fragility; 7. diagnose demand, supply, fiscal, monetary, and external shocks; 8. write an economic argument that separates identity, model prediction, empirical estimate, and value judgment. ## Two cases across the course ### Micro case — a tax on sugary drinks The case begins as a campus beverage market, then adds elasticity, tax incidence, health externalities, distribution, substitution, and evidence from implemented taxes. ### Macro case — an energy-importing economy The case begins with a rise in imported energy prices, then follows production costs, inflation, real income, interest rates, fiscal support, bank risk, exchange rates, and trade. Using the same cases repeatedly makes one lesson visible: a model becomes richer by adding a necessary mechanism, not by adding unrelated jargon. ## Course map | Chapter | Central question | Main output | | ------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------------------ | | [1. Choice and opportunity cost](https://www.pengjiaxin.com/01-foundations) | What is given up, and what changes at the margin? | decision table | | [2. Demand, supply, and welfare](https://www.pengjiaxin.com/02-demand-and-supply) | How do plans become prices, quantities, surplus, or shortage? | equilibrium analysis | | [3. Elasticity, revenue, and tax incidence](https://www.pengjiaxin.com/03-elasticity) | How strongly do buyers and sellers adjust? | elasticity and incidence calculation | | [4. Firms, market power, and market failure](https://www.pengjiaxin.com/04-market-structures) | When does private choice fail to produce a socially preferred outcome? | policy diagnosis | | [5. GDP, income, wealth, and welfare](https://www.pengjiaxin.com/05-gdp-and-wealth) | What do national accounts measure—and omit? | accounts table | | [6. Inflation and labour markets](https://www.pengjiaxin.com/06-inflation-and-unemployment) | Are prices, purchasing power, and employment improving? | indicator brief | | [7. Productivity and growth](https://www.pengjiaxin.com/07-economic-growth) | Why does output per person rise over decades? | growth decomposition | | [8. Money, credit, and banking](https://www.pengjiaxin.com/08-money-and-banking) | How do bank balance sheets create credit and fragility? | balance-sheet stress test | | [9. Business cycles and monetary policy](https://www.pengjiaxin.com/09-monetary-policy-and-ad-as) | Is the shock to spending or productive capacity? | shock diagnosis | | [10. Fiscal policy and public debt](https://www.pengjiaxin.com/10-fiscal-policy) | When does the budget stabilise, crowd out, or build capacity? | fiscal memo | | [11. Trade and exchange rates](https://www.pengjiaxin.com/11-open-economy-and-exchange-rates) | How do trade and finance transmit international shocks? | open-economy chain | | [12. Integrated cases](https://www.pengjiaxin.com/12-review-and-case-studies) | Which model—or combination—answers the question? | final policy brief | ## Preparation No prior economics or calculus is required. You should be able to: - rearrange a linear equation; - calculate percentage and percentage-point changes; - read axes, units, slopes, stocks, flows, and rates; - distinguish an observation from a causal claim; - explain a calculation in a complete sentence. ::legacy-details{title="Five-minute diagnostic"} 1. A wage rises 5% while prices rise 7%. What happens to purchasing power? 2. A café cuts its own price and sells more. Did demand shift? 3. A government pays an unemployment benefit. Is it directly part of `G` in GDP? 4. A bank's bond assets lose value. Which balance-sheet buffer absorbs the loss first? 5. Inflation rises while output falls. Is a demand shock the only explanation? Answers: real wages fall roughly 2%; movement along demand; no, it is a transfer; equity; no, a negative supply shock is a candidate. :: ## The analysis routine Use this on every diagram, calculation, news item, and policy claim: 1. **Frame** — What exactly is the question and time horizon? 2. **Actors** — Who chooses, and what constraint do they face? 3. **Change** — Which price, income, technology, policy, or expectation changes? 4. **Model** — What is held constant? 5. **Mechanism** — How does behaviour adjust? 6. **Outcome** — What happens to price, quantity, output, employment, or welfare? 7. **Distribution** — Who gains, loses, or bears risk? 8. **Evidence** — What observation would support or contradict the prediction? 9. **Boundary** — Where might the result fail to travel? ## Four kinds of economic statement | Statement | Example | How to check it | | ------------------- | --------------------------------------------- | --------------------------------------------- | | accounting identity | `Y = C + I + G + NX` | follows from definitions | | model prediction | a binding price ceiling creates excess demand | follows under stated assumptions | | empirical estimate | a tax reduced sales by an estimated amount | depends on data and research design | | normative judgment | the tax is fair | depends on values and distributional criteria | Never cite an identity as proof that one component caused another. Never present a model prediction as an observed fact. Never hide a value judgment inside the word “efficient.” ## A 12-session teaching route Each session fits 75–90 minutes. Preparation is designed for 25–40 minutes. | Session | Before class | Core activity | Checked output | | ------- | --------------------------------- | -------------------------- | --------------------- | | 1 | rank three uses of one evening | opportunity-cost clinic | decision table | | 2 | draw one demand and supply shift | market experiment | labelled equilibrium | | 3 | calculate one midpoint elasticity | sugary-drink tax lab | incidence explanation | | 4 | identify one market failure | digital-platform hearing | policy diagnosis | | 5 | classify ten transactions | national-accounts workshop | GDP reconciliation | | 6 | bring one inflation chart | indicator audit | 150-word data brief | | 7 | calculate two doubling times | productivity case | growth chain | | 8 | read one bank balance sheet | bank-run simulation | stress test | | 9 | classify four macro shocks | AD–AS policy meeting | policy path | | 10 | compare two fiscal packages | multiplier and debt debate | fiscal memo | | 11 | state an exchange-rate quotation | pass-through exercise | open-economy chain | | 12 | prepare one current headline | model-selection defence | final brief | Students who prefer not to speak can submit the same reasoning as a diagram, calculation, or short memo. Group roles should rotate between modeller, sceptic, evidence checker, and reporter. ## Assessment alignment Adapt weights and formats to local requirements. | Evidence of learning | What it tests | | ----------------------------- | ------------------------------------------------- | | short problem set | calculation and diagram accuracy | | data interpretation brief | definitions, units, uncertainty, and comparison | | policy memo | mechanism, distribution, evidence, and limitation | | oral or written model defence | transfer to an unfamiliar case | ## Evidence base and recent cases The course uses primary research and official standards as examples, including: - implemented sugary-drink taxes and observed price/sales responses ([Andreyeva et al., 2022](https://doi.org/10.1001/jamanetworkopen.2022.15276){rel=""nofollow""}); - competition policy for digital platforms ([OECD, 2024](https://doi.org/10.1787/80552a33-en){rel=""nofollow""}); - the internationally agreed national-accounting framework and its 2025 edition ([UN Statistics Division](https://unstats.un.org/unsd/Nationalaccount/sna.asp){rel=""nofollow""}); - evidence on pandemic-era inflation mechanisms ([Bernanke & Blanchard, 2023](https://www.brookings.edu/wp-content/uploads/2023/06/WP86-Bernanke-Blanchard_6.13.pdf){rel=""nofollow""}); - workplace productivity effects of generative AI ([Brynjolfsson, Li & Raymond, 2025](https://doi.org/10.1093/qje/qjae044){rel=""nofollow""}); - the Federal Reserve's review of the 2023 Silicon Valley Bank failure ([Federal Reserve, 2023](https://www.federalreserve.gov/publications/2023-April-SVB-Key-Takeaways.htm){rel=""nofollow""}); - exchange-rate pass-through to inflation ([Kemoe et al., 2024](https://doi.org/10.5089/9798400269264.001){rel=""nofollow""}). These are teaching cases, not universal laws. Each chapter states the design and transfer boundary before using a result. ## Start Open [Chapter 1](https://www.pengjiaxin.com/01-foundations) and analyse one real choice before drawing any market curve. # Chapter 1 — Choice, Opportunity Cost, and Trade []{#chapter-1-choice-opportunity-cost-and-trade} ## Core question When resources have alternative uses, **what is the relevant cost of one more action?** ## Learning outcomes You will be able to: - identify the best alternative forgone; - separate sunk, average, and marginal costs; - interpret a production possibilities frontier; - calculate comparative advantage and gains from trade. ## 1. Scarcity creates choice Scarcity means that a resource—time, money, labour, land, attention, or productive capacity—cannot satisfy every possible use at once. It does not mean absolute poverty. Every choice therefore has a **counterfactual**: what would have happened under the best available alternative? ### Example: one evening You have four hours and three feasible options: | Option | Direct payoff | Other consequence | | ---------- | -------------------------: | ------------------- | | paid shift | £56 | no exam preparation | | revision | expected grade improvement | no wage | | rest | recovery | no wage or revision | If revision is chosen and the paid shift is the best rejected alternative, the opportunity cost includes the £56 wage. It is not the sum of every rejected option. ## 2. Opportunity cost is not expenditure ```text economic cost = explicit resource cost + value of the best alternative forgone ``` ### University example Tuition and books are explicit costs. Foregone earnings are an opportunity cost. Ordinary food expenditure is included only to the extent that studying changes it relative to the alternative. The analysis does **not** prove university is a bad investment. It identifies what its expected benefits must exceed. ## 3. Ignore sunk costs; compare future margins A **sunk cost** has already been incurred and cannot be recovered. It may explain regret, but it should not change the forward-looking choice. | Statement | Relevant? | Why | | ------------------------------------------------------ | --------------------- | ------------------------------- | | “I paid £30 for the ticket.” | no, if non-refundable | unchanged by staying or leaving | | “The next hour may be enjoyable.” | yes | marginal benefit of staying | | “The next hour could be used to finish an assignment.” | yes | marginal opportunity cost | Choose one more unit when its expected marginal benefit is at least its expected marginal cost: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The rule requires uncertainty, spillovers, and non-monetary effects to be included when relevant. ## 4. Incentives change behaviour—sometimes indirectly An incentive changes the payoff or constraint attached to an action. Good analysis traces more than the intended response. ### Example: attendance reward 1. A seminar offers marks for attendance. 2. Attendance becomes privately more valuable. 3. Attendance may rise. 4. But physical presence may replace preparation, and students with caring duties may be disadvantaged. The policy has a direct response, possible substitution, and a distributional effect. “People respond to incentives” is a starting point, not a full evaluation. ## 5. The production possibilities frontier A PPF shows maximum feasible combinations of two outputs for given resources and technology. | Combination | Research reports | Tutorials | | ----------- | ---------------: | --------: | | A | 0 | 12 | | B | 2 | 10 | | C | 4 | 7 | | D | 6 | 3 | | E | 7 | 0 | - **on the frontier**: technically efficient under the model; - **inside**: feasible but resources are idle or misallocated; - **outside**: infeasible with current resources and technology; - **outward shift**: more resources, better technology, skills, or institutions. Moving from B to C gains two reports and gives up three tutorials. The opportunity cost is `3/2 = 1.5` tutorials per report. ::warning{title="Efficiency is not fairness"} A point on the PPF uses resources fully. It says nothing about who receives the output or whether the output mix is socially preferred. :: ## 6. Comparative advantage Comparative advantage depends on **lower opportunity cost**, not who is fastest at everything. Two students can produce coffee or sandwiches in one hour: | Student | Coffees | Sandwiches | Cost of 1 sandwich | | ------- | ------: | ---------: | -----------------: | | Amina | 6 | 3 | 2 coffees | | Ben | 4 | 1 | 4 coffees | Amina has comparative advantage in sandwiches; Ben has comparative advantage in coffee. If they trade one sandwich for three coffees: - Amina receives 3 coffees for something that costs her 2; - Ben receives a sandwich for 3 coffees instead of sacrificing 4. Both can gain even though Amina has absolute advantage in both tasks. ## 7. When trade gains do not settle the policy question The basic model assumes voluntary exchange, clear rights, low transaction costs, and no uncompensated third-party effects. Real evaluation must also ask: - Are gains distributed unevenly? - Are adjustment costs temporary or persistent? - Does market power alter the terms of trade? - Are environmental or social costs omitted? - Can those harmed adapt or be compensated? Trade can increase total feasible consumption while still creating losers. Aggregate gain and distribution are different questions. ## Worked decision A café can remain open for one extra hour. ```text Expected extra revenue £90 Ingredients and hourly energy £28 Extra staff cost £42 Expected clean-up/delay cost £8 Marginal benefit £90 Marginal cost £78 ``` Opening is worthwhile on these estimates because net marginal benefit is £12. Daily rent is not added: it is unchanged by the extra hour. If late-night noise harms neighbours, that external cost belongs in the social calculation even if the café does not pay it. ## Practice 1. Choose one decision you will make this week. 2. State the feasible alternatives. 3. Identify the best rejected alternative. 4. Separate sunk, fixed, and marginal costs. 5. Name one response by another person affected by the choice. 6. State one omitted social or distributional effect. ## Quick check - A resource can be scarce even when abundant. - Opportunity cost is the best alternative, not all alternatives. - Sunk costs do not change the future payoff comparison. - Comparative advantage uses relative opportunity costs. - Efficiency and distribution must be evaluated separately. **Next:** [see how interacting plans create market prices and quantities](https://www.pengjiaxin.com/02-demand-and-supply). # Chapter 2 — Demand, Supply, Equilibrium, and Welfare []{#chapter-2-demand-supply-equilibrium-and-welfare} ## Core question How do the plans of many buyers and sellers determine a price, quantity, and allocation? ## Learning outcomes You will be able to: - distinguish a movement along a curve from a shift; - solve equilibrium graphically and algebraically; - explain shortage, surplus, and price adjustment; - use consumer and producer surplus to evaluate a market outcome. ## 1. Demand is a schedule Demand records the quantity buyers are willing and able to purchase at each possible price during a stated period, holding other determinants fixed. [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where income `Y`, related-good prices `P_r`, tastes `T`, expectations `E`, and number of buyers `N` are held fixed along one curve. | Change | Diagram | Example | | ------------------------ | --------------------------------------------- | ------------------------- | | coffee's own price falls | move along demand | more coffees purchased | | student income rises | demand shifts if coffee is normal | more wanted at each price | | tea price rises | coffee demand shifts right if substitutes | switching | | exam week begins | direction depends on preferences and routines | empirical question | The law of demand is conditional, not a claim that sales can only change because price changed. ## 2. Supply is also a schedule Supply records the quantity sellers are willing and able to offer at each price, holding technology, input costs, expectations, policy, and seller numbers fixed. | Change | Diagram | Example | | ------------------------ | --------------------- | ----------------------------------- | | coffee's own price rises | move along supply | more cups offered | | milk price rises | supply shifts left | higher marginal cost | | faster machine arrives | supply shifts right | lower unit cost | | per-cup tax introduced | supply shifts up/left | wedge between price and net receipt | ## 3. Solve the campus coffee market Suppose hourly plans are: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At equilibrium, planned purchases equal planned sales: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[⇒]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7387em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9331em;vertical-align:-0.1944em;"}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[60.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At `P = £2`, buyers want 80 cups and sellers offer 40: shortage `= 40`. At `P = £6`, sellers offer 80 and buyers want 40: surplus `= 40`. Equilibrium means no internal pressure for price to change under the model. It does not imply fairness, perfect information, or social optimality. ::pyodide --- code64: ZGVmIGVxdWlsaWJyaXVtKGEsIGIsIGMsIGQpOgogICAgIiIiUWQgPSBhIC0gYlA7IFFzID0gYyArIGRQLiIiIgogICAgcHJpY2UgPSAoYSAtIGMpIC8gKGIgKyBkKQogICAgcXVhbnRpdHkgPSBhIC0gYiAqIHByaWNlCiAgICByZXR1cm4gcHJpY2UsIHF1YW50aXR5CgpwLCBxID0gZXF1aWxpYnJpdW0oMTAwLCAxMCwgMjAsIDEwKQpwcmludChmIlAqID0gwqN7cDouMmZ9OyBRKiA9IHtxOi4wZn0gY3VwcyIp layout: vertical locale: en title: Solve a linear market --- :: Predict before changing a coefficient. ## 4. Comparative statics Use five steps: 1. name the market and time horizon; 2. identify the changed determinant; 3. move the correct curve; 4. compare old and new equilibria; 5. state what is ambiguous or held fixed. ### Milk-cost shock Suppose higher milk costs change supply to: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[⇒]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7387em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9331em;vertical-align:-0.1944em;"}[5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[50.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Price rises and quantity falls. The result is a model prediction conditional on demand not shifting at the same time. ### Two simultaneous shifts If demand rises and supply falls, price rises but quantity is ambiguous. Never invent the ambiguous sign; explain what relative shift sizes would determine it. ## 5. Surplus gives equilibrium a welfare interpretation **Consumer surplus** is willingness to pay minus price. **Producer surplus** is price minus minimum willingness to accept, closely related to variable cost. Example: | Buyer | Willingness to pay | Market price | Consumer surplus | | ----- | -----------------: | -----------: | ---------------: | | A | £7 | £4 | £3 | | B | £5 | £4 | £1 | If a seller's minimum acceptable price for those units is £2 and £3, producer surplus is £2 and £1. Total surplus from the two trades is £7. Under competitive assumptions and no market failures, equilibrium trades exhaust gains from exchange. Chapter 4 shows why those assumptions sometimes fail. ## 6. Price controls change allocation, not only price ### Binding ceiling Set coffee's legal maximum price at £3: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[70]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[50]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[s]{.mord.mathnormal}[h]{.mord.mathnormal}[or]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[a]{.mord.mathnormal}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[e]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[20.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The legal price is lower, but not every buyer obtains coffee. Allocation may occur through queues, waiting time, favouritism, quality reduction, or resale. ### Binding floor A minimum price above equilibrium creates excess supply unless another policy purchases or removes it. Policy evaluation must therefore track: ```text legal price → quantities planned → rationing/stock → quality and entry → distribution ``` ## 7. What the model leaves out The basic market diagram may omit: - market power and strategic pricing; - search, matching, and transaction costs; - unequal information; - spillovers on non-participants; - adjustment time and capacity constraints; - fairness of the initial distribution of income and rights. Omission does not make the model useless. It defines the boundary of the answer. ## Practice A city gains 10,000 students while a construction-cost shock affects rentals. 1. Draw the initial market. 2. Shift demand and supply separately. 3. State the unambiguous price result. 4. Explain why the quantity result is ambiguous. 5. Add a rent ceiling and identify both the beneficiary and the rationing mechanism. 6. Name evidence needed to estimate the size of each shift. ## Quick check - Own-price change: movement along the curve. - Other determinant: shift of the curve. - Shortage and surplus are defined at a particular price. - Equilibrium is not automatically equitable or efficient. - With two shifts, one outcome may be indeterminate. **Next:** [measure responsiveness and analyse revenue and tax incidence](https://www.pengjiaxin.com/03-elasticity). # Chapter 3 — Elasticity, Revenue, and Tax Incidence []{#chapter-3-elasticity-revenue-and-tax-incidence} ## Core question A curve gives a direction. Elasticity asks: **how large is the response relative to the change that caused it?** ## Learning outcomes You will be able to: - calculate midpoint elasticity and interpret its sign and magnitude; - distinguish elasticity from slope; - connect demand elasticity to total revenue; - explain why the less elastic side bears more of a tax. ## 1. Price elasticity of demand [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1686em;vertical-align:-0.7416em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[%Δ]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[%Δ]{.mord}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7416em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Demand elasticity is normally negative. Report the sign when doing analysis; many introductory exercises classify its absolute value: | Magnitude | Classification | Meaning | | --------: | -------------- | ------- | | \` | ε | > 1\` | | \` | ε | = 1\` | | \` | ε | < 1\` | Use the midpoint formula for a discrete change: [[[]{.katex-mathml}[[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[%Δ]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2963em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[/2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## 2. Worked example: a gym fee Monthly price rises from £40 to £44; membership falls from 1,000 to 970. [[[]{.katex-mathml}[[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[%Δ]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[42]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[4]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9444em;vertical-align:-0.1944em;"}[9.52%]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[%Δ]{.mord}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[985]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[−]{.mord}[30]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[3.05%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[9.52]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[−]{.mord}[3.05]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.32.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Demand is inelastic over this observed arc. | | Before | After | | ------- | ------: | ------: | | price | £40 | £44 | | members | 1,000 | 970 | | revenue | £40,000 | £42,680 | Revenue rises because price rises proportionally more than quantity falls. Profit need not rise: costs, retention, reputation, and future demand also matter. ## 3. Elasticity is not a permanent label Demand is usually more elastic when: - close substitutes are available; - the market is narrowly defined; - the purchase takes a large income share; - the good can be postponed; - buyers have time to adjust. “Petrol demand is inelastic” needs a market, place, group, price range, and time horizon. Commuters may adjust little this week and substantially over five years. ## 4. Do not infer elasticity from slope alone Slope uses units; elasticity uses percentages. The same demand curve can be elastic near its high-price end and inelastic near its low-price end. Changing kilograms to grams changes a numerical slope but not economic responsiveness. Compare elasticity at the relevant point or arc. ## 5. Total revenue test [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a small price increase: | Demand | Quantity response | Revenue response | | ------------ | --------------------------- | ----------------------- | | elastic | proportionally larger fall | falls | | inelastic | proportionally smaller fall | rises | | unit elastic | offsetting change | approximately unchanged | This describes movement along a stable demand curve. If quality, advertising, rivals, or buyer composition also change, the simple test does not isolate the price effect. ## 6. Other elasticities | Measure | Formula | Interpretation | | ---------------------- | ---------------- | -------------------------------------------------- | | income elasticity | `%ΔQ / %Δincome` | positive for normal; negative for inferior goods | | cross-price elasticity | `%ΔQ_A / %ΔP_B` | positive for substitutes; negative for complements | | supply elasticity | `%ΔQ_s / %ΔP` | ability of sellers to expand or contract output | Supply is often more elastic when spare capacity, inventories, mobile inputs, and time are available. A theatre can add little seating tonight; a manufacturer may add a production line over several years. ## 7. Tax incidence depends on relative elasticity A per-unit tax creates a wedge: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[b]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8095em;vertical-align:-0.1944em;"}[t]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where buyers pay `P_b` and sellers receive `P_s`. Return to the coffee market: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[10]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[b]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[10]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With a £2 tax, `P_b=P_s+2`: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[(]{.mopen}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[10]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⇒]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[3]{.mord}[,]{.mpunct}[ ]{.mspace}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[b]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[5]{.mord}[,]{.mpunct}[ ]{.mspace}[]{.mspace style="margin-right:0.1667em;"}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[50.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Before tax, price was £4 and quantity 60. Buyers pay £1 more, sellers receive £1 less, and ten trades disappear. Legal liability does not determine economic incidence. The side with fewer alternatives—the less elastic side—changes behaviour less and bears more of the wedge. ## 8. Evidence case: sugary-drink taxes A global systematic review of 86 studies, with 62 in meta-analyses, reported: - average pass-through to targeted beverage prices: **82%**; - average change in sales: **15% lower**; - estimated sales elasticity: **−1.59**. The estimates were highly heterogeneous, and evidence on consumption, health, and subgroup effects was less conclusive. Search coverage ended in June 2020. The lesson is not “every tax reduces consumption by 15%”; it is that price transmission, demand response, substitution, geography, and outcome choice must be measured separately ([Andreyeva et al., 2022](https://doi.org/10.1001/jamanetworkopen.2022.15276){rel=""nofollow""}). ### From positive to normative analysis Positive question: How much do prices and purchases change? Normative question: Are health gains, revenue use, administrative cost, and distributional effects sufficient to justify the tax? Elasticity informs both questions but decides neither alone. ## 9. Deadweight loss and the margin A tax discourages trades where willingness to pay exceeds production cost but not the tax-inclusive price. The lost gains are deadweight loss in the basic model. Larger behavioural response usually means: - larger quantity reduction; - a smaller tax base than a static calculation predicts; - larger efficiency cost from the wedge; - potentially larger correction if the untaxed activity creates an external harm. Chapter 4 distinguishes a distortion from a correction of an existing market failure. ## Practice Price rises from £5 to £6 and quantity falls from 120 to 90. 1. Calculate midpoint demand elasticity. 2. Classify demand. 3. Compare revenue before and after. 4. Predict who bears more of a tax if supply is much more elastic than demand. 5. State one reason the estimated elasticity may differ across populations or years. ::legacy-details{title="Answer check"} `%ΔP = 1/5.5 = 18.18%` ; `%ΔQ = -30/105 = -28.57%` ; `ε ≈ -1.57` , so demand is elastic. Revenue falls from £600 to £540. If supply is more elastic, buyers bear more. Transfer requires a comparable market, population, range, and horizon. :: ## Quick check - Elasticity is unit-free and context-specific. - Revenue and profit are different. - Statutory and economic tax incidence are different. - The less elastic side bears more of a tax. - An empirical average is not a universal structural constant. **Next:** [analyse firms, market power, and market failure](https://www.pengjiaxin.com/04-market-structures). # Chapter 4 — Firms, Market Power, and Market Failure []{#chapter-4-firms-market-power-and-market-failure} ## Core question When does decentralised exchange coordinate resources well, and when does the outcome leave unrealised gains or unfairly assigned costs? ## Learning outcomes You will be able to: - connect marginal cost and revenue to a firm's output decision; - compare market structures without treating them as rigid labels; - diagnose market power, externalities, public goods, common resources, and information problems; - match a failure to a policy mechanism and a government-failure risk. ## 1. Begin with the firm's decision [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} An output increase is worthwhile while marginal revenue exceeds marginal cost. The interior profit-maximising rule is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Cost | Meaning | Decision use | | ------------------ | ----------------------------- | --------------------------------- | | fixed cost | unchanged with current output | entry/exit and long-run viability | | variable cost | changes with output | current production | | marginal cost | cost of one more unit | output choice | | average total cost | total cost per unit | economic profit | High revenue does not imply high profit; a low marginal cost does not erase a large fixed cost. ## 2. Market structure is a diagnostic, not a ranking | Structure | Products | Entry | Firm's demand | Central decision | | ------------------------ | ------------------------ | --------------- | -------------------------- | --------------------------------------- | | perfect competition | homogeneous | easy | horizontal at market price | produce where `P=MC` | | monopolistic competition | differentiated | relatively easy | downward sloping | price, quality, differentiation | | oligopoly | few interdependent firms | difficult | depends on rivals | anticipate strategic response | | monopoly | no close substitute | blocked | market demand | choose output where `MR=MC`, then price | A monopoly cannot charge any price it wants: demand constrains sales. A competitive firm can earn accounting profit while earning zero **economic** profit after all opportunity costs in long-run equilibrium. ## 3. Worked example: monopoly output Suppose inverse demand and marginal cost are: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Total revenue is `TR=(10-Q)Q`, so: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[2]{.mord}[Q]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Set `MR=MC`: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[2]{.mord}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⇒]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[6.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Under the simple competitive benchmark `P=MC`, quantity would be 8 and price 2. Monopoly restricts quantity, raises price, transfers some surplus, and removes some mutually beneficial trades. This comparison assumes the same cost and product. Patents or scale may also create innovation or cost benefits; policy must examine both static loss and dynamic incentives. ## 4. Oligopoly adds strategic interaction Two delivery platforms can keep a high fee or cut it: | | B: high fee | B: low fee | | --------------- | ----------: | ---------: | | **A: high fee** | 8, 8 | 2, 11 | | **A: low fee** | 11, 2 | 5, 5 | Each may cut to avoid losing users, even though both would earn more if both kept fees high. Repeated interaction, capacity, switching costs, and credible entry change the game. The table is a model of incentives, not evidence that firms colluded. ## 5. Digital platforms do not fit by seller count alone Platforms may combine: - network effects: value rises with participation; - economies of scale and scope; - zero-price services on one side and fees on another; - data advantages and learning effects; - switching costs, defaults, and ecosystem lock-in; - a gatekeeper role while competing with business users. Market definition, multi-sided pricing, entry, interoperability, and control of complementary services matter more than simply counting apps. OECD analysis of G7 digital markets distinguishes conventional case-by-case competition enforcement from newer ex-ante rules for large platforms. The coexistence of both approaches reflects a diagnosis that some conduct may be difficult to remedy only after harm occurs ([OECD, 2024](https://doi.org/10.1787/80552a33-en){rel=""nofollow""}). ## 6. Five common market failures | Failure | Missing mechanism | Example | First policy candidates | | ---------------------- | -------------------------------------- | ------------------------------ | --------------------------------------------- | | market power | price exceeds marginal social cost | dominant platform | competition, access, price/quality regulation | | negative externality | private chooser omits third-party cost | pollution, second-hand smoke | tax, standard, cap, liability | | public good | non-rival and hard to exclude | basic knowledge, flood warning | public funding/provision | | common resource | rival but hard to exclude | fish stock, groundwater | rights, quota, collective governance | | asymmetric information | one side knows materially more | used car, insurance risk | disclosure, warranty, screening, mandate | Do not prescribe “government intervention” before naming the missing price, right, information, or competitive constraint. ## 7. Externality worked example Suppose each sugary drink creates a private marginal cost of £1 and an expected external health-system cost of £0.30 not reflected in the buyer–seller decision. [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1.00]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.30]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£1.30.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A £0.30 corrective tax can align the private price with marginal social cost in the textbook model. In practice, the correct rate, pass-through, substitution, administration, distribution, and health mechanism must be estimated. The evidence in Chapter 3 shows observed prices and sales changed after real taxes, but does not by itself prove the socially optimal tax rate. ## 8. Match policy to diagnosis Use this chain: ```text failure → behavioural mechanism → policy lever → predicted response → distribution → implementation → evidence → government-failure risk ``` ### Example: campus delivery platform Problem: restaurants depend on one platform and cannot take customer data elsewhere. Possible diagnoses: - market power from network effects; - switching and multi-homing costs; - information imbalance over ranking; - congestion externality from delivery traffic. One fee cap cannot solve all four. Interoperability targets switching; ranking disclosure targets information; congestion pricing targets traffic; competition enforcement targets exclusionary conduct. ## 9. Government can fail too Policy may suffer from: - weak information about costs and behaviour; - capture by regulated firms; - inflexible rules as technology changes; - administrative and compliance cost; - unintended substitution or evasion; - distributional harm hidden by an average benefit. The relevant comparison is imperfect market versus feasible policy—not ideal government versus real market. ## Practice: a policy hearing Choose one case: social media, rented housing, antibiotics, urban traffic, or fisheries. 1. Define the market and affected non-participants. 2. Diagnose one primary failure. 3. Draw or state the private equilibrium mechanism. 4. Propose one policy that targets the failure directly. 5. Predict one behavioural response and one distributional effect. 6. Name one government-failure risk and evidence for evaluation. ## Quick check - Market power is constrained by demand and potential entry. - `MR=MC` selects monopoly output; demand determines its price. - Seller count alone is insufficient for digital markets. - Every market failure has a specific missing mechanism. - Policy quality depends on targeting, behaviour, implementation, and evidence. **Next:** [move from individual markets to national accounts](https://www.pengjiaxin.com/05-gdp-and-wealth). # Chapter 5 — GDP, Income, Wealth, and Welfare []{#chapter-5-gdp-income-wealth-and-welfare} ## Core question What does GDP measure, and what additional evidence is needed before saying that a country is wealthier or better off? ## Learning outcomes You will be able to: - apply GDP's production boundary without double counting; - reconcile production, income, and expenditure approaches; - calculate nominal GDP, real GDP, and a GDP deflator; - distinguish output, income, wealth, and welfare. ## 1. GDP is a flow of production Gross domestic product is the market value of **final** goods and services produced **within an economy** during a stated period. | Word | Boundary | | -------- | ---------------------------------------------------------------- | | gross | before subtracting depreciation of produced capital | | domestic | production within the territory, regardless of owner nationality | | product | current production, not an asset transfer | | period | a flow per quarter or year, not a stock at one date | GDP is not “national wealth.” Wealth is a stock of assets minus liabilities. GDP is a flow of newly produced value. ## 2. Avoid double counting with final output or value added | Stage | Sale value | Value added | | ------------------ | ---------: | ----------: | | farmer sells wheat | £1 | £1 | | mill sells flour | £3 | £2 | | bakery sells bread | £5 | £2 | Counting every sale gives £9, which double-counts inputs. Count the £5 final bread or sum value added: `1 + 2 + 2 = £5`. An input sold to a firm is intermediate; the same item sold for final use may be final. Classification depends on use, not physical appearance. ## 3. Three views of the same activity Production creates output, income, and expenditure at the same time. [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Component | Includes | Does not mean | | ------------------------ | ------------------------------------------------ | ---------------------------------- | | `C` consumption | household final goods/services | every household cash payment | | `I` investment | business fixed capital, inventories, new housing | purchase of shares or an old asset | | `G` government purchases | current public goods/services and investment | transfers such as pensions | | `NX` net exports | exports minus imports | imports are socially harmful | Imports are subtracted because they may already appear in `C`, `I`, or `G` but were produced abroad. ### Transaction check | Transaction | Current GDP treatment | | -------------------------- | --------------------------------------------------- | | newly built flat | investment | | sale of a 20-year-old flat | no new structure; current agent service counts | | unsold new laptop | inventory investment | | government pension | transfer, not direct `G` | | imported medical scanner | investment and equal import subtraction | | unpaid household care | outside the conventional market-production boundary | ## 4. Nominal and real GDP Suppose the economy produces coffee and books: | | Year 1 quantity | Year 1 price | Year 2 quantity | Year 2 price | | ------ | --------------: | -----------: | --------------: | -----------: | | coffee | 100 | £4 | 110 | £5 | | books | 50 | £10 | 52 | £11 | Year 1 nominal GDP: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[100]{.mord}[(]{.mopen}[4]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[50]{.mord}[(]{.mopen}[10]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£900.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Year 2 nominal GDP: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[110]{.mord}[(]{.mopen}[5]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[52]{.mord}[(]{.mopen}[11]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£1]{.mord}[[,]{.mpunct}]{.mord}[122.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Year 2 GDP at Year 1 prices: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[110]{.mord}[(]{.mopen}[4]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[52]{.mord}[(]{.mopen}[10]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£960.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Real output growth is `960/900 - 1 = 6.7%`, not the 24.7% rise in nominal GDP. The fixed-base GDP deflator is: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[960]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}[[,]{.mpunct}]{.mord}[122]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[116.9.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} In practice, statistical agencies use chain-weighting and richer price/quality methods. The classroom calculation teaches the separation of quantities from prices. ## 5. GDP per person is an average [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[real GDP per person]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2519em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[population]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[real GDP]{.mord}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It is a useful indicator of average productive capacity. It does not report: - income or wealth distribution; - unpaid care and household production; - leisure, health, security, or political freedom; - environmental depletion and ecosystem damage; - quality improvements that are difficult to price; - who receives gains from digital services with zero money price. Use a dashboard: real income per person, median income, distribution, health, education, leisure, environmental stocks, and subjective well-being where appropriate. ## 6. Stocks and flows | Variable | Stock or flow? | Unit | | --------------- | -------------- | --------------------------- | | public debt | stock | £ at a date | | annual deficit | flow | £ per year | | national wealth | stock | net asset value at a date | | investment | flow | £ per year | | capital stock | stock | productive assets at a date | Investment adds to capital; depreciation removes from it: [[[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A country can raise current GDP while running down natural or produced assets. Output and balance-sheet sustainability are distinct. ## 7. National accounts are a statistical system The UN describes the System of National Accounts as the internationally agreed framework linking production, income, consumption, saving, investment, and transactions with the rest of the world. The 2025 SNA is the current edition listed by the UN Statistics Division ([UNSD, 2025](https://unstats.un.org/unsd/Nationalaccount/sna.asp){rel=""nofollow""}). This matters because GDP is not a raw observation. It is a constructed estimate using definitions, surveys, administrative records, imputations, seasonal adjustment, and revisions. Before comparing GDP figures, check: ```text nominal or real? total or per person? level or growth? annualised or not? seasonally adjusted? first release or revised? same production boundary and price method? ``` ## Practice An economy reports nominal GDP growth of 7%, inflation of 4%, and population growth of 1%. 1. Approximate real GDP growth. 2. Approximate real GDP-per-person growth. 3. Explain why neither answer establishes that the median household is better off. 4. Classify a new house, an old house, a broker's fee, a share purchase, and unpaid childcare. 5. Name one wealth and one welfare indicator to add. ::legacy-details{title="Answer check"} Real GDP growth is about 3%; real GDP per person about 2%. Distribution, household composition, non-market activity, asset changes, and measurement still matter. :: ## Quick check - GDP is current domestic production, not wealth. - Final expenditure and value added avoid double counting. - `C + I + G + NX` is an accounting identity, not a causal model. - Real GDP removes price change; per-person GDP also adjusts for population. - Welfare requires a wider dashboard. **Next:** [measure price change, purchasing power, and labour-market utilisation](https://www.pengjiaxin.com/06-inflation-and-unemployment). # Chapter 6 — Inflation, Purchasing Power, and Labour Markets []{#chapter-6-inflation-purchasing-power-and-labour-markets} ## Core question Do changes in prices and employment indicate stronger demand, constrained supply, changing expectations, or a measurement effect? ## Learning outcomes You will be able to: - calculate and interpret an inflation rate; - convert nominal changes into approximate and exact real changes; - calculate unemployment and participation rates; - distinguish price, wage, demand, supply, and labour-matching mechanisms. ## 1. Price level and inflation are different An index compares the cost of a defined basket with a reference period. [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2547em;vertical-align:-0.8943em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8943em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If CPI rises from 120 to 126, inflation is 5%. | Term | Meaning | | ------------ | ---------------------------------------- | | inflation | price level rises | | disinflation | price level still rises, but more slowly | | deflation | price level falls | Inflation falling from 8% to 3% does not mean prices returned to their earlier level. ## 2. A price index is an estimate A consumer index must decide: - which households and purchases are represented; - basket weights and update frequency; - how substitution is handled; - how quality change and new products are priced; - treatment of housing and regional variation. Your personal inflation can differ from the headline rate if your expenditure weights differ. That does not make either calculation fraudulent; it means they answer different aggregation questions. ## 3. Nominal and real values Approximation: [[[]{.katex-mathml}[[[]{.strut style="height:0.6776em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[o]{.mord.mathnormal.mtight}[mina]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Exact calculation: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[o]{.mord.mathnormal.mtight}[mina]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A nominal wage rises 5% while prices rise 8%: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.08]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1.05]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[2.78%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The same distinction applies to interest: [[[]{.katex-mathml}[[[]{.strut style="height:0.6331em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7429em;vertical-align:-0.0833em;"}[i]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9088em;vertical-align:-0.1944em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where expected inflation matters when a contract is signed. Unexpected inflation redistributes between fixed-rate borrowers and lenders. ## 4. Inflation is an outcome, not a diagnosis Possible mechanisms include: | Mechanism | Initial change | Typical evidence | | -------------------------- | ----------------------------------------- | ------------------------------------- | | demand pressure | spending outruns capacity | broad demand, vacancies, output gap | | supply shock | energy/input/capacity cost rises | relative-price spike, output weakness | | expectation propagation | wages/prices adjust to expected inflation | contracts, surveys, persistence | | exchange-rate pass-through | imported goods become dearer | depreciation and import prices | | administered/tax change | regulated price or indirect tax changes | timing and affected categories | One CPI number cannot identify the mechanism. Chapter 9 places these shocks in AD–AS. ## 5. Labour-market definitions [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where labour force `L` equals employed `E` plus unemployed `U` who are without work, available, and actively searching under the statistical definition. [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[L]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[100]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[L]{.mord.mathnormal}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2408em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[working-age population]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[L]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Suppose: ```text employed = 90 million unemployed and searching = 10 million not in labour force = 50 million ``` Then `u = 10%` and participation is `100/150 = 66.7%`. If two million stop searching, measured unemployment falls to `8/98 = 8.2%`. That fall does not represent more employment. ## 6. Unemployment has different mechanisms | Type | Mechanism | Relevant response | | ---------- | --------------------------------- | ----------------------------------- | | frictional | search and matching take time | information and matching efficiency | | structural | skills/location/industry mismatch | retraining, mobility, adjustment | | cyclical | economy-wide demand is weak | stabilisation, if inflation permits | Also inspect hours, involuntary part-time work, earnings, job security, vacancies, participation, and duration. A single unemployment rate cannot describe job quality. ## 7. Phillips and Beveridge relationships The short-run Phillips curve links labour-market slack to wage or price pressure conditional on expectations and shocks. It is not a permanent menu from which policymakers choose any inflation–unemployment pair. The Beveridge curve compares vacancies and unemployment. High vacancies with high unemployment can indicate inefficient matching; movement along the curve can reflect the business cycle. Always ask whether a relationship shifted before reading movement along it. ## 8. Evidence case: pandemic-era inflation Bernanke and Blanchard estimated a dynamic model of U.S. prices, wages, expectations, and labour-market tightness. They concluded that much of the initial 2021–22 inflation surge came from commodity and sectoral price shocks linked to supply constraints and the shift from services to goods. Tight labour markets were not the initial dominant source, but their effects on wages and inflation were more persistent ([2023 paper and replication link](https://www.brookings.edu/wp-content/uploads/2023/06/WP86-Bernanke-Blanchard_6.13.pdf){rel=""nofollow""}). The teaching lesson is diagnostic: ```text same inflation rate ≠ same cause ≠ same optimal response ``` It is one model and one economy, not a universal decomposition for every country. ## Practice: indicator brief An economy has inflation of 6%, nominal wage growth of 4%, falling unemployment, falling participation, and record vacancies. 1. Approximate real wage growth. 2. Explain why lower unemployment may overstate improvement. 3. Give one demand and one matching interpretation of vacancies. 4. Name two series needed to distinguish an energy shock from broad demand pressure. 5. Write a 120-word brief with one conclusion and two uncertainties. ## Quick check - Inflation is a rate of change, not the price level. - Headline inflation and personal cost change use different weights. - Real values adjust nominal values for prices. - Unemployment excludes people not actively searching. - Correlations such as Phillips or Beveridge curves can shift. **Next:** [move from short-run indicators to long-run productivity and growth](https://www.pengjiaxin.com/07-economic-growth). # Chapter 7 — Productivity, Technology, and Economic Growth []{#chapter-7-productivity-technology-and-economic-growth} ## Core question Why can an economy produce more valuable output per person over decades, and who receives the gain? ## Learning outcomes You will be able to: - distinguish total, per-person, and per-hour growth; - explain capital deepening and diminishing returns; - use technology and institutions as mechanisms rather than labels; - interpret productivity evidence without generalising beyond its design. ## 1. Compound growth For living standards, begin with real output or income per person—not total nominal GDP. The Rule of 70 gives an approximate doubling time: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[70]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where `g` is annual percentage growth. At 2%, doubling takes about 35 years; at 4%, about 17.5. Small persistent differences compound into large gaps. ## 2. Productivity is output per input Common measures include output per worker, output per hour, and total factor productivity. A compact production function is: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[]{.mspace style="margin-right:0.1667em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[L]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where: - `K`: physical and intangible capital; - `H`: skills, knowledge, and health; - `L`: labour input; - `A`: efficiency with which inputs are combined. The equation organises explanations. It does not tell us automatically how to measure `A` or prove causation. ## 3. Capital deepening and diminishing returns Giving a worker a first useful machine may raise output greatly. A tenth identical machine with no extra labour, power, space, or demand may add little. With other inputs fixed: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Capital accumulation can support convergence when poorer economies adopt proven technologies and basic infrastructure. It does not guarantee convergence: governance, complementary skills, finance, conflict, geography, and market access affect returns. ## 4. Ideas and organisation Technology includes: - a new product or production process; - a management practice that reduces errors; - logistics, standards, and interoperability; - scientific knowledge and software; - a new organisational form. Ideas are partly non-rival: one person's use need not prevent another's. But diffusion can be limited by intellectual property, tacit knowledge, skills, data, compatibility, and market power. ## 5. Evidence case: generative AI at work Brynjolfsson, Li, and Raymond studied staggered deployment of a generative-AI assistant to 5,172 customer-support agents. Access increased issues resolved per hour by about **15% on average**, with larger gains for less-experienced and lower-skill workers; effects were small for the most experienced group, with some quality concerns at the top ([QJE, 2025](https://doi.org/10.1093/qje/qjae044){rel=""nofollow""}). Correct inference: > In this firm and task, the tool raised measured productivity on average and compressed some experience gaps. Incorrect inference: > AI raises every worker's productivity by 15%. The study illustrates both technology-driven productivity and heterogeneous incidence. Economy-wide effects also depend on adoption cost, task redesign, prices, entry, labour reallocation, new demand, and who owns complementary assets. ## 6. Institutions shape return and diffusion Institutions influence whether people expect effort, investment, entry, and innovation to be rewarded. Relevant mechanisms include: - predictable contracts and property rights; - effective public administration and infrastructure; - competition and the ability of productive firms to enter and expand; - finance for worthwhile investment; - education and health that build capability; - political accountability and protection from extraction. “Institutions matter” is incomplete. Identify which rule changes which incentive, for whom, and with what evidence. ## 7. Growth, distribution, and sustainability Average productivity growth can coexist with: - wage stagnation for some groups; - regional decline and job displacement; - rising returns to capital or scarce skills; - longer or shorter working hours; - natural-capital depletion and emissions. A growth assessment should report: ```text output per person + output per hour + median real income + distribution + labour transition + natural/produced asset change ``` Growth expands feasible choices; institutions and policy shape how gains, costs, and risks are distributed. ## 8. Evaluate a growth policy | Policy | Intended mechanism | Complement needed | Risk | | ----------------- | ------------------------------------ | ---------------------------------- | ---------------------------- | | infrastructure | lower transport/coordination cost | maintenance and useful location | low-return project | | education | raise skills and adaptability | teaching quality and labour demand | credentials without learning | | R\&D support | knowledge spillovers | competition and diffusion | capture by incumbents | | entry reform | reallocate toward productive firms | finance and worker transition | unstable low-quality entry | | health investment | more effective labour and well-being | delivery capacity | unequal access | List mechanisms and failure conditions, not slogans. ## Practice: growth decomposition Country A's output grows 4%, labour hours 1%, and population 2%. 1. Approximate output-per-hour growth. 2. Approximate output-per-person growth. 3. Give one capital, skill, and technology explanation. 4. Name evidence needed to distinguish them. 5. Explain why the average does not establish distributional gain. ::legacy-details{title="Answer check"} Output per hour grows roughly 3%; output per person roughly 2%. These arithmetic decompositions do not identify causal drivers. :: ## Quick check - Growth in total output and output per person are different. - Capital deepening faces diminishing returns without complements. - Technology includes organisation and diffusion, not only invention. - Productivity effects can vary sharply across workers and tasks. - Sustainable growth requires distribution and asset stocks to be examined. **Next:** [study the monetary and banking system that finances activity and transmits risk](https://www.pengjiaxin.com/08-money-and-banking). # Chapter 8 — Money, Credit, and Banking []{#chapter-8-money-credit-and-banking} ## Core question How can banks create liquid deposits while holding risky, long-term assets—and why does that arrangement require capital, liquidity, confidence, and supervision? ## Learning outcomes You will be able to: - distinguish money, income, wealth, and credit; - record a loan and deposit on a bank balance sheet; - explain the constraints on deposit creation; - separate solvency, liquidity, credit, and interest-rate risk. ## 1. What money does Money serves as: - **medium of exchange** — accepted in payment; - **unit of account** — common measure for prices and debts; - **store of value** — transfers purchasing power through time. Money is not the same as wealth. A bank deposit is money for the customer and a liability for the bank. A house may be valuable wealth but is not normally money because it cannot settle a purchase immediately at par. Liquidity asks how quickly and reliably an asset can make payment without a large price loss. ## 2. Read both sides of the balance sheet Campus Bank begins with: | Assets | £000 | Liabilities and equity | £000 | | -------------------- | ------: | ---------------------- | ------: | | reserves | 20 | deposits | 90 | | loans and securities | 80 | equity | 10 | | **total** | **100** | **total** | **100** | Accounting identity: [[[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[[assets]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[[liabilities]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[equity]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Equity absorbs losses first. If assets lose £6, equity falls from £10 to £4. Deposits do not automatically fall with the asset value. ## 3. A bank loan creates a deposit Suppose the bank approves a £5,000 business loan and credits the borrower's account. | Bank entry | Asset | Liability | | ----------- | ------: | --------: | | new loan | +£5,000 | — | | new deposit | — | +£5,000 | The banking system has created a loan asset and deposit money together. The bank did not hand over an existing depositor's named funds. When the borrower pays a supplier at another bank, reserves must settle between banks. The originating bank therefore needs funding and liquidity even though lending created the deposit. ## 4. What constrains credit creation Banks cannot create unlimited deposits. Constraints include: - creditworthy demand for loans; - capital requirements and expected losses; - liquidity and settlement needs; - funding cost and interest-rate risk; - regulation, supervision, and internal risk limits; - the central bank's policy stance; - confidence of depositors and markets. The textbook multiplier `1/reserve ratio` describes a special system with fixed reserve ratios, full redepositing, no cash leakage, no capital constraint, and willing banks/borrowers. It is useful for one mechanism, not a mechanical description of modern lending. ## 5. Four different risks | Risk | Question | Example | | ---------------------- | -------------------------------------------- | --------------------------------------- | | credit | will the borrower repay? | business defaults | | liquidity | can payments be met now? | deposits leave rapidly | | interest-rate/duration | how does asset value change when rates move? | long fixed-rate bonds lose market value | | solvency | do assets exceed liabilities? | losses exhaust equity | A solvent institution can be illiquid; a liquid institution can still be insolvent. Emergency lending addresses liquidity, not an unrecognised hole in asset value. ## 6. Maturity transformation and runs Banks issue short-term, withdrawable deposits and hold longer-term loans or securities. This supports credit but creates a coordination problem. :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRmVhcltEZXBvc2l0b3JzIGV4cGVjdCBvdGhlcnMgdG8gd2l0aGRyYXddIC0tPiBFeGl0W1dpdGhkcmF3IG5vd10KICBFeGl0IC0tPiBTYWxlW0Jhbmsgc2VsbHMgYXNzZXRzIHF1aWNrbHldCiAgU2FsZSAtLT4gTG9zc1tGaXJlLXNhbGUgbG9zc2VzIGFuZCB2aXNpYmxlIHN0cmVzc10KICBMb3NzIC0tPiBGZWFy" locale="en"} Deposit insurance, liquidity buffers, lender-of-last-resort facilities, resolution regimes, and credible supervision reduce—but do not remove—risk. ## 7. Evidence case: Silicon Valley Bank The Federal Reserve's 2023 review identifies a combination rather than one cause: - rapid asset growth from about [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[71]{.mord}[bi]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[n]{.mord.mathnormal}[t]{.mord.mathnormal}[o]{.mord.mathnormal}[m]{.mord.mathnormal}[or]{.mord.mathnormal style="margin-right:0.0278em;"}[e]{.mord.mathnormal}[t]{.mord.mathnormal}[han]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 211 billion during 2019–21; - concentrated reliance on uninsured deposits; - weak liquidity and interest-rate risk management; - long-duration assets exposed to rising rates; - delayed and insufficient supervisory escalation; - more than $40 billion of deposit outflow on 9 March 2023, with much larger requests expected the next day. The lesson is a balance-sheet chain: ```text concentrated funding + duration loss + weak liquidity plan → confidence shock → rapid withdrawals → forced closure ``` This official review does not imply that every bank with bond losses will fail; funding structure, hedging, capital, liquidity access, governance, and supervision matter ([Federal Reserve, 2023](https://www.federalreserve.gov/publications/2023-April-SVB-Key-Takeaways.htm){rel=""nofollow""}). ## 8. Central banks Central banks typically support: - monetary-policy implementation; - settlement and payment systems; - currency issuance and reserves; - emergency liquidity under defined conditions; - financial stability, often alongside other authorities. These roles can conflict. Emergency support may prevent disorderly failure but weaken incentives if owners and managers expect rescue. Design therefore separates liquidity support, loss absorption, supervision, and resolution where possible. ## Worked stress test Starting equity is £10,000. The bank experiences: - £4,000 credit losses; - £3,000 decline in bond value; - £12,000 deposit withdrawal settled from £20,000 reserves. After losses, equity is `10 − 4 − 3 = £3,000`. The withdrawal reduces reserves and deposits equally; it does not itself reduce equity. Remaining reserves are £8,000. The bank is still positive-equity in this simplified accounting but has a thinner solvency and liquidity cushion. ## Practice 1. Record a £2,000 new loan and deposit. 2. Record repayment of £500 principal. 3. Apply a £1,200 loan loss and identify the first buffer. 4. Explain why a withdrawal is different from a loss. 5. Diagnose whether each event is credit, liquidity, duration, or solvency risk. ## Quick check - Deposits are money for customers and liabilities for banks. - Lending can create deposits; settlement still requires liquidity. - Capital absorbs losses; reserves settle payments. - Solvency and liquidity are distinct. - Bank failure is usually a chain of interacting vulnerabilities. **Next:** [trace shocks and monetary policy through the whole economy](https://www.pengjiaxin.com/09-monetary-policy-and-ad-as). # Chapter 9 — Business Cycles, AD–AS, and Monetary Policy []{#chapter-9-business-cycles-adas-and-monetary-policy} ## Core question Is output changing because planned spending changed, productive capacity changed, or both—and what can monetary policy influence? ## Learning outcomes You will be able to: - distinguish actual from potential output; - classify aggregate-demand and aggregate-supply shocks; - trace an interest-rate decision through multiple transmission channels; - explain why monetary policy faces lags, uncertainty, and distributional effects. ## 1. Actual and potential output Potential output is the sustainable level of production given labour, capital, technology, and institutions—not the physical maximum under emergency effort. [[[]{.katex-mathml}[[[]{.strut style="height:0.8095em;vertical-align:-0.1944em;"}[[output gap]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0517em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6147em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3657em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - negative gap: weak utilisation and usually higher cyclical unemployment; - positive gap: demand exceeds sustainable capacity and inflation pressure may build. Potential output is estimated, not observed. Revisions can change the diagnosis. ## 2. Aggregate demand Aggregate demand describes planned expenditure on domestic output at different overall price levels, conditional on policy, expectations, wealth, foreign demand, and financial conditions. The expenditure identity helps organise channels: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} But the identity does not prove why spending changed. AD shifts when desired consumption, investment, government demand, or net exports change for reasons other than movement along the price-level relation. ## 3. Aggregate supply - **SRAS** links production and the price level while some wages, prices, expectations, and capacity are slow to adjust. - **LRAS** is located at potential output; nominal prices alone do not create permanent productive capacity. | Shock | Curve | Output | Price pressure | | ------------------------ | ------------------- | ------------ | -------------- | | confidence collapse | AD left | down | down | | investment boom | AD right | up initially | up | | imported energy cost | SRAS left | down | up | | productivity improvement | SRAS and LRAS right | up | down/contained | The model is most useful when the shock, horizon, and adjustment rule are stated. ## 4. Running case: imported energy shock An energy-importing economy faces a sharp gas-price increase. 1. Firms' marginal costs rise. 2. SRAS shifts left. 3. Output falls while the price level rises. 4. Real household income falls, possibly weakening AD too. 5. Wage and price expectations determine persistence. 6. Exchange-rate depreciation can amplify import costs. This is harder than a pure demand recession: supporting output may sustain inflation, while reducing demand may deepen the output loss. ## 5. Monetary transmission :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgUmF0ZVtQb2xpY3kgcmF0ZSBhbmQgY29tbXVuaWNhdGlvbl0gLS0+IE1hcmtldFtNYXJrZXQgcmF0ZXMgYW5kIGV4cGVjdGF0aW9uc10KICBNYXJrZXQgLS0+IEJhbmtbQmFuayBmdW5kaW5nLCBsZW5kaW5nLCBhc3NldCBwcmljZXMsIGV4Y2hhbmdlIHJhdGVdCiAgQmFuayAtLT4gU3BlbmRbQ29uc3VtcHRpb24sIGludmVzdG1lbnQsIGhvdXNpbmcsIG5ldCBleHBvcnRzXQogIFNwZW5kIC0tPiBHYXBbRGVtYW5kIGFuZCBvdXRwdXQgZ2FwXQogIEdhcCAtLT4gUHJpY2VbV2FnZXMsIHByaWNlcywgaW5mbGF0aW9uIGV4cGVjdGF0aW9uc10=" locale="en"} ### Main channels | Channel | Tightening mechanism | Uneven effect | | -------------- | ----------------------------------- | ------------------------------------ | | borrowing cost | new credit becomes dearer | variable-rate borrowers react sooner | | cash flow | debt service rises | leveraged households/firms | | asset price | valuations may fall | asset owners and collateral users | | bank lending | standards and volumes tighten | bank-dependent firms | | exchange rate | currency may appreciate | exporters versus importers | | expectations | commitment changes price/wage plans | depends on credibility | ## 6. A policy decision is a forecast under uncertainty A central bank must estimate: - current inflation mechanism and persistence; - output gap and neutral interest rate; - strength and lag of transmission; - financial-stability consequences; - response of expectations and fiscal policy. Interest-rate changes affect demand with variable lags. They cannot produce gas, repair a port, train workers, or directly allocate losses from a supply shock. ## 7. Recent evidence: euro-area tightening ECB analysis of the 2022–24 tightening episode describes pass-through from policy rates to money-market rates, bank funding, lending rates, credit standards, and credit volumes. It also stresses that transmission varies with sector and balance sheet, while the original inflation surge contained major sectoral and energy-supply components ([Lane, 2024](https://www.ecb.europa.eu/press/key/date/2024/html/ecb.sp240824~c215968c41.en.html){rel=""nofollow""}). The case supports the transmission chain. It does not identify one invariant lag or effect size for every economy. ## 8. Policy rules and judgment A simple reaction rule raises the policy rate when inflation exceeds target or output exceeds potential, and lowers it in the reverse case. Real policy also considers forecasts, risk asymmetry, financial conditions, model uncertainty, and the effective lower bound. Rules create consistency and accountability; judgment handles information a compact formula omits. Neither removes uncertainty. ## Practice: monetary-policy meeting Inflation is 6%, output is 2% below estimated potential, unemployment is rising, energy prices remain high, and inflation expectations are stable. 1. Diagnose demand and supply components. 2. Draw the initial AD–AS change. 3. Give the case for tightening, holding, and easing. 4. Identify the groups most exposed to each choice. 5. Choose a policy path and state what new evidence would change it. ## Quick check - Potential output is estimated and can be revised. - `C + I + G + NX` is an identity, not a shock diagnosis. - Demand and supply shocks can move inflation and output differently. - Monetary policy works through rates, credit, assets, exchange rates, and expectations. - Policy cannot remove a real supply loss; it manages propagation and demand. **Next:** [compare fiscal stabilisation, distribution, and debt dynamics](https://www.pengjiaxin.com/10-fiscal-policy). # Chapter 10 — Fiscal Policy, Distribution, and Public Debt []{#chapter-10-fiscal-policy-distribution-and-public-debt} ## Core question How can a government stabilise demand and protect households without wasting resources, weakening useful price signals, or placing debt on an unsustainable path? ## Learning outcomes You will be able to: - separate purchases, transfers, taxes, deficits, and debt; - explain why fiscal multipliers vary across policies and economic conditions; - calculate a simple debt-to-GDP path; - evaluate a package by timing, targeting, incentives, distribution, and fiscal risk. ## 1. Read the budget before judging it | Item | Immediate accounting role | Main economic channel | | ------------------- | ----------------------------------- | ---------------------------------------- | | government purchase | enters `G` in GDP | direct demand for current output | | transfer | does not itself enter `G` | changes recipients' disposable income | | tax | finances government; not a purchase | changes disposable income and incentives | | interest payment | cost of past borrowing | transfers income to bondholders | | public investment | enters `G` when produced | demand now; capacity later if productive | A yearly **deficit** is a flow. **Debt** is a stock inherited from past borrowing and other adjustments. [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[overall deficit]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[primary spending]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7512em;vertical-align:-0.0833em;"}[[interest]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[[revenue]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The **primary balance** excludes interest, so it shows the current budget choice before the cost of inherited debt. ::warning{title="Accounting is not evaluation"} A transfer does not enter GDP directly, but may raise consumption. A tax cut may raise demand, but less than its face value if recipients save it. Always trace behaviour after recording the budget entry. :: ## 2. From a budget measure to output :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQnVkZ2V0W1B1cmNoYXNlLCB0YXgsIG9yIHRyYW5zZmVyXSAtLT4gSW5jb21lW0luY29tZSBhbmQgY2FzaCBmbG93XQogIEluY29tZSAtLT4gU3BlbmRbQ29uc3VtcHRpb24gYW5kIGludmVzdG1lbnRdCiAgU3BlbmQgLS0+IERlbWFuZFtBZ2dyZWdhdGUgZGVtYW5kXQogIERlbWFuZCAtLT4gT3V0cHV0W091dHB1dCwgam9icywgYW5kIHByaWNlc10KICBPdXRwdXQgLS0+IFJldmVudWVbVGF4IHJldmVudWUgYW5kIGJlbmVmaXRzXQogIFJldmVudWUgLS0+IEJ1ZGdldA==" locale="en"} The **fiscal multiplier** is an outcome, not a universal constant: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2408em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[Δ]{.mord}[[fiscal impulse]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[Δ]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It tends to be larger when resources are idle, recipients have high propensities to spend, imports leak out slowly, credit is constrained, and monetary policy does not offset the expansion. It tends to be smaller near capacity or when households save, imports rise, implementation is delayed, or interest rates respond strongly. ## 3. Worked model: where the multiplier comes from In a deliberately simple economy, households consume fraction `c` of disposable income, the proportional tax rate is `t`, and fraction `m` of each extra unit of income is spent on imports: [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[G]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0315em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2574em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Let `c = 0.75`, `t = 0.20`, and `m = 0.10`: [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[G]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0315em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2574em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.75]{.mord}[(]{.mopen}[0.8]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.1]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The model predicts that an extra £100 million of purchases eventually raises domestic output by £200 million. That number is **conditional on the model**. It falls if the central bank tightens, capacity is scarce, imports respond more, or firms cannot expand. The formula explains propagation; an empirical multiplier must be estimated for a place, policy, and horizon. ### Purchases, tax cuts, and transfers are not interchangeable - A purchase raises demand immediately if the project can begin. - A tax cut first changes disposable income; some is saved. - A targeted transfer may produce more demand per pound if recipients are liquidity-constrained. - Public investment can raise future supply, but a poorly selected project can cost more than its benefits. ## 4. Automatic stabilisers versus new legislation During a downturn, tax receipts fall and unemployment-related payments rise automatically. These **automatic stabilisers** support income without waiting for a new vote. Discretionary action can target a novel shock but faces three lags: 1. **recognition** — determine what happened; 2. **decision** — agree on a measure; 3. **implementation** — deliver funds or complete procurement. An immediate transfer and a five-year railway project can both be valuable, but they are not substitutes for the same policy objective. ## 5. Running case: protecting households from an energy shock Suppose imported energy prices double and low-income households cannot afford basic heating. | Option | Protection | Price signal | Fiscal cost and targeting | | --------------------- | --------------------- | ----------------------------- | -------------------------------- | | universal price cap | immediate and visible | weakens incentive to conserve | broad; pays even high users | | cut energy tax | quick | weakens signal | benefit rises with consumption | | lump-sum payment | supports income | preserves marginal price | can be broad or targeted | | means-tested transfer | concentrates support | preserves signal | requires administrative capacity | | home-insulation grant | slower | reduces future demand | quality and additionality matter | IMF researchers estimated euro-area energy support at about 1.3% of GDP in 2022 and found that price-suppressing and untargeted measures made up a substantial share. The episode shows why speed, protection, conservation, inflation, and cost can point to different instruments ([Dao et al., 2023](https://doi.org/10.5089/9798400251399.001){rel=""nofollow""}). This evidence describes one exceptional energy shock; it does not establish that one instrument is best for every country. ## 6. Debt dynamics in one line Let `b` be debt as a share of GDP, `r` the effective nominal interest rate, `g` nominal GDP growth, and `s` the primary surplus as a share of GDP. A useful approximation is: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[Δ]{.mord}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[s]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Worked example Initial debt is 80% of GDP, `r = 4%`, `g = 3%`, and the primary budget has a 2% deficit, so `s = −2%`: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[Δ]{.mord}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.04]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.03]{.mord}[)]{.mclose}[(]{.mopen}[0.80]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[0.02]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.028.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Debt rises by about **2.8 percentage points of GDP**. If the same economy instead ran a 1% primary surplus, debt would fall by about 0.2 percentage points. The equation disciplines discussion, but real paths also include recessions, exchange-rate valuation, bank rescues, privatisation, maturity structure, inflation, and forecast error. The IMF's 2024 Fiscal Monitor therefore analyses a distribution of debt risks rather than one mechanical baseline ([IMF, 2024](https://www.imf.org/en/publications/fm/issues/2024/10/23/fiscal-monitor-october-2024){rel=""nofollow""}). ::tip{title="Debt questions need context"} Ask who holds the debt, in which currency, at what maturity and interest rate, what financed it, and whether the state can raise revenue credibly. A debt ratio alone is not a verdict. :: ## 7. A six-test policy appraisal For any proposal, answer in this order: 1. **objective** — stabilisation, redistribution, correction of a market failure, or long-run capacity? 2. **mechanism** — whose budget changes, and what behaviour follows? 3. **timing** — when does demand or supply actually change? 4. **incidence** — who ultimately gains, pays, or is excluded? 5. **side effects** — prices, work, investment, imports, emissions, or monetary response? 6. **fiscal path** — temporary or permanent; financed now or added to debt? ## Practice: write a one-page budget brief The economy has a 3% negative output gap, inflation is falling, unemployment is rising, debt is 90% of GDP, and flood damage has closed transport links. 1. Design a package with one immediate and one long-run measure. 2. Draw the demand and supply channels separately. 3. Explain which multiplier assumptions matter. 4. Identify winners, losers, and implementation risks. 5. State a review date and one condition for ending each measure. ## Quick check - Purchases, transfers, and tax changes reach demand differently. - A multiplier depends on the instrument, state of the economy, and policy response. - Automatic stabilisers are fast; discretionary policy can be better targeted. - Deficit is a flow; debt is a stock. - Sustainability depends on primary balances, interest, growth, institutions, and risk. **Next:** [connect trade, capital flows, exchange rates, and imported inflation](https://www.pengjiaxin.com/11-open-economy-and-exchange-rates). # Chapter 11 — Trade, Capital Flows, and Exchange Rates []{#chapter-11-trade-capital-flows-and-exchange-rates} ## Core question When a currency moves, which prices and quantities change—and why can the same depreciation help exporters, hurt importers, and raise inflation? ## Learning outcomes You will be able to: - connect net exports to saving, investment, and capital flows; - calculate nominal and real exchange-rate changes without reversing the quote; - trace depreciation through contracts, import prices, inflation, and trade volumes; - explain purchasing-power parity, exchange-rate regimes, and the policy trilemma. ## 1. One economy, two cross-border ledgers Exports are domestic production sold abroad; imports are foreign production bought at home: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Imports are subtracted in `Y = C + I + G + NX` only because they are already counted inside consumption, investment, or government spending. The subtraction removes foreign production; it is not a claim that imports are harmful. National accounting also gives: [[[]{.katex-mathml}[[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} in a simplified setting. If domestic investment exceeds national saving, the difference is financed from abroad and the country runs an external deficit. This may finance productive capital or fragile consumption; the sign alone cannot tell us which. ::legacy-details{title="Why financial flows appear on the other side"} A current-account deficit is matched, apart from statistical discrepancies and reserve transactions, by net financing from the rest of the world. Every imported good must ultimately be paid for with exports, asset sales, borrowing, transfers, or reserves. :: ## 2. Fix the quote before doing arithmetic Let [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[e]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[domestic currency per unit of foreign currency]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If `e` rises, foreign currency costs more: the domestic currency **depreciates**. If `e` falls, it **appreciates**. ### Worked example The pound–dollar quote moves from `£0.75/$` to `£0.84/$`: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[0.75]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.84]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.75]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[12%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The pound has depreciated 12% under this quote. A `$100` input rises from £75 to £84 before hedging, mark-up adjustment, or other costs. > Never write “the exchange rate increased” without defining the numerator and denominator. ## 3. Nominal versus real exchange rates The nominal rate converts currencies. The real rate compares goods prices: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0517em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[e]{.mord.mathnormal}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3657em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where `P*` is the foreign price level and `P` the domestic price level. Under our convention, a rise in `q` is a **real depreciation**: foreign goods become more expensive relative to domestic goods. Suppose `e` rises 10%, foreign prices rise 2%, and domestic prices rise 6%. Approximately: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[10%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[2%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[6%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[6%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Domestic inflation therefore offsets part of the nominal depreciation's competitive effect. ## 4. Why currencies move The exchange rate is an asset price shaped by expected future returns and risk, not just today's exports. | Change | Likely pressure, other things equal | Why the result may reverse | | ---------------------------------- | ----------------------------------- | ----------------------------------------------- | | domestic interest rate rises | appreciation | markets expected a larger rise; risk also rises | | stronger foreign demand | appreciation | imports or capital outflows rise too | | political/financial risk rises | depreciation | controls or intervention limit flows | | expected future depreciation | depreciation now | credibility changes expectations | | central bank buys foreign currency | depreciation pressure | operation may be sterilised or overwhelmed | “Other things equal” matters: exchange rates combine many forward-looking forces at once. ## 5. Trace depreciation in stages :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRlhbRG9tZXN0aWMgY3VycmVuY3kgZGVwcmVjaWF0ZXNdIC0tPiBJbXBvcnRbSW1wb3J0ZWQgaW5wdXRzIGFuZCBnb29kcyBjb3N0IG1vcmVdCiAgRlggLS0+IEV4cG9ydFtFeHBvcnQgcHJpY2VzIGJlY29tZSBtb3JlIGNvbXBldGl0aXZlXQogIEltcG9ydCAtLT4gQ1BJW0NvbnN1bWVyIGluZmxhdGlvbiBhbmQgZmlybXMnIGNvc3RzXQogIEV4cG9ydCAtLT4gVm9sdW1lW0V4cG9ydCB2b2x1bWUgbWF5IHJpc2VdCiAgSW1wb3J0IC0tPiBJbXBvcnRWb2xbSW1wb3J0IHZvbHVtZSBtYXkgZmFsbF0KICBWb2x1bWUgLS0+IE5YW05ldCBleHBvcnRzXQogIEltcG9ydFZvbCAtLT4gTlgKICBDUEkgLS0+IFJlYWxJbmNvbWVbUmVhbCBpbmNvbWUgYW5kIG1vbmV0YXJ5IHBvbGljeV0=" locale="en"} ### The timing problem Prices can change before quantities. Existing invoices and energy contracts may be in foreign currency, while consumers and firms need time to switch suppliers. The trade balance can therefore worsen first and improve later—the **J-curve** possibility. For a depreciation eventually to improve the trade balance, export and import quantities must respond sufficiently to relative prices. Supply capacity, invoicing currency, imported content of exports, and global demand all matter. ### Firm-level example A UK manufacturer sells a machine for £10,000 and imports a `$4,000` component. - At `£0.75/$`, the component costs £3,000. - After depreciation to `£0.84/$`, it costs £3,360. - The export price is cheaper in dollars if the pound price stays fixed, but the firm's margin is £360 lower before any quantity response. The label “exporter” does not guarantee that a firm benefits; imported inputs can reverse the effect. ## 6. Exchange-rate pass-through is incomplete and uneven **Pass-through** asks how much an exchange-rate change reaches import prices and then consumer prices. Firms may absorb part in margins, hedge currency risk, use existing inventories, or price in a dominant foreign currency. An IMF study using monthly data for sub-Saharan African economies found sizable but heterogeneous inflation effects. Pass-through was larger and more persistent for large or persistent depreciations and varied with exchange-rate regime, resource structure, product-market competition, and monetary credibility ([Kemoe et al., 2024](https://doi.org/10.5089/9798400269264.001){rel=""nofollow""}). This is regional evidence, not a coefficient to copy into every country. It teaches the right question: **which imports, contracts, institutions, and expectations transmit this particular movement?** ## 7. Two benchmarks, neither a daily forecast ### Purchasing-power parity Relative PPP predicts that a country with persistently higher inflation tends to experience currency depreciation: [[[]{.katex-mathml}[[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[e]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[Δ]{.mord}[e]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7387em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Transport costs, tariffs, non-traded services, product differences, market power, and capital flows allow large and persistent deviations. PPP is more useful as a long-run benchmark than a short-run trading rule. ### Interest parity Comparable assets must offer expected returns that compensate for expected currency movement and risk. A high domestic interest rate may therefore signal an attractive return—or expected depreciation and risk. Observing the rate alone is insufficient. ## 8. Regimes and the policy trilemma | Regime | Main benefit | Main cost | | ------------- | -------------------------------------------- | --------------------------------------- | | floating | monetary-policy autonomy; shock absorption | volatility and pass-through | | fixed/pegged | nominal anchor; lower conversion uncertainty | reserves needed; policy constrained | | managed float | intervention can smooth disorderly moves | objective and commitment may be unclear | With sustained capital mobility, a country cannot simultaneously maintain all three: 1. a fixed exchange rate; 2. independent monetary policy; 3. free capital movement. It can reliably choose at most two. This **trilemma** is a constraint, not a ranking of regimes. ## 9. Running case: energy shock plus depreciation Return to the energy-importing economy from Chapter 9. World gas prices rise 40%, while its currency depreciates 10% against the invoicing currency. If the changes compound fully, the domestic-currency price factor is: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1.40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.10]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1.54]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} or a 54% increase—not 50%. Actual consumer pass-through may be lower because of contracts, taxes, regulated prices, hedging, and margins. Diagnosis: 1. the import bill and firms' marginal costs rise; 2. real household income falls; 3. SRAS shifts left and AD may weaken; 4. inflation can rise even as output falls; 5. fiscal support, rates, reserves, and the exchange regime interact. ## Practice: external-sector briefing A small economy has a 6% current-account deficit, strong equipment investment, foreign-currency corporate debt, and a 15% depreciation. 1. Explain why the deficit is not automatically bad. 2. Calculate the domestic cost change of a `$2 million` debt payment. 3. Separate export competitiveness from balance-sheet damage. 4. Identify two conditions that determine inflation pass-through. 5. Recommend data needed before choosing monetary, fiscal, or exchange-market action. ## Quick check - Imports are subtracted to isolate domestic production, not to label them harmful. - Always define an exchange-rate quote before naming appreciation or depreciation. - Nominal depreciation need not become an equal real depreciation. - Trade volumes, prices, and balance sheets adjust at different speeds. - Exchange-rate pass-through and regime choice depend on institutions and context. **Next:** [integrate the course through two evidence-based cases](https://www.pengjiaxin.com/12-review-and-case-studies). # Chapter 12 — Integrated Economic Analysis Studio []{#chapter-12-integrated-economic-analysis-studio} ## Core question Can you move from a real problem to a model, mechanism, calculation, evidence check, and defensible policy judgment? ## Learning outcomes You will be able to: - select and combine models without treating any one model as reality; - distinguish an accounting result, model prediction, empirical estimate, and value judgment; - evaluate policy through efficiency, distribution, stability, and implementation; - write a compact economic argument whose limits are explicit. ## 1. Select the smallest model that answers the question | Question | Start with | Add only if needed | | ------------------------------------- | ------------------------------ | ---------------------------------------------- | | Why did one market's price change? | demand and supply | elasticity, market power, policy wedge | | Who bears a tax? | elasticity and incidence | externality, distribution, avoidance | | Is living material welfare improving? | real GDP per person | distribution, leisure, health, environment | | Why did inflation rise? | price-index decomposition | AD–AS, wages, exchange rate, expectations | | Can a bank survive a shock? | balance sheet | liquidity, duration, confidence, contagion | | Which stabilisation policy fits? | shock diagnosis and output gap | transmission, lags, distribution, debt | | What follows from depreciation? | quote and real exchange rate | contracts, pass-through, trade, balance sheets | Using more diagrams does not make an answer stronger. Every added model must resolve a question the previous one could not. ## 2. The eight-sentence discipline A compact analysis can follow eight moves: 1. define the outcome and time horizon; 2. state the baseline or counterfactual; 3. name the shock or intervention; 4. choose the model and assumptions; 5. trace the mechanism; 6. calculate or sign the main effects; 7. compare the prediction with evidence; 8. judge the policy and name the uncertainty that could reverse the judgment. ::tip{title="Four kinds of statement"} `GDP = C + I + G + NX` is an **identity** . “A tax raises the buyer price” is a **model prediction** under stated conditions. “Sales fell 15%” is an **estimate** tied to data and design. “The tax is fair” is a **normative judgment** requiring a criterion. :: ## 3. Case A — a sugary-drink tax ### The decision A city is considering a tax of £2 per unit on sugary drinks. Before tax: [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[S]{.mord.mathnormal.mtight style="margin-right:0.0576em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Equilibrium is `P = £4`, `Q = 60`. With `P_b - P_s = £2`: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[10]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[b]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[10]{.mord}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so `P_b = £5`, `P_s = £3`, and `Q = 50`. | Result | Calculation | Interpretation | | ----------------- | ---------------: | ------------------------------------------- | | buyer burden | `£5 − £4 = £1` | half the tax | | seller burden | `£4 − £3 = £1` | half the tax | | revenue | `£2 × 50 = £100` | transfer to government, not net social gain | | quantity response | `60 → 50` | consumption and production fall | The equal split comes from these particular slopes. The statutory payer does not determine economic incidence. ### Add the policy objective If consumption imposes health costs not considered by buyers and sellers, the market quantity can exceed the social optimum. A corrective tax can improve efficiency by aligning private and social marginal cost. But four questions remain: 1. How large is the external cost? 2. Do consumers substitute toward other high-sugar products? 3. Who bears the burden by income and health status? 4. How is the revenue used? ### Check against evidence A systematic review and meta-analysis covering 86 studies reported average tax pass-through of 82% and a 15% reduction in sugary-drink sales, with substantial heterogeneity across designs and settings ([Andreyeva et al., 2022](https://doi.org/10.1001/jamanetworkopen.2022.15276){rel=""nofollow""}). That evidence supports a price-and-quantity mechanism. It does not reveal this city's exact response, long-run health gain, distributional effect, or optimal tax rate. ### Policy judgment A defensible recommendation might combine the tax with free drinking water, nutrition support, transparent use of revenue, and pre-specified evaluation of prices, sales, substitution, and outcomes by income group. This follows from the mechanism; it is not implied by the tax diagram alone. ## 4. Case B — energy inflation in an importing economy ### Initial shock World energy prices rise 40% and the domestic currency depreciates 10% against the invoicing currency: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1.40]{.mord}[)]{.mclose}[(]{.mopen}[1.10]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[54%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Suppose energy has a 10% CPI weight and 70% of the combined cost reaches consumers. A first-round arithmetic contribution to the **price level** is: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.54]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.70]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0.0378]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} or about **3.8%**. This is not automatically a permanent 3.8 percentage-point addition to annual inflation: weights, timing, substitution, taxes, caps, and indirect effects matter. ### Trace the whole system :mermaid-diagram{code64="Zmxvd2NoYXJ0IFRECiAgU2hvY2tbV29ybGQgZW5lcmd5IHByaWNlICsgY3VycmVuY3kgZGVwcmVjaWF0aW9uXSAtLT4gQ29zdFtJbXBvcnQgYW5kIHByb2R1Y3Rpb24gY29zdHNdCiAgQ29zdCAtLT4gQ1BJW0NvbnN1bWVyIHByaWNlc10KICBDb3N0IC0tPiBTUkFTW1NSQVMgc2hpZnRzIGxlZnRdCiAgQ1BJIC0tPiBJbmNvbWVbUmVhbCBob3VzZWhvbGQgaW5jb21lIGZhbGxzXQogIEluY29tZSAtLT4gQURbQ29uc3VtcHRpb24gYW5kIEFEIHdlYWtlbl0KICBTUkFTIC0tPiBGaXJtc1tNYXJnaW5zLCBvdXRwdXQsIGFuZCBoaXJpbmddCiAgRmlybXMgLS0+IEJhbmtzW0NyZWRpdCBxdWFsaXR5IGFuZCBsZW5kaW5nXQogIENQSSAtLT4gQ0JbQ2VudHJhbC1iYW5rIHJlc3BvbnNlXQogIEluY29tZSAtLT4gRmlzY2FsW0Zpc2NhbCBwcm90ZWN0aW9uXQogIENCIC0tPiBBRAogIEZpc2NhbCAtLT4gQUQ=" locale="en"} ### Diagnose before prescribing | Instrument | What it can do | What it cannot do | Main risk | | ---------------------- | ---------------------------------------- | ----------------------------- | ------------------------------------ | | higher policy rate | limit demand and second-round inflation | create imported energy | deeper output loss; financial stress | | targeted cash transfer | protect vulnerable real income | lower the resource cost | fiscal cost; targeting error | | universal price cap | suppress measured price quickly | remove scarcity | weak conservation signal; large cost | | energy investment | expand or diversify future supply | solve this winter immediately | delay and project risk | | bank liquidity support | stop forced asset sales by solvent banks | restore insolvent borrowers | moral hazard; misdiagnosis | Bernanke and Blanchard's decomposition of US pandemic-era inflation attributes the initial surge mainly to commodity and sectoral price shocks, with labour-market tightness becoming more important for persistence. The lesson is to separate the source of an inflation increase from the mechanism that keeps it going ([Bernanke & Blanchard, 2023](https://www.brookings.edu/wp-content/uploads/2023/06/WP86-Bernanke-Blanchard_6.13.pdf){rel=""nofollow""}). Their evidence concerns the United States and a specific episode. An energy-importing economy with currency depreciation, weaker credibility, or regulated prices may transmit the shock differently. ### A coherent package One possible package is temporary targeted income support, preservation of marginal energy prices, credible monetary communication focused on persistence, bank stress monitoring, and accelerated high-return energy investment. The recommendation is conditional on stable expectations, administrative capacity, and debt space; change those conditions and the package should change. ## 5. Compare the cases | Feature | Sugary-drink tax | Imported-energy shock | | --------------------- | ----------------------------------------- | ------------------------------------------------ | | starting model | partial-equilibrium tax wedge | open-economy AD–AS | | central elasticity | demand/supply and incidence | import demand, pass-through, wage/price response | | welfare issue | external cost and regressivity | unavoidable real-income loss and burden sharing | | main evidence problem | causal consumption and health effects | source versus persistence of inflation | | policy failure risk | substitution, avoidance, poor revenue use | contradictory monetary/fiscal signals | The common method is unchanged: define the counterfactual, trace behaviour, quantify where possible, inspect distribution, and state what evidence could overturn the result. ## 6. Turn analysis into a paragraph Weak: > Energy inflation shifts supply and the government should intervene. Stronger: > A rise in the domestic-currency cost of imported gas raises firms' marginal costs, shifting short-run aggregate supply left; output falls while the price level rises. A universal price cap can protect current purchasing power but weakens conservation and exposes the budget to the wholesale price. Targeted lump-sum support preserves the marginal price signal, although its value depends on administrative reach. I would therefore target temporary transfers and review them when wholesale prices or household arrears cross pre-announced thresholds. The second paragraph names the shock, model, mechanism, trade-off, recommendation, and exit condition. ## 7. Capstone task Choose one current economic claim and submit a 1,200-word policy note: 1. a one-sentence question and explicit counterfactual; 2. one diagram or balance sheet; 3. one transparent calculation; 4. two primary or peer-reviewed sources; 5. mechanism and distributional analysis; 6. recommendation, implementation risk, and falsification condition. | Criterion | Weight | Full-credit signal | | -------------------------- | -----: | ---------------------------------------------- | | diagnosis and model choice | 25% | model matches question; assumptions stated | | mechanism and calculation | 25% | causal chain is complete; units are correct | | evidence | 20% | source fits claim; uncertainty is not hidden | | policy appraisal | 20% | incidence, timing, incentives, and feasibility | | communication | 10% | concise, structured, and qualified | ## 8. Evidence trail for further study | Course question | Starting source | Boundary to remember | | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------ | | digital market power | [OECD, 2024](https://doi.org/10.1787/80552a33-en){rel=""nofollow""} | institutions and markets differ | | national accounts | [UN 2025 SNA](https://unstats.un.org/unsd/Nationalaccount/sna.asp){rel=""nofollow""} | measurement convention is not welfare theory | | generative AI and productivity | [Brynjolfsson, Li & Raymond, 2025](https://doi.org/10.1093/qje/qjae044){rel=""nofollow""} | one occupation and firm setting | | bank vulnerability | [Federal Reserve SVB review, 2023](https://www.federalreserve.gov/publications/2023-April-SVB-Key-Takeaways.htm){rel=""nofollow""} | case evidence, not a universal failure sequence | | monetary transmission | [ECB, 2024](https://www.ecb.europa.eu/press/key/date/2024/html/ecb.sp240824~c215968c41.en.html){rel=""nofollow""} | transmission varies by balance sheet and episode | | fiscal debt risk | [IMF, 2024](https://www.imf.org/en/publications/fm/issues/2024/10/23/fiscal-monitor-october-2024){rel=""nofollow""} | forecasts are distributions, not certainties | | exchange-rate pass-through | [Kemoe et al., 2024](https://doi.org/10.5089/9798400269264.001){rel=""nofollow""} | regional estimates are context-specific | ## Final check - What is the counterfactual? - Which statement is identity, theory, estimate, or judgment? - Which assumption drives the result? - Who gains, who loses, and when? - What observation would change the conclusion? If your answer makes those five items visible, you are doing economics rather than reciting it. # Causal Questions and Estimands []{#causal-questions-and-estimands} ## Replace the topic with a contrast “Does university help earnings?” leaves every important object open. A researchable version is: > Among Pathways applicants scoring 68–72 in 2024, what is the five-year effect of being **offered** the stated scholarship package, compared with no offer, on degree completion? | Element | Why it matters | | ----------------- | --------------------------------------------------------- | | population | effects may differ outside applicants or the score band | | treatment | offer is not receipt, enrolment or completion | | comparator | “no offer” may still include other financial aid | | outcome | entry, completion and earnings answer different questions | | horizon | an early entry effect can fade or grow | | treatment version | amount, duration and advising may vary | ## Potential outcomes name the missing comparison Let [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be completion if applicant [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is offered Pathways and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} completion without the offer. The individual effect [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} cannot be observed because only one treatment state occurs. The observed outcome is [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Econometric design supplies information about the missing mean, not the missing individual outcome. ## Choose the population before the acronym | Estimand | Definition | Policy interpretation | | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------- | | ATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | average effect in the stated population | | ATT | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | effect for those treated | | ATU | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | effect for those currently untreated | | ITT | effect of random assignment or offer | effect of the policy lever actually randomised | | CATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord,mathnormal}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | effect for a pre-defined covariate profile | These quantities coincide only under special conditions. A voluntary programme’s ATT can differ from the effect of expanding it to current non-participants. ## The treatment ladder For Pathways: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[eligibility]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[offer]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[receipt]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[enrolment]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[completion]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} An eligibility lottery identifies the ITT of an offer. Estimating the effect of enrolment requires more assumptions because applicants can decline an offer or enrol without it. Never switch the treatment label after seeing which effect is larger. ## Consistency and treatment versions Consistency says the observed outcome under the received treatment equals the corresponding potential outcome. This becomes doubtful if “scholarship” mixes £1,000 and £8,000 awards, one-year and four-year support, or advising and no advising. Repair the question by: 1. defining the intervention precisely; 2. recording implementation and exposure; 3. estimating version-specific effects where support permits; 4. limiting the claim when versions cannot be separated. ## Interference changes the unit If scholarships fill a fixed number of university places, one applicant’s offer changes another applicant’s outcome. Then [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may depend on the vector of offers, not only [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Possible targets include a direct effect at a stated saturation, a school-level policy effect or a total equilibrium effect. “Robust standard errors” do not repair an incorrectly defined potential-outcome structure. ## A one-minute estimand test Complete this sentence without method names: > For **[population]**, compare the mean **[outcome at horizon]** under **[treatment version]** with the mean under **[comparator]**. If the sentence cannot be completed, a regression formula is premature. ## Quick check A study randomises scholarship offers but reports the effect of university attendance by comparing attenders with non-attenders. Which estimand is directly identified by randomisation? ::legacy-details{title="Answer"} The ITT effect of the offer. Attendance is post-assignment and selected. The offer may be used as an instrument for attendance only with additional relevance, exclusion, assignment and monotonicity assumptions; the resulting LATE applies to compliers, not automatically to all students. :: [Next: Potential Outcomes and Experiments](https://www.pengjiaxin.com/02-potential-outcomes-experiments) # Potential Outcomes and Experiments []{#potential-outcomes-and-experiments} ## Randomisation targets assignment effects If offer assignment [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is random, then in expectation [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⊥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The control mean estimates the treated group’s missing mean under no offer, and vice versa. Randomisation balances potential outcomes **in expectation**, not necessarily every covariate in one realised sample. ## Worked difference in means Pathways randomises 1,000 applicants: | Assignment | Applicants | Completed degree | Rate | | ---------- | ---------: | ---------------: | ---: | | offer | 500 | 290 | 58% | | no offer | 500 | 250 | 50% | The ITT estimate is [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.58]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.50]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.08]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, or 8 percentage points. A simple standard error is [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.44em;vertical-align:-0.7356em;"}[[[[[[]{.pstrut style="height:4.4em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[500]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.58]{.mord}[(]{.mopen}[0.42]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[500]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.50]{.mord}[(]{.mopen}[0.50]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-4.4em;"}[[]{.pstrut style="height:4.4em;"}[]{.hide-tail style="min-width:1.02em;height:2.48em;"}]{style="top:-3.6644em;"}]{.vlist style="height:1.7044em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7356em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.031.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A rough 95% interval is about 1.8 to 14.2 points. The point estimate is not “the true effect”; it is one random assignment’s estimate of a defined mean effect. ::pyodide --- code64: aW1wb3J0IHJhbmRvbQoKcm5nID0gcmFuZG9tLlJhbmRvbSgyMDI2KQpuID0gMTAwMAphYmlsaXR5ID0gW3JuZy5nYXVzcygwLCAxKSBmb3IgXyBpbiByYW5nZShuKV0KeTAgPSBbNTAgKyA4KmEgKyBybmcuZ2F1c3MoMCwgMykgZm9yIGEgaW4gYWJpbGl0eV0KZWZmZWN0ID0gWzYgKyAoMiBpZiBhID4gMCBlbHNlIDApIGZvciBhIGluIGFiaWxpdHldCnkxID0gW2Jhc2UgKyB0YXUgZm9yIGJhc2UsIHRhdSBpbiB6aXAoeTAsIGVmZmVjdCldCnRydWVfYXRlID0gc3VtKGVmZmVjdCkgLyBuCgphc3NpZ25tZW50ID0gWzFdICogKG4vLzIpICsgWzBdICogKG4vLzIpCnJuZy5zaHVmZmxlKGFzc2lnbm1lbnQpCnlfcmFuZG9tID0gW3RyZWF0ZWQgaWYgeiBlbHNlIGNvbnRyb2wgZm9yIHosIHRyZWF0ZWQsIGNvbnRyb2wgaW4gemlwKGFzc2lnbm1lbnQsIHkxLCB5MCldCgpkZWYgZGlmZmVyZW5jZSh2YWx1ZXMsIHRyZWF0bWVudCk6CiAgICB0cmVhdGVkID0gW3YgZm9yIHYsIGQgaW4gemlwKHZhbHVlcywgdHJlYXRtZW50KSBpZiBkXQogICAgY29udHJvbCA9IFt2IGZvciB2LCBkIGluIHppcCh2YWx1ZXMsIHRyZWF0bWVudCkgaWYgbm90IGRdCiAgICByZXR1cm4gc3VtKHRyZWF0ZWQpL2xlbih0cmVhdGVkKSAtIHN1bShjb250cm9sKS9sZW4oY29udHJvbCkKCnNlbGZfc2VsZWN0ZWQgPSBbaW50KGEgPiAwKSBmb3IgYSBpbiBhYmlsaXR5XQp5X3NlbGVjdGVkID0gW3RyZWF0ZWQgaWYgZCBlbHNlIGNvbnRyb2wgZm9yIGQsIHRyZWF0ZWQsIGNvbnRyb2wgaW4gemlwKHNlbGZfc2VsZWN0ZWQsIHkxLCB5MCldCgpwcmludChmIlRydWUgc2FtcGxlIEFURToge3RydWVfYXRlOi4yZn0iKQpwcmludChmIlJhbmRvbWlzZWQgZGlmZmVyZW5jZToge2RpZmZlcmVuY2UoeV9yYW5kb20sIGFzc2lnbm1lbnQpOi4yZn0iKQpwcmludChmIlNlbGYtc2VsZWN0ZWQgZGlmZmVyZW5jZToge2RpZmZlcmVuY2UoeV9zZWxlY3RlZCwgc2VsZl9zZWxlY3RlZCk6LjJmfSIp layout: vertical locale: en title: Random assignment versus self-selection --- :: The self-selected comparison combines the treatment effect with pre-existing ability differences. Running a more elaborate model does not change how treatment was assigned. ## Non-compliance separates offer from receipt Suppose an offer raises scholarship receipt from 20% to 70%, a 50-point first stage, while completion rises by 8 points. The Wald ratio is [[[]{.katex-mathml}[[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[0.70]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.20]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.08]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.16.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Under IV assumptions, this is a 16-point LATE for applicants whose receipt is changed by the offer. It is not the ATE of scholarship receipt for everyone. Report both: - **ITT:** effect of the policy lever—being offered; - **first stage:** how much the offer changed receipt; - **receipt effect:** only under the additional IV argument. ## Attrition can undo assignment comparability If outcome data are observed for 95% of controls but 80% of offered applicants, the observed groups need not remain comparable. Report follow-up by assignment, reasons, baseline predictors and outcome bounds or justified adjustments. Do not condition only on “students found in the graduate database” if treatment changes database coverage. ## Spillovers and assignment level If an offer is randomised by school, uncertainty must reflect school-level assignment. Treating thousands of pupils as independently assigned produces falsely narrow intervals. Peer spillovers may make the relevant estimand a school-level policy effect rather than an individual direct effect. ## Experiment audit | Item | Question | | ------------ | ----------------------------------------------------------------- | | assignment | was the random sequence implemented and concealed? | | analysis | is the primary estimate intention-to-treat? | | balance | are large chance imbalances understood, not significance-shopped? | | attrition | is missingness reported by assignment? | | interference | can one unit’s assignment affect another? | | outcome | was it defined before looking at results? | | multiplicity | which outcome and subgroup claims were primary? | ## Quick check The randomised estimate is imprecise, while an adjusted observational estimate is very precise. Which is more credible? ::legacy-details{title="Answer"} Precision and identification are different. Randomisation may provide a stronger counterfactual but wide uncertainty; the observational estimate may be biased despite narrow standard errors. Report both design credibility and sampling uncertainty rather than ranking them by p-value. :: [Next: Causal Diagrams and Controls](https://www.pengjiaxin.com/03-dags-controls) # Causal Diagrams and Controls []{#causal-diagrams-and-controls} ## A control set is a causal claim Suppose family resources [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} affect both scholarship receipt [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and degree completion [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgWFtQcmlvciBmYW1pbHkgcmVzb3VyY2VzXSAtLT4gRFtTY2hvbGFyc2hpcCByZWNlaXB0XQogIFggLS0+IFlbRGVncmVlIGNvbXBsZXRpb25dCiAgRCAtLT4gWQ==" locale="en"} The backdoor path [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[←]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} creates confounding. Conditioning on a well-measured pre-treatment [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may block it. The diagram does not prove that all common causes were measured. ## Three variables that look like controls ### Confounder [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[←]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A pre-treatment common cause can belong in an adjustment set. ### Mediator [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If mentoring hours [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are caused by the scholarship, controlling for [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} removes part of the total effect and may introduce further bias. It answers a different direct-effect question under stronger assumptions. ### Collider [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[←]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If survey response [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is affected by the scholarship and unobserved motivation [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, analysing responders only opens a non-causal association between [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## HarborMart-style “more controls” logic fails here For Pathways, consider: | Variable | Timing | Default role | Audit question | | ------------------------------ | ----------------------------------- | ------------------------------------------ | --------------------------------------------------- | | prior exam score | before offer | possible confounder or precision covariate | did it affect assignment and outcome? | | application essay rating | before offer but assessor-dependent | possible confounder/proxy | was it measured before assignment and consistently? | | advising attendance | after offer | mediator | is the target total or direct effect? | | first-year GPA | after offer | mediator and selection variable | does conditioning discard treatment pathways? | | completion-record availability | after treatment/outcome process | selection/collider risk | did treatment affect observation? | “Pre-treatment” is necessary for a standard confounder, but not sufficient. A pre-treatment variable can be an instrument, proxy or collider of earlier causes. ## Adjustment cannot create overlap Under conditional exchangeability and positivity, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[⊥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If every high-scoring applicant receives the scholarship and no low-scoring applicant does, outcome regression outside overlap depends on functional-form extrapolation. A rich control set can make the absence of comparison units harder to see. ## Design before data-driven control selection Use this order: 1. define the total or direct effect; 2. draw treatment, outcome, timing and plausible common causes; 3. exclude descendants of treatment from a total-effect adjustment set; 4. identify the smallest defensible sets and measurement limitations; 5. inspect overlap and sensitivity to unmeasured causes; 6. use prediction tools only within this causal design. LASSO can select variables that predict [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} while omitting weak outcome predictors that strongly affect [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, or include post-treatment variables. Algorithmic selection is not a substitute for a timing and causal audit. ## DAGs clarify assumptions; they do not certify them Two researchers can draw different graphs because institutional knowledge differs. Make contested arrows explicit, derive alternative adjustment sets and test whether the conclusion depends on those choices. A missing arrow is an assumption. It should be defended in prose, not hidden by a clean diagram. ## Quick check An offer increases advising attendance, and advising raises completion. Should advising be controlled when estimating the total effect of the offer? ::legacy-details{title="Answer"} Normally no. Advising is a treatment-induced pathway. Conditioning on it removes part of the total effect and may open bias if advising and completion share unmeasured causes. A mediation estimand is possible, but it is a different question with stronger assumptions. :: [Next: Regression and Inference](https://www.pengjiaxin.com/../01-regression/) # 0. Causal Questions and Designs []{#_0-causal-questions-and-designs} This module turns a policy topic into an estimand and an assignment argument. Its governing rule is simple: **no estimator repairs an undefined treatment or an implausible counterfactual**. ## Learning outcomes After this module, you should be able to: - separate offer, receipt, behaviour and outcome; - write ATE, ATT and ITT in potential-outcome notation; - explain why randomisation identifies a mean effect in expectation; - diagnose non-compliance, attrition, interference and treatment versions; - use a causal diagram to distinguish confounders, mediators and colliders. ## Chapter route 1. [Causal Questions and Estimands](https://www.pengjiaxin.com/01-causal-question-estimands) — define the quantity before the method. 2. [Potential Outcomes and Experiments](https://www.pengjiaxin.com/02-potential-outcomes-experiments) — observe one world and construct the other. 3. [Causal Diagrams and Controls](https://www.pengjiaxin.com/03-dags-controls) — decide what to adjust for and what not to adjust for. ## Prepare, work, follow up - **Prepare (45 min):** choose one intervention and write its unit, treatment, comparator, outcome and horizon. - **Workshop (120 min):** convert three vague claims into estimands; randomise the Pathways offer; audit attrition and spillovers. - **Follow up (60 min):** submit a directed graph and a control table with a one-sentence justification for every variable. Postgraduate extension: state consistency, positivity and no-interference assumptions separately, then show how one treatment version or spillover breaks each target. [Next: Causal Questions and Estimands](https://www.pengjiaxin.com/01-causal-question-estimands) # Microeconometrics — Designing Credible Counterfactuals []{#microeconometrics-designing-credible-counterfactuals} Microeconometrics is not a catalogue of estimators. It is a disciplined evidence chain: [[[]{.katex-mathml}[[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[question]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[estimand]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[assignment process]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[identification]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6679em;"}[[estimation]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[[inference]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[decision boundary]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The estimator comes after the counterfactual argument. A precisely estimated coefficient can still answer the wrong question. ## Two running cases ### Northbridge Pathways Scholarship Northbridge offers a scholarship to some school-leavers. Eligibility, offer, take-up, university entry, completion and later earnings are different variables. | Research object | Example | | ----------------- | ---------------------------------------------------------------- | | treatment | scholarship offer, receipt or university enrolment | | outcome | entry within one year, completion within five years, or earnings | | assignment | lottery, score cutoff, phased district rollout or self-selection | | possible estimand | ITT of an offer, LATE of enrolment, ATT for recipients | ### Clearborough Clean Air Zone Municipalities adopt a clean-air policy at different dates. Pollution, traffic, retail activity and health visits are observed over time. This case develops panel, difference-in-differences and synthetic-control reasoning. Both cases are synthetic. Real studies are named and linked explicitly. ## Learning outcomes By the end, you should be able to: 1. define treatment, outcome, population, horizon and estimand before selecting a model; 2. represent selection and timing with potential outcomes and causal diagrams; 3. distinguish a linear projection from a causal effect and choose defensible controls; 4. explain IV, fixed effects, DID, RDD, matching and synthetic control through their counterfactual source; 5. diagnose weak instruments, non-parallel trends, manipulation, poor overlap and failed pre-treatment fit; 6. match standard errors and uncertainty to sampling and treatment assignment; 7. interpret binary, multinomial, count, censored and selected outcomes without confusing coefficients with effects; 8. use machine learning for nuisance estimation and heterogeneity without claiming that prediction creates identification; 9. report sensitivity, external validity, data provenance and a reproducible evidence chain. The main route suits advanced undergraduates and taught postgraduates. Graduate extensions add formal identification, weak-identification-robust inference, staggered-treatment estimands, partial identification and policy learning. ## Preparation You need probability, expectations, confidence intervals, matrix-free OLS intuition and basic Python or R reading. Prior causal inference is not required. ::legacy-details{title="Ten-minute readiness check"} 1. Why can the same person’s outcome under treatment and no treatment not both be observed? 2. Does adding more controls always reduce omitted-variable bias? 3. Is a strong first-stage relationship enough to validate an instrument? 4. Does an insignificant pre-trend prove parallel trends? 5. If an RDD estimate is credible at a cutoff, does it identify an effect for everyone? Answers: the missing potential outcome is counterfactual; no—mediators and colliders can introduce bias; no—the exclusion and assignment arguments remain; no—pre-tests may have low power and the post-treatment counterfactual is still unobserved; no—the canonical estimand is local to the cutoff. :: ## Course route | Module | Central question | Main deliverable | | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------ | | [0. Causal questions and designs](https://www.pengjiaxin.com/00-foundations/) | What effect, for whom, under which assignment process? | identification memo | | [1. Regression and inference](https://www.pengjiaxin.com/01-regression/) | What does OLS estimate, and when can it support a causal claim? | regression and uncertainty audit | | [2. Instruments and panel data](https://www.pengjiaxin.com/02-iv-panel/) | Which variation isolates treatment, and what remains unidentified? | IV or within-unit design brief | | [3. Policy evaluation designs](https://www.pengjiaxin.com/03-policy-designs/) | How do time, thresholds and comparison units construct [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? | DID/RDD/weighting design | | [4. Choice and limited outcomes](https://www.pengjiaxin.com/04-outcomes-choice/) | How does the outcome’s support change modelling and interpretation? | marginal-effect report | | [5. Modern causal analysis](https://www.pengjiaxin.com/05-modern-causal/) | How should flexible prediction, sensitivity and policy learning enter? | cross-fitted or sensitivity analysis | | [6. Research workflow](https://www.pengjiaxin.com/06-workflow/) | Can another researcher audit the complete evidence chain? | replication-ready research record | | [Capstone](https://www.pengjiaxin.com/capstone/) | Which design best evaluates the Pathways expansion? | policy memo plus technical appendix | | [Appendix](https://www.pengjiaxin.com/appendix/) | Which formula, diagnostic or source is needed? | revision and evidence map | ## The identification memo Complete this before running a regression: | Field | Pathways example | | -------------- | ------------------------------------------------------------ | | decision | expand, redesign or stop scholarship offers | | unit | one eligible school-leaver | | treatment | offer received by 31 August 2024 | | outcome | degree completion within five academic years | | estimand | ITT among applicants in the 2024 eligibility window | | assignment | lottery within score band 68–72 | | counterfactual | outcomes of comparable applicants assigned no offer | | interference | peer and university-capacity spillovers | | missingness | completion not mature; migration may hide outcomes | | inference | assignment at applicant level, schools may induce dependence | | scope | applicants in participating districts and score band | Changing “offer” to “enrolment” changes the estimand and usually the identification argument. ## Four claims that must stay separate | Claim | Example | Evidence needed | | ----------- | -------------------------------------- | ------------------------------------------------------------------ | | descriptive | recipients complete at a higher rate | transparent sample and denominator | | predictive | prior scores predict completion | time-valid out-of-sample performance | | causal | an offer raises completion by 6 points | credible treatment assignment and counterfactual | | policy | expand offers to another score band | causal effects, costs, capacity, distribution and transportability | A causal estimate need not answer a policy question if the affected population, treatment version or capacity changes. ## A 13-week teaching route | Week | Preparation | Workshop output | | ---: | ------------------------------------- | -------------------------------------------------- | | 1 | potential outcomes and estimands | one-page identification memo | | 2 | experiments and causal diagrams | assignment and control audit | | 3 | OLS, FWL and selection | projection versus causal interpretation | | 4 | uncertainty and clustering | inference plan tied to design | | 5 | IV and LATE | first-stage, exclusion and weak-IV audit | | 6 | panel and fixed effects | within-unit comparison and threat map | | 7 | 2×2 and staggered DID | group-time estimand and event-study plan | | 8 | RDD | cutoff graph, bandwidth and falsification plan | | 9 | matching and weighting | overlap and balance report | | 10 | synthetic control | donor-pool and placebo audit | | 11 | discrete, count and selected outcomes | marginal-effect interpretation | | 12 | DML, heterogeneity and sensitivity | cross-fit or robustness-value exercise | | 13 | capstone defence | recommendation, limitations and replication record | Suggested workload is 90 minutes of preparation, two hours of workshop activity and 90 minutes of follow-up per week. Every executable cell has a static worked result; students may complete equivalent calculations in a spreadsheet or on paper. Tables carry the key values, and colour is never the only evidence channel. ## Assessment alignment This is a teaching template, not an institutional grading rule: | Task | Suggested share | Evidence assessed | | ------------------- | --------------: | ------------------------------------------------------- | | identification memo | 20% | estimand, assignment, assumptions and scope | | method replication | 25% | data construction, estimator, inference and diagnostics | | design comparison | 25% | counterfactual quality, sensitivity and communication | | integrated capstone | 30% | complete evidence chain and policy boundary | Postgraduate work should distinguish identification from estimation formally, justify the asymptotic or randomisation reference, and report a sensitivity or partial-identification analysis. ## Current evidence window The reading map was checked on **1 August 2026**. Three updates shape this edition: - Modern DID work separates group-time effects, aggregation and sensitivity rather than interpreting a single staggered two-way-fixed-effects coefficient automatically; see [Callaway and Sant’Anna (2021)](https://doi.org/10.1016/j.jeconom.2020.12.001){rel=""nofollow""}, [Borusyak, Jaravel and Spiess (2024)](https://doi.org/10.1093/restud/rdae007){rel=""nofollow""} and [Rambachan and Roth (2023)](https://doi.org/10.1093/restud/rdad018){rel=""nofollow""}. - IV practice now includes quantitative sensitivity to exclusion and ignorability violations, not only first-stage strength; see [Cinelli and Hazlett (2025)](https://doi.org/10.1093/biomet/asaf004){rel=""nofollow""}. - The [AEA Data and Code Availability Policy](https://www.aeaweb.org/journals/data/data-code-policy){rel=""nofollow""}, revised in February 2026, requires provenance and computational detail sufficient for replication, including when source data are restricted. The [reading and software map](https://www.pengjiaxin.com/appendix/29-reading-software-map) distinguishes foundational results, current methods, applied illustrations and live software documentation. ## Study discipline For every result, write six lines: 1. **estimand:** which counterfactual contrast; 2. **assignment:** where treatment variation came from; 3. **assumption:** what makes the comparison causal; 4. **estimator:** how the contrast was calculated; 5. **uncertainty:** what varies in repeated assignment or sampling; 6. **scope:** for whom, where, when and under which treatment version. Start with [causal questions and estimands](https://www.pengjiaxin.com/00-foundations/01-causal-question-estimands). # OLS as a Projection []{#ols-as-a-projection} ## Least squares answers a geometric question For a scalar regressor [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the population linear projection [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[u]{.mord.mathnormal}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} has slope [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It is the best mean-squared-error linear summary of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} using [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. This statement does not require the true conditional mean to be linear and does not make [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} exogenous. ## Small calculation | Prior score [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | First-year credits [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | 50 | 42 | | 60 | 48 | | 70 | 55 | | 80 | 61 | | 90 | 69 | Here [[]{.katex-mathml}[[[]{.strut style="height:0.8201em;"}[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[70]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8201em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[55]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The sample slope is [[[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5196em;vertical-align:-1.0098em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-2.2899em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}]{.mord}]{style="top:-3.6897em;"}]{.vlist style="height:1.5098em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.0098em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.67.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Within this five-observation teaching sample, one score point is associated with about 0.67 additional credits. It is not evidence that manipulating the prior score would cause credits to rise. ## Multiple regression is conditional projection With scholarship receipt [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and pre-treatment controls [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9963em;vertical-align:-0.1944em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} compares observations with different [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} after removing linear differences associated with [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A causal interpretation requires that the residual treatment variation behaves as if unrelated to the relevant potential outcomes, plus treatment and outcome definitions, overlap and an appropriate functional form or estimand argument. “Controlling for age and score” states a computation. It does not explain why all confounding paths are blocked. ## Coefficients need units and support Suppose log earnings are regressed on years of education: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[0.08]{.mord}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The exact percentage difference for one additional year is [[]{.katex-mathml}[[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[100]{.mord}[(]{.mopen}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.08]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[8.33%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; “8%” is the small-coefficient approximation. This remains an association unless schooling variation is credibly exogenous. Do not extrapolate a line estimated over 11–16 years of education to 25 years merely because the formula returns a number. ## Residuals expose misspecification, not causality alone Inspect residuals against: - fitted values and key regressors; - time, location and treatment status; - missingness and sample-selection indicators; - influential observations and support boundaries. Patterns can reveal nonlinearity, changing variance or data errors. A flat residual plot cannot prove no unmeasured confounding. ## What adding a variable changes Adding a control can change [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} because it: 1. removes confounded variation; 2. improves precision; 3. changes the population with complete data; 4. forces comparisons within weak-overlap cells; 5. conditions on a mediator or collider; 6. changes the functional-form approximation. The phrase “the effect is robust to controls” is incomplete without explaining which mechanism each control addresses. ## Quick check The scholarship coefficient falls from 0.10 to 0.04 after prior score is added. Does that prove the remaining 0.04 is causal? ::legacy-details{title="Answer"} No. The change is consistent with prior score explaining part of the raw association, but other confounding, measurement error, selection, functional form or bad-control problems may remain. Identification requires a design argument, not coefficient stability alone. :: [Next: FWL, Selection and Controls](https://www.pengjiaxin.com/05-fwl-selection-controls) # FWL, Selection and Controls []{#fwl-selection-and-controls} ## Frisch–Waugh–Lovell reveals the comparison In [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9963em;vertical-align:-0.1944em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[u]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the coefficient [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} can be obtained in three steps: 1. regress [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} on [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and keep residual [[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 2. regress [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} on [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and keep residual [[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. regress [[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} on [[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Thus adjusted OLS uses treatment variation unexplained by the controls. If [[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is nearly zero for some profiles, the estimate relies on narrow support and numerical extrapolation. ::pyodide --- code64: eCA9IFsxLCAyLCAzLCA0LCA1LCA2LCA3LCA4XQpkID0gWzAsIDAsIDAsIDEsIDAsIDEsIDEsIDFdCnkgPSBbNDIsIDQ1LCA0OSwgNTcsIDU1LCA2MywgNjgsIDcyXQoKZGVmIGludGVyY2VwdF9zbG9wZShhLCBiKToKICAgIGFfYmFyID0gc3VtKGEpIC8gbGVuKGEpCiAgICBiX2JhciA9IHN1bShiKSAvIGxlbihiKQogICAgc2xvcGUgPSBzdW0oKHUtYV9iYXIpKih2LWJfYmFyKSBmb3IgdSwgdiBpbiB6aXAoYSwgYikpIC8gc3VtKCh1LWFfYmFyKSoqMiBmb3IgdSBpbiBhKQogICAgcmV0dXJuIGJfYmFyIC0gc2xvcGUqYV9iYXIsIHNsb3BlCgpfLCBuYWl2ZSA9IGludGVyY2VwdF9zbG9wZShkLCB5KQphZCwgYmQgPSBpbnRlcmNlcHRfc2xvcGUoeCwgZCkKYXksIGJ5ID0gaW50ZXJjZXB0X3Nsb3BlKHgsIHkpCmRfcmVzaWQgPSBbZGkgLSAoYWQgKyBiZCp4aSkgZm9yIGRpLCB4aSBpbiB6aXAoZCwgeCldCnlfcmVzaWQgPSBbeWkgLSAoYXkgKyBieSp4aSkgZm9yIHlpLCB4aSBpbiB6aXAoeSwgeCldCmFkanVzdGVkID0gc3VtKGEqYiBmb3IgYSwgYiBpbiB6aXAoZF9yZXNpZCwgeV9yZXNpZCkpIC8gc3VtKGEqYSBmb3IgYSBpbiBkX3Jlc2lkKQoKcHJpbnQoZiJOYWl2ZSB0cmVhdGVk4oCTdW50cmVhdGVkIGRpZmZlcmVuY2U6IHtuYWl2ZTouMmZ9IikKcHJpbnQoZiJGV0wtYWRqdXN0ZWQgc2Nob2xhcnNoaXAgY29lZmZpY2llbnQ6IHthZGp1c3RlZDouMmZ9IikKcHJpbnQoZiJSZXNpZHVhbCB0cmVhdG1lbnQgcmFuZ2U6IHttaW4oZF9yZXNpZCk6LjJmfSB0byB7bWF4KGRfcmVzaWQpOi4yZn0iKQ== layout: vertical locale: en title: See the FWL comparison --- :: The adjustment changes which units supply the comparison. It does not verify that [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is sufficient for exchangeability. ## Omitted-variable bias has a direction Suppose the true model is [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[A]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[u]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} but ability [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is omitted. If the regression of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} on [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} has slope [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the short-regression coefficient is [[[]{.katex-mathml}[[[]{.strut style="height:0.6679em;"}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3.35em;"}]{.vlist style="height:0.6679em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If ability raises earnings by £4,000 per unit and scholarship recipients average 0.5 units higher, omitted ability contributes £2,000 to the raw scholarship difference. This calculation clarifies a plausible bias; it does not establish that ability is the only omission. ## Precision variables versus confounders In a randomised experiment, pre-treatment outcome predictors can reduce standard errors, but randomisation already supplies identification. In an observational design, controls must support an exchangeability argument. Keep these roles separate: | Role | Example | Reason to include | | ------------------ | ----------------------------------------------------- | ---------------------------------------- | | design variable | lottery stratum | respect assignment and improve precision | | confounder | prior resources affecting receipt and completion | block a backdoor path | | precision variable | baseline completion predictor unrelated to assignment | reduce residual variance | | mediator | advising caused by offer | exclude for total effect | | collider | response caused by treatment and motivation | avoid conditioning | ## Flexible adjustment still needs design Interactions, splines or machine learning may represent [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} better. They cannot recover counterfactual outcomes where there is no treatment overlap, and they cannot determine whether [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contains post-treatment variables. Report: - treatment propensity or overlap by important profiles; - effective sample after missing controls; - whether controls were defined before outcome inspection; - sensitivity to plausible unmeasured confounding; - a design-based estimate where available. ## Quick check A postcode control improves prediction but nearly determines scholarship receipt. Is more precise adjustment automatically better? ::legacy-details{title="Answer"} No. It may expose poor overlap, amplify sensitivity to model form and act as a proxy for unmeasured mechanisms. Inspect residual treatment support and define the target population. Trimming or changing the estimand may be more honest than extrapolating. :: [Next: Inference and Clustering](https://www.pengjiaxin.com/06-inference-clustering) # Inference and Clustering []{#inference-and-clustering} ## Ask what could have varied A standard error describes variation under a reference process. Candidates include: - repeated sampling of units from a population; - repeated random assignment of a fixed sample; - repeated shocks correlated within schools, firms or regions; - model-based disturbances under stated assumptions. Choosing `robust=True` without naming the reference process is not an inference plan. ## Heteroskedasticity versus clustering Heteroskedasticity-robust standard errors allow observation-specific variances but still require suitable independence across observations. Cluster-robust errors allow arbitrary dependence within clusters and rely on many sufficiently independent clusters. If Pathways is assigned at school level, pupils in a school share assignment and shocks. The effective assignment count is the number of schools, not the number of pupils. ### Worked scale comparison Suppose 1,000 pupils are nested in 40 schools. With an intra-school correlation of 0.10 and 25 pupils per school, the approximate design effect is [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[25]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[(]{.mopen}[0.10]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[3.4.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Treating pupils as independent can understate variance by roughly this factor in a simple equal-cluster setting. This calculation is diagnostic, not a substitute for design-appropriate estimation. ## Cluster where assignment or residual dependence lives | Design | Likely inference concern | | ---------------------------------------- | -------------------------------------------------------------- | | pupil lottery within each school | strata-aware individual assignment; possible school dependence | | policy assigned to 40 schools | school-level assignment and clustering | | municipality policy over 12 years | serial correlation within municipality | | national policy with one treated country | conventional many-cluster asymptotics are unavailable | | RDD at an individual score cutoff | local observations; account for design and bandwidth procedure | Clustering at the finest available level is not automatically conservative or valid. The level follows the assignment and sampling structure. [Abadie et al. (2023)](https://doi.org/10.1093/qje/qjac038){rel=""nofollow""} formalise sampling and design reasons for clustering and show why the decision is more subtle than “observations share a label.” ## Few clusters require different evidence With few treated or total clusters, ordinary cluster-robust approximations can perform poorly. Depending on the design, consider: - randomisation or permutation inference using the actual assignment; - wild-cluster bootstrap with a justified implementation; - small-sample degrees-of-freedom corrections; - aggregation to the assignment level; - honest acknowledgement that precision is weak. No correction creates independent treatment variation that the study lacks. ## Confidence intervals and substantive uncertainty A 95% interval does not contain every uncertainty source. It normally excludes: - violation of exclusion or parallel-trend assumptions; - outcome mismeasurement and attrition; - treatment-version ambiguity; - specification and outcome searching; - transport to another population. Report sampling uncertainty beside design sensitivity rather than allowing one narrow interval to imply total certainty. ## A minimum inference note > Standard errors are clustered by school because assignment occurred at school level and outcomes may share school shocks; there are 40 clusters, of which 20 were assigned treatment. We also report randomisation-inference p-values using the blocked assignment rule. This is more informative than “robust standard errors in parentheses.” ## Quick check A district policy is assigned once to each of eight districts, but the dataset contains 200,000 residents. Can resident-level robust standard errors justify a precise estimate? ::legacy-details{title="Answer"} No. Independent policy variation is at district level. Resident count does not replace the eight assignment units. Use a design appropriate to few clusters and describe the severe limits on inference. :: [Next: Instruments and Panel Data](https://www.pengjiaxin.com/../02-iv-panel/) # 1. Regression and Inference []{#_1-regression-and-inference} OLS is both a descriptive projection and a component inside many research designs. Its causal meaning comes from assignment and assumptions, not from the word “regression.” ## Learning outcomes After this module, you should be able to: - interpret OLS as a population linear projection; - derive a slope from covariance and variance; - use Frisch–Waugh–Lovell residualisation to explain controls; - diagnose omitted-variable, bad-control and extrapolation risks; - choose heteroskedasticity-robust, clustered or randomisation-based uncertainty from the design; - report magnitude, interval and target population instead of significance alone. ## Chapter route 1. [OLS as a Projection](https://www.pengjiaxin.com/04-ols-projection) — what least squares estimates before causal language. 2. [FWL, Selection and Controls](https://www.pengjiaxin.com/05-fwl-selection-controls) — which variation remains after adjustment. 3. [Inference and Clustering](https://www.pengjiaxin.com/06-inference-clustering) — what is allowed to vary and at which level. ## Prepare, work, follow up - **Prepare (60 min):** calculate one slope from five observations and mark each variable’s observation time. - **Workshop (120 min):** reproduce naïve and adjusted Pathways estimates; construct two rival causal diagrams; defend an inference level. - **Follow up (60 min):** submit a three-column table: coefficient interpretation, causal requirement and failure consequence. Postgraduate extension: state the projection orthogonality conditions, discuss misspecification-robust inference and separate sampling-based from design-based uncertainty. [Next: OLS as a Projection](https://www.pengjiaxin.com/04-ols-projection) # Instrumental Variables []{#instrumental-variables} ## The instrument changes the comparison Scholarship receipt [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is selected: motivated applicants may be more likely to obtain it and complete a degree. Pathways randomly assigns an offer [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, which changes receipt. :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgWltSYW5kb20gb2ZmZXIgWl0gLS0+IERbU2Nob2xhcnNoaXAgcmVjZWlwdCBEXQogIEQgLS0+IFlbRGVncmVlIGNvbXBsZXRpb24gWV0KICBVW01vdGl2YXRpb24gVV0gLS0+IEQKICBVIC0tPiBZ" locale="en"} IV uses only the component of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} moved by [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The crucial omitted arrow is [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} outside receipt; that omission is the exclusion restriction. ## Three empirical objects For a binary instrument: | Object | Calculation | Pathways meaning | | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------- | | first stage | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | offer changes receipt | | reduced form | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | offer changes completion | | Wald ratio | reduced form / first stage | receipt effect for compliers under assumptions | If receipt is 70% versus 20%, and completion is 58% versus 50%, [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[W]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[d]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[0.70]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.20]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.58]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.50]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.16.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The 16-point estimate scales the ITT by the offer-induced 50-point change in receipt. ## Four assumptions do different work 1. **Relevance:** [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} changes [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. **Assignment/independence:** [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is independent of relevant potential outcomes or as-if assigned conditional on stated variables. 3. **Exclusion:** [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} affects [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} only through the defined treatment. 4. **Monotonicity:** the instrument does not make some units do the opposite of everyone else’s direction. Randomising the offer supports assignment. It does not guarantee exclusion: the letter may provide encouragement, information or status even when no money is received. ## 2SLS is a computation, not the argument With controls [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, two-stage least squares can be written as: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0733em;vertical-align:-0.15em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Standard software estimates both stages and the correct joint uncertainty. Manually replacing [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} by [[]{.katex-mathml}[[[]{.strut style="height:0.9233em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and reading ordinary second-stage standard errors is incorrect. ## Exclusion is substantive | Proposed instrument | Plausible direct path to outcome | | ------------------------ | ---------------------------------------------------- | | scholarship offer letter | information, encouragement or stigma | | distance to university | local labour market and family location | | judge assignment | judge characteristics affect multiple case decisions | | class-size rule | sorting, other resources or score manipulation | Negative-control outcomes, institutional details and alternative channels can challenge exclusion, but no single statistical test proves it. The classic LATE framework is formalised by Angrist, Imbens and Rubin, [Identification of Causal Effects Using Instrumental Variables](https://doi.org/10.1080/01621459.1996.10476902){rel=""nofollow""}. ## Report the complete chain - instrument assignment and timing; - first-stage magnitude and uncertainty; - reduced form in outcome units; - 2SLS/Wald estimate and weak-IV-robust interval; - exclusion channels and falsification evidence; - complier population and treatment version; - whether effects can be transported to the policy population. ## Quick check The offer has a strong first stage but also includes free advising unavailable to non-recipients. If treatment is defined only as cash receipt, what fails? ::legacy-details{title="Answer"} Exclusion is doubtful because the offer can affect completion through advising as well as cash receipt. Redefine the treatment package, estimate the ITT of the offer, or supply a design that separates the channels. :: [Next: Weak IV and LATE](https://www.pengjiaxin.com/08-weak-iv-late) # Weak Instruments and LATE []{#weak-instruments-and-late} ## A ratio becomes unstable when its denominator is small The Wald estimator is [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5337em;vertical-align:-0.8733em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.3em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9833em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.mord}]{style="top:-2.1267em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.3em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9833em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.6603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8733em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If the first stage is 2 percentage points and the reduced form is 1 point, the ratio is 0.50. A one-point sampling change in the first stage moves it to 0.33 or 1.00. Conventional normal approximations can become misleading. ::pyodide --- code64: aW1wb3J0IHJhbmRvbQoKZGVmIG9uZV9yYXRpbyhybmcsIGZpcnN0X3N0YWdlLCBuPTUwMCwgZWZmZWN0PTIuMCk6CiAgICB6ID0gW3JuZy5yYW5kcmFuZ2UoMikgZm9yIF8gaW4gcmFuZ2UobildCiAgICBkID0gW10KICAgIHkgPSBbXQogICAgZm9yIHppIGluIHo6CiAgICAgICAgcHJvYmFiaWxpdHkgPSAwLjMwICsgZmlyc3Rfc3RhZ2UgKiB6aQogICAgICAgIGRpID0gaW50KHJuZy5yYW5kb20oKSA8IHByb2JhYmlsaXR5KQogICAgICAgIGQuYXBwZW5kKGRpKQogICAgICAgIHkuYXBwZW5kKGVmZmVjdCpkaSArIHJuZy5nYXVzcygwLCAyKSkKICAgIGRlZiBnYXAodmFsdWVzKToKICAgICAgICBvbmUgPSBbdiBmb3IgdiwgemkgaW4gemlwKHZhbHVlcywgeikgaWYgemkgPT0gMV0KICAgICAgICB6ZXJvID0gW3YgZm9yIHYsIHppIGluIHppcCh2YWx1ZXMsIHopIGlmIHppID09IDBdCiAgICAgICAgcmV0dXJuIHN1bShvbmUpL2xlbihvbmUpIC0gc3VtKHplcm8pL2xlbih6ZXJvKQogICAgZnMgPSBnYXAoZCkKICAgIHJldHVybiBOb25lIGlmIGFicyhmcykgPCAwLjAwNSBlbHNlIGdhcCh5KS9mcwoKZGVmIHN1bW1hcnkoZmlyc3Rfc3RhZ2UpOgogICAgcm5nID0gcmFuZG9tLlJhbmRvbSgyMDI2KQogICAgcmF0aW9zID0gW29uZV9yYXRpbyhybmcsIGZpcnN0X3N0YWdlKSBmb3IgXyBpbiByYW5nZSg0MDApXQogICAgcmF0aW9zID0gc29ydGVkKHggZm9yIHggaW4gcmF0aW9zIGlmIHggaXMgbm90IE5vbmUpCiAgICByZXR1cm4gcmF0aW9zW2xlbihyYXRpb3MpLy8xMF0sIHJhdGlvc1tsZW4ocmF0aW9zKS8vMl0sIHJhdGlvc1s5KmxlbihyYXRpb3MpLy8xMF0KCmZvciBzdHJlbmd0aCBpbiBbMC41MCwgMC4wNV06CiAgICBwMTAsIG1lZGlhbiwgcDkwID0gc3VtbWFyeShzdHJlbmd0aCkKICAgIHByaW50KGYiZmlyc3Qgc3RhZ2Uge3N0cmVuZ3RoOi4yZn06IHAxMD17cDEwOi4yZn0sIG1lZGlhbj17bWVkaWFuOi4yZn0sIHA5MD17cDkwOi4yZn0iKQ== layout: vertical locale: en title: Compare strong and weak IV ratios --- :: Both designs use a valid simulated instrument. The weak design produces a much wider and more erratic ratio even with the same structural effect. ## The first-stage F statistic is a warning, not a certificate Rules such as “F above 10” are context-dependent. Instrument count, heteroskedasticity, clustering, multiple endogenous variables and the desired inferential guarantee matter. [Andrews, Stock and Sun (2019)](https://doi.org/10.1146/annurev-economics-080218-025643){rel=""nofollow""} review weak-instrument diagnostics and robust inference, including non-homoskedastic settings. Report the first-stage specification, relevant statistic and weak-IV-robust confidence set rather than one threshold alone. ## LATE belongs to compliers For binary [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, principal strata are: | Type | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Meaning | | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -------------------------- | | never-taker | 0 | 0 | never receives scholarship | | complier | 0 | 1 | receipt changed by offer | | always-taker | 1 | 1 | receives regardless | | defier | 1 | 0 | does opposite of offer | Under monotonicity, the Wald ratio identifies [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the effect for compliers. Different instruments can move different people and identify different LATEs. ## A strong instrument can answer a narrow question If the offer affects only applicants uncertain about participation, the LATE may not describe always-takers, never-takers or applicants outside the eligibility band. Characterise compliers through first-stage heterogeneity and institutional knowledge, without pretending individual types are observed. ## Sensitivity goes beyond strength Even a strong instrument can violate exclusion or independence. [Cinelli and Hazlett (2025)](https://doi.org/10.1093/biomet/asaf004){rel=""nofollow""} develop an omitted-variable-bias framework for IV sensitivity, separating possible side effects of the instrument and confounding of the instrument. The teaching lesson is practical: report how strong an omitted pathway would need to be to change the conclusion, benchmarked against observed variables. Sensitivity analysis quantifies a violation; it does not prove the violation absent. ## Quick check Two valid instruments produce estimates of 0.10 and 0.30 with precise first stages. Must one be wrong? ::legacy-details{title="Answer"} No. With heterogeneous effects, the instruments may identify LATEs for different complier groups. Compare assignment mechanisms, first-stage populations and treatment margins before pooling or declaring conflict. :: [Next: Panel Fixed Effects](https://www.pengjiaxin.com/09-panel-fixed-effects) # Panel Fixed Effects []{#panel-fixed-effects} ## Panel data change the comparison For unit [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and time [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} absorbs time-invariant unit differences; - [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} absorbs shocks common to all units in a period; - [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is estimated from within-unit treatment changes after common time changes are removed. Units that never change [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} do not directly identify [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, although they can help estimate other components. ## The within transformation With unit fixed effects only, subtract each unit’s time mean: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9701em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[ε]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The unobserved constant [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} disappears. A permanent characteristic such as birthplace also disappears, so its coefficient cannot be separately estimated in the standard within regression. For two-way fixed effects, subtract unit and time means and add the grand mean. ::web-r --- code64: aWQgPC0gcmVwKDE6NCwgZWFjaCA9IDQpCnBlcmlvZCA8LSByZXAoMTo0LCB0aW1lcyA9IDQpCmFscGhhIDwtIHJlcChjKC0zLCAwLCAyLCA1KSwgZWFjaCA9IDQpCnggPC0gYygxLDIsMiwzLCAyLDMsNSw2LCA0LDQsNSw3LCA2LDcsOCwxMCkKdGltZV9zaG9jayA8LSByZXAoYygtMSwwLDAuNSwxLjUpLCB0aW1lcyA9IDQpCm5vaXNlIDwtIGMoLjIsLS4xLC4xLC0uMiwgLS4yLC4yLC0uMSwuMSwgLjEsLS4yLC4yLC0uMSwgLS4xLC4xLC0uMiwuMikKeSA8LSAxMCArIDIqeCArIGFscGhhICsgdGltZV9zaG9jayArIG5vaXNlCgp0d19kZW1lYW4gPC0gZnVuY3Rpb24odikgewogIHYgLSBhdmUodiwgaWQpIC0gYXZlKHYsIHBlcmlvZCkgKyBtZWFuKHYpCn0KCnBvb2xlZCA8LSBjb2VmKGxtKHkgfiB4KSlbMl0KeF90dyA8LSB0d19kZW1lYW4oeCkKeV90dyA8LSB0d19kZW1lYW4oeSkKd2l0aGluIDwtIGNvZWYobG0oeV90dyB+IHhfdHcgLSAxKSlbMV0KCmNhdChzcHJpbnRmKCJQb29sZWQgc2xvcGU6ICUuM2ZcbiIsIHBvb2xlZCkpCmNhdChzcHJpbnRmKCJUd28td2F5IHdpdGhpbiBzbG9wZTogJS4zZlxuIiwgd2l0aGluKSkKY2F0KCJUcnVlIHNsb3BlIHVzZWQgdG8gZ2VuZXJhdGUgb3V0Y29tZXM6IDIuMDAwXG4iKQ== layout: vertical locale: en title: Compare pooled and two-way within slopes --- :: The pooled slope mixes between-unit differences with within-unit change. The two-way transformation removes the constructed unit and period components; real data require a causal argument for the remaining change. ## What fixed effects do not remove | Threat | Example | | ------------------------ | -------------------------------------------------------- | | time-varying confounding | a local recession triggers policy and changes employment | | anticipation | firms adjust before the clean-air zone starts | | reverse causality | rising pollution accelerates policy adoption | | measurement error | differencing amplifies noisy treatment changes | | dynamic response | current outcome depends on past policy and past outcome | | spillovers | traffic moves from treated to comparison municipalities | “Controls for all unit characteristics” means all **time-invariant additive** unit components in the specified model—not every unobserved factor. ## Strict exogeneity is demanding A standard fixed-effects argument often requires [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Current shocks must not predict past or future treatment after conditioning. Policy adopted in response to an outcome shock can violate this condition even when unit fixed effects are present. ## Variation and weighting audit Report: - how many units switch treatment and when; - within versus between variation; - units lost because outcomes or treatment do not vary; - leverage of unusual switchers; - clustering and serial-correlation treatment; - whether the coefficient averages heterogeneous effects with problematic weights. For causal interpretation of two-way fixed-effects regressions, [Imai and Kim (2021)](https://doi.org/10.1017/pan.2020.33){rel=""nofollow""} emphasise explicit counterfactual and treatment-history assumptions rather than a purely mechanical panel specification. ## Quick check A municipality’s policy changes once, immediately after a pollution spike. Do municipality and year fixed effects identify the policy effect? ::legacy-details{title="Answer"} Not automatically. The time-varying spike may both trigger adoption and predict future pollution. Fixed effects remove stable municipality differences and common year shocks, not this municipality-specific dynamic confounding. :: [Next: Dynamic Panels and Limits](https://www.pengjiaxin.com/10-dynamic-panel) # Dynamic Panels and Limits []{#dynamic-panels-and-limits} ## Persistence changes the model Air pollution, earnings and firm productivity are persistent. A dynamic panel may write [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[ρ]{.mord.mathnormal}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} After within transformation, the demeaned lagged outcome is correlated with the demeaned error in a short panel. This is the source of Nickell bias; adding a lag to a fixed-effects regression is not innocuous. ## First differences move, not remove, the problem Differencing gives [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[ρ]{.mord.mathnormal}[Δ]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[Δ]{.mord}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[Δ]{.mord}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} disappears, but [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[Δ]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contains [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and is correlated with [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Arellano–Bond-style methods use deeper lags as instruments under restrictions on serial correlation and initial conditions. Instrument proliferation can overfit endogenous variables and weaken specification tests. Report instrument count, lag choices and sensitivity; more instruments are not automatically better. ## Dynamic causal effects are not one coefficient A clean-air policy can have: - anticipation before formal adoption; - an immediate traffic response; - gradual fleet replacement; - displacement to neighbouring areas; - persistence after reversal. Define treatment history [[]{.katex-mathml}[[[]{.strut style="height:0.9701em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and the horizon-specific contrast. A contemporaneous coefficient [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may mix these processes or impose a constant effect that the policy question does not need. ## Lagged outcome: confounder, mediator or state? | Setting | Role of [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[−]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Risk | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | | treatment begins after baseline | precision/confounding control | functional-form and overlap | | treatment already operated at [[]{.katex-mathml}[[[]{.strut style="height:0.6984em;vertical-align:-0.0833em;"}[t]{.mord,mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | post-treatment mediator | blocks part of cumulative effect | | policy responds to [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[−]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | treatment assignment predictor | sequential-confounding problem | | outcome measured with error | noisy state | differencing can amplify noise | Draw the timeline before deciding to “control for the lag.” ## Unbalanced panels and attrition Units may leave because firms close, pupils migrate or records fail. Fixed effects do not correct selective observation. Audit: 1. entry and exit by treatment history; 2. outcome availability at every intended horizon; 3. whether treatment changes observation; 4. balanced-panel and inverse-probability sensitivity; 5. bounds under plausible missing outcomes. Restricting to a balanced panel can itself condition on survival. ## Choose the simplest design that answers the question | Question | Useful starting point | | ----------------------------------------- | ------------------------------------------------------ | | remove stable unit levels | fixed effects or first differences | | estimate immediate policy adoption effect | event-time or DID design with assumptions | | model state dependence | dynamic panel with justified lag instruments/model | | estimate treatment histories | longitudinal causal methods | | forecast future outcomes | predictive panel model, with no automatic causal claim | ## Quick check A five-year panel includes lagged earnings and worker fixed effects. Why might the treatment coefficient still be biased? ::legacy-details{title="Answer"} The transformed lag is correlated with transformed errors in short panels; treatment may respond to past shocks; lagged earnings may be post-treatment; attrition and measurement error may remain. The exact threat depends on the timeline and target effect. :: [Next: Policy Evaluation Designs](https://www.pengjiaxin.com/../03-policy-designs/) # 2. Instruments and Panel Data []{#_2-instruments-and-panel-data} IV and fixed effects remove different sources of endogeneity. IV uses variation induced by an instrument; fixed effects remove time-invariant unit components. Neither is a generic “causal button.” ## Learning outcomes After this module, you should be able to: - map first stage, reduced form and structural equation; - defend relevance, assignment, exclusion and monotonicity separately; - interpret a Wald/2SLS estimate as LATE under heterogeneous effects; - diagnose weak instruments and use weak-identification-robust evidence; - derive one- and two-way within transformations; - identify time-varying confounding, dynamics and attrition that fixed effects do not remove. ## Chapter route 1. [Instrumental Variables](https://www.pengjiaxin.com/07-iv-identification) — which external variation moves treatment? 2. [Weak IV and LATE](https://www.pengjiaxin.com/08-weak-iv-late) — whose effect and how fragile is the ratio? 3. [Panel Fixed Effects](https://www.pengjiaxin.com/09-panel-fixed-effects) — what within-unit variation remains? 4. [Dynamic Panels and Limits](https://www.pengjiaxin.com/10-dynamic-panel) — when lags, anticipation and short panels change the argument. ## Prepare, work, follow up - **Prepare (60 min):** draw one proposed instrument with every plausible path to the outcome; list one time-invariant and one time-varying confounder. - **Workshop (120 min):** calculate a Wald estimate, stress a weak first stage, and reproduce a two-way within estimate. - **Follow up (75 min):** write an exclusion-restriction defence and a panel threat table with evidence that could contradict each claim. Postgraduate extension: report Anderson–Rubin or related weak-IV-robust inference and state the strict-exogeneity condition for the fixed-effects estimator. [Next: Instrumental Variables](https://www.pengjiaxin.com/07-iv-identification) # Difference-in-Differences []{#difference-in-differences} ## DID subtracts a counterfactual change Clearborough introduces a clean-air zone; Westborough does not. | Mean pollution, μg/m³ | Before | After | Change | | --------------------- | -----: | ----: | -----: | | Clearborough | 42 | 30 | −12 | | Westborough | 38 | 34 | −4 | The DID estimate is [[[]{.katex-mathml}[[[]{.strut style="height:0.9833em;"}[[[[[[]{.pstrut style="height:3em;"}[[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.3em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9833em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[12]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[4]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[−]{.mord}[8]{.mord}[[ μg/m³]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Equivalently, Westborough’s −4 change predicts a no-policy Clearborough value of [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[42]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[38]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; observed pollution is 30, eight units lower. ::pyodide --- code64: dHJlYXRlZF9iZWZvcmUsIHRyZWF0ZWRfYWZ0ZXIgPSA0MiwgMzAKY29udHJvbF9iZWZvcmUsIGNvbnRyb2xfYWZ0ZXIgPSAzOCwgMzQKCnRyZWF0ZWRfY2hhbmdlID0gdHJlYXRlZF9hZnRlciAtIHRyZWF0ZWRfYmVmb3JlCmNvbnRyb2xfY2hhbmdlID0gY29udHJvbF9hZnRlciAtIGNvbnRyb2xfYmVmb3JlCmRpZCA9IHRyZWF0ZWRfY2hhbmdlIC0gY29udHJvbF9jaGFuZ2UKY291bnRlcmZhY3R1YWwgPSB0cmVhdGVkX2JlZm9yZSArIGNvbnRyb2xfY2hhbmdlCgpwcmludChmIlRyZWF0ZWQgY2hhbmdlOiB7dHJlYXRlZF9jaGFuZ2V9IikKcHJpbnQoZiJDb250cm9sIGNoYW5nZToge2NvbnRyb2xfY2hhbmdlfSIpCnByaW50KGYiSW1wdXRlZCB0cmVhdGVkIG91dGNvbWUgd2l0aG91dCBwb2xpY3k6IHtjb3VudGVyZmFjdHVhbH0iKQpwcmludChmIkRJRCBlc3RpbWF0ZToge2RpZH0gzrxnL23CsyIpCgpmb3IgZXh0cmFfdW5vYnNlcnZlZF9kZWNsaW5lIGluIFswLCAyLCA0LCA2XToKICAgIGFkanVzdGVkID0gZGlkICsgZXh0cmFfdW5vYnNlcnZlZF9kZWNsaW5lCiAgICBwcmludChmIklmIHVudHJlYXRlZCBDbGVhcmJvcm91Z2ggd291bGQgZGVjbGluZSB7ZXh0cmFfdW5vYnNlcnZlZF9kZWNsaW5lfSBtb3JlOiBlZmZlY3Q9e2FkanVzdGVkfSIp layout: vertical locale: en title: Construct the DID counterfactual --- :: The last lines turn a hidden trend violation into an explicit sensitivity parameter. ## Parallel trends is about [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} For two periods, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The assumption allows different baseline levels. It concerns the treated group’s **unobserved untreated change after policy**, so it cannot be proved by pre-policy data. Pre-trends, institutional history and alternative comparison groups can make it more or less credible. ## Regression form reproduces the table [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[λ]{.mord.mathnormal}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[os]{.mord.mathnormal}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[os]{.mord.mathnormal}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} In a 2×2 saturated model, [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} equals the four-cell DID. Controls or additional periods change the estimand unless specified carefully. ## Four threats, four diagnostics | Threat | Evidence that addresses it | | ---------------------------- | ---------------------------------------------------------------- | | differential untreated trend | multiple pre-periods, institutional argument, sensitivity bounds | | anticipation | policy-announcement timeline and alternative treatment date | | concurrent intervention | policy inventory and unaffected outcomes | | spillover | geography/market links and wider treatment definition | | composition change | stable units or repeated-cross-section composition audit | A placebo that does not target the principal threat is decorative robustness. ## Repeated cross-section versus panel Panel DID follows the same units. Repeated cross-sections compare population means sampled each period. The latter requires stable population composition or conditional assumptions; migration caused by the policy can change who is observed. Inference should reflect treatment assignment and serial correlation. A policy assigned to municipalities usually requires municipality-level dependence, not resident-level independence. ## Classic illustration, modern reading Card and Krueger’s [minimum-wage study](https://doi.org/10.2307/2118030){rel=""nofollow""} compares New Jersey and Pennsylvania fast-food employment before and after a policy change. Use it to identify the four-cell logic, then ask how measurement, comparison choice, one treated policy and later evidence affect the claim. ## Quick check The treated and comparison groups have identical pre-policy levels but different pre-policy trends. Is DID credible? ::legacy-details{title="Answer"} Identical levels do not supply parallel trends. The diverging pre-policy paths undermine the comparison unless a credible conditional or structural explanation supports the post-policy counterfactual, with sensitivity analysis. :: [Next: Staggered DID and Event Studies](https://www.pengjiaxin.com/12-staggered-event-studies) # Staggered DID and Event Studies []{#staggered-did-and-event-studies} ## One treatment coefficient can mix incompatible comparisons Suppose municipalities first adopt in 2023, 2024 or never. A conventional two-way-fixed-effects regression may compare: - newly treated with never treated; - newly treated with not-yet treated; - later treated with already treated. The last comparison is problematic when effects evolve: an already-treated unit is not an untreated counterfactual. Heterogeneous effects can produce opaque or negative weights. ## Build group-time effects first Let [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} denote first treatment in period [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Define [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Example estimates: | Cohort | Impact year | One year after | Two years after | | ------------- | ----------: | -------------: | --------------: | | 2023 adopters | −4 | −7 | −9 | | 2024 adopters | −3 | −5 | not mature | An overall ATT, a cohort average and an event-time average use different weights. Report the weighting rule and keep support visible. ## Three modern routes | Route | Core construction | Question to audit | | -------------------------------- | ------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | group-time ATT | compare each cohort with never/not-yet treated | which control group and conditional trend? | | interaction-weighted event study | estimate cohort-specific dynamics, then aggregate | which cohorts support each horizon? | | imputation | estimate untreated outcome model using untreated observations | where is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} extrapolated? | [Callaway and Sant’Anna (2021)](https://doi.org/10.1016/j.jeconom.2020.12.001){rel=""nofollow""} formalise group-time effects and aggregation. [Borusyak, Jaravel and Spiess (2024)](https://doi.org/10.1093/restud/rdae007){rel=""nofollow""} derive a robust and efficient imputation approach under stated event-study assumptions. These are related solutions, not interchangeable commands. ## Event time can change composition At event time +3, only early adopters have three post-treatment periods. A falling event-study line may reflect both dynamics and changing cohort composition. Report: - number of cohorts and observations at each horizon; - balanced-horizon estimates where useful; - cohort-specific results; - whether long-run outcomes are mature; - simultaneous rather than only pointwise uncertainty for a plotted path. ## Pre-trends are evidence, not proof Failure to reject pre-treatment coefficients can mean parallel trends or low power. Rejecting can reflect true differential trends, anticipation, outcome noise or contaminated estimation. [Rambachan and Roth (2023)](https://doi.org/10.1093/restud/rdad018){rel=""nofollow""} replace exact parallel trends with restrictions on how post-treatment violations relate to pre-trend differences. The useful output is a sensitivity statement: > “The negative effect remains below zero if the post-policy trend deviation is no more than 1.5 times the largest pre-policy deviation.” The multiplier must be justified substantively; it is not a universal threshold. ## Staggered-design checklist 1. define treatment adoption, reversals and anticipation; 2. draw cohort by calendar time; 3. state [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and desired aggregation; 4. identify never-treated or not-yet-treated comparisons; 5. estimate only supported cohort-time cells; 6. show pre-period evidence and trend sensitivity; 7. cluster/infer at the assignment level; 8. distinguish event dynamics from cohort composition. The official [`did` package documentation](https://bcallaway11.github.io/did/){rel=""nofollow""} provides a current implementation of group-time effects, event aggregation and simultaneous bands. Software defaults still require a defensible control group and anticipation rule. ## Quick check At event time +5, the estimate uses only one early-adopting cohort. Can it be called the general five-year policy effect? ::legacy-details{title="Answer"} Not without a transport argument. It is a five-year effect for the surviving early cohort under its treatment version and context. Show support, compare cohorts at shorter common horizons and limit the claim. :: [Next: Regression Discontinuity](https://www.pengjiaxin.com/13-rdd) # Regression Discontinuity []{#regression-discontinuity} ## The cutoff creates the comparison Northbridge awards an offer when an application score reaches 70. Compare applicants just below and just above 70: | Score | Offer rule | Completion rate | | ----: | ---------: | --------------: | | 68–69 | no offer | 0.49 | | 70–71 | offer | 0.57 | The eight-point gap is credible only if, without the offer, expected completion would change smoothly through 70. RDD does not claim that students with scores 40 and 90 are comparable. For a sharp design with running variable [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, cutoff [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and treatment [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[R]{.mord.mathnormal.mtight style="margin-right:0.0077em;"}[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.6382em;vertical-align:-0.8882em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[↓]{.mrel.mtight}[c]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3479em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[lim]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8882em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.6382em;vertical-align:-0.8882em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[↑]{.mrel.mtight}[c]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3479em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[lim]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8882em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is a local effect at the threshold. ## Draw before estimating 1. plot the raw outcome against the running variable; 2. show binned means only as a visual summary; 3. fit separate local lines on each side; 4. report the bandwidth and polynomial order; 5. keep the cutoff and data support visible. A global fifth-order polynomial may fit the sample yet invent extreme curvature near the cutoff. Local linear or local quadratic fits are usually easier to defend. [Cattaneo, Idrobo and Titiunik (2020)](https://doi.org/10.1017/9781108684606){rel=""nofollow""} provide a design-based practical treatment of estimation and diagnostics. ## Bandwidth is a bias–variance decision Suppose the estimated completion effect is: | Window around 70 | Applicants | Estimate | Robust 95% interval | | ---------------- | ---------: | -------: | ------------------: | | ±2 | 260 | 0.09 | [−0.01, 0.19] | | ±5 | 610 | 0.07 | [0.01, 0.13] | | ±10 | 1,180 | 0.12 | [0.08, 0.16] | The widest window is most precise but asks continuity over a larger range. Do not select the window because it gives the preferred [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -value. Use a principled bandwidth, then show nearby choices as sensitivity checks. ## Sharp, fuzzy and kink designs | Design | What changes at [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Typical estimand | | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | | sharp RDD | treatment status from 0 to 1 | local treatment effect | | fuzzy RDD | treatment probability jumps | local IV effect for cutoff compliers | | regression kink | slope of treatment intensity changes | local effect per unit of intensity | If offer probability rises from 0.10 to 0.75 at 70 and completion rises from 0.49 to 0.57, the fuzzy Wald estimate is [[[]{.katex-mathml}[[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[0.75]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.10]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.57]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.49]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.123.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Interpret 12.3 percentage points as a local effect for applicants whose receipt is changed by crossing the cutoff—not an effect for every applicant. ## Four threats and their probes | Threat | Probe | What failure means | | ---------------------------- | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | | precise score manipulation | density and institutional audit | units around [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may not be comparable | | another rule at 70 | policy inventory | discontinuity may combine treatments | | predetermined covariate jump | balance plots and placebo outcomes | continuity is doubtful or coding is wrong | | functional-form dependence | bandwidth/order sensitivity | estimate relies on extrapolation | A density test is not a ritual. If assessors can round 69.8 to 70, inspect score production, heaping and appeals. Conversely, a visible density change does not identify its cause without institutional evidence. ## What RDD does not identify automatically - effects far from the cutoff; - effects under a different treatment version; - effects when units influence one another across the threshold; - a policy expansion that changes capacity or applicant behaviour. The [rdrobust project](https://rdpackages.github.io/rdrobust/){rel=""nofollow""} implements local-polynomial estimation, robust bias correction and companion diagnostics. Software cannot establish that no other rule changes at the cutoff. ## Quick check Scores are recorded only as integers, and 35% of applicants score exactly 70. Is “use a narrower bandwidth” an adequate solution? ::legacy-details{title="Answer"} No. The running variable has limited support and a mass point at the cutoff, so arbitrarily narrow continuous-score approximations are not credible. Audit how scores are assigned, report support, consider methods for discrete running variables and make the stronger identifying assumptions explicit. :: [Next: Matching and Weighting](https://www.pengjiaxin.com/14-matching-weighting) # Matching, Weighting and Overlap []{#matching-weighting-and-overlap} ## Adjustment cannot repair an unmeasured assignment process Scholarship recipients have higher prior scores and stronger adviser support than non-recipients. Matching can align observed scores and support. It cannot align unrecorded motivation merely because the propensity-score model predicts receipt well. The identifying claim is conditional exchangeability: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[))]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[⊥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} plus positivity: every covariate profile of interest has a non-zero chance of each treatment. These are substantive claims about assignment, not consequences of balance. ## Choose the target before the weights Let [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. | Target | Treated weight | Control weight | Question | | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------------------------ | | ATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[\[]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | effect for the combined target population | | ATT | 1 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[/]{.mord}[\[]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | effect for treated units | | overlap | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | effect where treatment choice was most uncertain | Changing weights changes the population. It is not merely a technical stabilisation. ## A four-student example | Student | Receipt [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Completion [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Propensity [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | ATE weight | | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ---------: | | A | 1 | 1 | 0.80 | 1.25 | | B | 1 | 0 | 0.55 | 1.82 | | C | 0 | 1 | 0.45 | 1.82 | | D | 0 | 0 | 0.05 | 1.05 | Student B and C receive more weight because their observed treatment was less predictable. If a treated student had [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.02]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the ATE weight would be 50: one observation could dominate the result. That is a lack-of-overlap warning, not a request for a more elaborate classifier. ## Design stage: outcomes stay hidden 1. define pre-treatment covariates from an assignment story; 2. estimate or construct a distance/propensity score; 3. inspect common support and extreme weights; 4. match, subclassify or weight; 5. assess balance and effective sample size; 6. revise the design without looking for a favourable outcome effect; 7. estimate effects and uncertainty for the retained target population. For weights [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, a useful information diagnostic is [[[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[e]{.mord.mathnormal.mtight}[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4895em;vertical-align:-0.9857em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.0269em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.0448em;margin-right:0.05em;"}]{.vlist style="height:0.7959em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2769em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[(]{.mopen}[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-3.6897em;"}]{.vlist style="height:1.5038em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9857em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Ten thousand records with [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[e]{.mord.mathnormal.mtight}[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[420]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} do not provide ten thousand equally informative comparisons. ## Balance is not a propensity-score [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -value Use standardised mean differences, distribution plots and substantively important interactions. A large sample can make a negligible imbalance statistically significant; a small sample can hide important imbalance. | Diagnostic | Useful question | | ---------------------------- | ----------------------------------------------------- | | standardised difference | are covariate means close on a scale-free metric? | | variance/quantile comparison | do distributions align beyond the mean? | | propensity overlap | are both treatments represented in the target region? | | maximum weight | can one unit control the estimate? | | effective sample size | how much information remains after weighting? | ## Doubly robust does not mean assumption-free An augmented inverse-probability estimator combines an outcome model and a treatment model. Under regularity conditions it can remain consistent when one nuisance model is correct. It does **not** survive unmeasured confounding, failed positivity, post-treatment controls or two badly misspecified models. [Stuart (2010)](https://doi.org/10.1214/09-STS313){rel=""nofollow""} reviews matching as a design strategy. [Li, Morgan and Zaslavsky (2018)](https://doi.org/10.1080/01621459.2016.1260466){rel=""nofollow""} develop overlap weights that target the region with greatest covariate overlap. ## A defensible conclusion Weak: “After propensity-score matching, treatment is as good as random.” Stronger: “Among applicants in the shared-support region, weighted pre-treatment covariates are closely balanced. The estimate is causal if the recorded covariates suffice to control joint causes of receipt and completion; adviser motivation remains a plausible unmeasured confounder.” ## Quick check Trimming removes all high-need applicants because every high-need applicant received the scholarship. What changed? ::legacy-details{title="Answer"} The data contain no untreated comparison for high-need applicants. Trimming may improve internal credibility, but the estimand now excludes that group. State the new target population; do not generalise the trimmed estimate back without extra assumptions or evidence. :: [Next: Synthetic Control](https://www.pengjiaxin.com/15-synthetic-control) # Synthetic Control []{#synthetic-control} ## The donor pool writes the counterfactual Clearborough is the only city introducing a clean-air zone in 2024. No single city matches its earlier pollution path. Synthetic control chooses non-negative donor weights that reproduce Clearborough before treatment. | Donor city | Weight | | ---------- | -----: | | Alder | 0.50 | | Birch | 0.30 | | Cedar | 0.20 | | all others | 0.00 | If 2025 pollution is 30 in Clearborough and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[37]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.3]{.mord}[(]{.mopen}[34]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.2]{.mord}[(]{.mopen}[38]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[36.3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} in the synthetic control, the estimated effect is [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[30]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[36.3]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[6.3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} μg/m³. The calculation is easy. The credibility lies in why those donors represent untreated Clearborough. ## Five design decisions 1. **treated unit and intervention date:** no anticipation or hidden earlier exposure; 2. **donor pool:** no spillovers, competing policies or structurally impossible comparators; 3. **predictors:** determined before treatment and justified substantively; 4. **pre-period:** long enough to learn outcome dynamics, not chosen for a preferred result; 5. **estimand:** a time path for this treated unit, not automatically an average effect. ## Pre-treatment fit is necessary, not sufficient Suppose the pre-treatment root mean squared prediction error is 0.8. Good fit shows that the weighted donors reproduce observed history. It does not prove they would follow Clearborough after 2024 absent treatment. Inspect: - the full treated and synthetic paths; - gaps in every pre-period, not only a fit statistic; - donor weights and leave-one-donor-out estimates; - whether important predictors are balanced; - events affecting donors after treatment; - spillovers into neighbouring cities. Poor pre-fit usually means the donor pool cannot construct the desired counterfactual. A large post-gap built on poor pre-fit is not persuasive. ## Placebos create a reference distribution Reassign the intervention to each donor city, rebuild its synthetic control and compare post-treatment gaps. One useful statistic is [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5198em;vertical-align:-1.0662em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[[pre-treatment RMSPE]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.2175em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[post-treatment RMSPE]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.2175em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.7702em;"}]{.vlist style="height:1.4536em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.0662em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If Clearborough has [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[7.2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and most well-fitted placebos have [[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, its break is unusual relative to the donor pool. Exclude or visibly flag placebos with extremely poor pre-fit; otherwise the comparison is mechanically easy to win. This exercise provides design-based perspective, not a conventional large-sample [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -value by default. ## Synthetic DID changes the target of balancing Synthetic difference-in-differences combines unit weights with time weights, then estimates a DID-style contrast. It can reduce sensitivity to imperfect pre-fit under its model, but does not excuse contaminated donors or anticipation. [Arkhangelsky et al. (2021)](https://doi.org/10.1257/aer.20190159){rel=""nofollow""} develop the method. The current [`synthdid` documentation](https://synth-inference.github.io/synthdid/){rel=""nofollow""} also makes implementation restrictions visible; consult live documentation rather than assuming every adoption pattern is supported. ## The classic lesson [Abadie, Diamond and Hainmueller (2010)](https://doi.org/10.1198/jasa.2009.ap08746){rel=""nofollow""} use synthetic control to study California’s tobacco-control programme. The durable contribution is not “weighted averages are causal.” It is that comparative case studies can make the construction and quality of the counterfactual unusually transparent. ## Method-choice checkpoint | Setting | Better starting point | | -------------------------------------------------------- | --------------------- | | many treated and untreated units, credible common trends | DID | | one treated unit, long pre-period, rich donor pool | synthetic control | | threshold determines exposure | RDD | | assignment explained by observed individual covariates | matching/weighting | ## Quick check One donor receives weight 0.82. Removing it changes the estimated effect from −6.3 to −1.0. What should the report say? ::legacy-details{title="Answer"} The result depends heavily on that donor. Investigate why it dominates, whether it is institutionally comparable and whether it experienced post-treatment shocks. Report the leave-one-out result and narrow the conclusion; do not hide dependence behind excellent average pre-fit. :: [Next module: Choice and Limited Outcomes](https://www.pengjiaxin.com/../04-outcomes-choice/) # 3. Policy Evaluation Designs []{#_3-policy-evaluation-designs} Each design supplies a different answer to the missing-counterfactual problem. Similar estimates across designs are informative only after their estimands and assumptions are compared. ## Learning outcomes After this module, you should be able to: - derive a 2×2 DID and state parallel trends in potential-outcome terms; - replace inappropriate staggered TWFE summaries with group-time effects; - design sharp and fuzzy RDD analyses around a local cutoff estimand; - assess overlap, balance and extreme weights in matching/IPW; - construct and falsify a synthetic-control counterfactual; - explain which diagnostic targets which identifying assumption. ## Chapter route 1. [Difference-in-Differences](https://www.pengjiaxin.com/11-did-core) — use an untreated trend as the missing change. 2. [Staggered DID and Event Studies](https://www.pengjiaxin.com/12-staggered-event-studies) — separate cohorts, horizons and sensitivity. 3. [Regression Discontinuity](https://www.pengjiaxin.com/13-rdd) — compare units at an assignment cutoff. 4. [Matching and Weighting](https://www.pengjiaxin.com/14-matching-weighting) — build observable comparability and expose overlap. 5. [Synthetic Control](https://www.pengjiaxin.com/15-synthetic-control) — construct a weighted untreated path for aggregate interventions. ## Prepare, work, follow up - **Prepare (75 min):** bring a policy timeline, threshold rule or treatment-assignment table from a published study. - **Workshop (120 min):** calculate DID and RDD effects; reject a poor donor pool; diagnose a propensity-score overlap failure. - **Follow up (75 min):** write a design comparison in which each robustness check is linked to one named threat. Postgraduate extension: define group-time ATT, robust bias-corrected RD inference, doubly robust ATT and the factor structure underlying synthetic-control fit. [Next: Difference-in-Differences](https://www.pengjiaxin.com/11-did-core) # Binary Choice []{#binary-choice} ## Start with the probability contrast Let [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} mean degree completion. The policy question may be [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} an average **risk difference**. A logit coefficient is a change in log-odds, not this quantity. ## Three models, three conveniences | Model | Conditional mean | Main advantage | Main caution | | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | linear probability | [[]{.katex-mathml}[[[]{.strut style="height:0.9463em;vertical-align:-0.1944em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[β]{.mord,mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | coefficients are probability-point changes | predictions can leave [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; heteroskedastic errors | | logit | [[]{.katex-mathml}[[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[Λ]{.mord}[(]{.mopen}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[β]{.mord,mathnormal style="margin-right:0.0528em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | valid probabilities; odds interpretation | effects depend on [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and baseline risk | | probit | [[]{.katex-mathml}[[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[Φ]{.mord}[(]{.mopen}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[β]{.mord,mathnormal style="margin-right:0.0528em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | latent-normal formulation | scale is not directly substantive | For causal work, all three still require a credible treatment-assignment argument. Robust standard errors address heteroskedasticity in an LPM; they do not repair confounding. ## Odds are not risks Suppose completion rises from 0.20 to 0.30: - risk difference: [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.30]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.20]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - risk ratio: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.30/0.20]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.50]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - odds ratio: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.30/0.70]{.mord}[)]{.mclose}[/]{.mord}[(]{.mopen}[0.20/0.80]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.71]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. “A 71% increase” would misdescribe the risk. State the scale. ## Convert nonlinear coefficients into quantities people can read For a logit model [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0106em;vertical-align:-0.2587em;"}[Λ]{.mord}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4413em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2587em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and continuous [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:2.2074em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[ik]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.8]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the derivative is 0.20 at [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} but only 0.072 at [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A single coefficient does not imply a constant probability change. For a binary scholarship offer, prefer a discrete change: [[[]{.katex-mathml}[[[]{.strut style="height:0.9833em;"}[[[[[[]{.pstrut style="height:3em;"}[[A]{.mord.mathnormal}[M]{.mord.mathnormal style="margin-right:0.109em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.3em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9833em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5991em;vertical-align:-1.2777em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[\[]{.mopen.delimcenter style="top:0em;"}[[[[[[]{.pstrut style="height:3em;"}[p]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[p]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This averages the same treatment contrast over the observed covariate distribution. ::pyodide --- code64: aW1wb3J0IG1hdGgKCmRlZiBsb2dpc3RpYyh6KToKICAgIHJldHVybiAxIC8gKDEgKyBtYXRoLmV4cCgteikpCgpsb2dfb2Rkc19lZmZlY3QgPSAwLjgKZm9yIGJhc2VsaW5lX3Jpc2sgaW4gWzAuMTAsIDAuMzAsIDAuNjBdOgogICAgYmFzZWxpbmVfbG9naXQgPSBtYXRoLmxvZyhiYXNlbGluZV9yaXNrIC8gKDEgLSBiYXNlbGluZV9yaXNrKSkKICAgIHRyZWF0ZWRfcmlzayA9IGxvZ2lzdGljKGJhc2VsaW5lX2xvZ2l0ICsgbG9nX29kZHNfZWZmZWN0KQogICAgcHJpbnQoCiAgICAgICAgZiJiYXNlbGluZT17YmFzZWxpbmVfcmlzazouMmZ9LCB0cmVhdGVkPXt0cmVhdGVkX3Jpc2s6LjNmfSwgIgogICAgICAgIGYicmlzayBjaGFuZ2U9e3RyZWF0ZWRfcmlzay1iYXNlbGluZV9yaXNrOi4zZn0iCiAgICAp layout: vertical locale: en title: From a log-odds coefficient to risk changes --- :: The odds ratio [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.8]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2.23]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is constant, while the probability change is not. ## Interactions are contrasts of predictions In a nonlinear model, the coefficient on [[]{.katex-mathml}[[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is generally not the interaction effect on probability. Compute four predictions: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[p]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[)]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[p]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Report uncertainty for this contrast, preferably through the model’s delta method or resampling scheme aligned with the design. ## Fit is not only discrimination | Diagnostic | Question | | ----------------------- | --------------------------------------------------------- | | calibration plot | do predicted 0.30 risks occur about 30% of the time? | | Brier/log loss | are probabilistic predictions accurate? | | ROC/AUC | can the model rank cases? | | time or site validation | does performance survive the intended deployment setting? | AUC can be high while probabilities are poorly calibrated. For a causal effect, neither calibration nor AUC proves exchangeability. ## Quick check The estimated odds ratio is 1.5 in both a low-risk and high-risk group. Are the risk differences equal? ::legacy-details{title="Answer"} No. The same odds ratio implies different probability changes at different baseline risks. Compute group-specific counterfactual predictions and average the relevant contrasts. :: [Next: Multinomial Choice](https://www.pengjiaxin.com/17-multinomial-choice) # Multinomial and Ordered Choice []{#multinomial-and-ordered-choice} ## The labels determine the model family After receiving an offer, a student chooses: 1. no university; 2. a local university; 3. a university away from home. These alternatives are not simply “low, medium, high”: local and away differ along cost, programme and family constraints. Treat them as unordered unless a genuine single ordering is defensible. | Outcome structure | Example | Starting model | | ---------------------------- | ------------------------------- | --------------------------- | | unordered categories | no/local/away | multinomial logit or probit | | ordered categories | dissatisfied/neutral/satisfied | ordered logit or probit | | alternatives with attributes | university tuition and distance | conditional or mixed logit | ## Multinomial logit produces a probability vector With “no university” as the base category, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5998em;vertical-align:-1.1709em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[J]{.mord.mathnormal.mtight style="margin-right:0.0962em;"}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.9812em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[exp]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.1288em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[exp]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1709em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Coefficients are relative log-odds against the base. Changing the base changes coefficients, not fitted probabilities. Communicate predictions instead: | Scenario | No university | Local | Away | | -------------------- | ------------: | ----: | ----: | | no scholarship offer | 0.40 | 0.35 | 0.25 | | scholarship offer | 0.28 | 0.37 | 0.35 | | discrete change | −0.12 | +0.02 | +0.10 | The offer mainly moves probability from non-enrolment to away study. Saying only “the away coefficient is positive” loses the substitution pattern. ## IIA is a substitution restriction Multinomial logit implies that the odds between two alternatives do not depend on the presence or attributes of another alternative. If two away universities are close substitutes, adding one may be predicted to draw proportionally from every option—including no university. That can be implausible. Respond by studying the choice process: - combine alternatives only when substantively defensible; - use nests when substitution is hierarchical; - use mixed logit or multinomial probit for richer substitution; - exploit alternative-specific attributes where available; - report predictions under realistic changes to the choice set. A formal IIA test is not a substitute for institutional reasoning and can be fragile when model specifications differ. ## Ordered models assume common cut-point movement For an ordered latent index, [[[]{.katex-mathml}[[[]{.strut style="height:0.7387em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9963em;vertical-align:-0.1944em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[u]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} observed categories are formed by thresholds. The proportional-odds version constrains covariates to shift every cumulative logit equally. Test and discuss this restriction; if it fails, consider partial proportional odds or an unordered model. Never interpret a one-unit rise in a five-point satisfaction category as necessarily equal everywhere. Report category probabilities or an explicitly justified score. ## Person and alternative attributes differ - prior attainment varies by student; - tuition, distance and programme quality vary by university; - scholarship value may interact with tuition; - family responsibilities may interact with distance. The data must represent the alternatives each person actually faced. Treating unavailable universities as rejected choices corrupts the denominator. ## Quick check A new online university enters the choice set. The model predicts it draws 40% of students from “away”, 30% from “local” and 30% from “no university” purely in proportion to old shares. What assumption is driving this? ::legacy-details{title="Answer"} The multinomial-logit IIA substitution pattern. Ask whether online study is equally substitutable with all options. If not, specify a richer choice structure and include alternative attributes or nests. :: [Next: Count Outcomes](https://www.pengjiaxin.com/18-count-outcomes) # Count Outcomes []{#count-outcomes} ## A count needs a clock and a population “Twelve asthma visits” is incomplete. Twelve visits among how many residents and over how long? For municipality [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, let [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be visits and [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be person-years at risk. A log-link model is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0519em;vertical-align:-0.25em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[exp]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} or equivalently [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} enters as an offset with coefficient fixed at one. Clearborough records 240 visits across 20,000 person-years before the clean-air zone and 180 across 21,000 after: | Period | Visits | Person-years | Rate per 1,000 | | ------ | -----: | -----------: | -------------: | | before | 240 | 20,000 | 12.0 | | after | 180 | 21,000 | 8.57 | The crude incidence-rate ratio is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[8.57/12.0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.714]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, a 28.6% rate reduction. This is descriptive until a counterfactual design handles time trends and composition. ## Interpret exponentiated coefficients In a Poisson model, [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.3488em;margin-left:-0.0528em;margin-right:0.0714em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1512em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is a multiplicative change in the conditional mean for a one-unit covariate change. If [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.25]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:0.8641em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[0.25]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0.779]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so the expected rate is 22.1% lower, conditional on the model. The absolute reduction still depends on the baseline rate. ## Poisson can be useful without a Poisson variance Poisson pseudo-maximum likelihood targets a correctly specified conditional mean and can use robust or design-aligned standard errors when variance differs from the mean. Negative binomial models add a particular overdispersion structure; choosing one is not merely “variance exceeds mean, therefore negative binomial.” | Symptom | Possible cause | Response | | --------------------- | ------------------------------------------------------ | ------------------------------------------------------- | | variance exceeds mean | heterogeneity, dependence, wrong mean | inspect design; robust/clustered inference; richer mean | | many zeros | genuinely no risk, separate participation, rare events | distinguish structural process from chance zeros | | repeated people | within-person dependence | cluster or model dependence at person level | | different exposure | time/population at risk varies | offset or explicit rate estimand | ## Hurdle and zero-inflated models answer different stories A hurdle model separates whether any event occurs from the positive count. A zero-inflated model posits a latent group that cannot generate events plus a count process that can also produce zeros. For student support visits: - “no need for support” may generate structural zeros; - “needed support but did not attend” is a behavioural zero; - “one or more visits” has an intensity process. Use a two-process model only when that story is meaningful and identified by the data. A better likelihood cannot reveal latent zero types without information. ## Fixed effects and short panels With repeated municipality counts, Poisson fixed-effects estimation can target multiplicative within-unit changes under a conditional-mean assumption. Include time effects for common shocks and align clustering with policy assignment. A clean likelihood does not solve staggered-treatment bias; combine the outcome model with an appropriate DID/event-study design. ## Quick check District A has twice as many incidents as B but four times the population at risk. Which district has the higher rate? ::legacy-details{title="Answer"} B. A’s rate is half of B’s: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[2]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[/]{.mord}[(]{.mopen}[4]{.mord}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[/]{.mord}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Counts without exposure can reverse the substantive comparison. :: [Next: Censoring and Selection](https://www.pengjiaxin.com/19-censoring-selection) # Censoring, Truncation and Selection []{#censoring-truncation-and-selection} ## Four zeros can mean four different things | Recorded value | Data-generating meaning | Example | | -------------------- | --------------------------------------- | ---------------------------------------- | | true zero | outcome is genuinely zero | no paid work during year | | left-censored | latent value is below a reporting limit | debt recorded as “£0–£500” | | truncated | units outside range never enter data | survey samples only earners above £5,000 | | missing by selection | outcome exists but is unobserved | earnings absent outside linked records | Coding each as zero changes the estimand. Begin with the observation process, not the Tobit command. ## Tobit is a joint model, not “OLS for many zeros” The classical model assumes [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.2222em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[max]{.mop}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.2222em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The same latent index governs whether the limit is reached and the positive amount. Scholarship-related earnings may instead involve separate work-participation and wage processes. A two-part model can be more interpretable: 1. model [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 2. model [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. combine them for [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Neither model automatically identifies the causal effect of scholarship receipt. ## Sample selection is about unobserved outcomes Suppose wages are observed only for employed graduates. Comparing observed wages estimates an effect among selected employed groups, whose composition may itself change with treatment. A classical selection model writes [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0576em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[(]{.mopen}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0576em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and observes [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0106em;vertical-align:-0.2587em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4413em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2587em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} only when [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, allowing [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to correlate. [Heckman (1979)](https://doi.org/10.2307/1912352){rel=""nofollow""} provides the canonical correction. Credibility usually needs an exclusion variable in [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} that shifts observation or participation but not the outcome directly. Functional-form nonlinearity alone is a weak foundation. ## A selection example | Offer group | Employment | Mean wage if employed | | ----------- | ---------: | --------------------: | | offered | 80% | £31,000 | | not offered | 60% | £32,000 | The −£1,000 observed-wage gap does not show that offers reduce wages. The offer may bring lower-potential earners into employment, changing who has an observed wage. Report employment, unconditional earnings where meaningful, and bounds or sensitivity for the selected outcome. ## Attrition belongs in the causal graph If follow-up response [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is affected by treatment and outcome determinants, conditioning on [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} can induce selection bias. A practical sequence is: 1. report response by assignment arm; 2. compare pre-treatment predictors of response; 3. state whether missingness is plausibly independent, conditionally independent or non-ignorable; 4. use weighting/imputation only under explicit assumptions; 5. add worst-case, Lee-style or other justified bounds where possible; 6. keep the full-sample ITT estimand visible. ## Quick check Every non-employed graduate is assigned wage zero. Is this wrong? ::legacy-details{title="Answer"} It depends on the estimand. Zero is valid for annual labour earnings if non-employment truly means no labour earnings during the window. It is invalid for the offered wage rate, which is undefined or unobserved without employment. Define the outcome before coding. :: [Next module: Modern Causal Analysis](https://www.pengjiaxin.com/../05-modern-causal/) # Module 4 — Choice and Limited Outcomes []{#module-4-choice-and-limited-outcomes} An outcome’s support is part of the research design. A binary variable cannot fall below zero, a count has an exposure period, and observed wages exist only after an employment decision. The model should respect these facts without turning a causal question into a distributional exercise. ## Prepare Before the workshop, classify each outcome: | Outcome | Support | First modelling question | | ------------------ | ----------------------- | ------------------------------------------------------ | | completed degree | 0 or 1 | probability, risk difference or odds? | | institution chosen | unordered alternatives | whose attributes vary: person or alternative? | | emergency visits | non-negative integers | what population and exposure time generated the count? | | observed wage | continuous but selected | is zero meaningful, censored or unobserved? | Write one sentence defining the outcome, observation window and denominator. Many apparent “model failures” are outcome-definition failures. ## Route 1. [Binary Choice](https://www.pengjiaxin.com/16-binary-choice): probabilities, nonlinear effects and calibration. 2. [Multinomial Choice](https://www.pengjiaxin.com/17-multinomial-choice): unordered, ordered and alternative-specific decisions. 3. [Count Outcomes](https://www.pengjiaxin.com/18-count-outcomes): rates, exposure, overdispersion and excess zeros. 4. [Censoring and Selection](https://www.pengjiaxin.com/19-censoring-selection): observed limits, participation and missing counterfactual outcomes. ## Workshop: one policy, four outcomes For the Pathways programme, compare: - enrolment within one year: binary; - university selected: multinomial; - modules completed in year one: count; - earnings five years later: continuous, but missing for people outside linked tax records. For each, specify the estimand first. A nonlinear likelihood can improve fit; it cannot make scholarship receipt exogenous. ## Follow-up deliverable Submit a two-page marginal-effect report containing: 1. outcome support and observation process; 2. target contrast on an interpretable scale; 3. model and identifying assumptions; 4. one worked prediction or marginal effect; 5. one diagnostic and one conclusion boundary. Postgraduate extension: derive the likelihood contribution and distinguish structural distributional assumptions from assumptions needed for causal identification. [Start with Binary Choice](https://www.pengjiaxin.com/16-binary-choice) # Double Machine Learning []{#double-machine-learning} ## Prediction enters as a nuisance task Consider the partially linear model [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[ε]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[ε]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The target is the scalar [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may be complex nuisance functions. Residualise both sides: [[[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1968em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1702em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1968em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2079em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[u]{.mord.mathnormal}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.7198em;vertical-align:-1.1099em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.0448em;margin-right:0.05em;"}]{.vlist style="height:0.7959em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2769em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.1898em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.6897em;"}]{.vlist style="height:1.6099em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1099em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This resembles FWL, but flexible learners create overfitting bias if a record helps train the function used to residualise itself. ## Cross-fitting gives observations separate jobs For two folds: 1. fit both nuisance functions on fold A; 2. predict and residualise fold B; 3. reverse A and B; 4. combine out-of-fold residuals; 5. estimate [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and design-aligned uncertainty. All tuning must occur inside the training data for each fold. Preprocessing on the full sample leaks information. ::pyodide --- code64: aW1wb3J0IG1hdGgKaW1wb3J0IHJhbmRvbQoKZGVmIHNvbHZlKGEsIGIpOgogICAgYSA9IFtyb3dbOl0gKyBbdmFsdWVdIGZvciByb3csIHZhbHVlIGluIHppcChhLCBiKV0KICAgIG4gPSBsZW4oYikKICAgIGZvciBjb2wgaW4gcmFuZ2Uobik6CiAgICAgICAgcGl2b3QgPSBtYXgocmFuZ2UoY29sLCBuKSwga2V5PWxhbWJkYSByOiBhYnMoYVtyXVtjb2xdKSkKICAgICAgICBhW2NvbF0sIGFbcGl2b3RdID0gYVtwaXZvdF0sIGFbY29sXQogICAgICAgIHNjYWxlID0gYVtjb2xdW2NvbF0KICAgICAgICBhW2NvbF0gPSBbdiAvIHNjYWxlIGZvciB2IGluIGFbY29sXV0KICAgICAgICBmb3Igcm93IGluIHJhbmdlKG4pOgogICAgICAgICAgICBpZiByb3cgIT0gY29sOgogICAgICAgICAgICAgICAgZmFjdG9yID0gYVtyb3ddW2NvbF0KICAgICAgICAgICAgICAgIGFbcm93XSA9IFt2IC0gZmFjdG9yKncgZm9yIHYsIHcgaW4gemlwKGFbcm93XSwgYVtjb2xdKV0KICAgIHJldHVybiBbYVtpXVstMV0gZm9yIGkgaW4gcmFuZ2UobildCgpkZWYgYmFzaXMoeCk6CiAgICByZXR1cm4gWzEuMCwgeCwgeCp4LCB4KiozLCB4Kio0LCB4Kio1XQoKZGVmIGZpdCh4cywgdmFsdWVzKToKICAgIHJvd3MgPSBbYmFzaXMoeCkgZm9yIHggaW4geHNdCiAgICBwID0gbGVuKHJvd3NbMF0pCiAgICBncmFtID0gW1tzdW0ocltqXSpyW2tdIGZvciByIGluIHJvd3MpIGZvciBrIGluIHJhbmdlKHApXSBmb3IgaiBpbiByYW5nZShwKV0KICAgIGZvciBqIGluIHJhbmdlKHApOgogICAgICAgIGdyYW1bal1bal0gKz0gMWUtOAogICAgcmhzID0gW3N1bShyW2pdKnYgZm9yIHIsIHYgaW4gemlwKHJvd3MsIHZhbHVlcykpIGZvciBqIGluIHJhbmdlKHApXQogICAgcmV0dXJuIHNvbHZlKGdyYW0sIHJocykKCmRlZiBwcmVkaWN0KGNvZWYsIHgpOgogICAgcmV0dXJuIHN1bShjKnogZm9yIGMsIHogaW4gemlwKGNvZWYsIGJhc2lzKHgpKSkKCnJuZyA9IHJhbmRvbS5SYW5kb20oMjAyNikKbiA9IDEyMDAKeCA9IFtybmcudW5pZm9ybSgtMiwgMikgZm9yIF8gaW4gcmFuZ2UobildCmQgPSBbMC44KnogKyAwLjkqbWF0aC5zaW4oMS41KnopICsgcm5nLmdhdXNzKDAsIDEpIGZvciB6IGluIHhdCnkgPSBbMi4wKmRpICsgMy4wKm1hdGguc2luKDEuNSp6KSArIDAuOCp6KnogKyBybmcuZ2F1c3MoMCwgMSkKICAgICBmb3IgeiwgZGkgaW4gemlwKHgsIGQpXQoKeV9oYXQgPSBbMC4wXSpuCmRfaGF0ID0gWzAuMF0qbgpmb3IgZm9sZCBpbiBbMCwgMV06CiAgICB0cmFpbiA9IFtpIGZvciBpIGluIHJhbmdlKG4pIGlmIGkgJSAyICE9IGZvbGRdCiAgICB0ZXN0ID0gW2kgZm9yIGkgaW4gcmFuZ2UobikgaWYgaSAlIDIgPT0gZm9sZF0KICAgIGN5ID0gZml0KFt4W2ldIGZvciBpIGluIHRyYWluXSwgW3lbaV0gZm9yIGkgaW4gdHJhaW5dKQogICAgY2QgPSBmaXQoW3hbaV0gZm9yIGkgaW4gdHJhaW5dLCBbZFtpXSBmb3IgaSBpbiB0cmFpbl0pCiAgICBmb3IgaSBpbiB0ZXN0OgogICAgICAgIHlfaGF0W2ldID0gcHJlZGljdChjeSwgeFtpXSkKICAgICAgICBkX2hhdFtpXSA9IHByZWRpY3QoY2QsIHhbaV0pCgp5ciA9IFt5aS1oaSBmb3IgeWksIGhpIGluIHppcCh5LCB5X2hhdCldCmRyID0gW2RpLWhpIGZvciBkaSwgaGkgaW4gemlwKGQsIGRfaGF0KV0KdGhldGEgPSBzdW0oYSpiIGZvciBhLCBiIGluIHppcChkciwgeXIpKSAvIHN1bShhKmEgZm9yIGEgaW4gZHIpCm5haXZlID0gc3VtKChkaS1zdW0oZCkvbikqKHlpLXN1bSh5KS9uKSBmb3IgZGksIHlpIGluIHppcChkLCB5KSkgLyBzdW0oKGRpLXN1bShkKS9uKSoqMiBmb3IgZGkgaW4gZCkKcHJpbnQoZiJuYWl2ZSBzbG9wZToge25haXZlOi4zZn0iKQpwcmludChmImNyb3NzLWZpdCByZXNpZHVhbCBzbG9wZToge3RoZXRhOi4zZn0gKHRydWUgdmFsdWUgMi4wMDApIik= layout: vertical locale: en title: Cross-fit nonlinear nuisance functions --- :: The polynomial basis is only a transparent learner for teaching. In practice, choose learners through out-of-fold performance and substantive structure, then inspect whether the causal result is stable across reasonable learner libraries and splits. ## Orthogonality buys local robustness, not immunity The score [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[η]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}[{]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} is constructed so small first-order nuisance errors have limited effect on [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. [Chernozhukov et al. (2018)](https://doi.org/10.1111/ectj.12097){rel=""nofollow""} formalise this orthogonality and cross-fitting framework. It still needs: - an identifying model such as conditional exchangeability; - overlap and residual treatment variation; - suitable nuisance convergence and moments; - clustering/splitting that respects grouped or time-dependent data; - a low-dimensional target defined before model search. ## Practical audit Report the learner library, tuning process, fold construction, random seed, overlap, out-of-fold nuisance performance, repeated-split stability and final score/inference formula. The [DoubleML documentation](https://docs.doubleml.org/stable/){rel=""nofollow""} is useful implementation guidance, not a replacement for this record. ## Quick check A powerful learner predicts scholarship receipt almost perfectly. Is this ideal for DML? ::legacy-details{title="Answer"} Not necessarily. Near-perfect treatment prediction can reveal poor overlap: residual treatment variation becomes tiny and the effect is weakly supported. Inspect propensity distributions and the denominator [[]{.katex-mathml}[[[]{.strut style="height:1.1789em;vertical-align:-0.2587em;"}[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4413em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2587em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. :: [Next: Heterogeneity and Policy Learning](https://www.pengjiaxin.com/21-heterogeneity-policy) # Heterogeneity and Policy Learning []{#heterogeneity-and-policy-learning} ## An average can hide decision-relevant variation Let [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} be the conditional average treatment effect. A Pathways ATE of six points could combine: | Pre-specified group | Estimated effect | 95% interval | Applicants | | ---------------------- | ---------------: | -----------: | ---------: | | limited adviser access | +12 pp | [5, 19] | 300 | | moderate access | +6 pp | [1, 11] | 500 | | strong access | +1 pp | [−4, 6] | 200 | This suggests targeting, but noisy subgroup estimates can manufacture a ranking. Heterogeneity requires more information than an ATE. ## Confirmatory and exploratory heterogeneity differ | Confirmatory | Exploratory | | --------------------------------- | -------------------------------------- | | groups and contrast pre-specified | patterns learned from many covariates | | limited multiplicity | large search space | | direct inference possible | honest sample splitting needed | | tests a theory | generates a theory or policy candidate | Do not discover “high impact among rural women aged 19–21” in the same sample and report an ordinary confidence interval as if the subgroup had been planned. ## Honest trees and forests separate discovery from estimation A causal tree can use one subsample to choose splits and another to estimate leaf effects. Causal forests average many such trees and can estimate conditional effects with local weighting. [Athey, Tibshirani and Wager (2019)](https://doi.org/10.1214/18-AOS1709){rel=""nofollow""} develop generalized random forests; the current [`grf` documentation](https://grf-labs.github.io/grf/){rel=""nofollow""} explains estimation and diagnostics. Audit: - overlap within important leaves; - calibration of heterogeneity, not only variable importance; - stability across seeds and specifications; - support for extreme CATE predictions; - out-of-sample validation of policy value. Variable importance does not establish that a variable causally modifies treatment. ## A policy rule needs a value function Let [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} decide who receives an offer. A simple welfare objective is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where outcomes and costs must be placed on a commensurable scale. Real rules also face capacity and fairness constraints. If Northbridge has 400 offers, point estimates suggest offering to all 300 limited-access applicants and 100 moderate-access applicants. Before adopting this rule, ask: 1. are group effects precise enough to support the ranking? 2. how are ties within the moderate group resolved? 3. does adviser access encode inequitable prior provision? 4. will expansion change take-up, capacity or treatment quality? 5. what is the policy’s value on an untouched evaluation sample? [Athey and Wager (2021)](https://doi.org/10.3982/ECTA15732){rel=""nofollow""} develop efficient policy learning under explicit policy-class constraints. The constraint is part of the estimand, not an inconvenience added after estimation. ## Effect prediction is not outcome prediction A model can predict completion accurately using prior attainment yet learn treatment-effect differences poorly. For policy choice, validate uplift or policy value through honest evaluation; ordinary predictive accuracy is insufficient. [Nie and Wager (2021)](https://doi.org/10.1093/biomet/asaa076){rel=""nofollow""} develop the R-learner as one route to estimating heterogeneous effects with flexible nuisance models. ## Quick check The largest predicted CATEs occur where only 2% of applicants received treatment. Should the policy target that region first? ::legacy-details{title="Answer"} Not from this evidence alone. Effects there rely on weak overlap and extrapolation. Show treatment support and uncertainty, restrict the policy class to supported regions or collect targeted experimental evidence. :: [Next: Sensitivity and Partial Identification](https://www.pengjiaxin.com/22-sensitivity-partial-id) # Sensitivity and Partial Identification []{#sensitivity-and-partial-identification} ## Robustness is not a list of specifications Adding controls, deleting outliers and changing standard errors asks whether results are numerically stable. Sensitivity analysis asks a sharper question: > How large must a specified violation of the identifying assumption be to change the conclusion? The answer is conditional on the sensitivity model. It does not certify that the violation is smaller. ## Match the sensitivity analysis to the design | Design threat | Sensitivity parameter or bound | Useful output | | -------------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | | unmeasured confounding | strength of omitted treatment/outcome association | adjusted effect or robustness value | | DID trend violation | permitted post-period deviation from pre-trend | interval over deviation sizes | | IV exclusion/ignorability | instrument side effect or instrument confounding | adjusted IV estimate/interval | | attrition | missing potential-outcome range or monotonicity | identified effect interval | | hidden bias after matching | odds-of-treatment departure | conclusion across [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Use the design’s weak point. An IV exclusion analysis does not address weak instruments; a DID trend analysis does not address anticipation. ## Benchmark omitted confounding Suppose adjustment gives an eight-point completion effect. Rather than “results survive many controls,” compare a hypothetical omitted variable with observed adviser support: - how strongly would it need to explain scholarship receipt, conditional on controls? - how strongly would it need to explain completion residuals? - would that joint strength reduce the estimate to zero or only below a policy threshold? [Cinelli and Hazlett (2020)](https://doi.org/10.1111/rssb.12348){rel=""nofollow""} express omitted-variable sensitivity using partial [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} measures and observed-variable benchmarks. For IV, [Cinelli and Hazlett (2025)](https://doi.org/10.1093/biomet/asaf004){rel=""nofollow""} separately quantify possible side effects of the instrument and confounding of the instrument. [Zhang and Zhao (2026)](https://doi.org/10.1093/biomet/asag030){rel=""nofollow""} bound average, rather than only worst-case, confounding strength in a newer marginal-sensitivity model. Always label new methods by publication status and implementation maturity in the reading map. ## Bounds expose what missing outcomes permit Completion is binary. Response is 80% in the offer arm with observed mean 0.60, and 90% in control with mean 0.50. Without assumptions about missing outcomes: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0.8]{.mord}[(]{.mopen}[0.60]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.1667em;"}[0.8]{.mord}[(]{.mopen}[0.60]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.2]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0.48]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.68]{.mord}[]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0.9]{.mord}[(]{.mopen}[0.50]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.1667em;"}[0.9]{.mord}[(]{.mopen}[0.50]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0.45]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.55]{.mord}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore the effect lies in [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0.48]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0.55]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.1667em;"}[0.68]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.45]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[−]{.mord}[0.07]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.23]{.mord}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The data alone permit harm or substantial benefit. A credible monotonicity, response or administrative-linkage assumption can narrow the set—but must be stated. ## Sensitivity curves beat a single threshold Show the effect estimate and interval over a substantively interpretable range. Mark: - zero; - a policy-relevant minimum effect; - benchmarks from observed covariates or pre-trends; - the range experts regard as plausible; - where support becomes too weak to calculate reliably. For staggered DID, [Rambachan and Roth (2023)](https://doi.org/10.1093/restud/rdad018){rel=""nofollow""} make conclusions conditional on restrictions relating post-treatment trend violations to pre-treatment deviations. ## Quick check The effect remains statistically non-zero until an omitted confounder is twice as strong as any observed covariate. Is the study now proven causal? ::legacy-details{title="Answer"} No. The benchmark may omit the strongest plausible confounder, and the sensitivity model may not capture interference, measurement error or selection. Report the calibrated claim: the conclusion survives violations of the specified form up to the stated strength. :: [Next: External Validity](https://www.pengjiaxin.com/23-external-validity) # External Validity and Transport []{#external-validity-and-transport} ## Internal validity has an address The historical Pathways lottery identifies an ITT for applicants in participating districts, in score band 68–72, under that year’s offer and university-capacity conditions. “The programme works” silently removes every qualifier. External validity has at least four dimensions: | Dimension | Transport question | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- | | population [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | do effect modifiers differ in the target applicants? | | treatment [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord,mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | is the expanded scholarship the same treatment version? | | outcome [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | are definitions, follow-up and measurement comparable? | | context [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord,mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | do institutions, prices, peers or implementation differ? | This population–treatment–outcome–context framework is developed empirically by [Egami and Hartman (2023)](https://doi.org/10.1017/S0003055422000880){rel=""nofollow""}. ## Reweight only supported effect modifiers Suppose the pilot contains 80% high-preparedness and 20% lower-preparedness applicants. Effects are 4 and 12 points respectively: [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[i]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[o]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.8]{.mord}[(]{.mopen}[0.04]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.2]{.mord}[(]{.mopen}[0.12]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.056.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The expansion target is 30% high and 70% lower preparedness: [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[e]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.3]{.mord}[(]{.mopen}[0.04]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.7]{.mord}[(]{.mopen}[0.12]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.096.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The transported effect is 9.6 rather than 5.6 points if preparedness captures the relevant effect modification and group-specific effects remain stable. More generally, study observations can be weighted by target-versus-study participation odds. This requires overlap: target profiles absent from the study cannot be recovered by large weights. ## A transport estimate needs three audits 1. **selection diagram or mechanism:** why study participation differs; 2. **effect-modifier set:** why conditioning makes effects stable across study and target; 3. **support:** whether every important target stratum appears in the study. Report weighted and unweighted covariate distributions, weight concentration, effective sample size and sensitivity to omitted effect modifiers. [Degtiar and Rose (2023)](https://doi.org/10.1146/annurev-statistics-042522-103837){rel=""nofollow""} review generalizability and transportability assumptions and methods. ## Scale can change the treatment itself A 500-person pilot may provide intensive advising. A 20,000-person rollout can produce: - adviser congestion; - university-capacity constraints; - tuition or housing price responses; - peer spillovers; - applicant behavioural changes; - lower implementation fidelity. These are not sampling differences. They violate stable treatment versions or no-interference assumptions. Model saturation, collect rollout evidence or define cluster/market-level effects rather than reweighting individuals and declaring transport complete. ## Separate three recommendations | Evidence | Defensible recommendation | | ------------------------------ | --------------------------------------------- | | internally valid pilot only | expand evidence collection | | supported population transport | target similar applicants under same delivery | | scale and equilibrium evidence | consider system-wide rollout | The final policy memo should distinguish “estimated effect,” “transported effect under assumptions” and “decision after costs and constraints.” ## Quick check The target population has excellent covariate overlap, but the scholarship value is halved. Can population reweighting transport the original effect? ::legacy-details{title="Answer"} Not by itself. The treatment version changed. You need a dose-response or mechanism argument, evidence at the new value, or a deliberately bounded conclusion. :: [Next module: Research Workflow](https://www.pengjiaxin.com/../06-workflow/) # Module 5 — Modern Causal Analysis []{#module-5-modern-causal-analysis} Modern causal methods are most useful when they separate two tasks: [[[]{.katex-mathml}[[[]{.strut style="height:2.1647em;vertical-align:-1.4702em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[why a counterfactual is credible]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.6659em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.352em;"}[[]{.pstrut style="height:3em;"}[[[identification]{.mord}]{.mord.text}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.648em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4702em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.1647em;vertical-align:-1.4702em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[how complex relationships are learned]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.6659em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.352em;"}[[]{.pstrut style="height:3em;"}[[[flexible estimation]{.mord}]{.mord.text}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.648em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4702em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Machine learning helps with the second task. Cross-fitting and orthogonal scores reduce sensitivity to nuisance-model error; they do not remove unmeasured confounding, interference or poor overlap. ## Prepare Bring one causal design from Modules 0–3. Mark: - the target parameter; - the treatment-assignment assumption; - nuisance functions such as outcome regression or propensity score; - variables available before treatment; - intended target population. ## Route 1. [Double Machine Learning](https://www.pengjiaxin.com/20-dml): orthogonalisation and cross-fitting. 2. [Heterogeneity and Policy Learning](https://www.pengjiaxin.com/21-heterogeneity-policy): CATEs, honest discovery and constrained decisions. 3. [Sensitivity and Partial Identification](https://www.pengjiaxin.com/22-sensitivity-partial-id): replace binary robustness claims with calibrated ranges. 4. [External Validity](https://www.pengjiaxin.com/23-external-validity): move an effect across populations, treatments and contexts. ## Workshop: model card for a causal estimator Teams construct a model card with six fields: | Field | Required statement | | ----------------- | ---------------------------------------------------------------- | | estimand | ATE, ATT, CATE, policy value or transported effect | | identification | experiment, conditional exchangeability, IV, DID or other design | | learners | nuisance functions and why flexibility is needed | | sample splitting | training, tuning and estimation roles | | stress tests | overlap, split stability, sensitivity and subgroup support | | decision boundary | cost, capacity, fairness and target population | ## Follow-up deliverable Submit either a cross-fitted estimate with a split-stability audit or a calibrated sensitivity analysis. Postgraduate work should state the orthogonal moment or identified set and explain the rate/regularity conditions in words. [Start with Double Machine Learning](https://www.pengjiaxin.com/20-dml) # Data Provenance []{#data-provenance} ## Every coefficient begins as a data lineage For Pathways: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[application register]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[lottery file]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[offer log]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[education linkage]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[analysis table]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If an applicant ID is duplicated during linkage, the standard error and treatment mean may both change. “Data cleaning” is not neutral when it changes who represents the estimand. ## Keep four layers separate | Layer | Purpose | Rule | | ------------ | ----------------------------------- | --------------------------------------- | | source/raw | immutable acquired files | never hand-edit | | intermediate | typed, deduplicated, linked records | one scripted transformation per object | | analytic | one row per declared unit/time | variables match the identification memo | | output | tables, figures, model objects | generated, never manually corrected | Store checksums or source version identifiers. Record access dates because live administrative extracts and web APIs change. ## A useful data manifest | Field | Pathways example | | ---------------- | ------------------------------------------------- | | source owner | Northbridge scholarship office | | file/version | lottery register, 2024-09-03 extract | | unit and period | applicant, 2024 cohort | | key | application ID; unique before linkage | | coverage | submitted applications in participating districts | | treatment time | offer issued by 31 August 2024 | | outcome time | degree completion by 31 July 2029 | | restrictions | de-identified secure access only | | transformation | status codes mapped by versioned dictionary | | known limitation | appeals after 31 August require separate flag | This reveals a maturity problem immediately: five-year completion for the 2024 cohort is not observed in 2026. Use an earlier cohort, a shorter-horizon outcome or describe the analysis as prospective. ## Joins need assertions Before a merge, test key uniqueness and expected coverage. After it, report: - rows before and after; - unmatched keys on each side; - one-to-one, one-to-many or many-to-many relationship; - duplicated units created; - match rates by treatment and outcome-relevant groups. An overall 95% match rate can hide 99% among controls and 85% among treated units. ## Time-stamp variables by causal role | Variable | Measured | Role | | -------------------- | ----------------- | ---------------------------------------- | | prior score | before assignment | candidate confounder/precision variable | | offer | assignment date | instrument or treatment | | scholarship receipt | after offer | treatment uptake/mediator for ITT | | first-year enrolment | after offer | outcome or mediator for later completion | | completion | later | outcome | The same field can be an outcome in one analysis and a mediator in another. A data dictionary should store definition, timing, coding, missing-value meaning and permitted role—not only column type. ## Privacy and provenance reinforce each other Keep direct identifiers outside the analysis repository. Document linkage without exposing keys, secrets or row-level personal data. For restricted sources, publish: - data-access route and eligibility; - non-disclosive metadata and variable construction; - synthetic or simulated fixtures that exercise the pipeline; - disclosure-control steps; - code that runs once authorised data are mounted. ## Quick check The treatment indicator is reconstructed from the amount paid during the year. Which estimand is threatened? ::legacy-details{title="Answer"} An offer ITT cannot use payment as assignment: payment is post-offer take-up. Preserve the lottery/offer field for ITT and use receipt only with an IV or another explicit receipt-effect design. :: [Next: Reproducibility and Reporting](https://www.pengjiaxin.com/25-reproducibility-reporting) # Reproducibility and Reporting []{#reproducibility-and-reporting} ## Reproduction has levels | Goal | Question | | ----------------------------- | ------------------------------------------------------------------- | | computational reproducibility | does the same code and data regenerate the result? | | robustness | does the conclusion survive defensible analytical changes? | | replication | does new data or an independent implementation support the finding? | Passing the first is necessary but does not establish the other two. ## The one-command principle A reviewer should be able to start from documented inputs and run one orchestration command that: 1. validates expected files and versions; 2. builds analytic data; 3. estimates all reported models; 4. generates tables and figures; 5. runs tests and writes a machine-readable log. This repository already uses a locked JavaScript dependency workflow and VitePress build. Course cells are enhancements: every substantive result also appears statically, so learning and review do not depend on a browser runtime. ## Minimum replication package | Component | Evidence | | -------------- | -------------------------------------------------------- | | README | sequence, expected runtime, hardware and output map | | data manifest | source, version, licence/access and checksums | | environment | lockfile, language and package versions | | code | numbered or dependency-driven scripts; no manual steps | | seeds | every random split, simulation and bootstrap controlled | | tests | keys, row counts, domains and known benchmark estimates | | disclosure log | deviations, exclusions, failed analyses and restrictions | | outputs | generated from code; figures include underlying values | Absolute local paths, undocumented spreadsheet edits and “run cells in this order until it works” are reproducibility failures. ## Restricted data are a documentation problem, not an exemption The [AEA Data and Code Availability Policy](https://www.aeaweb.org/journals/data/data-code-policy){rel=""nofollow""}, in its February 2026 version, expects enough data, code and computational detail to permit replication while providing procedures for legally or ethically restricted data. A package can therefore include access instructions, executable code, synthetic fixtures and a controlled-computing description without publishing protected records. The policy is a journal requirement, not a universal rule for every course project. Use it here as a high-quality audit benchmark and check the live requirements of the intended venue. ## Make randomness and computing visible Record: - pseudorandom generator and seed; - fold/cluster construction; - bootstrap or permutation repetitions; - CPU/GPU architecture when numerically material; - solver tolerances and convergence status; - package and system-library versions; - elapsed time and expected memory. For parallel procedures, a single top-level seed may not reproduce task scheduling. Test the package on a clean environment rather than the author’s long-lived machine. ## A results contract Add tests around substantive invariants: - exactly one row per applicant in the cross-section; - offer assignment precedes every outcome date; - lottery share lies in its documented tolerance; - the primary ITT uses the declared denominator; - all reported table values are generated objects; - no unreleased or direct identifiers enter outputs. Tests do not guarantee truth. They make silent changes observable. ## Quick check The analysis runs only because a package was installed globally on the author’s laptop. Is a list of package names sufficient? ::legacy-details{title="Answer"} No. Record exact compatible versions and system requirements in a lockfile or environment specification, then test from a clean environment. Also document data inputs, execution order and expected outputs. :: [Next: Paper Audit](https://www.pengjiaxin.com/26-paper-audit) # Paper and Evidence Audit []{#paper-and-evidence-audit} ## Audit claims, not page count Create one row for every abstract, conclusion and policy claim: | Claim | Type | Estimand | Evidence | Key assumption | Stress test | Scope | | --------------------------- | ------ | ---------------- | --------------- | ------------------------- | ----------------------------- | ---------------------- | | offer raises completion | causal | lottery ITT | mean contrast | correct random assignment | randomisation inference | score band 68–72 | | receipt raises completion | causal | complier LATE | offer IV | exclusion, monotonicity | weak-IV/exclusion sensitivity | offer compliers | | expansion is cost-effective | policy | net social value | effects + costs | transport and valuation | capacity/cost scenarios | named target districts | If a policy sentence cannot be linked to a row, it is unsupported or underspecified. ## Seven-pass review 1. **question:** are treatment, outcome, population and horizon fixed? 2. **design:** where does counterfactual variation come from? 3. **data:** do units, timing, joins and exclusions match the design? 4. **estimation:** does the estimator target the declared parameter? 5. **inference:** what sampling or assignment variation justifies uncertainty? 6. **diagnostics:** do tests probe the design’s actual vulnerabilities? 7. **communication:** do title, abstract, tables and conclusion respect scope? Do these in order. A polished coefficient table cannot rescue an undefined treatment. ## Read tables as executable arguments For every primary table or figure, verify: - denominator and sample restrictions; - treatment and outcome units; - reference categories and omitted coefficients; - standard-error or randomisation procedure; - number of clusters and treatment-assignment level; - whether controls are pre-treatment; - support behind subgroup/event-time estimates; - whether notes permit independent interpretation; - consistency with the text and generated source values. A ten-point coefficient can mean 10 percentage points, a 10% multiplicative change or 10 log points. Units belong in the title or note. ## Organise robustness by threat | Threat | Targeted analysis | | ------------------- | ----------------------------------------------------------------- | | confounding | negative controls, alternative adjustment, calibrated sensitivity | | weak IV | first-stage diagnostics and weak-IV-robust intervals | | non-parallel trends | cohort-time estimates, placebos and trend sensitivity | | RDD manipulation | institutional/density audit and predetermined covariates | | poor overlap | support, weight concentration and target-population change | | attrition | arm-specific response, bounds and missingness sensitivity | | spillovers | exposure mapping or cluster/market-level estimand | Twenty specifications that all ignore the same threat are not twenty independent confirmations. ## Record the garden of forking paths Maintain a decision log for outcome definitions, samples, controls, bandwidths, horizons and subgroup choices. Distinguish: - pre-specified primary analyses; - planned secondary analyses; - exploratory analyses discovered after seeing outcomes; - corrections made after validation failures. Exploration is valuable when labelled. Hidden exploration turns inferential uncertainty into false certainty. ## Final red-team questions 1. What observation would most weaken the identification argument? 2. Which estimate has the least support but the strongest wording? 3. Does one coding decision drive the result? 4. What treatment version and population are silently assumed in the conclusion? 5. Can an independent researcher regenerate every primary value? The AEA’s [May 2026 report on data and code policy](https://www.aeaweb.org/articles?id=10.1257%2Fpandp.116.905){rel=""nofollow""} is a current example of treating reproducibility requirements as an evolving research institution. Check dates and venue-specific rules rather than copying an old checklist. ## Quick check All robustness estimates have the same sign, but every confidence interval includes substantively important harm and benefit. Is “robustly positive” defensible? ::legacy-details{title="Answer"} No. Sign stability of point estimates does not remove uncertainty. Report the interval, power or identified set and state that the evidence does not distinguish the decision-relevant alternatives. :: [Next: Capstone](https://www.pengjiaxin.com/../capstone/) # Module 6 — From Data to Auditable Evidence []{#module-6-from-data-to-auditable-evidence} A credible design can still fail through an undocumented merge, a changed denominator or a figure that cannot be regenerated. Research workflow is therefore part of identification: it preserves the link between the stated assignment process and the analysed records. ## Prepare Choose one result from an earlier module and collect: - source description and access date; - code that constructs treatment, outcome and sample; - software versions and random seed; - output table or figure; - interpretation and stated limitation. If one item cannot be located, that absence is the first audit finding. ## Route 1. [Data Provenance](https://www.pengjiaxin.com/24-data-provenance): trace every analytic field to its source and transformation. 2. [Reproducibility and Reporting](https://www.pengjiaxin.com/25-reproducibility-reporting): make the computational chain rerunnable under public or restricted access. 3. [Paper Audit](https://www.pengjiaxin.com/26-paper-audit): connect each claim to design, estimate, diagnostic and scope. ## Workshop: break and repair a replication Teams receive a result with one hidden defect: duplicated join keys, post-treatment controls, outcome-driven exclusions, an unseeded split or a mismatched clustering level. They must: 1. reproduce the reported number; 2. locate the defect; 3. quantify its effect; 4. repair code and documentation; 5. rewrite the claim if the conclusion boundary changes. ## Follow-up deliverable Submit a small evidence package with a README, data manifest, deterministic build command, disclosure log and claim–evidence table. Restricted data need not be disclosed unlawfully; provide access instructions, synthetic test data and verifiable code where possible. [Start with Data Provenance](https://www.pengjiaxin.com/24-data-provenance) # Formula and Design Map []{#formula-and-design-map} ## Core estimands | Name | Definition | Population | | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | declared target population | | ATT | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | treated units | | ITT | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} under random [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | assignment-eligible units | | LATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | instrument compliers | | CATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord,mathnormal}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | covariate-defined stratum | | policy value | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[π]{.mord,mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[))]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[π]{.mord,mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | decision target under rule [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[π]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Always define the treatment version, outcome horizon and unit with the symbol. ## Design map | Design | Minimal contrast | Counterfactual source | Central assumption | Primary diagnostic | Usual scope | | ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | | randomised offer | [[]{.katex-mathml}[[[]{.strut style="height:0.9701em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord,accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[Z]{.mord,mathnormal,mtight style="margin-right:0.0715em;"}[=]{.mrel,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9701em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord,accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[Z]{.mord,mathnormal,mtight style="margin-right:0.0715em;"}[=]{.mrel,mtight}[0]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | random assignment | implemented assignment; attrition controlled | balance process, flow and outcome coverage | experimental population | | adjusted regression | coefficient or standardised prediction contrast | conditionally comparable units | exchangeability, overlap, correct target model | DAG/control and support audit | adjustment target | | IV | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[R]{.mord,mathnormal style="margin-right:0.0077em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[/]{.mord}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[S]{.mord,mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | instrument-induced treatment | independence, exclusion, relevance, monotonicity | first stage, weak-IV and exclusion sensitivity | compliers | | fixed effects | within-unit contrast | unit over time | time-varying confounding handled | timing, pre-trends, serial dependence | units with within variation | | 2×2 DID | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[T]{.mord,mathnormal,mtight style="margin-right:0.1389em;"}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[T]{.mord,mathnormal,mtight style="margin-right:0.1389em;"}[0]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord,mathnormal,mtight style="margin-right:0.0715em;"}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord,mathnormal,mtight style="margin-right:0.0715em;"}[0]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | comparison trend | parallel untreated trends, no anticipation | trends/placebos/sensitivity | treated group and period | | staggered DID | aggregate [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord,mathnormal}[T]{.mord,mathnormal style="margin-right:0.1389em;"}[T]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord,mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | never/not-yet treated | cohort-specific trends | cohort support and simultaneous bands | supported cohorts/horizons | | sharp RDD | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[lim]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[[c]{.mord,mathnormal,mtight}[+]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[lim]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[[c]{.mord,mathnormal,mtight}[−]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | cutoff neighbours | continuity, no bundled discontinuity | density, covariates, bandwidth | cutoff units | | weighting | weighted outcome contrast | observed-covariate overlap | exchangeability and positivity | balance, weights, [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[n]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[e]{.mord,mathnormal,mtight}[f]{.mord,mathnormal,mtight style="margin-right:0.1076em;"}[f]{.mord,mathnormal,mtight style="margin-right:0.1076em;"}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | weighted target | | synthetic control | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord,mtight}[t]{.mord,mathnormal,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1858em;vertical-align:-0.4358em;"}[[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord,mathnormal,mtight style="margin-right:0.0572em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4358em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[w]{.mord,mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord,mathnormal,mtight style="margin-right:0.0572em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord,mathnormal,mtight style="margin-right:0.0572em;"}[t]{.mord,mathnormal,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | weighted donor trajectory | donor stability and no spillovers | pre-fit, placebos, leave-one-out | treated aggregate unit | | DML | orthogonal residual score | design + flexible nuisance estimation | underlying identification and nuisance rates | overlap, split/learner stability | declared low-dimensional target | ## Interpretation map | Reported object | Translate into | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- | | OLS coefficient | linear projection slope conditional on included regressors | | logit coefficient | conditional log-odds change | | [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[e]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[β]{.mord,mathnormal,mtight style="margin-right:0.0528em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} in count model | conditional mean/rate ratio | | event-study point | supported cohort-weighted effect at event time | | causal-forest CATE | conditional effect estimate with local support/uncertainty | | robustness value | violation strength under a stated sensitivity model | ## Uncertainty map | Variation source | Starting reference | | ------------------------------- | ----------------------------------------------------------- | | individual random assignment | assignment/randomisation or individual sampling | | cluster-level policy assignment | cluster-level variation; report cluster count | | repeated panel outcomes | within-unit dependence and assignment level | | RDD near cutoff | local-polynomial robust bias-corrected inference | | synthetic-control case study | placebo/permutation and design-specific uncertainty | | learned policy | honest out-of-sample value and policy-selection uncertainty | Standard errors are part of the design argument, not a formatting choice. [Next: Worked Pitfalls](https://www.pengjiaxin.com/28-worked-pitfalls) # Ten Worked Microeconometric Pitfalls []{#ten-worked-microeconometric-pitfalls} ## 1. Receipt replaces assignment Offer is random; receipt is chosen. Regressing completion on receipt loses the experimental comparison. Estimate offer ITT, then use offer as an instrument for receipt if exclusion, monotonicity and relevance are defensible. ## 2. A mediator is called a control Scholarship offer affects study hours, which affect completion. Controlling for study hours blocks part of the total effect and may induce selection. Decide whether the target is total, direct or mediated effect before adjustment. ## 3. Statistical significance replaces magnitude An effect of 0.3 percentage points has [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.001]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} in one million records. If programme cost requires at least 3 points, the estimate is precise evidence against practical value. ## 4. Cluster assignment, individual standard errors Twenty schools are assigned treatment; 4,000 students are observed. The independent treatment variation is much closer to 20 clusters than 4,000 students. Cluster-aware inference and design limitations must be reported. ## 5. A strong first stage validates IV Distance to an adviser strongly changes receipt but may also change mentoring directly. Relevance is strong; exclusion remains doubtful. Add an institutional pathway audit and exclusion sensitivity. ## 6. TWFE averages are treated as transparent Early and late adopters have different dynamic effects. One TWFE coefficient uses already-treated comparisons. Estimate cohort-time effects, expose weights/support and aggregate toward a declared target. ## 7. An insignificant pre-trend proves DID The pre-period interval allows trends from −4 to +5 points. Non-rejection has little evidential force. Report power/support and sensitivity to plausible post-treatment deviations. ## 8. RDD extrapolates to everyone The cutoff effect is +9 points at score 70. Applicants scoring 55 differ in preparation and treatment response. A general expansion needs transport or new randomised evidence. ## 9. Matching creates randomisation Observed covariates balance perfectly, but adviser motivation is unrecorded. Balance supports the implemented observable design; conditional exchangeability remains an assumption. Benchmark an unmeasured-confounding sensitivity analysis. ## 10. A predictive model discovers a causal policy Prior attainment predicts completion but does not reveal who benefits from a scholarship. Estimate treatment-effect heterogeneity under a credible design and evaluate the policy rule on held-out data with capacity and fairness constraints. ## Mixed-method challenge A result has excellent pre-fit in synthetic control, a large post-gap, and no unusual placebo ratio after excluding all donors with pre-RMSPE above twice the treated unit’s value. What must be shown? ::legacy-details{title="Answer"} Show the exclusion rule before seeing post-treatment gaps, every donor’s fit, the treated unit’s rank under reasonable thresholds, donor contamination and leave-one-out sensitivity. A threshold chosen after seeing results can manufacture an extreme rank. :: [Next: Reading and Software Map](https://www.pengjiaxin.com/29-reading-software-map) # Reading and Software Map []{#reading-and-software-map} ## How this map was assembled This is a selective teaching map, **not** a systematic review. Links and software documentation were checked on **1 August 2026**. Foundational readings establish estimands; recent readings address known failure modes. Live documentation can change, so record the version used in an empirical project. ## Identification and inference | Purpose | Reading | Teaching use | | ------------------------ | -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | | potential outcomes | [Rubin (1974)](https://doi.org/10.1037/h0037350){rel=""nofollow""} | assignment mechanisms and causal effects | | IV and LATE | [Angrist, Imbens and Rubin (1996)](https://doi.org/10.1080/01621459.1996.10476902){rel=""nofollow""} | complier interpretation | | weak instruments | [Andrews, Stock and Sun (2019)](https://doi.org/10.1146/annurev-economics-080218-025643){rel=""nofollow""} | robust diagnostics and inference | | clustering | [Abadie et al. (2023)](https://doi.org/10.1093/qje/qjac038){rel=""nofollow""} | when and why to cluster | | OVB sensitivity | [Cinelli and Hazlett (2020)](https://doi.org/10.1111/rssb.12348){rel=""nofollow""} | observed-variable benchmarking | | IV sensitivity | [Cinelli and Hazlett (2025)](https://doi.org/10.1093/biomet/asaf004){rel=""nofollow""} | exclusion and instrument-confounding violations | | average-case sensitivity | [Zhang and Zhao (2026)](https://doi.org/10.1093/biomet/asag030){rel=""nofollow""} | average-strength rather than only worst-case confounding bounds | ## Policy evaluation designs | Design | Reading | Teaching use | | ---------------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------- | | applied DID | [Card and Krueger (1994)](https://doi.org/10.2307/2118030){rel=""nofollow""} | design reconstruction and historical debate | | group-time DID | [Callaway and Sant’Anna (2021)](https://doi.org/10.1016/j.jeconom.2020.12.001){rel=""nofollow""} | heterogeneous staggered effects | | imputation event study | [Borusyak, Jaravel and Spiess (2024)](https://doi.org/10.1093/restud/rdae007){rel=""nofollow""} | supported untreated-outcome imputation | | DID sensitivity | [Rambachan and Roth (2023)](https://doi.org/10.1093/restud/rdad018){rel=""nofollow""} | violations of exact parallel trends | | practical RDD | [Cattaneo, Idrobo and Titiunik (2020)](https://doi.org/10.1017/9781108684606){rel=""nofollow""} | local estimation and diagnostics | | matching | [Stuart (2010)](https://doi.org/10.1214/09-STS313){rel=""nofollow""} | design before outcome analysis | | overlap weights | [Li, Morgan and Zaslavsky (2018)](https://doi.org/10.1080/01621459.2016.1260466){rel=""nofollow""} | target population under overlap | | synthetic control | [Abadie, Diamond and Hainmueller (2010)](https://doi.org/10.1198/jasa.2009.ap08746){rel=""nofollow""} | transparent comparative case study | | synthetic DID | [Arkhangelsky et al. (2021)](https://doi.org/10.1257/aer.20190159){rel=""nofollow""} | unit and time weighting | ## Flexible causal analysis and transport | Purpose | Reading | Teaching use | | --------------------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------ | | double ML | [Chernozhukov et al. (2018)](https://doi.org/10.1111/ectj.12097){rel=""nofollow""} | orthogonal scores and cross-fitting | | generalized random forests | [Athey, Tibshirani and Wager (2019)](https://doi.org/10.1214/18-AOS1709){rel=""nofollow""} | local moments and heterogeneity | | R-learner | [Nie and Wager (2021)](https://doi.org/10.1093/biomet/asaa076){rel=""nofollow""} | residual-on-residual CATE learning | | efficient policy learning | [Athey and Wager (2021)](https://doi.org/10.3982/ECTA15732){rel=""nofollow""} | constrained policy value | | broad 2024 review | [Feuerriegel et al. (2024)](https://doi.org/10.1038/s41591-024-02902-1){rel=""nofollow""} | causal ML workflow and limitations | | external validity framework | [Egami and Hartman (2023)](https://doi.org/10.1017/S0003055422000880){rel=""nofollow""} | population, treatment, outcome and context | | transport review | [Degtiar and Rose (2023)](https://doi.org/10.1146/annurev-statistics-042522-103837){rel=""nofollow""} | assumptions and estimators | ## Live software guidance | Task | Official documentation | Audit note | | --------------------------------- | ------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | | group-time DID | [`did`](https://bcallaway11.github.io/did/){rel=""nofollow""} | declare control group, anticipation, aggregation and simultaneous bands | | high-dimensional fixed effects/IV | [`fixest`](https://lrberge.github.io/fixest/){rel=""nofollow""} | inspect formula, fixed effects, clustering and current version | | RDD | [`rdrobust`](https://rdpackages.github.io/rdrobust/){rel=""nofollow""} | retain bandwidth, kernel and robust bias-correction output | | synthetic DID | [`synthdid`](https://synth-inference.github.io/synthdid/){rel=""nofollow""} | documentation described beta status at the review date; verify design support | | causal/generalized forests | [`grf`](https://grf-labs.github.io/grf/){rel=""nofollow""} | assess overlap, calibration and honest policy evaluation | | double ML | [`DoubleML`](https://docs.doubleml.org/stable/){rel=""nofollow""} | record learners, tuning, folds, score and repeated-split stability | Software names do not define estimands. Reconstruct the identification memo before translating any example code. ## Reproducibility standards - [AEA Data and Code Availability Policy](https://www.aeaweb.org/journals/data/data-code-policy){rel=""nofollow""}, current page reviewed against the February 2026 policy. - [AEA data and code guidance](https://www.aeaweb.org/journals/data){rel=""nofollow""}, including venue-specific resources and updates. - [AEA policy report (May 2026)](https://www.aeaweb.org/articles?id=10.1257%2Fpandp.116.905){rel=""nofollow""}, useful context on implementation and institutional learning. ## Reading protocol For any paper, extract only six lines before reading its regression table: 1. target estimand; 2. assignment/counterfactual source; 3. identifying assumptions; 4. support and inference level; 5. strongest design-specific diagnostic; 6. population, treatment and time boundary. [Return to the Course Home](https://www.pengjiaxin.com/../00-index) # Appendix — Revision and Evidence Map []{#appendix-revision-and-evidence-map} Use this appendix to retrieve a concept after completing its module. It is not a substitute for the identification argument. ## Resources - [Formula and Design Map](https://www.pengjiaxin.com/27-formula-design-map): estimands, counterfactuals, assumptions and diagnostics on one page. - [Worked Pitfalls](https://www.pengjiaxin.com/28-worked-pitfalls): short cases that expose common interpretation failures. - [Reading and Software Map](https://www.pengjiaxin.com/29-reading-software-map): selective foundational and 2021–2026 sources plus live implementation guidance. ## Five-question method selector 1. What treatment contrast and population define the estimand? 2. Which real process creates untreated potential-outcome information? 3. What is the weakest identifying assumption? 4. Which observations provide support and at what level was treatment assigned? 5. Which diagnostic could genuinely change the conclusion? If question 2 has no answer, changing estimators is not yet progress. [Open the Formula and Design Map](https://www.pengjiaxin.com/27-formula-design-map) # Capstone — Should Northbridge Expand Pathways? []{#capstone-should-northbridge-expand-pathways} ## Decision brief Northbridge must decide whether to expand scholarship offers in 2027 from score band 68–72 to applicants scoring 65–72, and from 8 to 20 districts. Funding permits at most 1,200 additional offers. Officials care about degree completion, distributional access, public cost and university capacity. Your task is not to find the largest coefficient. Build one coherent evidence chain and recommend: - expand now; - run a targeted expansion with evaluation; - redesign delivery; - or do not expand on current evidence. ## Synthetic evidence pack All records below are teaching data. The historical dates are chosen so five-year outcomes are mature. ### A. 2019 lottery cohort: score band 68–72 | Assignment | Applicants | Received scholarship | Completed within 5 years | | ---------- | ---------: | -------------------: | -----------------------: | | offer | 500 | 350 (70%) | 290 (58%) | | no offer | 500 | 100 (20%) | 250 (50%) | Immediate calculations: - offer ITT: [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.58]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.50]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.08]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - first stage: [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.70]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.20]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.50]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - receipt LATE under IV assumptions: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.08/0.50]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.16]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - approximate ITT standard error: [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.031]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - approximate 95% interval: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0.018]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.142]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The ITT and LATE are not competing estimates of the same parameter. ### B. 2021–2023 eligibility cutoff Applicants at score 70 become eligible. A local-linear analysis reports: | Bandwidth | Offer-probability jump | Completion jump | Fuzzy-RDD ratio | | ---------- | ---------------------: | --------------: | --------------: | | ±2 points | 0.66 | 0.09 | 0.136 | | ±5 points | 0.64 | 0.07 | 0.109 | | ±10 points | 0.61 | 0.12 | 0.197 | Scores are integer-valued, 18% lie exactly at 70, and one district allowed assessor appeals. Covariates are smooth except adviser recommendation, which rises modestly at 70. ### C. 2022–2025 district rollout Eight districts adopt at different dates; twelve have not adopted by 2025. One-year enrolment is observed for all cohorts. | Event time | Group-time ATT | 95% simultaneous interval | Supporting cohorts | | ---------: | -------------: | ------------------------: | -----------------: | | −2 | +0.01 | [−0.03, 0.05] | 6 | | −1 | +0.02 | [−0.01, 0.05] | 8 | | 0 | +0.05 | [0.01, 0.09] | 8 | | +1 | +0.07 | [0.02, 0.12] | 6 | | +2 | +0.09 | [0.01, 0.17] | 3 | Early-adopting districts had more advisers and falling youth unemployment before adoption. No district reverses treatment, but applicants may apply across district borders. ### D. Expansion population and delivery | Feature | 2019 lottery | 2027 target | | ---------------------- | -----------: | --------------: | | scores 65–67 | 0% | 43% | | limited adviser access | 22% | 61% | | rural districts | 10% | 38% | | scholarship value | £4,000 | proposed £3,200 | | adviser caseload | 45 | projected 90 | Estimated public cost is £5,000 per offer including administration. Universities report 700 spare places before accommodation constraints become material. ## Required analysis ### 1. Identification memo Define one primary treatment, outcome, population, horizon and estimand. Draw the assignment process and state interference, non-compliance and missingness risks. ### 2. Design-specific evidence For each source, complete: | Source | Counterfactual | Estimand | Key assumption | Diagnostic | Scope | | ------- | ---------------------------- | ---------------------- | --------------------------------------------- | -------------------------------------- | ------------------------ | | lottery | assigned no-offer applicants | ITT/LATE | random assignment; IV assumptions for receipt | balance, attrition, first stage | 2019 band 68–72 | | cutoff | just-below applicants | local fuzzy-RDD effect | continuity; no other cutoff change | score density, covariates, bandwidth | near score 70 | | rollout | never/not-yet districts | cohort-time ATT | conditional parallel trends, no anticipation | event support, sensitivity, spillovers | adopting districts/years | Do not pool the three estimates until you explain why their treatments, outcomes and populations are commensurable. ### 3. Reproduce one estimate Provide code or a transparent hand calculation for one primary estimate. Match inference to assignment, show the denominator and include a static result. ### 4. Stress the weakest assumption Choose one: - weak-IV/exclusion sensitivity; - RDD manipulation or bandwidth audit; - DID trend sensitivity; - attrition bounds; - transportability weighting and overlap; - capacity/spillover scenario. Calibrate the violation using institutional or observed evidence. ### 5. Move from effect to decision State separately: 1. what the historical evidence identifies; 2. what must be assumed to transport it to 2027; 3. how reduced scholarship value and adviser congestion alter treatment; 4. how capacity, cost and distribution enter the recommendation; 5. what new evaluation would reduce the most consequential uncertainty. ## Recommended submission This is a teaching template: - 1,500-word policy memo for a non-technical committee; - technical appendix of up to 2,500 words; - reproducible code and data manifest; - one-page claim–evidence table; - five-minute oral defence. | Criterion | Suggested share | | -------------------------------------- | --------------: | | estimand and identification | 25% | | calculation, inference and diagnostics | 25% | | comparison and sensitivity | 20% | | transport, costs and policy reasoning | 20% | | reproducibility and communication | 10% | ## Checkpoint answer ::legacy-details{title="What a strong recommendation notices"} The lottery gives the cleanest causal offer effect for the original band; its IV ratio is a complier effect under exclusion and monotonicity. The RDD is local and complicated by integer scores, mass at the cutoff and adviser discontinuity. The staggered rollout supports a positive enrolment effect but needs conditional-trend and spillover sensitivity, and it does not yet establish five-year completion. Direct full expansion is therefore not identified by the historical effect alone: the target contains new score and rural groups, the award is smaller, adviser intensity is lower and capacity may bind. A defensible recommendation is a capacity-limited, stratified lottery among the new eligible groups with protected delivery standards, pre-specified outcomes and district-level spillover measurement. This both provides access and learns the effect under the actual 2027 treatment version. Different recommendations can be excellent if they price the constraints and defend the transport assumptions explicitly. :: [Open the Appendix](https://www.pengjiaxin.com/../appendix/) # Advanced Microeconomics — From Choice to Institutions ## Course question How do choices become equilibrium outcomes, when are those outcomes efficient, and how should rules change when information, strategy, or external effects prevent markets from working well? This is an upper-undergraduate course and a bridge to graduate microeconomic theory. Mathematics is used to make assumptions and mechanisms visible—not as a substitute for economic interpretation. ## What you should already know - partial derivatives, total differentials, and constrained optimisation; - basic matrix notation and second-order conditions; - probability, conditional expectation, and Bayes' rule; - supply, demand, elasticity, and elementary game theory; - the difference between a positive prediction and a normative judgment. ::legacy-details{title="Five-minute diagnostic"} 1. For `max xy` subject to `2x + y = 12`, can you derive and verify the optimum? 2. Why do `u(x)` and `3u(x) + 7` represent the same ordinal preferences? 3. Does a Nash equilibrium have to be Pareto efficient? 4. What information is private in an insurance contract? 5. Why is a first-order condition insufficient at a corner? If 1 or 5 is difficult, revise constrained optimisation. If 3 or 4 is difficult, keep a “prediction versus welfare” and a “public versus private information” column in your notes. :: ## Learning outcomes By the end, you will be able to: - derive Marshallian and Hicksian demand, expenditure, profit, and cost functions; - use comparative statics and duality to measure behavioural and welfare changes; - solve choices under risk and competitive, strategic, and informational equilibria; - distinguish efficiency, stability, incentive compatibility, and strategy-proofness; - solve benchmark oligopoly, contract, auction, public-good, and matching models; - implement a small equilibrium or allocation algorithm and verify its output; - connect theory to current evidence without treating one estimate as universal; - write a concise policy or design memo with assumptions, mechanism, incidence, and limits. ## Two cases across the course ### A. An AI-enabled marketplace Consumers search, sellers price, algorithms learn, the platform ranks products and sells advertisements, and regulators assess market power. The case links demand, games, oligopoly, private information, auctions, behavioural design, and platform governance. ### B. Climate-risk insurance Households differ in exposure and information; insurers classify risk; prevention is partly hidden; regulation limits pricing; public policy shares catastrophic losses. The case links expected utility, adverse selection, moral hazard, externalities, and mechanism design. ## Course map | Module | Core question | Main output | | -------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------- | ------------------------------- | | [1. Choice and duality](https://www.pengjiaxin.com/../01-fundations/) | What does optimisation reveal, and what can choice data recover? | demand/cost derivation | | [2. Comparative statics and welfare](https://www.pengjiaxin.com/../02-comparative-statics/) | What changes after a price or policy shock? | Slutsky and welfare calculation | | [3. Risk and insurance](https://www.pengjiaxin.com/../03-uncertainty/) | How are uncertain payoffs valued and shared? | certainty-equivalent analysis | | [4. General equilibrium](https://www.pengjiaxin.com/../04-general-equilibrium/) | Can all individual plans be mutually feasible? | exchange-equilibrium solution | | [5. Game theory](https://www.pengjiaxin.com/../05-game-theory/) | Which strategies are mutually optimal? | equilibrium argument | | [6. Oligopoly and algorithms](https://www.pengjiaxin.com/../06-oligopoly/) | How do timing and market rules shape power? | model comparison | | [7. Information and contracts](https://www.pengjiaxin.com/../07-information-economics/) | What changes when type or action is hidden? | IC/IR contract | | [8. Mechanisms and auctions](https://www.pengjiaxin.com/../08-mechanism-design/) | Can rules make private incentives serve a goal? | truthful mechanism | | [9. Behavioural and experimental micro](https://www.pengjiaxin.com/../09-behavioural-economics/) | Which benchmark assumptions fail predictably? | experiment appraisal | | [10. Externalities and public goods](https://www.pengjiaxin.com/../10-externalities-public-goods/) | How should social effects enter private choice? | instrument comparison | | [11. Matching and market design](https://www.pengjiaxin.com/../11-market-design/) | How should scarce, indivisible positions be assigned? | deferred-acceptance run | | [12. Integrated design studio](https://www.pengjiaxin.com/../12-review/) | How do the tools combine in one institution? | final design memo | ## Read every model in this order :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgUFtQcmltaXRpdmVzXSAtLT4gQ1tDaG9pY2UgYW5kIGNvbnN0cmFpbnRzXQogIEMgLS0+IFNbU29sdXRpb24gY29uY2VwdF0KICBTIC0tPiBFW0VxdWlsaWJyaXVtXQogIEUgLS0+IFdbV2VsZmFyZSBhbmQgZGlzdHJpYnV0aW9uXQogIFcgLS0+IERbRXZpZGVuY2UgYW5kIHJlZGVzaWduXQ==" locale="en"} Use this eight-part record: 1. **agents** — who chooses? 2. **objects** — quantities, actions, reports, or matches? 3. **preferences/payoffs** — what is maximised? 4. **constraints** — resources, technology, information, or incentives? 5. **timing and information** — who knows and moves when? 6. **solution concept** — optimum, competitive equilibrium, Nash, Bayesian Nash, stability? 7. **welfare criterion** — Pareto, total surplus, social welfare, revenue, fairness? 8. **empirical implication** — what observation could reject or refine the mechanism? ::warning{title="Four claims that must remain separate"} - An **assumption** defines the model. - A **theorem** follows from assumptions. - An **estimate** follows from a research design and dataset. - A **recommendation** also needs a welfare criterion and feasibility judgment. :: ## Minimal technical toolkit | Tool | Used for | Check before trusting the answer | | ------------------------------ | ------------------------------------- | ---------------------------------------------- | | Lagrangian/KKT | constrained choice | feasibility, complementary slackness, corners | | envelope theorem | value-function derivative | optimum is regular; parameter enters as stated | | implicit function theorem | local comparative statics | relevant Jacobian is nonsingular | | Hessian/Jacobian | curvature and stability | local versus global result | | Bayes' rule | beliefs after signals | probabilities and information sets | | fixed point/backward induction | strategic equilibrium | timing and off-path actions | | algorithm | allocation or equilibrium computation | termination, incentives, tie-breaking | ## A 12-week route | Week | Preparation | Seminar or laboratory | | ---: | ------------------------------------ | -------------------------------------- | | 1 | choice, duality, revealed preference | derive demand and cost functions | | 2 | Slutsky and welfare | transit-fare policy calculation | | 3 | risk and insurance | deductible design | | 4 | general equilibrium | Edgeworth-box allocation | | 5 | static and dynamic games | entry-game workshop | | 6 | oligopoly | compare Cournot, Bertrand, Stackelberg | | 7 | information and contracts | screening menu | | 8 | auctions and mechanisms | first- versus second-price auction | | 9 | behavioural and experimental methods | preregister a choice experiment | | 10 | externalities and public goods | carbon-policy hearing | | 11 | matching | run and audit deferred acceptance | | 12 | integration | platform-design defence | ## Assessment alignment | Task | Weight | What it tests | | -------------------------------- | -----: | ----------------------------------------------------- | | derivation problem sets | 30% | setup, solution, verification | | model comparison note | 20% | comparative statics and welfare | | evidence replication or critique | 20% | theory–data connection and boundary | | final market-design memo | 30% | incentives, allocation, implementation, communication | For a graduate extension, add existence conditions, proof sketches, robustness to non-convexity or incomplete information, and an empirical identification discussion. ## Recent evidence used in the course The application notes draw on recent work on production networks ([Baqaee & Farhi, 2024](https://doi.org/10.3982/ECTA17513){rel=""nofollow""}), algorithmic gasoline pricing ([Assad et al., 2024](https://doi.org/10.1086/726906){rel=""nofollow""}), machine-learning credit models ([Fuster et al., 2022](https://doi.org/10.1111/jofi.13090){rel=""nofollow""}), digital-ad auctions ([Bergemann, Bonatti & Wu, 2025](https://doi.org/10.1093/restud/rdae087){rel=""nofollow""}), nudges at scale ([DellaVigna & Linos, 2022](https://doi.org/10.3982/ECTA18709){rel=""nofollow""}), and current carbon-pricing institutions ([World Bank, 2026](https://www.worldbank.org/en/publication/state-and-trends-of-carbon-pricing){rel=""nofollow""}). Each chapter states what the evidence identifies and what it does not. “Recent” does not mean “universally applicable.” ## Start Open [Module 1](https://www.pengjiaxin.com/../01-fundations/). Before differentiating, write the agent, objective, feasible set, and the economic meaning of every multiplier. # Module 1 — Choice, Duality, and Revealed Preference []{#module-1-choice-duality-and-revealed-preference} ## Core question What can we infer about preferences or technology from observed choices, and what does an optimisation solution still leave unidentified? ## Learning outcomes You will be able to: - state the assumptions needed for utility representation and well-behaved demand; - derive Marshallian and Hicksian demand and use Roy's identity and Shephard's lemma; - recognise corner solutions and verify demand properties; - connect consumer and producer duality; - test a small dataset for revealed-preference violations. ## 1. Preferences are rankings, not measured happiness A preference relation `≽` is usually assumed: | Assumption | Meaning | What it permits | | ------------------ | --------------------------------------------- | -------------------------------------- | | completeness | any two bundles can be ranked | a choice is defined | | transitivity | rankings contain no cycle | internally consistent ordering | | continuity | nearby bundles do not cause arbitrary jumps | continuous utility representation | | local nonsatiation | every neighbourhood contains something better | budget exhaustion at positive prices | | convexity | mixtures are weakly preferred to extremes | convex demand problem; diversification | A utility function represents the ordering: [[[]{.katex-mathml}[[[]{.strut style="height:0.7719em;vertical-align:-0.136em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[⪰]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7194em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}[⟺]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Any strictly increasing transformation `f(u)` represents the same ordinal preferences. Marginal utility levels therefore depend on representation; the marginal rate of substitution does not: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[u]{.mord.mathnormal}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[u]{.mord.mathnormal}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::warning{title="Curvature needs care"} Convex preferences mean the **upper contour sets** are convex; they do not require the chosen utility representation to be concave. A monotone transformation can change second derivatives without changing choice. :: ## 2. Utility maximisation At prices `p ≫ 0` and income `m`, Marshallian demand solves: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.5623em;vertical-align:-0.8123em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[≥]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3829em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8123em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[{]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7719em;vertical-align:-0.136em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a regular interior solution, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∇]{.mord}[u]{.mord.mathnormal}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[λ]{.mord.mathnormal}[p]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The condition says marginal utility per pound is equalised. It is not enough on its own: verify feasibility, curvature, and whether a non-negativity constraint binds. ### Worked example: Cobb–Douglas demand Let [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0585em;vertical-align:-0.1944em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[−]{.mbin.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The tangency condition and budget exhaustion give: [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[x]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.988em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3991em;vertical-align:-0.9721em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[)]{.mclose}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With `α = 0.4`, `m = 100`, `p_x = 2`, and `p_y = 5`, the optimum is `(20,12)`. Check: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[(]{.mopen}[20]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[5]{.mord}[(]{.mopen}[12]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The indirect utility function is: [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.6261em;vertical-align:-0.9721em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.5043em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[)]{.mclose}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[−]{.mbin.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.654em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### When tangency fails - For `u(x,y)=ax+by`, compare `a/p_x` with `b/p_y`; usually buy one good only. - For `u(x,y)=min{x,y}`, choose the kink `x=y`. - For `u(x,y)=v(x)+y`, an interior `x` satisfies `v'(x)=p_x/p_y`; **x**, not the numeraire `y`, has zero income effect once income is high enough. KKT conditions handle these cases without pretending all optima are interior. ## 3. Expenditure minimisation and duality Hicksian demand holds utility fixed: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.5623em;vertical-align:-0.8123em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[≥]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3829em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8123em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[{]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The expenditure function is the minimum value: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For Cobb–Douglas utility, [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[e]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5232em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.5904em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[−]{.mbin.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6644em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[−]{.mbin.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.7731em;"}]{.vlist style="height:1.5872em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and expenditure shares remain `α` and `1−α`. ### The four links | Result | Formula | Interpretation | | ---------------- | -------------------------- | ----------------------------------------------------------- | | Shephard's lemma | `∂e/∂p_i = h_i` | price derivative of required spending is compensated demand | | Roy's identity | `x_i = −(∂v/∂p_i)/(∂v/∂m)` | recover ordinary demand from indirect utility | | inverse relation | `e(p,v(p,m))=m` | spending to recover achieved utility equals income | | inverse relation | `v(p,e(p,u))=u` | minimum spending attains target utility | These are envelope results: the derivative of the optimised value ignores the first-order effect of re-optimising the choice. ## 4. Properties that catch algebra mistakes Marshallian demand satisfies, under local nonsatiation: - **Walras' law:** `p·x(p,m)=m`; - **degree-zero homogeneity:** `x(tp,tm)=x(p,m)`; - adding-up and aggregation restrictions on demand derivatives. The expenditure function is increasing in utility, homogeneous of degree one and concave in prices. Hicksian demand obeys the compensated law of demand; its substitution matrix is symmetric and negative semidefinite under regularity. ::tip{title="Verification routine"} After deriving a demand, check units, budget exhaustion, homogeneity, signs, limiting cases, and corners. A formula that fails one check is not an economic solution even if the differentiation was correct. :: ## 5. Revealed preference: learn from budgets, not utility surveys If bundle `xᵗ` is chosen when `xˢ` was affordable, then `xᵗ` is directly revealed at least as good as `xˢ`: [[[]{.katex-mathml}[[[]{.strut style="height:1.038em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9795em;vertical-align:-0.136em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.038em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7144em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### A two-observation violation | Observation | Prices | Chosen bundle | Cost of other bundle | | ----------- | ------- | ----------------- | -------------------: | | 1 | `(2,1)` | `A=(2,1)`, cost 5 | `B=(1,2)` costs 4 | | 2 | `(1,2)` | `B=(1,2)`, cost 5 | `A=(2,1)` costs 4 | At observation 1, `A` is chosen although `B` is cheaper; at observation 2, `B` is chosen although `A` is cheaper. Both strict comparisons cannot come from one locally nonsatiated, stable preference ordering. This violates WARP. For many observations, GARP rules out an indirect revealed-preference cycle with at least one strict step. **Afriat's theorem** says that a finite dataset satisfies GARP if and only if it can be rationalised by a continuous, monotone, concave utility function. ### Recent extension Chambers and Echenique show how finite choice data can support bounds on counterfactual welfare and whether an allocation could be Pareto efficient for some preferences consistent with the data ([2025](https://doi.org/10.3982/TE5845){rel=""nofollow""}). The key boundary is incompleteness: observed budgets rarely rank every counterfactual bundle. ## 6. Producer choice uses the same dual logic For technology `f(z)`, output price `q`, and input prices `w`, profit maximisation is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.5623em;vertical-align:-0.8123em;"}[[[[[[]{.pstrut style="height:3em;"}[[[z]{.mord.mathnormal.mtight style="margin-right:0.044em;"}[≥]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3829em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8123em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[{]{.mopen}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4445em;"}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[z]{.mord.mathnormal style="margin-right:0.044em;"}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Cost minimisation for target output `\bar y` is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.5623em;vertical-align:-0.8123em;"}[[[[[[]{.pstrut style="height:3em;"}[[[z]{.mord.mathnormal.mtight style="margin-right:0.044em;"}[≥]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3829em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8123em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[{]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[z]{.mord.mathnormal style="margin-right:0.044em;"}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - Hotelling's lemma recovers net supply from derivatives of profit. - Shephard's lemma recovers conditional input demand: `∂c/∂w_i=z_i^c`. - Profit is convex and homogeneous of degree one in the price vector; cost is concave and homogeneous of degree one in input prices. ### Worked cost problem If `f(L,K)=√(LK)`, `w=r=1`, and required output is 10, minimise `L+K` subject to `LK≥100`. The cost-minimising bundle is `L=K=10`, so `c=20`. If labour becomes relatively expensive, conditional demand substitutes toward capital; the output target remains fixed. ## Practice 1. Derive Marshallian demand and `v(p,m)` for `u=x^{1/3}y^{2/3}`. 2. Derive its expenditure function and verify Shephard's lemma. 3. Solve `u=2x+y` at three price ratios and identify all corners/ties. 4. Construct three observations that pass WARP pairwise but fail GARP through a longer cycle. 5. For `f(L,K)=L^{1/3}K^{1/3}`, derive the conditional input ratio. ## Quick check - Utility represents rankings; its numerical scale is usually arbitrary. - Tangency is a candidate, not a universal solution rule. - Marshallian demand holds income fixed; Hicksian demand holds utility fixed. - Dual value functions recover behaviour through envelope theorems. - Revealed preference disciplines—but does not fully identify—unobserved welfare. **Next:** [decompose responses and measure welfare changes](https://www.pengjiaxin.com/../02-comparative-statics/). # Module 2 — Comparative Statics and Welfare Measurement []{#module-2-comparative-statics-and-welfare-measurement} ## Core question When prices, income, or policy rules change, how much behaviour changes—and how much money represents the resulting welfare gain or loss? ## Learning outcomes You will be able to: - derive a local comparative static from equilibrium or first-order conditions; - decompose a price response into substitution and income effects; - calculate compensating variation, equivalent variation, and consumer-surplus change; - state when these measures coincide and when distribution matters; - connect a theoretical welfare statistic to evidence and government cost. ## 1. Comparative statics is a conditional derivative If an optimum or equilibrium is characterised by [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[z]{.mord.mathnormal style="margin-right:0.044em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and `F_z` is nonsingular, the implicit function theorem gives: [[[]{.katex-mathml}[[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[d]{.mord.mathnormal}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[d]{.mord.mathnormal}[z]{.mord.mathnormal style="margin-right:0.044em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[−]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[z]{.mord.mathnormal.mtight style="margin-right:0.044em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is a **local** result. Its sign is meaningful only after stating: - what `θ` changes; - what remains fixed; - which optimum/equilibrium is followed; - whether a corner, discontinuity, or equilibrium switch is possible. ::tip{title="Do not differentiate before diagnosing"} A price ceiling can change both a price and the allocation rule. A platform ranking rule can change demand faced by every seller. Write the post-change choice set first; then differentiate the correct system. :: ## 2. Slutsky decomposition Marshallian demand can be written as Hicksian demand evaluated at attained utility: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[))]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Differentiating with respect to price `p_j` gives: [[[]{.katex-mathml}[[[]{.strut style="height:2.3435em;vertical-align:-0.9721em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3435em;vertical-align:-0.9721em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Term | Held fixed | Meaning | | -------------- | ------------------------ | ------------------------------- | | `∂x_i/∂p_j` | money income | observed total price effect | | `∂h_i/∂p_j` | utility | compensated substitution effect | | `−x_j ∂x_i/∂m` | implied purchasing power | income effect | For an own-price change, the compensated effect is non-positive. Ordinary demand can nevertheless slope upward only if the good is sufficiently inferior for the income effect to dominate—a Giffen case. For many goods, the Hicksian substitution matrix is symmetric, negative semidefinite, and singular under standard regularity. These are testable restrictions, not descriptive slogans. ## 3. Worked finite change Let [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.2881em;"}[[[[[[]{.pstrut style="height:3em;"}[[x]{.mord.mathnormal}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.7119em;"}]{.vlist style="height:0.7519em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2881em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[100]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[u]{.mord.mathnormal}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and let `p_x` rise from 1 to 4. Marshallian demand is: [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.988em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0797em;vertical-align:-0.9721em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Environment | `x` | `y` | utility | | --------------- | ---: | --: | ------: | | old `(1,1,100)` | 50 | 50 | 50 | | new `(4,1,100)` | 12.5 | 50 | 25 | Hicksian demand for `x` is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.44em;vertical-align:-0.9926em;"}[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:4.4em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-4.4em;"}[[]{.pstrut style="height:4.4em;"}[]{.hide-tail style="min-width:1.02em;height:2.48em;"}]{style="top:-3.4074em;"}]{.vlist style="height:1.4474em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9926em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At new prices but old utility, `h_x=25`. The **Hicks decomposition** of the finite change is therefore: - substitution: `50 → 25`, or `−25`; - purchasing-power effect: `25 → 12.5`, or `−12.5`; - total: `−37.5`. The differential Slutsky equation is exact for infinitesimal changes. For a large change, Hicks and Slutsky finite compensation use different reference rules and need not produce identical intermediate bundles. ## 4. Put a money value on the welfare change For a price increase from `p⁰` to `p¹`, define welfare **losses as positive numbers**: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[m]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the compensation required after the change, and [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the amount the consumer would pay beforehand to avoid the change. For `u=√(xy)`, the expenditure function is: [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[e]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.3339em;"}[2]{.mord}[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.6661em;"}]{.vlist style="height:0.7061em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3339em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Thus: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2061em;vertical-align:-0.25em;"}[2]{.mord}[(]{.mopen}[50]{.mord}[)]{.mclose}[[[[[[]{.pstrut style="height:3em;"}[4]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.9161em;"}]{.vlist style="height:0.9561em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.0839em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[100]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.2061em;vertical-align:-0.25em;"}[2]{.mord}[(]{.mopen}[25]{.mord}[)]{.mclose}[[[[[[]{.pstrut style="height:3em;"}[1]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.9161em;"}]{.vlist style="height:0.9561em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.0839em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[50.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The Marshallian consumer-surplus loss is: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[oss]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.476em;vertical-align:-0.9119em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[4]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.564em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9119em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[50]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[50]{.mord}[]{.mspace style="margin-right:0.1667em;"}[ln]{.mop}[]{.mspace style="margin-right:0.1667em;"}[4]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[69.3.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For this normal good and price rise: [[[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[oss]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Earlier versions of these notes reversed the `CV–EV` ordering; the reference utility makes the correct ordering clear. With quasi-linear utility and no income effect on the priced good, `CV = EV = ΔCS`. ::pyodide --- code64: ZnJvbSBtYXRoIGltcG9ydCBsb2csIHNxcnQKCm0sIHAwLCBwMSwgdTAsIHUxID0gMTAwLCAxLCA0LCA1MCwgMjUKZXhwZW5kaXR1cmUgPSBsYW1iZGEgcHgsIHU6IDIgKiB1ICogc3FydChweCkKCmN2ID0gZXhwZW5kaXR1cmUocDEsIHUwKSAtIG0KZXYgPSBtIC0gZXhwZW5kaXR1cmUocDAsIHUxKQpjc19sb3NzID0gNTAgKiBsb2cocDEgLyBwMCkKCnByaW50KHsiQ1YiOiBjdiwgIkNTIGxvc3MiOiByb3VuZChjc19sb3NzLCAyKSwgIkVWIjogZXZ9KQ== layout: vertical locale: en title: Check CV, EV, and consumer-surplus loss --- :: ::warning{title="Sign conventions differ"} Some texts report a signed income change, others a positive welfare loss. State the question in words and define the sign before comparing numbers. :: ## 5. From one consumer to policy appraisal Adding willingness to pay is defensible under quasi-linear utility or an explicit social-welfare approximation. Outside that benchmark, one pound to a low-income household and one pound to a high-income household need not carry the same social weight. A policy appraisal should separate: 1. behavioural response; 2. willingness to pay or accept; 3. producer and government surplus; 4. external effects; 5. distribution and social weights; 6. implementation and fiscal spillovers. ### Marginal value of public funds One modern statistic is: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2519em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[net government cost]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[recipients’ willingness to pay]{.mord}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The denominator includes behavioural fiscal effects, not only the programme's sticker cost. A 2025 guide explains its use for marginal tax-policy comparisons while emphasising that the question and spending margin must be defined carefully ([Bastani, 2025](https://doi.org/10.1007/s10797-024-09860-x){rel=""nofollow""}). It is not a complete social welfare function and does not eliminate distributional judgment. ## 6. Worked policy: a transit fare increase A city raises a fare from £2 to £3. A commuter's monthly trip demand is `q(p)=60−10p` over this range. - trips fall from 40 to 30; - consumer-surplus loss is the trapezoid: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[30]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[(]{.mopen}[3]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£35]{.mord}[;]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - fare revenue changes from `2×40=£80` to `3×30=£90`. The £10 revenue gain is not the commuter's full welfare loss. Nor does the partial-equilibrium calculation include congestion, operator cost, crowding, service quality, low-income incidence, or substitution to cars. ## 7. Evidence discipline Hicksian demand is rarely observed directly. Researchers combine demand estimation, experiments or quasi-experiments, price variation, and assumptions about utility or market structure. Welfare results can be sensitive to: - which consumers are represented; - intensive versus extensive margins; - equilibrium price responses; - quality and product entry; - extrapolation beyond observed variation. A precise estimate under a restrictive model is not automatically a complete welfare judgment. ## Practice 1. Derive the Slutsky equation from `x(p,m)=h(p,v(p,m))`. 2. Repeat the worked example for `p_x: 1 → 2` and compare the three losses. 3. Show why quasi-linearity removes the income effect on the non-numeraire good, subject to an interior solution. 4. Evaluate a £1 per-trip subsidy using consumer surplus, fiscal cost, congestion, and distribution. 5. Give one case where a local derivative gives the wrong intuition for a large policy change. ## Quick check - Comparative statics is conditional on an equilibrium and “other things equal.” - Substitution holds utility fixed; ordinary demand holds income fixed. - `CV` and `EV` answer different counterfactual compensation questions. - Consumer surplus is exact only under particular preference conditions. - Welfare appraisal requires incidence, external effects, and a normative criterion. **Next:** [value risky prospects and design insurance](https://www.pengjiaxin.com/../03-uncertainty/). # Module 3 — Choice under Risk and Insurance []{#module-3-choice-under-risk-and-insurance} ## Core question How should a decision-maker compare uncertain outcomes, and when does transferring risk through insurance create value? ## Learning outcomes You will be able to: - represent a lottery with expected utility and state its key assumptions; - calculate certainty equivalents, risk premia, and Arrow–Pratt risk aversion; - derive benchmark insurance and portfolio conditions; - distinguish risk, ambiguity, adverse selection, and moral hazard; - use climate-insurance evidence to identify where the benchmark is incomplete. ## 1. Outcomes, probabilities, and timing A lottery `L=(p₁,x₁;…;pₙ,xₙ)` pays outcome `x_s` with probability `p_s`. Expected utility is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3em;vertical-align:-1.25em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.9em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.25em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[u]{.mord.mathnormal}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The von Neumann–Morgenstern representation follows from completeness, transitivity, continuity, and **independence** over lotteries. Unlike ordinary ordinal utility, expected-utility representations are unique only up to a positive affine transformation `a+bu`, `b>0`; an arbitrary monotone transformation changes attitudes toward lotteries. Expected utility separates: - beliefs about states, `p_s`; - consequences in each state, `x_s`; - utility curvature over consequences, `u`. Confusing these makes “risk aversion” absorb bad information, distorted beliefs, liquidity constraints, or market frictions. ## 2. Certainty equivalent and risk premium The certainty equivalent `CE` solves: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The risk premium is: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If `u''<0`, Jensen's inequality gives `u(E[X])>E[u(X)]`, so `ρ>0` for a non-degenerate risk. ### Worked lottery Initial wealth is 100. With equal probability, wealth becomes 120 or 80. Let `u(w)=√w`: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.3011em;vertical-align:-0.345em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.394em;"}]{.vlist style="height:0.8451em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.345em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[120]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.9161em;"}]{.vlist style="height:0.9561em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.0839em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.3011em;vertical-align:-0.345em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.394em;"}]{.vlist style="height:0.8451em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.345em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[80]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.9161em;"}]{.vlist style="height:0.9561em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.0839em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[9.949.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8641em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[98.99]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.01.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The lottery's expected wealth is 100, yet the agent would exchange it for about 98.99 with certainty. ## 3. Measure local risk aversion Absolute and relative risk aversion are: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3649em;vertical-align:-0.936em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3649em;vertical-align:-0.936em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a small zero-mean risk `ε` with variance `σ²`, a second-order approximation gives: [[[]{.katex-mathml}[[[]{.strut style="height:0.6776em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[A]{.mord.mathnormal}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[)]{.mclose}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Utility | Absolute risk aversion | Relative risk aversion | | --------------- | ---------------------- | ---------------------- | | `−e^{−aw}` | constant `a` | `aw` | | `ln w` | `1/w` | 1 | | `w^{1−γ}/(1−γ)` | `γ/w` | constant `γ` | This is a local comparison. Two utilities can rank small risks similarly and large, skewed risks differently. ## 4. Insurance as state-contingent consumption Let wealth be `W`, loss `L` occur with probability `p`, indemnity be `I`, and premium `π(I)`. Consumption is: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The consumer chooses `I` to maximise: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[)]{.mclose}[u]{.mord.mathnormal}[(]{.mopen}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[u]{.mord.mathnormal}[(]{.mopen}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With concave utility, actuarially fair linear pricing `π=pI`, no hidden action, and no other friction, full insurance equalises consumption across states. With a loading, wealth effects, background risk, or moral hazard, partial insurance and a deductible may be optimal. ### Worked insurance decision Let `W=100`, `p=0.1`, `L=50`, and `u(w)=√w`. Without insurance: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.0839em;"}[0.9]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[100]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.9161em;"}]{.vlist style="height:0.9561em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.0839em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.0839em;"}[0.1]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[50]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.9161em;"}]{.vlist style="height:0.9561em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.0839em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[9.707]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so `CE₀≈94.24`. The most this consumer pays for full coverage is approximately: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[94.24]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[5.76.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The actuarially fair premium is `pL=5`, so full insurance is preferred. At a premium above about 5.76, it is not. This maximum depends on wealth, utility, loss size, and other risks—not merely the expected loss. ::warning{title="Insurance can change the risk"} If prevention is hidden, more coverage may reduce care: moral hazard. If high-risk buyers know more than insurers, the pool changes with price: adverse selection. Expected-utility demand alone models neither mechanism. :: ## 5. Portfolio choice Invest share `a` in a risky asset with return `R` and the remainder at risk-free return `r_f`: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8694em;vertical-align:-0.2861em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[(]{.mopen}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} An interior optimum satisfies: [[[]{.katex-mathml}[[[]{.strut style="height:1.088em;vertical-align:-0.2861em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.1667em;"}[[\[]{.mopen.delimcenter style="top:0em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[(]{.mopen}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The expected excess return is weighted by marginal utility: losses in bad states matter more. Under quadratic/normal approximations, higher expected return raises the risky share while variance and risk aversion lower it. With fat tails, borrowing constraints, or multiple background risks, mean and variance are insufficient. ## 6. Risk is not ambiguity - **Risk:** probabilities are treated as known. - **Ambiguity:** probabilities or the model generating outcomes are uncertain. - **Parameter uncertainty:** probabilities are estimated with error. - **Deep uncertainty:** even relevant states or mechanisms are contested. Expected utility can incorporate subjective probabilities, but it does not by itself explain Ellsberg-type ambiguity aversion or probability weighting. Module 9 treats behavioural alternatives; they are competing models with their own testable restrictions, not permission to explain any anomaly after the fact. ## 7. Current case: wildfire-risk classification Boomhower, Fowlie, Gellman, and Plantinga combine parcel-level wildfire risk with insurer filings. Their 2024 working paper, revised in 2025, documents large differences in insurers' classification and pricing methods. Insurers using coarser risk measures can face adverse selection relative to firms with richer models, charge high prices in risky segments, or withdraw ([NBER Working Paper 32625](https://doi.org/10.3386/w32625){rel=""nofollow""}). The case links three layers: 1. households value risk transfer through expected utility; 2. insurers differ in information and classification technology; 3. regulation constrains prices and participation. It does **not** identify one optimal regulatory rule for every disaster market. The paper studies a particular market and uses proprietary risk data; climate trends, reinsurance, public backstops, and household adaptation also affect equilibrium. ## Practice 1. Compute `CE` and `ρ` for a 50–50 lottery over 64 and 144 with `u=√w`. 2. Show that a risk-neutral consumer buys actuarially fair insurance but will not pay a positive loading in the benchmark. 3. Derive the insurance first-order condition for `π(I)=qI`. 4. Explain why a deductible can reduce moral hazard without eliminating insurance value. 5. Separate preference, belief, information, and regulation explanations for rising wildfire premiums. ## Quick check - Expected value and expected utility answer different questions. - Utility curvature determines risk attitude only within the specified outcome domain. - Certainty equivalents put utility comparisons back into outcome units. - Full insurance is a benchmark requiring fair pricing and no hidden action. - Real insurance markets combine risk preferences with information, contracts, and regulation. **Next:** [make individual plans jointly feasible in general equilibrium](https://www.pengjiaxin.com/../04-general-equilibrium/). # Module 4 — General Equilibrium and Welfare []{#module-4-general-equilibrium-and-welfare} ## Core question Can decentralised choices be mutually feasible in every market, and what assumptions connect competitive equilibrium to social efficiency? ## Learning outcomes You will be able to: - define feasibility, Pareto efficiency, and Walrasian equilibrium; - solve a two-consumer, two-good exchange economy; - state and qualify both fundamental welfare theorems; - distinguish existence, uniqueness, stability, efficiency, and fairness; - explain how production networks transmit local shocks. ## 1. From one budget to an economy Consumer `i` has preferences `u_i`, endowment `ω_i`, and demand: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.5672em;vertical-align:-0.8172em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}[≥]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3829em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8172em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[{]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.786em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} An allocation is feasible when: [[[]{.katex-mathml}[[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A Walrasian equilibrium is a price vector `p*` and allocation `x*` such that: 1. every consumer optimises at `p*`; 2. every market clears: [[[]{.katex-mathml}[[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Prices coordinate plans; they do not create resources. :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgUFtQcmljZXNdIC0tPiBCW0J1ZGdldCB2YWx1ZXMgb2YgZW5kb3dtZW50c10KICBCIC0tPiBEW0luZGl2aWR1YWwgZGVtYW5kc10KICBEIC0tPiBaW0FnZ3JlZ2F0ZSBleGNlc3MgZGVtYW5kXQogIFogLS0+IFA=" locale="en"} ## 2. Edgeworth-box logic For two consumers and two goods, the Edgeworth box contains every feasible division of total endowment. An allocation is Pareto efficient if no feasible reallocation makes one consumer better off without making the other worse off. At a regular interior efficient allocation: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Otherwise, the consumers value a marginal trade differently and both can gain. The set of efficient allocations is the **contract curve**. Efficiency does not select one point on it. ## 3. Worked competitive equilibrium Let total resources be `(10,10)`. Endowments are: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[8]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[2]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[8]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and both consumers have `u_i(x,y)=√(xy)`. Normalise `p_y=1` and write `p_x=p`. Incomes are: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[8]{.mord}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[2]{.mord}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[8.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Each spends half of income on each good, so aggregate demand for `x` is: [[[]{.katex-mathml}[[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1408em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[p]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.2603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[p]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10]{.mord}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[10]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[p]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[5]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Market clearing requires `5+5/p=10`, hence `p*=1`. Each income is 10 and each demands `(5,5)`. | Consumer | Endowment | Equilibrium bundle | Net trade | | -------- | --------- | ------------------ | ----------------------------------- | | A | `(8,2)` | `(5,5)` | sells 3 units of `x`, buys 3 of `y` | | B | `(2,8)` | `(5,5)` | buys 3 units of `x`, sells 3 of `y` | Both optimise, trade balances in value, and aggregate demand equals resources. ## 4. Walras' law reduces—but does not solve—the system Aggregate excess demand is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[z]{.mord.mathnormal style="margin-right:0.044em;"}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If every budget satisfies Walras' law, then: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[z]{.mord.mathnormal style="margin-right:0.044em;"}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore, if all but one market clear and the omitted good has a positive price, the last clears too. Walras' law is an accounting restriction; it does not prove that an equilibrium exists, is unique, or is stable under price adjustment. ## 5. The welfare theorems—and their assumptions ### First welfare theorem Under local nonsatiation and a complete competitive-market environment, a Walrasian equilibrium is Pareto efficient. The result can fail with: - externalities or public goods; - market power; - asymmetric information; - missing state-contingent markets; - non-convex technologies or other institutional constraints. ### Second welfare theorem With convex preferences and production sets plus suitable regularity, a Pareto-efficient allocation can be decentralised as a competitive equilibrium after appropriate lump-sum redistribution of endowments. This separates, in theory, distribution from price-based allocation. In practice, lump-sum transfers may be unavailable because type, wealth, or earning ability is private; taxes then change incentives. ::warning{title="Pareto efficiency is deliberately incomplete"} An allocation where one person owns almost everything can be Pareto efficient. The criterion rules out unambiguous waste; it does not encode equality, rights, desert, or priority to the worse-off. :: ## 6. Existence, uniqueness, and stability are different claims - **Existence:** at least one price vector clears markets. - **Uniqueness:** only one relative-price equilibrium exists. - **Local stability:** small deviations trigger forces that return to it. - **Global stability:** adjustment converges from a wide set of starting prices. Continuity, convexity, and bounded feasible sets help establish existence through a fixed-point argument. Gross-substitutes conditions can support uniqueness and price adjustment. Standard preference assumptions alone do not guarantee either. ## 7. Add firms and production Firms choose net output `y_j` from production set `Y_j` to maximise `p·y_j`. Consumers own firm profits. Feasibility becomes: [[[]{.katex-mathml}[[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.4638em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At an interior efficient allocation with production: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so consumers' willingness to substitute goods equals the economy's marginal transformation rate. Distortions anywhere in the production chain can alter prices and quantities elsewhere. ## 8. Current extension: production networks Baqaee and Farhi study trade economies with international production networks and wedge-like distortions such as markups, tariffs, and nominal rigidities ([2024](https://doi.org/10.3982/ECTA17513){rel=""nofollow""}). Their framework shows why a sector's sales share alone need not measure the full welfare effect of a shock: substitution, input-output links, and distortions generate general-equilibrium propagation. Use the paper as a conceptual warning. A supply disruption at a small upstream input can matter through network position, while a large gross-output sector need not create an equally large welfare loss. Exact effects require an estimated network and elasticities; the theorem is not a universal multiplier. ## 9. Partial versus general equilibrium | Question | Partial equilibrium may suffice | General equilibrium is needed | | ----------------------------- | --------------------------------- | --------------------------------------------------------- | | small tax in one minor market | other prices/incomes nearly fixed | tax changes wages, profits, or linked input prices | | local transport project | narrow users and routes | land prices, location, and labour markets adjust | | carbon price | one fuel response | energy, production networks, trade, and revenue recycling | | AI compute shortage | one service price | cloud, chips, energy, entry, and downstream innovation | The choice is about the counterfactual, not prestige: use the smallest model that contains the important feedbacks. ## Practice 1. Resolve the worked economy when A's endowment becomes `(9,1)` and B's `(1,9)`. 2. Find the contract-curve condition when `u_A=x_Ay_A` and `u_B=x_B²y_B`. 3. Give an efficient but highly unequal allocation. 4. Identify which welfare-theorem assumption fails in pollution, monopoly, and hidden-action insurance. 5. Draw a three-sector input network and trace one upstream productivity shock. ## Quick check - Equilibrium requires optimisation and simultaneous feasibility. - Equal MRS is an interior efficiency condition, not a fairness rule. - Walras' law is accounting; existence and stability need more. - The welfare theorems are conditional institutional results. - Networks turn local shocks into economy-wide price and quantity changes. **Next:** [replace price-taking with strategic interaction](https://www.pengjiaxin.com/../05-game-theory/). # Module 5 — Static, Dynamic, and Repeated Games []{#module-5-static-dynamic-and-repeated-games} ## Core question When each person's best action depends on others, which predictions are mutually consistent—and which threats or promises are credible? ## Learning outcomes You will be able to: - specify players, actions, information, timing, and payoffs; - find pure and mixed Nash equilibria; - solve finite perfect-information games by backward induction; - test whether repeated-game cooperation is incentive compatible; - distinguish Nash, subgame-perfect, and Bayesian Nash equilibrium. ## 1. Write the game before solving it A strategic-form game is: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[⟨]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[(]{.mopen}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[∈]{.mrel.mtight}[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1774em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[(]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[∈]{.mrel.mtight}[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1774em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[⟩]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A strategy profile `a*` is a Nash equilibrium if, for every player `i`, [[[]{.katex-mathml}[[[]{.strut style="height:1.0553em;vertical-align:-0.3053em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0553em;vertical-align:-0.3053em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:1em;"}[[for all ]{.mord}]{.mord.text}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} No player wants a unilateral deviation. This is strategic stability, not cooperation, morality, or efficiency. ### Best-response routine 1. Hold opponents' actions fixed. 2. Mark every payoff-maximising response. 3. Find cells where all players' marks intersect. 4. Check ties and weak dominance explicitly. ## 2. Dominance can produce inefficient equilibrium Consider a prisoner's dilemma: | | B: Cooperate | B: Defect | | ---------------- | -----------: | --------: | | **A: Cooperate** | `3,3` | `0,5` | | **A: Defect** | `5,0` | `1,1` | Defect strictly dominates cooperate for both, so `(Defect, Defect)` is the unique Nash equilibrium. Yet `(Cooperate, Cooperate)` Pareto dominates it. The failure is not irrationality. Each player rationally responds to an institution that cannot enforce joint commitment. ## 3. Mixed strategies make opponents indifferent In matching pennies, A wins when actions match; B wins when they differ: | | B: L | B: R | | -------- | -----: | -----: | | **A: U** | `1,−1` | `−1,1` | | **A: D** | `−1,1` | `1,−1` | There is no pure equilibrium. Let B choose `L` with probability `q`. A's expected payoffs are: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[U]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[2]{.mord}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[2]{.mord}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A mixes only if `q=1/2`. Symmetry gives A's probability `p=1/2`. The mixed equilibrium is `(p,q)=(1/2,1/2)`. Mixing is not indecision. Each probability makes the opponent exactly indifferent among actions used with positive probability. ::pyodide --- code64: cm93ID0gW1szLCAwXSwgWzUsIDFdXQpjb2wgPSBbWzMsIDVdLCBbMCwgMV1dCgplcXVpbGlicmlhID0gW10KZm9yIGkgaW4gcmFuZ2UoMik6CiAgICBmb3IgaiBpbiByYW5nZSgyKToKICAgICAgICByb3dfYmVzdCA9IHJvd1tpXVtqXSA9PSBtYXgocm93W2tdW2pdIGZvciBrIGluIHJhbmdlKDIpKQogICAgICAgIGNvbF9iZXN0ID0gY29sW2ldW2pdID09IG1heChjb2xbaV1ba10gZm9yIGsgaW4gcmFuZ2UoMikpCiAgICAgICAgaWYgcm93X2Jlc3QgYW5kIGNvbF9iZXN0OgogICAgICAgICAgICBlcXVpbGlicmlhLmFwcGVuZCgoaSwgaikpCgpwcmludCgiUHVyZSBOYXNoIGNlbGxzOiIsIGVxdWlsaWJyaWEp layout: vertical locale: en title: Find pure Nash equilibria in a finite two-player game --- :: Every finite game has at least one mixed-strategy Nash equilibrium. It may have several, creating a selection problem. ## 4. Dynamic games require complete strategies An extensive-form game specifies decision nodes, actions, information sets, probabilities, and terminal payoffs. A strategy states what a player would do at **every** information set, including those not reached in equilibrium. ### Entry-deterrence example An entrant chooses `Out` or `Enter`. After entry, the incumbent chooses `Fight` or `Accommodate`. - `Out` gives `(0,2)`. - `Enter, Fight` gives `(−1,−1)`. - `Enter, Accommodate` gives `(1,1)`. Backward induction: 1. after entry, the incumbent prefers `1` to `−1`, so accommodates; 2. anticipating this, the entrant prefers `1` to `0`, so enters. The subgame-perfect Nash equilibrium is `Enter; Accommodate`. “I will fight entry” is not credible because fighting is not optimal when the decision arrives. ## 5. Repetition can make future punishment valuable Repeat the prisoner's dilemma indefinitely with discount factor `δ`. Under **grim trigger**, each player cooperates until any defection, then defects forever. Cooperation yields: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[C]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A one-time deviation yields 5 now and 1 thereafter: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.1408em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Cooperation is sustainable when: [[[]{.katex-mathml}[[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.1408em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}[⟺]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8304em;vertical-align:-0.136em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Patience, monitoring, and credible punishment support cooperation. Noise can make grim trigger excessively harsh; forgiving strategies may perform better but require a different incentive calculation. ## 6. Incomplete information creates Bayesian games Player `i` has private type `t_i`, belief `\mu_i(t_{-i}\mid t_i)`, and strategy `s_i(t_i)`. A Bayesian Nash equilibrium satisfies: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.5501em;vertical-align:-0.8001em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[a]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8001em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[t]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2025em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}[∣]{.mrel.mtight}[[t]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The distinction is crucial: - random **actions** produce mixed strategies; - random **types** represent private information; - random **states** may be moves by nature observed by some players. Auctions, signalling, screening, and contracts use this framework in Modules 7–8. ## 7. Equilibrium refinements answer different objections | Concept | Rules out or addresses | | ---------------------------- | ------------------------------------------------------------------- | | subgame perfection | non-credible actions in proper subgames | | sequential equilibrium | inconsistent beliefs/actions at information sets | | perfect Bayesian equilibrium | sequential rationality plus Bayes-consistent beliefs where possible | | trembling-hand perfection | equilibria dependent on exact zero-probability mistakes | A refinement is useful only if its behavioural and informational assumptions fit the institution. ## 8. Current extension: pricing algorithms as players Johnson, Rhodes, and Wildenbeest model platforms where sellers use Q-learning pricing algorithms. They show theoretically and in simulations that demand-steering rules which reward lower prices with greater prominence can disrupt algorithms' ability to rotate demand and share profits; history-dependent, non-neutral rules can lower prices ([2023](https://doi.org/10.3982/ECTA19978){rel=""nofollow""}). This result links repeated interaction to institution design. Its boundary matters: simulated Q-learning agents in a specified marketplace are not proof that every deployed algorithm colludes or that one ranking rule is optimal under all consumer-search and platform incentives. ## Practice 1. Find all equilibria in a 2×2 coordination game and explain the selection problem. 2. Solve a 2×2 zero-sum game with unequal payoffs by indifference. 3. Change the entry game's fight payoff to `(−1,2)` and resolve it. 4. Derive the grim-trigger threshold for payoffs `(R,T,P,S)`. 5. Describe one platform interaction as a Bayesian game: identify types, beliefs, actions, and observables. ## Quick check - Nash equilibrium is mutual best response, not necessarily welfare maximisation. - Mixed strategies equalise expected payoffs on their support. - Dynamic strategies specify off-path actions. - Repeated cooperation requires a profitable future to outweigh deviation. - Bayesian equilibrium makes strategies contingent on private types. **Next:** [apply strategic models to oligopoly, entry, and algorithmic pricing](https://www.pengjiaxin.com/../06-oligopoly/). # Module 6 — Oligopoly, Entry, and Algorithmic Pricing []{#module-6-oligopoly-entry-and-algorithmic-pricing} ## Core question How do the strategic variable, timing, product differentiation, capacity, and market rules determine prices, output, entry, and market power? ## Learning outcomes You will be able to: - solve and compare Cournot, Bertrand, and Stackelberg benchmarks; - relate markups to demand elasticity and strategic interaction; - analyse collusion and entry incentives; - diagnose platform power beyond market share alone; - interpret current evidence on algorithmic pricing cautiously. ## 1. Market structure is a model choice | Feature | Question | | ------------------ | ----------------------------------------------------------- | | strategic variable | quantity, price, capacity, quality, advertising, ranking? | | timing | simultaneous, leader–follower, repeated, dynamic entry? | | product relation | homogeneous, differentiated, complements, ecosystem? | | constraints | capacity, fixed cost, switching, data, compute, regulation? | | information | are costs, demand, actions, or algorithm rules observed? | Counting firms is a starting fact, not a complete theory of competition. For a single-price monopolist with differentiable demand, the first-order condition can be written: [[[]{.katex-mathml}[[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1574em;vertical-align:-0.836em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where `ε_D<0` is the price elasticity at the chosen point. This Lerner relation is a benchmark; multi-product pricing, dynamic demand, regulation, and imperfect measurement complicate empirical markups. ## 2. Cournot: firms choose quantities Let inverse demand be: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[b]{.mord.mathnormal}[Q]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with constant marginal cost `c`. Firm `i` maximises: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[b]{.mord.mathnormal}[(]{.mopen}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[]]{.mclose}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Its best response is: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[b]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[b]{.mord.mathnormal}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} when the expression is positive. With `n` symmetric firms: [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[b]{.mord.mathnormal}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.2603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[b]{.mord.mathnormal}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}[(]{.mopen}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0297em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[n]{.mord.mathnormal}[c]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.2603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Numerical duopoly Let `a=100`, `b=1`, and `c=20`: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[80]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[26.67]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so `Q≈53.33`, `P≈46.67`, and each profit is about `£711.11`. As `n` grows, price approaches marginal cost in this benchmark. Fixed costs and endogenous entry can prevent the number of active firms from growing without bound. ## 3. Bertrand: firms choose prices With homogeneous products, constant identical marginal cost, sufficient capacity, and consumers buying from the cheapest seller, any price above `c` can be undercut. The Nash equilibrium is: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This “Bertrand paradox” is not a claim that two real firms always create perfect competition. Relax one assumption: - differentiated products soften price competition; - capacity constraints make undercutting unable to serve the market; - search or switching costs create local power; - repeated interaction can support coordination; - asymmetric costs can leave the efficient firm with a markup. ## 4. Stackelberg: commitment changes best responses The leader chooses quantity first and anticipates the follower's Cournot response. In the same numerical market: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[40]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[20]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so `Q=60` and `P=40`. Profits are: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[20]{.mord}[)]{.mclose}[40]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[800]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[20]{.mord}[)]{.mclose}[20]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[400.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Model | Total output | Price | Strategic advantage | | --------------------- | -----------: | ----: | -------------------------------- | | monopoly | 40 | 60 | coordinated quantity restriction | | Cournot duopoly | 53.33 | 46.67 | neither moves first | | Stackelberg | 60 | 40 | leader commits to output | | competitive benchmark | 80 | 20 | price equals marginal cost | First-mover advantage requires credible commitment. If capacity can be reversed costlessly before rivals react, the Stackelberg logic weakens. ## 5. Collusion is an incentive problem A cartel tries to reproduce monopoly output, but each member benefits from secretly expanding while others restrict. Repetition can deter deviation when future punishment is valuable, monitoring is informative, and entry is limited. Facilitating conditions include: - few symmetric firms and frequent interaction; - transparent prices or quantities; - stable demand and costs; - credible punishment and high entry barriers. Transparency can help consumers search yet also help firms monitor one another. Its effect is an empirical institutional question. ## 6. Entry and contestability Entry occurs when expected post-entry profit covers sunk entry cost. An incumbent may invest in capacity, compatibility, product proliferation, or long contracts before entry. To distinguish competition from exclusion, ask: 1. Would the action be profitable without deterring a rival? 2. Does it lower the incumbent's cost or improve quality? 3. Does it raise rivals' costs or deny a necessary input? 4. Is the commitment credible and observable? 5. What happens to consumers in the short and long run? Low current prices can reflect competition, predation, penetration pricing, learning, or cross-subsidy. One observation does not identify the mechanism. ## 7. Platforms and AI foundation models Platform markets add indirect network effects, multi-homing, data feedback, default placement, interoperability, and often zero monetary prices on one side. Relevant bottlenecks may include compute, chips, cloud distribution, data, app stores, or access to users. The UK Competition and Markets Authority's 2024 foundation-model update mapped an interconnected set of more than 90 partnerships and investments involving major technology firms and highlighted risks around control of critical inputs and routes to market ([CMA, 2024](https://www.gov.uk/government/publications/ai-foundation-models-update-paper){rel=""nofollow""}). This is a forward-looking competition assessment, not a finding that every partnership harms competition. A proper analysis compares efficiencies—funding, compute access, distribution—with foreclosure, dependency, and reduced independent entry. ## 8. Field evidence on pricing software Assad, Clark, Ershov, and Xu study Germany's retail gasoline market, where algorithmic-pricing software became widely available. They infer adoption from changes in pricing patterns and instrument with headquarters adoption. Adoption increased margins for non-monopoly stations; in duopoly and triopoly markets, margins rose when all stations adopted ([2024](https://doi.org/10.1086/726906){rel=""nofollow""}). The evidence is consistent with altered strategic interaction. It does not show that every algorithm autonomously colludes: adoption is inferred, the setting is gasoline retail, and software, market transparency, ownership, and local rivalry matter. ## 9. Welfare and policy diagnosis Market power can raise price, reduce quantity, distort quality or innovation, and redistribute surplus. But intervention can also reduce investment or destroy integration efficiencies. | Diagnosis | Candidate response | Main design risk | | -------------------------- | ------------------------------ | ------------------------------------------ | | merger removes close rival | merger control/remedy | wrong counterfactual entry | | bottleneck foreclosure | access/interoperability rule | weak security or investment | | collusive communication | antitrust enforcement | confusing parallel response with agreement | | algorithmic opacity | audit, records, monitoring | box-ticking without causal evidence | | switching/data lock-in | portability and open standards | low use or privacy leakage | ## Practice 1. Derive the `n`-firm Cournot equilibrium and its limit as `n→∞`. 2. Add a capacity of 20 to each Bertrand firm and explain why `p=c` may fail. 3. Compare consumer surplus in monopoly, Cournot, and Stackelberg for the worked market. 4. Write the one-period deviation condition for cartel cooperation. 5. Map one AI service from chips to end users and identify two possible bottlenecks and two efficiencies. ## Quick check - Oligopoly predictions depend on the strategic variable and timing. - Bertrand's result is powerful because its assumptions are transparent. - Commitment can change equilibrium even when demand and cost do not. - Collusion requires an incentive-compatible punishment path. - Algorithmic adoption evidence is market-specific, not a universal verdict. **Next:** [analyse hidden types, hidden actions, signals, and contracts](https://www.pengjiaxin.com/../07-information-economics/). # Module 7 — Information Economics and Contracts []{#module-7-information-economics-and-contracts} ## Core question What allocation can be sustained when one side privately knows its type or can take an action that the other side cannot observe? ## Learning outcomes You will be able to: - classify hidden-type and hidden-action problems by timing; - solve a simple lemons market and signalling equilibrium; - write participation and incentive-compatibility constraints; - design a screening menu or performance contract; - distinguish predictive accuracy, allocative effects, and fairness in algorithmic credit. ## 1. Diagnose what is hidden and when | Problem | Hidden object | Timing | Typical response | | ------------------ | ---------------------- | ------------------ | --------------------------------- | | adverse selection | type/risk/quality | before contracting | screening, signalling, mandate | | moral hazard | effort/action | after contracting | monitoring, deductible, bonus | | hidden information | state learned by agent | after contracting | state-contingent report mechanism | “Information asymmetry” is not yet a model. Identify who knows what, whether it is verifiable, and which actions or transfers can depend on it. ## 2. Adverse selection: a numerical lemons market Cars are high (`H`) or low (`L`) quality. Buyers value them at 12 and 6; sellers' reservation values are 10 and 4. Under observable quality, both types trade and each trade creates surplus 2. If quality is hidden and buyers believe fraction `θ` is high, the maximum pooling price is: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[12]{.mord}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[6]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[6]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[6]{.mord}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} High-quality sellers participate only if: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[6]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8304em;vertical-align:-0.136em;"}[6]{.mord}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6684em;vertical-align:-0.024em;"}[10]{.mord}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}[⟺]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8304em;vertical-align:-0.136em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If buyers expect fewer high-quality cars, high-quality sellers leave. The pool then becomes worse, validating a lower price. Mutually beneficial high-quality trade disappears. The model does not say every used-goods market collapses. Warranties, inspections, reputation, repeat trade, certification, and law can change information and incentives. ## 3. Signalling: informed agents move first A signal is costly and observed. It can separate types when the cost differs enough by type. Suppose high productivity earns 10, low productivity earns 6. Education has no productivity effect, but costs: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[H]{.mord.mathnormal.mtight style="margin-right:0.0813em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[e]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[e]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}[e]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For education `e*` to separate types: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8747em;vertical-align:-0.136em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[6]{.mord}[]{.mspace style="margin-right:1em;"}[[(high type participates)]{.mord}]{.mord.text}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.7804em;vertical-align:-0.136em;"}[6]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:1em;"}[[(low type does not imitate)]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Thus any `e*∈[2,4]` satisfies these incentive constraints given supporting beliefs. The signal conveys information because imitation is more expensive for the low type. ::warning{title="Separation need not be efficient"} If education changes no productivity, resources spent only to separate types are socially costly. If education also builds human capital, signalling and productivity effects coexist and must be identified empirically. :: ## 4. Screening: the uninformed side offers a menu An insurer offers contracts `(premium, coverage)` so types select themselves. For types `H` and `L`, a menu must satisfy: ### Participation (individual rationality) [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0145em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[L]{.mord.mathnormal}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Truthful self-selection (incentive compatibility) [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[H]{.mord.mathnormal.mtight style="margin-right:0.0813em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[H]{.mord.mathnormal.mtight style="margin-right:0.0813em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[H]{.mord.mathnormal.mtight style="margin-right:0.0813em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[H]{.mord.mathnormal.mtight style="margin-right:0.0813em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} In a standard competitive insurance model, the high-risk type may receive full insurance while the low-risk contract is distorted toward a deductible to deter imitation. The distortion is a cost of private information, not a technological need. ## 5. Moral hazard: reward observable outcomes A principal observes output but not effort. High effort creates success probability `0.8` and costs the agent 1; low effort creates probability `0.4` and costs 0. A success bonus is `b`, with zero base pay and risk-neutral parties. High effort is incentive compatible when: [[[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[0.8]{.mord}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7804em;vertical-align:-0.136em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[0.4]{.mord}[b]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so: [[[]{.katex-mathml}[[[]{.strut style="height:0.8304em;vertical-align:-0.136em;"}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2.5.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If successful output is worth 10, the principal's expected profit at `b=2.5` is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.8]{.mord}[(]{.mopen}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2.5]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[6]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} versus `0.4(10)=4` under low effort and no bonus. Incentivising effort is profitable in this benchmark. With a risk-averse agent, a stronger outcome-contingent bonus also transfers more uncontrollable risk. Optimal contracts trade off incentives against insurance. Limited liability, multitasking, manipulation, team production, and repeated reputation can change the result. ## 6. First-best and second-best - **First-best:** type and action are contractible; choose the surplus-maximising allocation and transfer. - **Second-best:** impose IC, IR, observability, budget, and enforcement constraints. The information rent earned by a type may be necessary to preserve truthful participation. Calling it “overpayment” ignores the counterfactual: removing the rent can destroy the allocation or induce misreporting. ## 7. Current case: machine learning in mortgage credit Fuster, Goldsmith-Pinkham, Ramadorai, and Walther compare statistical models using roughly 10 million US mortgages and embed predictions in a competitive lending model. Their machine-learning models slightly expand access and reduce disparity in acceptance, yet increase cross-group disparity in equilibrium interest rates; model flexibility, not only proxying for race, drives the distributional pattern ([2022](https://doi.org/10.1111/jofi.13090){rel=""nofollow""}). The example separates four questions: 1. **prediction:** who is estimated likely to default? 2. **decision:** which loss or regulatory objective converts risk into approval and price? 3. **equilibrium:** how do lenders and applicants respond? 4. **distribution:** which groups gain on access and interest-rate margins? Better prediction does not mechanically imply lower inequality or higher welfare. The study uses a historical US mortgage setting and counterfactual models; deployment data, newer underwriting rules, causal responses, and alternative fairness criteria can change conclusions. ## 8. Contract and algorithm audit For a contract, score, or recommendation rule, record: - target variable and whose welfare enters the objective; - data available to each party at each stage; - action/report that can be manipulated; - IC and IR constraints; - false-positive and false-negative incidence; - equilibrium adaptation and appeals; - external validity and monitoring plan. ## Practice 1. Change the lemons values and find the minimum high-quality share for pooling trade. 2. In the signalling example, make `c_H=e/2`; find the separating interval. 3. Write all four IC/IR inequalities for a two-type insurance menu. 4. Resolve the moral-hazard bonus when high effort succeeds with probability `0.7` and costs 1.5. 5. Explain why equal approval rates, equal default rates, and equal interest rates are different policy targets. ## Quick check - Adverse selection concerns hidden type before contract; moral hazard hidden action after. - A credible signal must be differentially costly or beneficial across types. - Screening designs a menu so private types sort themselves. - Incentive pay transfers risk as well as motivation. - Predictive accuracy, equilibrium welfare, and fairness are separate claims. **Next:** [design rules for truthful reports and strategic bids](https://www.pengjiaxin.com/../08-mechanism-design/). # Module 8 — Mechanism Design and Auctions []{#module-8-mechanism-design-and-auctions} ## Core question Can an institution choose a desirable outcome when the information needed to choose it is privately held by strategic participants? ## Learning outcomes You will be able to: - define a mechanism by types, messages, outcomes, and transfers; - distinguish dominant-strategy and Bayesian incentive compatibility; - explain the revelation principle and VCG payments; - derive symmetric first-price bidding in a benchmark auction; - evaluate auction rules by efficiency, revenue, participation, robustness, and wider market effects. ## 1. Start from the design problem Agent `i` has private type `θ_i`, sends message `m_i`, and receives outcome `x(m)` and transfer `t_i(m)`. With quasi-linear utility: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7651em;vertical-align:-0.15em;"}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A designer must specify: | Element | Question | | ------------- | --------------------------------------------------- | | type space | what is privately known? | | message space | what may participants report or bid? | | outcome rule | how are goods, positions, or projects assigned? | | transfer rule | who pays or receives how much? | | objective | efficiency, revenue, access, fairness, reliability? | | constraints | IC, IR, budget, privacy, computation, law? | Mechanism design reverses ordinary game theory: begin with a target, then choose the game whose equilibrium has the desired property. ## 2. Incentive and participation constraints ### Dominant-strategy incentive compatibility Truthful reporting is optimal for every report by others: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2079em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} for all `θ_i`, `θ̂_i`, and `θ_{−i}`. ### Bayesian incentive compatibility Truth maximises expected utility given beliefs about others' types: [[[]{.katex-mathml}[[[]{.strut style="height:1.1052em;vertical-align:-0.3552em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0278em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2025em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}[∣]{.mrel.mtight}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0278em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.3131em;vertical-align:-0.3552em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0278em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2025em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}[∣]{.mrel.mtight}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0278em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Individual rationality Participation must beat the outside option: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7178em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Dominant-strategy truthfulness is more robust to beliefs but can restrict achievable outcomes more severely. ## 3. Revelation principle If an outcome can be implemented by some mechanism and equilibrium, a direct mechanism exists in which agents report types and truthful reporting is an equilibrium producing the same outcome. The principle lets theorists search over truthful direct mechanisms. It does **not** say: - every desirable allocation is implementable; - truth is the unique equilibrium; - participants understand the mechanism; - communication, computation, collusion, or privacy is costless. ## 4. Vickrey auction: pay the opportunity cost One indivisible object is valued at 10 by A, 7 by B, and 4 by C. In a sealed-bid second-price auction: - highest bid wins; - winner pays the second-highest bid. With truthful bids, A wins and pays 7, receiving utility `10−7=3`. Why truth is weakly dominant for A: - if the highest rival bid is below 10, A wants to win and the payment is that rival bid, not A's own bid; - if it is above 10, A wants to lose; - misreporting only risks changing the win/loss decision in the wrong direction. This logic assumes private values, enforceable payment, no spite or externality from who wins, and no binding budget below value. ## 5. VCG generalises the externality payment Choose the outcome that maximises reported total value: [[[]{.katex-mathml}[[[]{.strut style="height:1.2079em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4638em;vertical-align:-1.4138em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Agent `i` pays the harm their presence imposes on others: [[[]{.katex-mathml}[[[]{.strut style="height:0.7651em;vertical-align:-0.15em;"}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4882em;vertical-align:-1.4382em;"}[[[[[[]{.pstrut style="height:3em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[]{.mrel.mtight}]{.mord.mtight}]{.inner}[]{.fix}]{.rlap.mtight}]{.thinbox.mtight}]{.mord.vbox.mtight}]{.mrel.mtight}[]{.mspace.nobreak.mtight}[=]{.mrel.mtight}]{.mrel.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4382em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.4882em;vertical-align:-1.4382em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[]{.mrel.mtight}]{.mord.mtight}]{.inner}[]{.fix}]{.rlap.mtight}]{.thinbox.mtight}]{.mord.vbox.mtight}]{.mrel.mtight}[]{.mspace.nobreak.mtight}[=]{.mrel.mtight}]{.mrel.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4382em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The payment removes the gain from manipulating how one's report affects everyone else, producing dominant-strategy truthfulness under the benchmark. VCG can fail practical desiderata: revenue may be low or negative, budget balance can fail, collusion and false identities can matter, and combinatorial valuation may be difficult to report or compute. ## 6. First-price auction: shade the bid Suppose `n` risk-neutral bidders have independent private values uniformly distributed on `[0,1]`. In the symmetric equilibrium of a first-price sealed-bid auction: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[b]{.mord.mathnormal}[(]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With three bidders and value `v=0.9`, the equilibrium bid is `0.6`. A higher bid increases the probability of winning but lowers surplus conditional on winning. In a second-price auction, truthful bidding is weakly dominant; in a first-price auction, bidding depends on beliefs about rivals, risk attitude, number of bidders, and value distribution. ## 7. Revenue equivalence is conditional Standard auctions have the same expected revenue when: - bidders are risk-neutral; - values are independent and identically distributed; - the highest-value bidder wins; - the lowest type receives zero expected surplus; - participation and payment assumptions match. Risk aversion, affiliated/common values, asymmetry, budgets, entry, reserve prices, and dynamic learning can break equivalence. ### Optimal reserve in a benchmark For distribution `F` with density `f`, Myerson's virtual value is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord.mathnormal}[(]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For `U[0,1]`, `φ(v)=2v−1`; the seller-optimal reserve is therefore `v=1/2` under regularity. The reserve can leave the object unsold even when trade would create positive surplus: revenue and allocative efficiency differ. ## 8. A fundamental impossibility In bilateral trade with private buyer and seller values whose distributions overlap, no mechanism can simultaneously guarantee efficiency, Bayesian incentive compatibility, individual rationality, and budget balance under the Myerson–Satterthwaite conditions. The lesson is not “design is futile.” It is that a real institution must identify which desideratum to relax and who bears the resulting loss. ## 9. Current case: digital-ad auction rules affect product prices Bergemann, Bonatti, and Wu model a platform with on- and off-platform consumer contact, data-enhanced matching, and auction-like ad allocation. Their platform-optimal managed campaign achieves efficient on-platform matching but conditions sponsored-product pricing on advertisers' off-platform prices; relative to data-augmented auctions, it raises off-platform prices and lowers consumer surplus ([2025](https://doi.org/10.1093/restud/rdae087){rel=""nofollow""}). The example broadens auction evaluation: do not stop at auction revenue or click allocation. The mechanism can change advertisers' downstream product prices. The result is theoretical and rests on the model's data, contact, and commitment structure; it is not an estimate of one platform's realised price effect. ### Frontier design result Echenique and Núñez's “Price and Choose” mechanism sequentially lets agents define outcome prices before a final choice and implements efficient outcomes in a broad quasi-linear environment ([2025](https://doi.org/10.1257/mic.20230095){rel=""nofollow""}). It illustrates that mechanism design remains an active search for simpler information and implementation structures—not only a catalogue of classic auctions. ## 10. Implementation checklist Before recommending a mechanism, test: 1. incentive concept and equilibrium multiplicity; 2. participation and opt-out; 3. budget balance and payment risk; 4. collusion, shill bids, and false identities; 5. computational and communication burden; 6. privacy, auditability, and appeals; 7. dynamic entry and investment; 8. outcomes outside the auction itself. ## Practice 1. Explain truthfulness in a second-price auction for every possible rival bid. 2. Derive `b(v)=(n−1)v/n` using a deviation by type `v`. 3. Calculate VCG allocation and payments for values `(14,9,6,2)`. 4. Show how risk aversion changes first-price bid shading qualitatively. 5. Design an ad-auction evaluation with one auction outcome and two downstream-market outcomes. ## Quick check - A mechanism specifies messages, allocations, and transfers. - IC aligns a participant's optimal message with the designer's interpretation. - VCG charges opportunity cost but may violate other practical goals. - Revenue equivalence depends on a narrow common benchmark. - Auction rules can alter prices and competition outside the auction. **Next:** [test where standard choice models fail and how evidence scales](https://www.pengjiaxin.com/../09-behavioural-economics/). # Module 9 — Behavioural and Experimental Microeconomics []{#module-9-behavioural-and-experimental-microeconomics} ## Core question Which departures from the standard choice model are stable enough to predict, test, and use in policy without explaining every surprise after it occurs? ## Learning outcomes You will be able to: - distinguish preference, belief, attention, and optimisation errors; - use reference dependence, present bias, and social-preference models; - design and critique a behavioural experiment; - interpret evidence on nudges at scale; - identify the welfare and autonomy problem in behavioural policy. ## 1. Diagnose the benchmark before replacing it An observed choice can differ from a simple model because of: | Channel | Example | Evidence needed | | -------------- | --------------------------------- | ---------------------------------------------- | | preferences | dislike of losses or inequality | stable choice pattern across equivalent tasks | | beliefs | overestimated rare risk | elicited expectations or information treatment | | attention | fee or attribute not noticed | salience/eye-tracking/information intervention | | computation | choice set too complex | simplification or decision-time evidence | | constraint | liquidity or time prevents action | budget, eligibility, or access data | | social meaning | action signals identity or norm | variation in observability/context | Calling all six “bias” prevents a causal diagnosis. ## 2. Reference dependence and prospect theory Outcomes are evaluated as gains or losses relative to reference point `r`: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3em;vertical-align:-1.25em;"}[[[{]{.delimsizing.size4}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3.008em;"}[[(]{.mopen}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6644em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[,]{.mpunct}]{.mord}]{style="top:-3.69em;"}[[]{.pstrut style="height:3.008em;"}[[−]{.mord}[λ]{.mord.mathnormal}[(]{.mopen}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[x]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[,]{.mpunct}]{.mord}]{style="top:-2.25em;"}]{.vlist style="height:1.69em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.19em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}[]{.arraycolsep style="width:1em;"}[[[[[[]{.pstrut style="height:3.008em;"}[[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}]{.mord}]{style="top:-3.69em;"}[[]{.pstrut style="height:3.008em;"}[[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}]{.mord}]{style="top:-2.25em;"}]{.vlist style="height:1.69em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.19em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}[]{.mclose.nulldelimiter}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} typically with `λ>1`. The model combines: - reference dependence; - greater sensitivity to losses than equal gains; - diminishing sensitivity away from the reference; - nonlinear decision weights on probabilities. These are separate empirical components. Loss aversion alone does not imply overweighting rare probabilities. ### Worked framing example - **Gain frame:** receive £10 for sure or take a 50–50 gamble paying £20 or £0. - **Loss frame:** first receive a £20 reference endowment, then lose £10 for sure or take a 50–50 gamble that loses £0 or £20. Final payoffs are identical, yet the salient £20 reference can make the second description feel like losses and increase risk seeking. A valid test randomises framing while holding payoffs, information, and comprehension fixed. ## 3. Present bias and commitment Quasi-hyperbolic preferences at time `t` are: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.1304em;vertical-align:-1.3021em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[−]{.mbin.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} `δ` captures ordinary patience; `β<1` adds extra discounting of every future period relative to now. ### Worked procrastination Studying now costs 6 units; tomorrow's exam benefit is 8. Let `β=0.6` and `δ=1`: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[6]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.6]{.mord}[(]{.mopen}[8]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[1.2.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The student postpones. Tomorrow, the same present-bias calculation can repeat. A commitment device—scheduled study group, website block, or deadline—can improve the earlier self's welfare if the person is sophisticated about future inconsistency. The device can harm a time-consistent or liquidity-constrained person. Observed delay alone does not identify present bias. ## 4. Social preferences In a two-person Fehr–Schmidt representation: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[max]{.mop}[{]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[}]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[max]{.mop}[{]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[}]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with disadvantageous inequality often weighted more than advantageous inequality. This can rationalise rejection of a low offer in an ultimatum game: the responder sacrifices money to avoid or punish an unequal outcome. Alternatives include reciprocity, norm enforcement, experimenter demand, reputation, and confusion. Different games or treatments are needed to separate them. ## 5. Defaults, salience, and friction A default can change participation through: - effort saved by accepting it; - implied recommendation; - loss aversion around the status quo; - procrastination; - inattention. The mechanism determines design. If effort is the problem, simplify active choice. If comprehension is the problem, improve explanation. If the default conveys endorsement, disclose how it was selected. **Sludge** adds friction that benefits the designer at the chooser's expense—for example, one-click enrolment but a multi-page cancellation path. ## 6. Experimental design is part of the theory A credible experiment specifies: 1. population and recruitment; 2. randomisation unit and treatment contrast; 3. incentive-compatible outcome; 4. manipulation/comprehension checks; 5. primary outcome and analysis plan; 6. attrition, interference, and multiple-testing handling; 7. treatment effect and uncertainty; 8. transport from experiment to policy setting. Laboratory control strengthens mechanism tests; field scale strengthens realism. Neither automatically supplies the other. ## 7. Evidence case: nudges at scale DellaVigna and Linos assemble 126 randomised trials run by two large US nudge units, covering more than 23 million individuals. Average take-up effects were about 1.4 percentage points, compared with 8.7 points in a sample of published academic nudge studies; the scaled effects remained statistically meaningful but were much smaller ([2022](https://doi.org/10.3982/ECTA18709){rel=""nofollow""}). The result teaches three lessons: - publication selection can favour large effects; - academics may optimise interventions more intensively; - scaled programmes cover broader populations and outcomes. It does not show that every nudge is weak. Effects vary by behaviour and implementation, and a small percentage-point change can be cost-effective at low marginal cost. ## 8. Welfare when choices are inconsistent Standard revealed-preference welfare says a chosen option is at least as good as an available alternative. With inattention, unstable reference points, or present bias, which choice reveals welfare—the immediate choice, informed choice, planned choice, or experienced outcome? A behavioural policy appraisal should report: - whose preferences define welfare and at what time; - whether information or choice is restricted; - heterogeneity and opt-out cost; - distribution of errors and benefits; - manipulation risk and designer incentives; - learning, persistence, and long-run response. ::tip{title="Prefer diagnostic designs"} An intervention that helps distinguish mechanisms is more valuable than one that merely moves an outcome. Active choice versus default, information versus simplification, and immediate versus delayed effects can reveal why behaviour changed. :: ## 9. From anomaly to cumulative evidence One surprising choice is not a new theory. A useful behavioural model should: 1. state a restricted departure from a benchmark; 2. predict a new pattern before seeing it; 3. survive incentive, framing, and comprehension checks; 4. replicate across samples or explain heterogeneity; 5. improve prediction or policy relative to a simpler model. ## Practice 1. Separate loss aversion and probability weighting in a 2×2 experimental design. 2. Solve the procrastination example for `β=0.9` and `δ=0.95`. 3. Use the Fehr–Schmidt model to find when a responder rejects a `9/1` split. 4. Design a default experiment with an active-choice comparison arm. 5. Explain why a 1.4-point effect can be valuable yet fail a strong cost-benefit test. ## Quick check - An anomaly must be defined relative to a clear benchmark. - Reference dependence, probability weighting, and loss aversion are distinct. - Present bias creates preference reversal and possible demand for commitment. - Experimental control does not guarantee policy-scale effect size. - Behavioural welfare requires an explicit standard and easy opt-out. **Next:** [internalise external effects and provide public goods](https://www.pengjiaxin.com/../10-externalities-public-goods/). # Module 10 — Externalities, Public Goods, and Collective Action []{#module-10-externalities-public-goods-and-collective-action} ## Core question How should institutions change when a private action affects people who neither choose it nor receive compensation through the market? ## Learning outcomes You will be able to: - distinguish technological externalities from ordinary price changes; - calculate a corrective tax and efficient quantity; - compare Pigouvian taxes, bargaining, standards, and tradable permits; - derive the public-good provision condition; - evaluate carbon pricing through incentives, incidence, uncertainty, and implementation. ## 1. Private and social margins A negative production externality creates marginal external damage `MED`: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[Q]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[Q]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[Q]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The market equates marginal benefit with private marginal cost; efficiency equates it with social marginal cost. ### Worked pollution market Let inverse demand be `P=100−Q`, private marginal cost be 20, and marginal external damage be 20 per unit. Market outcome: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[20]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⇒]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[M]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[80.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Efficient outcome: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[20]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⇒]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9331em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[60.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A per-unit Pigouvian tax of 20 aligns private and social marginal cost in this benchmark. Tax revenue is a transfer; avoided damage is a social benefit; lost mutually beneficial **private** trades between 60 and 80 are the cost required to avoid larger external harm. Distribution depends on demand, supply, ownership, and revenue use. ## 2. An externality is not every indirect effect - A factory's smoke harming nearby health is a technological externality. - Higher coffee demand raising the market price is a pecuniary effect already transmitted by price. - Knowledge spillovers from research can be positive externalities. - Network effects may be internalised by a platform—or remain external to users and rivals. Policy needs the unpriced marginal effect, not merely the observation that someone is affected. ## 3. Match the instrument to information | Instrument | Fixes | Strength | Main risk | | ------------- | ---------------------------- | ------------------------------------ | ----------------------------------------- | | Pigouvian tax | price per harmful unit | continuous incentive to reduce | damage and response uncertain | | subsidy | positive spillover/abatement | rewards adoption | pays inframarginal action; fiscal cost | | standard | action or technology | direct and enforceable | ignores heterogeneous abatement cost | | cap-and-trade | total quantity | cap is explicit; trading lowers cost | volatile price; allocation and monitoring | | liability | realised harm | uses case-specific evidence | proof, delay, insolvency | | information | misperceived harm | low coercion | weak when incentives dominate | Under uncertainty, a tax controls marginal cost while quantity adjusts; a cap controls quantity while allowance price adjusts. Relative slopes of marginal damage and abatement cost, catastrophic thresholds, and learning determine which error is more costly. ## 4. Coasean bargaining clarifies rights and transaction costs A factory can prevent damage at cost 30; a resident suffers damage 50. - If the factory has the right to pollute, the resident can pay between 30 and 50 for abatement. - If the resident has the right to clean air, the factory abates rather than pay at least 50 for permission. With clear rights, complete information, transferable utility, and costless bargaining, both assignments lead to abatement. The assignment changes the transfer and therefore distribution. The Coase theorem is a benchmark for diagnosing frictions. With millions of affected people, strategic holdout, uncertain future damage, legal costs, wealth effects, and cross-border enforcement, bargaining may not reach the efficient result. ## 5. Tradable permits use heterogeneous abatement costs Suppose firms A and B must jointly cut 10 units. Their marginal abatement costs are: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[A]{.mord.mathnormal}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[2]{.mord}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[A]{.mord.mathnormal}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Cost-effective allocation equalises marginal costs and meets the cap: [[[]{.katex-mathml}[[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[2]{.mord}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Solving gives `a_A=6`, `a_B=4`, and allowance price 12. Requiring five units from each would leave marginal costs unequal (`10` versus `13`) and waste an opportunity to reallocate abatement. Trading finds the cost-effective allocation only if emissions are measured, permits are enforceable, market power is limited, and local pollutant “hot spots” are addressed. ## 6. Public goods require adding willingness to pay vertically A pure public good is non-rival and non-excludable. Everyone consumes the same quantity `G`, so the Samuelson condition is: [[[]{.katex-mathml}[[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a project costing 10 with individual values 6, 4, and 3, total value is 13, so provision creates surplus 3. No individual values it enough to pay the full cost, creating a free-rider problem. Private contributions typically underprovide because each contributor bears the cost but shares the benefit. Tax finance can solve funding but creates information and political-allocation problems: true values are private and agents may understate them. ## 7. Do not confuse four types of goods | | Excludable | Non-excludable | | ------------- | ------------ | -------------------- | | **Rival** | private good | common-pool resource | | **Non-rival** | club good | public good | A fishery is rival but difficult to exclude from: overuse is the central problem. A congested road can move from club-like to rival as traffic rises. Classification depends on technology and institutional design, not the product's name. ## 8. Dynamic externalities and innovation Climate emissions accumulate; research today changes future technology; antibiotic use affects future resistance. Dynamic policy must consider: - stock versus flow damage; - discounting and intergenerational welfare; - uncertainty and irreversible thresholds; - innovation and learning-by-doing; - policy credibility and stranded investment. A static corrective tax is a starting condition, not a complete transition strategy. ## 9. Current case: carbon pricing in 2026 The World Bank reports that 87 implemented direct carbon-pricing policies cover nearly 30% of global greenhouse-gas emissions and mobilised more than US$107 billion for public budgets in 2025 ([State and Trends of Carbon Pricing 2026](https://www.worldbank.org/en/publication/state-and-trends-of-carbon-pricing){rel=""nofollow""}). These facts show institutional reach, not a single causal effect. “Covered” emissions may face different prices, exemptions, free allocations, offsets, enforcement, and expectations. A policy evaluation must examine: 1. effective marginal price and coverage; 2. emissions response and relocation/leakage; 3. household and firm incidence; 4. revenue recycling; 5. interaction with standards, innovation policy, and trade; 6. monitoring and policy durability. ::tip{title="Separate three carbon questions"} The efficient **price** depends on marginal damage and uncertainty. The cost-effective **allocation** equalises marginal abatement cost. The politically sustainable **package** also requires distribution, transition, and credibility. :: ## 10. Government failure is part of the comparison Public intervention can be distorted by poor information, capture, administrative cost, weak enforcement, unstable rules, or distributional conflict. The relevant comparison is imperfect market versus feasible policy—not ideal government versus actual market, or vice versa. ## Practice 1. Recalculate the pollution example when marginal damage is `Q/4`. 2. Compare a tax of 20 with a quantity cap of 60 under uncertain demand. 3. Change the bargaining example so abatement costs 60; trace outcomes under each right assignment. 4. Solve the permit allocation when `MAC_A=a_A` and `MAC_B=4+2a_B`. 5. Design a carbon-pricing package that protects low-income households without removing the marginal emissions signal. ## Quick check - Efficiency uses marginal social, not only private, cost and benefit. - Coasean bargaining identifies when rights and transaction costs matter. - Taxes fix a price; caps fix a quantity. - Public-good benefits are summed across people at a common quantity. - Carbon-policy coverage is not the same as a uniform effective incentive. **Next:** [allocate indivisible positions through matching and market design](https://www.pengjiaxin.com/../11-market-design/). # Module 11 — Matching and Market Design []{#module-11-matching-and-market-design} ## Core question How should scarce, indivisible positions be assigned when prices are absent, restricted, or ethically inappropriate? ## Learning outcomes You will be able to: - define a matching, blocking pair, stability, and justified envy; - run deferred acceptance and explain proposer optimality; - compare stability, strategy-proofness, and Pareto efficiency; - execute top trading cycles and describe kidney-exchange constraints; - audit a matching system for usability, congestion, and distribution. ## 1. Matching is not an auction without money In one-to-one matching, each agent on side `S` ranks agents on side `C` and vice versa. A matching `μ` assigns each participant at most one partner and is reciprocal: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord.mathnormal}[(]{.mopen}[s]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.549em;vertical-align:-0.024em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}[⟺]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord.mathnormal}[(]{.mopen}[c]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[s]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A pair `(s,c)` blocks `μ` if: - `s` prefers `c` to `μ(s)`; and - `c` prefers `s` to `μ(c)`. A matching is **stable** if it is individually rational and has no blocking pair. Stability prevents a pair from wanting to bypass the mechanism; it is not identical to total-surplus maximisation. ## 2. Student-proposing deferred acceptance Algorithm: 1. Every unassigned student applies to the highest-ranked school not yet tried. 2. Each school tentatively holds its highest-priority applicants up to capacity and rejects the rest. 3. Rejected students apply to their next choice. 4. Stop when no rejection occurs; tentative holdings become final. ### Worked run Student preferences: - A: `X ≻ Y ≻ Z` - B: `X ≻ Z ≻ Y` - C: `Y ≻ X ≻ Z` School priorities: - X: `C ≻ B ≻ A` - Y: `A ≻ C ≻ B` - Z: `B ≻ A ≻ C` | Round | New applications | Holds after rejection | | ----: | ---------------- | -------------------------------- | | 1 | A→X, B→X, C→Y | X holds B; Y holds C; A rejected | | 2 | A→Y | Y holds A; C rejected | | 3 | C→X | X holds C; B rejected | | 4 | B→Z | X–C, Y–A, Z–B | Final matching: `A–Y`, `B–Z`, `C–X`. ::pyodide --- code64: cHJlZmVyZW5jZXMgPSB7CiAgICAiQSI6IFsiWCIsICJZIiwgIloiXSwKICAgICJCIjogWyJYIiwgIloiLCAiWSJdLAogICAgIkMiOiBbIlkiLCAiWCIsICJaIl0sCn0KcHJpb3JpdGllcyA9IHsKICAgICJYIjogWyJDIiwgIkIiLCAiQSJdLAogICAgIlkiOiBbIkEiLCAiQyIsICJCIl0sCiAgICAiWiI6IFsiQiIsICJBIiwgIkMiXSwKfQoKZnJlZSA9IGxpc3QocHJlZmVyZW5jZXMpCm5leHRfY2hvaWNlID0ge3M6IDAgZm9yIHMgaW4gcHJlZmVyZW5jZXN9CmhlbGQgPSB7fQoKd2hpbGUgZnJlZToKICAgIHN0dWRlbnQgPSBmcmVlLnBvcCgwKQogICAgc2Nob29sID0gcHJlZmVyZW5jZXNbc3R1ZGVudF1bbmV4dF9jaG9pY2Vbc3R1ZGVudF1dCiAgICBuZXh0X2Nob2ljZVtzdHVkZW50XSArPSAxCiAgICBjYW5kaWRhdGVzID0gW3N0dWRlbnRdICsgKFtoZWxkW3NjaG9vbF1dIGlmIHNjaG9vbCBpbiBoZWxkIGVsc2UgW10pCiAgICB3aW5uZXIgPSBtaW4oY2FuZGlkYXRlcywga2V5PWxhbWJkYSBzOiBwcmlvcml0aWVzW3NjaG9vbF0uaW5kZXgocykpCiAgICBoZWxkW3NjaG9vbF0gPSB3aW5uZXIKICAgIGZyZWUuZXh0ZW5kKHMgZm9yIHMgaW4gY2FuZGlkYXRlcyBpZiBzICE9IHdpbm5lcikKCnByaW50KHtzdHVkZW50OiBzY2hvb2wgZm9yIHNjaG9vbCwgc3R1ZGVudCBpbiBoZWxkLml0ZW1zKCl9KQ== layout: vertical locale: en title: Run student-proposing deferred acceptance --- :: ## 3. What deferred acceptance guarantees With strict preferences and responsive/substitutable school choice: - the result is stable; - student-proposing DA gives every student their best assignment among stable matchings; - truthful preference reporting is a dominant strategy for students in the standard model; - the receiving side need not have a truthful dominant strategy. It does not guarantee the Pareto-best assignment among **all** matchings, because an unstable matching may make students better off while violating priorities. Strategy-proofness can also fail operationally when application lists are truncated, priorities are uncertain, or couples and complementarities break substitutability. ## 4. School priorities are not school welfare Public-school choice often uses priorities—siblings, location, test score, lottery—not preferences representing a school's utility. Stability then means **no justified envy**: no student prefers a school where a lower-priority student received a place. Design choices remain normative: - neighbourhood versus city-wide access; - lotteries versus exams; - reserved seats and affirmative priorities; - walk zones, siblings, and continuity; - tie-breaking common across schools or independent. The algorithm cannot decide which priorities are fair; it implements the priorities supplied. ## 5. Top trading cycles for owned objects When agents have initial ownership, top trading cycles (TTC) works as follows: 1. each agent points to the owner of their favourite remaining object; 2. each object points to its owner; 3. at least one cycle exists; execute every cycle; 4. remove matched agents/objects and repeat. Example: A owns 1 and wants `2≻1≻3`; B owns 2 and wants `1≻2≻3`; C owns 3 and wants `3` most. A and B swap through a two-cycle; C keeps 3. TTC is Pareto efficient and strategy-proof in the housing-market benchmark, but it pursues ownership and efficiency rather than school-priority stability. ## 6. Kidney exchange turns compatibility into a graph A patient–donor pair is a node. A directed edge `i→j` means donor `i` can give to patient `j`. Feasible exchanges are cycles; a non-directed donor can start a chain. Design must account for: - medical compatibility and match quality; - maximum cycle length and simultaneous surgery capacity; - chain failure and timing; - fairness across blood types, sensitisation, age, and waiting time; - participation by hospitals with private local options. Maximising the number of transplants can differ from maximising expected graft quality or giving priority to hard-to-match patients. ## 7. Practical market-design principles | Principle | Failure if absent | Design response | | -------------- | --------------------------------------- | ---------------------------------------------- | | thickness | too few useful counterparties | coordinate timing; pool markets | | low congestion | offers/applications cannot be processed | centralise and batch; limit redundant messages | | safety | participants leave or contract early | stable/credible rules; protect participation | | simplicity | strategy and probability misunderstood | clear reporting; decision aids; audit examples | | adaptability | static rule fails under new constraints | scheduled review and simulation | Market design is engineering with strategic users. A mathematically attractive mechanism can fail if forms, deadlines, advice, or appeal rules change actual behaviour. ## 8. Evidence case: correlation neglect in school choice Rees-Jones, Shorrer, and Tergiman run three incentivised school-choice experiments. When schools use a common priority—so admissions outcomes are correlated—participants choose more aggressive application strategies and omit attractive safety options relative to otherwise comparable independent assessments. Their tests point partly to correlation neglect ([2024](https://doi.org/10.1257/mic.20200407){rel=""nofollow""}). The implication is not simply “students should strategise better.” Designers can simplify probability communication, reduce harmful list constraints, provide decision support, or choose mechanisms less sensitive to mistaken beliefs. The evidence is experimental; real applications also involve advice, family constraints, heterogeneous stakes, and institutional trust. ## 9. Audit a matching market Ask: 1. who may participate and who is missing? 2. are preferences, priorities, and capacities correctly represented? 3. which side has a truthful strategy? 4. what fairness concept is implemented? 5. can participants understand correlated risk and list constraints? 6. are there blocking pairs, empty places, or early contracting? 7. how are ties, appeals, late arrivals, and dynamic changes handled? ## Practice 1. Verify that the worked DA matching has no blocking pair. 2. Run school-proposing DA and compare outcomes for both sides. 3. Construct a matching that Pareto improves students' assignments but violates one priority. 4. Execute TTC for four agents with one three-cycle and one self-cycle. 5. Design one communication intervention for correlated admissions and a test of its effect. ## Quick check - Stability prevents mutually preferred deviations; it is not total-surplus efficiency. - Proposer-optimal DA is strategy-proof for the proposing side in the benchmark. - Priorities are policy inputs, not discovered by the algorithm. - TTC serves ownership exchange, while DA serves stability. - Practical design includes cognition, timing, participation, and appeals. **Next:** [integrate choice, strategy, information, and welfare in a platform design](https://www.pengjiaxin.com/../12-review/). # Module 12 — Integrated Microeconomic Design Studio []{#module-12-integrated-microeconomic-design-studio} ## Core question Can you choose the smallest useful model, solve it correctly, test it against evidence, and redesign the institution without hiding the trade-offs? ## Learning outcomes You will be able to: - combine models while keeping their assumptions distinct; - move from private choice to equilibrium, welfare, and implementation; - diagnose a digital platform and a climate-insurance market; - write a compact design memo with a falsifiable recommendation. ## 1. Model selection is part of the answer | Observed problem | First diagnostic | Add when necessary | | --------------------------------------- | ------------------------ | ------------------------------------- | | demand changes after price | consumer choice/Slutsky | attention, quality, network effects | | prices remain high with several sellers | differentiated oligopoly | search, capacity, repeated algorithms | | good products leave | adverse selection | certification, screening, regulation | | effort falls after protection | moral hazard | monitoring and dynamic contract | | bids are strategic | auction/mechanism | budgets, common values, collusion | | applicants bypass a system | matching stability | cognition, list limits, priorities | | private action harms others | externality | general equilibrium and distribution | Do not stack theories decoratively. Add a model only when it explains a margin the previous model omits. ## 2. The design chain :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgR29hbFtPYmplY3RpdmUgYW5kIGNvdW50ZXJmYWN0dWFsXSAtLT4gUHJpbWl0aXZlW0FnZW50cywgdHlwZXMsIGFjdGlvbnMsIGluZm9ybWF0aW9uXQogIFByaW1pdGl2ZSAtLT4gUnVsZVtQcmljZXMsIGNvbnRyYWN0cywgYWxnb3JpdGhtLCBvciBwcmlvcml0eV0KICBSdWxlIC0tPiBFcVtCZWhhdmlvdXIgYW5kIGVxdWlsaWJyaXVtXQogIEVxIC0tPiBXZWxmYXJlW0VmZmljaWVuY3kgYW5kIGRpc3RyaWJ1dGlvbl0KICBXZWxmYXJlIC0tPiBFdmlkZW5jZVtFdmlkZW5jZSBhbmQgdW5jZXJ0YWludHldCiAgRXZpZGVuY2UgLS0+IFJlZGVzaWduW0ltcGxlbWVudGF0aW9uLCBhdWRpdCwgcmV2aXNpb25d" locale="en"} A complete short answer contains: 1. outcome and counterfactual; 2. primitives and timing; 3. solution concept; 4. one solved mechanism or comparative static; 5. welfare criterion and incidence; 6. evidence tied to one claim; 7. boundary and failure mode; 8. recommendation plus review trigger. ## 3. Case A — an AI-service marketplace ### Environment A cloud platform hosts foundation-model providers and downstream apps. It supplies compute, ranks services, sells sponsored positions, charges commission, and offers its own model. Users differ in price sensitivity and cannot fully observe reliability; developers can multi-home at a cost. ### Map the theory | Module | Question for the platform | | ------------------- | ----------------------------------------------------------------- | | choice/duality | how do price, quality, and switching cost change demand? | | welfare | what is users' willingness to pay for reliability or portability? | | uncertainty | how are rare model failures valued and insured? | | general equilibrium | how does scarce compute affect downstream entry and prices? | | games/oligopoly | do providers price, invest, or coordinate dynamically? | | information | who knows model quality, training data, and safety effort? | | mechanism design | how are sponsored slots and compute capacity allocated? | | behavioural | do defaults and rankings substitute for informed choice? | | externalities | who bears misinformation, privacy, or energy costs? | | matching | how are users routed to models with different capabilities? | ### A small ranking calculation Three providers bid per click and have estimated relevance: | Provider | bid | relevance | bid × relevance | | -------- | --: | --------: | --------------: | | A | £4 | 0.90 | 3.60 | | B | £3 | 1.00 | 3.00 | | C | £1 | 0.80 | 0.80 | A score auction ranks A first. But the score embeds only bid and predicted relevance. If reliability, privacy, competition, or organic downstream prices matter, ranking by this score is not a welfare theorem. ### Information and incentive problem Suppose high safety effort costs a provider £1 million, reduces failure probability from 4% to 1%, and each failure imposes expected user loss of £40 million. The social expected benefit of effort is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.04]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.01]{.mord}[)]{.mclose}[(]{.mopen}[£40]{.mord}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£1.2]{.mord}[m]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Effort creates net expected social value of £0.2 million. Yet the provider chooses it only if liability, reputation, lost ranking, insurance price, or contract reward lets it capture at least the £1 million private cost. This is a hidden-action externality. A disclosure rule alone may not create the missing incentive; strict liability may create it but can deter entry or be hard to enforce. ### Design options | Rule | Intended mechanism | Failure to test | | ---------------------------- | ----------------------------------- | --------------------------------------------- | | portability/interoperability | reduce switching and entry barriers | security and low adoption | | quality-adjusted ranking | reward reliability | metric gaming and platform self-preference | | auditable incident reporting | improve information/reputation | under-reporting and incomparable events | | auction separation | limit ranking–commission conflict | weaker integration efficiencies | | compute-access commitments | protect downstream entry | capacity allocation and investment incentives | CMA's 2024 mapping of foundation-model partnerships is evidence about structure and possible bottlenecks, not direct proof of harm. Bergemann, Bonatti, and Wu's 2025 model shows that an ad mechanism can affect off-platform product prices, not the realised effect of one platform. Use each source only for the claim it identifies. ## 4. Case B — climate-risk home insurance ### Adverse-selection arithmetic Two equally common household types face a £100,000 loss: - low risk: `p_L=0.02`, fair expected loss £2,000; - high risk: `p_H=0.10`, fair expected loss £10,000. If risk is unobserved, the break-even pooling premium is: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[£2]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[£10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£6]{.mord}[[,]{.mpunct}]{.mord}[000.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If low-risk households value coverage below £6,000 and exit, the remaining pool costs £10,000 per policy. A premium rise can therefore worsen the pool rather than simply reduce quantity along a fixed demand curve. ### Add hidden prevention Home hardening costs £1,500 and reduces high-risk loss probability from 10% to 7%. Expected loss falls by: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.03]{.mord}[(]{.mopen}[£100]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£3]{.mord}[[,]{.mpunct}]{.mord}[000.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Prevention is socially valuable, but full insurance can weaken the household's private return if the action is unobserved. Inspection, premium discount, deductible, or public grant can restore incentives, each with administrative and distributional costs. ### Add classification and regulation Richer parcel-level risk models can align premium with expected loss and reward prevention, but can also make high-risk homes unaffordable and capitalise climate risk into property values. Coarse regulated classes provide cross-subsidy yet can induce insurer selection or withdrawal. The Boomhower et al. working paper documents heterogeneous wildfire-risk classification and potential adverse selection among insurers. It does not itself choose the social allocation of catastrophic risk among households, insurers, reinsurers, and taxpayers. ### Policy menu | Option | Efficiency channel | Equity/implementation issue | | --------------------------- | ------------------------------- | --------------------------------------- | | risk-based price | signals exposure and prevention | affordability and stranded assets | | means-tested premium aid | preserves marginal risk price | eligibility and fiscal cost | | public reinsurance | pools catastrophe tail risk | taxpayer exposure and pricing | | mitigation subsidy/standard | lowers expected loss | verification and inframarginal payments | | managed retreat/buyout | removes extreme exposure | valuation, consent, community loss | No single instrument solves risk transfer, prevention, affordability, land use, and aggregate climate externality. ## 5. Compare the cases | Dimension | AI marketplace | Climate insurance | | --------------------- | ------------------------------------------- | -------------------------------------- | | scarce resource | attention, compute, data, distribution | risk-bearing capacity and safe land | | hidden information | quality, costs, reliability | parcel risk and household type | | hidden action | safety effort, self-preference | prevention and claims behaviour | | strategic interaction | pricing, ranking, entry, partnerships | selection, pricing, withdrawal | | external effect | privacy, misinformation, energy, innovation | disaster spillover and public backstop | | design tension | integration versus foreclosure | risk signals versus affordability | The common lesson is to model **who adapts to the rule**. A policy that holds behaviour fixed is often an accounting exercise, not an equilibrium analysis. ## 6. Evidence-to-claim map | Claim | Useful source | Boundary | | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------- | | finite choice data can bound welfare | [Chambers & Echenique, 2025](https://doi.org/10.3982/TE5845){rel=""nofollow""} | revealed relations remain incomplete | | networks propagate distortions | [Baqaee & Farhi, 2024](https://doi.org/10.3982/ECTA17513){rel=""nofollow""} | quantitative effect needs calibrated structure | | wildfire classification changes selection | [Boomhower et al., 2024, rev. 2025](https://doi.org/10.3386/w32625){rel=""nofollow""} | one regulated homeowners-insurance market | | pricing software changes competition | [Assad et al., 2024](https://doi.org/10.1086/726906){rel=""nofollow""} | German gasoline and inferred adoption | | ML credit changes disparity margins | [Fuster et al., 2022](https://doi.org/10.1111/jofi.13090){rel=""nofollow""} | historical US mortgage counterfactual | | ad mechanisms affect outside prices | [Bergemann et al., 2025](https://doi.org/10.1093/restud/rdae087){rel=""nofollow""} | theoretical environment | | nudges shrink at scale | [DellaVigna & Linos, 2022](https://doi.org/10.3982/ECTA18709){rel=""nofollow""} | average across two US nudge units | | applicants neglect correlated admission risk | [Rees-Jones et al., 2024](https://doi.org/10.1257/mic.20200407){rel=""nofollow""} | incentivised experiments | | carbon pricing is institutionally widespread | [World Bank, 2026](https://www.worldbank.org/en/publication/state-and-trends-of-carbon-pricing){rel=""nofollow""} | coverage is not common price/effectiveness | ## 7. Capstone design memo Choose one market—AI services, insurance, school choice, organ exchange, electricity, digital advertising, or another approved setting—and write 1,500 words: 1. state the institution and counterfactual; 2. map agents, types, actions, information, timing, and constraints; 3. solve one benchmark model; 4. identify one strategic or informational failure; 5. evaluate efficiency and distribution separately; 6. use two primary or peer-reviewed sources; 7. propose a rule and one implementation safeguard; 8. name a measurable result that would trigger revision. | Criterion | Weight | Full-credit signal | | ------------------------ | -----: | --------------------------------------------------------- | | primitives and solution | 25% | correct model, feasible equilibrium, verified calculation | | incentive diagnosis | 20% | adaptation and private information are explicit | | welfare and distribution | 20% | criterion, incidence, and omitted groups are visible | | evidence | 20% | claim matches design and external-validity boundary | | implementation | 15% | rule, audit, appeal, and revision trigger | Graduate extension: prove an IC, stability, or existence result; compare at least two solution concepts; or estimate/simulate one equilibrium response. ## Final check - What is assumed rather than observed? - Which equilibrium concept fits the timing and information? - What behaviour changes when the rule changes? - Which welfare criterion ranks outcomes? - Who gains, loses, enters, exits, or becomes unmeasured? - What evidence could overturn the recommendation? If those six answers are visible, the analysis is advanced microeconomics rather than a list of advanced terms. # Typst Plugin Playground []{#typst-plugin-playground} This page demonstrates mathematical rendering capabilities using multiple engines: Typst, LaTeX, and KaTeX. ## Typst Component Package (vitepress-typstex-vue) The `vitepress-typstex-vue` package provides a Vue component `` for rendering Typst or LaTeX-style expressions. ::tip{title="Rendering Logic"} - Primary: Typst WASM compiler (native Typst syntax) - Fallback: KaTeX or MathJax (for LaTeX syntax) - Automatic fallback when Typst fails :: ### Inline Math Example This is an inline formula: :typst-math{is-block="false" src64="MSArIDIgKyAzICsgZG90cyArIG4gPSAobihuKzEpKS8y"} in the text. ### Display Math Example :typst-math{font-size="18" is-block="true" src64="XGludF8wXlxpbmZ0eSBlXnsteF4yfVwsZHggPSBcZnJhY3tcc3FydHtccGl9fXsyfQ=="} ### Mixed Formula (Typst Syntax) :typst-math{font-size="20" is-block="true" src64="RSA9IG0gY14y"} ### Complex Expressions Quadratic formula: :typst-math{font-size="18" is-block="true" src64="eCA9ICgtYiBwbHVzLm1pbnVzIHNxcnQoYl4yIC0gNGEgYykpLygyYSk="} Matrix representation: :typst-math{font-size="18" is-block="true" src64="bWF0KDEsIDI7IDMsIDQpIHZlYyh4LCB5KSA9IHZlYyg1LCA2KQ=="} Summation and limits: :typst-math{font-size="18" is-block="true" src64="c3VtXyhpPTEpXm4gaV4yID0gKG4obisxKSgybisxKSkvNg=="} ## Rendering Engine Comparison Let's compare the same formula rendered with three different engines. Target formula: ```tex title="LaTeX formula example" \int_0^\infty e^{-x^2}\,dx = \frac{\sqrt{\pi}}{2} ``` ### 1. Native Typst (Typst Syntax) Using Typst's native syntax: :typst-math{font-size="18" is-block="true" src64="aW50ZWdyYWxfMF7iiJ4gZV4oLXheMikgZCB4ID0gc3FydCjPgCkvMg=="} ### 2. TypstMath Fallback (MathJax) When configured with `latexEngine: 'mathjax'`, LaTeX-style input falls back to MathJax: ::typst-math --- font-size: "18" is-block: "true" latex-engine: mathjax src64: XGludF8wXlxpbmZ0eSBlXnsteF4yfVwsZHggPSBcZnJhY3tcc3FydHtccGl9fXsyfQ== --- :: #### Overriding the Engine per Component The global plugin sets the default fallback engine, but you can override it for any `` via the `latex-engine` prop: ```md ``` ### 3. markdown-it-typstex Fallback (KaTeX) The same LaTeX formula parsed by the `markdown-it-typstex` plugin, falling back to KaTeX when Typst fails: [[[]{.katex-mathml}[[[]{.strut style="height:2.3262em;vertical-align:-0.9119em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∞]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.4143em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9119em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.931em;margin-right:0.0714em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:1.0369em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1633em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.7603em;"}]{.vlist style="height:0.8003em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2397em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4773em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### 4. Pure Typst Syntax Using Typst's mathematical syntax: [[[]{.katex-mathml}[[[]{.strut style="height:1.185em;vertical-align:-0.247em;"}[in]{.mord.mathnormal}[t]{.mord.mathnormal}[e]{.mord.mathnormal}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[a]{.mord.mathnormal}[[l]{.mord.mathnormal style="margin-right:0.0197em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0197em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8747em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[n]{.mord.mathnormal}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[ini]{.mord.mathnormal}[t]{.mord.mathnormal}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[(]{.mopen.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[d]{.mord.mathnormal}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[s]{.mord.mathnormal}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[(]{.mopen}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[/2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## markdown-it-typstex Plugin This plugin allows you to write math expressions directly in markdown. ### Inline Math Here's an inline formula: [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[1/2]{.mord}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[h]{.mord.mathnormal}[o]{.mord.mathnormal}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} for lift force. The famous Euler's identity: [[]{.katex-mathml}[[[]{.strut style="height:1.138em;vertical-align:-0.25em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[(]{.mopen.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.888em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[i]{.mord.mathnormal}[p]{.mord.mathnormal}[i]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ### Display Math (Double Dollar Signs) Maxwell's equations: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[i]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[t]{.mord.mathnormal}[d]{.mord.mathnormal}[o]{.mord.mathnormal}[t]{.mord.mathnormal}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[h]{.mord.mathnormal}[o]{.mord.mathnormal}[/]{.mord}[e]{.mord.mathnormal}[p]{.mord.mathnormal}[s]{.mord.mathnormal}[i]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[o]{.mord.mathnormal}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[i]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[t]{.mord.mathnormal}[d]{.mord.mathnormal}[o]{.mord.mathnormal}[t]{.mord.mathnormal}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[i]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[tt]{.mord.mathnormal}[im]{.mord.mathnormal}[es]{.mord.mathnormal}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[−]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[a]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[ia]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[))]{.mclose}[/]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[a]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[ia]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[i]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[tt]{.mord.mathnormal}[im]{.mord.mathnormal}[es]{.mord.mathnormal}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[J]{.mord.mathnormal style="margin-right:0.0962em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[e]{.mord.mathnormal}[p]{.mord.mathnormal}[s]{.mord.mathnormal}[i]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[o]{.mord.mathnormal}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[a]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[ia]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[))]{.mclose}[/]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[a]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[ia]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Display Math (Math Code Block) You can also use fenced code blocks with `math` language: [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[1/2]{.mord}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[h]{.mord.mathnormal}[o]{.mord.mathnormal}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[G]{.mord.mathnormal}[(]{.mopen}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[/]{.mord}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ## More Examples ### Calculus Derivative definition: [[[]{.katex-mathml}[[[]{.strut style="height:1.0519em;vertical-align:-0.25em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1052em;vertical-align:-0.3552em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[i]{.mord.mathnormal}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[(]{.mopen.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[ha]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[o]{.mord.mathnormal}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[0]{.mord}[)]{.mclose}[(]{.mopen}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[))]{.mclose}[/]{.mord}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Taylor series: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7858em;vertical-align:-0.3552em;"}[s]{.mord.mathnormal}[u]{.mord.mathnormal}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[(]{.mopen.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.188em;vertical-align:-0.25em;"}[0]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8747em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[n]{.mord.mathnormal}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[ini]{.mord.mathnormal}[t]{.mord.mathnormal}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[(]{.mopen.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[n]{.mord.mathnormal}[))]{.mclose}[(]{.mopen}[a]{.mord.mathnormal}[))]{.mclose}[/]{.mord}[(]{.mopen}[n]{.mord.mathnormal}[!)]{.mclose}[(]{.mopen}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Linear Algebra Determinant: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[e]{.mord.mathnormal}[t]{.mord.mathnormal}[ma]{.mord.mathnormal}[t]{.mord.mathnormal}[(]{.mopen}[a]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[b]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[c]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[b]{.mord.mathnormal}[c]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Eigenvalue equation: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[b]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[amb]{.mord.mathnormal}[d]{.mord.mathnormal}[ab]{.mord.mathnormal}[o]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[d]{.mord.mathnormal}[(]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Statistics Normal distribution: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.188em;vertical-align:-0.25em;"}[1/]{.mord}[(]{.mopen}[s]{.mord.mathnormal}[i]{.mord.mathnormal}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[ma]{.mord.mathnormal}[s]{.mord.mathnormal}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[(]{.mopen}[2]{.mord}[p]{.mord.mathnormal}[i]{.mord.mathnormal}[))]{.mclose}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[(]{.mopen.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[u]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[/]{.mord}[(]{.mopen}[2]{.mord}[s]{.mord.mathnormal}[i]{.mord.mathnormal}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[m]{.mord.mathnormal}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[))]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Bayes' theorem: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[A]{.mord.mathnormal}[∣]{.mord}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[∣]{.mord}[A]{.mord.mathnormal}[)]{.mclose}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[A]{.mord.mathnormal}[))]{.mclose}[/]{.mord}[(]{.mopen}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[))]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Physics Schrödinger equation: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[i]{.mord.mathnormal}[pl]{.mord.mathnormal style="margin-right:0.0197em;"}[an]{.mord.mathnormal}[c]{.mord.mathnormal}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[.]{.mord}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[ce]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[a]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[ia]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[)]{.mclose}[/]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[a]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[ia]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[t]{.mord.mathnormal}[)]{.mclose}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[s]{.mord.mathnormal}[i]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ha]{.mord.mathnormal}[t]{.mord.mathnormal}[(]{.mopen}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[)]{.mclose}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[s]{.mord.mathnormal}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Lorentz transformation: [[[]{.katex-mathml}[[[]{.strut style="height:0.8019em;"}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[amma]{.mord.mathnormal}[(]{.mopen}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[(]{.mopen}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[x]{.mord.mathnormal}[)]{.mclose}[/]{.mord}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[u]{.mord.mathnormal}[a]{.mord.mathnormal}[d]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[amma]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[amma]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[s]{.mord.mathnormal}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[t]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[/]{.mord}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## LaTeX Compatibility The plugin also supports traditional LaTeX syntax: [[[]{.katex-mathml}[[[]{.strut style="height:2.3262em;vertical-align:-0.9119em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∞]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.4143em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9119em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.931em;margin-right:0.0714em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:1.0369em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1633em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.7603em;"}]{.vlist style="height:0.8003em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2397em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4773em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:2.9185em;vertical-align:-1.2671em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[n]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[∞]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1771em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[6]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:2.062em;vertical-align:-0.7171em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[→]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3829em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[lim]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7171em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[x]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[sin]{.mop}[]{.mspace style="margin-right:0.1667em;"}[x]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3449em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::note{title="Rendering Priority"} 1. **Typst WASM** (primary): Fast, feature-rich, native Typst syntax 2. **MathJax** (fallback): Comprehensive LaTeX support, larger bundle 3. **KaTeX** (fallback): Fast LaTeX rendering, smaller bundle :: ::tip{title="Best Practices"} - Use **Typst syntax** for better performance and smaller bundle size - Use **LaTeX syntax** for compatibility with existing content - Test complex formulas with different engines for best results :: # Citation Plugin Test []{#citation-plugin-test} This page tests the `markdown-it-citation` plugin integration. ## In-text Citation Here is a citation: [([Boland, 2007](https://www.pengjiaxin.com/#bib-boland2007statistical))]{#citation--boland2007statistical--1}. ## Narrative Citation As stated by [[Boland (2007)](https://www.pengjiaxin.com/#bib-boland2007statistical)]{#citation--boland2007statistical--2}... ## Frontmatter Citation This page also includes citations defined in the frontmatter (if any were added, but for this test we rely on in-text). ## Bibliography The bibliography should appear below automatically. ::div{#refs .references.csl-bib-body} :::div{#bib-boland2007statistical .csl-entry} Boland, P. J. (2007). *Statistical and Probabilistic Methods in Actuarial Science*. Chapman & Hall/CRC. http\://catdir.loc.gov/catdir/toc/fy0709/2007060501.html ::: :: # Run Python in the Browser (Pyodide) With [Pyodide](https://pyodide.org){rel=""nofollow""}, you can run Python directly in the browser without any server-side setup. The runtime downloads on first use (\~10MB) and all cells on the same page share variables by default. ::tip{title="Usage Guide"} - Code is hidden by default — click **"Show Code"** to expand - Click **"Run"** to execute the cell - After a run, use **"Hide Output"** / **"Show Output"** without losing the result - Click **"Clear"** to discard the output - All cells share the same Python environment on this page :: ## Basic Examples Start with simple Python expressions: ::pyodide --- code64: cHJpbnQoIkhlbGxvIGZyb20gUHlvZGlkZSEiKQppbXBvcnQgc3lzCnByaW50KGYiUHl0aG9uIHZlcnNpb246IHtzeXMudmVyc2lvbn0iKQ== layout: vertical locale: en title: Hello World --- :: ::pyodide --- code64: IyBBcml0aG1ldGljIG9wZXJhdGlvbnMKcmVzdWx0ID0gKDQyICogMikgLyAzCnByaW50KGYiUmVzdWx0OiB7cmVzdWx0Oi4yZn0iKQoKIyBMaXN0IGNvbXByZWhlbnNpb24Kc3F1YXJlcyA9IFt4KioyIGZvciB4IGluIHJhbmdlKDEsIDYpXQpwcmludChmIlNxdWFyZXM6IHtzcXVhcmVzfSIp layout: vertical locale: en title: Basic calculations --- :: ## Variable Sharing Between Cells Define data in one cell and reuse it in subsequent cells: ::pyodide --- code64: IyBDcmVhdGUgYSBzYW1wbGUgZGF0YXNldApkYXRhID0gWzMsIDMsIDYsIDksIDEyLCAxNSwgMTgsIDIxXQpwcmludChmIkRhdGE6IHtkYXRhfSIpCnByaW50KGYiU3VtOiB7c3VtKGRhdGEpfSwgTGVuZ3RoOiB7bGVuKGRhdGEpfSIp layout: vertical locale: en title: "Step 1: Define data" --- :: ::pyodide --- code64: aW1wb3J0IHN0YXRpc3RpY3MgYXMgc3RhdHMKCnByaW50KGYiTWVhbjoge3N0YXRzLm1lYW4oZGF0YSk6LjJmfSIpCnByaW50KGYiTWVkaWFuOiB7c3RhdHMubWVkaWFuKGRhdGEpfSIpCnByaW50KGYiU3RkIERldjoge3N0YXRzLnN0ZGV2KGRhdGEpOi4yZn0iKQpwcmludChmIlZhcmlhbmNlOiB7c3RhdHMudmFyaWFuY2UoZGF0YSk6LjJmfSIp layout: vertical locale: en title: "Step 2: Statistical analysis" --- :: ::pyodide --- code64: IyBGaW5kIG1pbiwgbWF4LCBhbmQgcmFuZ2UKcHJpbnQoZiJNaW46IHttaW4oZGF0YSl9LCBNYXg6IHttYXgoZGF0YSl9IikKcHJpbnQoZiJSYW5nZToge21heChkYXRhKSAtIG1pbihkYXRhKX0iKQoKIyBDYWxjdWxhdGUgcGVyY2VudGlsZXMKcHJpbnQoZiIyNXRoIHBlcmNlbnRpbGU6IHtzdGF0cy5xdWFudGlsZXMoZGF0YSwgbj00KVswXX0iKQpwcmludChmIjc1dGggcGVyY2VudGlsZToge3N0YXRzLnF1YW50aWxlcyhkYXRhLCBuPTQpWzJdfSIp layout: vertical locale: en title: "Step 3: More operations" --- :: ## Data Visualization Create beautiful plots with Matplotlib: ::pyodide --- code64: aW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAppbXBvcnQgbnVtcHkgYXMgbnAKCiMgR2VuZXJhdGUgZGF0YQp4ID0gbnAubGluc3BhY2UoMCwgMipucC5waSwgMTAwKQp5MSA9IG5wLnNpbih4KQp5MiA9IG5wLmNvcyh4KQoKIyBDcmVhdGUgcGxvdApwbHQuZmlndXJlKGZpZ3NpemU9KDEwLCA2KSkKcGx0LnBsb3QoeCwgeTEsIGxhYmVsPSdzaW4oeCknLCBsaW5ld2lkdGg9MikKcGx0LnBsb3QoeCwgeTIsIGxhYmVsPSdjb3MoeCknLCBsaW5ld2lkdGg9MikKcGx0LnRpdGxlKCdUcmlnb25vbWV0cmljIEZ1bmN0aW9ucycpCnBsdC54bGFiZWwoJ3gnKQpwbHQueWxhYmVsKCd5JykKcGx0LmxlZ2VuZCgpCnBsdC5ncmlkKFRydWUsIGFscGhhPTAuMykKcGx0LnNob3coKQ== layout: vertical locale: en title: Line plot --- :: ::pyodide --- code64: aW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAppbXBvcnQgbnVtcHkgYXMgbnAKCiMgR2VuZXJhdGUgc2FtcGxlIGRhdGEKbnAucmFuZG9tLnNlZWQoNDIpCnggPSBucC5hcmFuZ2UoMSwgMjEpCnkgPSAyICogeCArIDUgKyBucC5yYW5kb20ubm9ybWFsKDAsIDMsIDIwKQoKIyBGaXQgYSBsaW5lCmNvZWZmaWNpZW50cyA9IG5wLnBvbHlmaXQoeCwgeSwgMSkKcG9seW5vbWlhbCA9IG5wLnBvbHkxZChjb2VmZmljaWVudHMpCnlfZml0ID0gcG9seW5vbWlhbCh4KQoKIyBDcmVhdGUgcGxvdApwbHQuZmlndXJlKGZpZ3NpemU9KDEwLCA2KSkKcGx0LnNjYXR0ZXIoeCwgeSwgYWxwaGE9MC42LCBzPTEwMCwgbGFiZWw9J0RhdGEgcG9pbnRzJykKcGx0LnBsb3QoeCwgeV9maXQsICdyLS0nLCBsaW5ld2lkdGg9MiwgbGFiZWw9ZidGaXQ6IHk9e2NvZWZmaWNpZW50c1swXTouMmZ9eCt7Y29lZmZpY2llbnRzWzFdOi4yZn0nKQpwbHQudGl0bGUoJ0xpbmVhciBSZWdyZXNzaW9uJykKcGx0LnhsYWJlbCgnWCcpCnBsdC55bGFiZWwoJ1knKQpwbHQubGVnZW5kKCkKcGx0LmdyaWQoVHJ1ZSwgYWxwaGE9MC4zKQpwbHQuc2hvdygp layout: vertical locale: en title: Scatter plot with trend --- :: ::pyodide --- code64: aW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKIyBTYW1wbGUgZGF0YQpjYXRlZ29yaWVzID0gWydQeXRob24nLCAnSmF2YVNjcmlwdCcsICdKYXZhJywgJ0MrKycsICdHbyddCnZhbHVlcyA9IFs4NSwgNzAsIDY1LCA1NSwgNDVdCmNvbG9ycyA9IFsnIzM3NzZhYicsICcjZjdkZjFlJywgJyMwMDczOTYnLCAnIzAwNTk5YycsICcjMDBhZGQ4J10KCiMgQ3JlYXRlIGJhciBjaGFydApwbHQuZmlndXJlKGZpZ3NpemU9KDEwLCA2KSkKYmFycyA9IHBsdC5iYXIoY2F0ZWdvcmllcywgdmFsdWVzLCBjb2xvcj1jb2xvcnMsIGFscGhhPTAuNykKcGx0LnRpdGxlKCdQcm9ncmFtbWluZyBMYW5ndWFnZSBQb3B1bGFyaXR5JywgZm9udHNpemU9MTQsIGZvbnR3ZWlnaHQ9J2JvbGQnKQpwbHQueWxhYmVsKCdQb3B1bGFyaXR5IFNjb3JlJykKcGx0LnlsaW0oMCwgMTAwKQoKIyBBZGQgdmFsdWUgbGFiZWxzIG9uIGJhcnMKZm9yIGJhciBpbiBiYXJzOgogICAgaGVpZ2h0ID0gYmFyLmdldF9oZWlnaHQoKQogICAgcGx0LnRleHQoYmFyLmdldF94KCkgKyBiYXIuZ2V0X3dpZHRoKCkvMi4sIGhlaWdodCwKICAgICAgICAgICAgIGYne2ludChoZWlnaHQpfScsCiAgICAgICAgICAgICBoYT0nY2VudGVyJywgdmE9J2JvdHRvbScpCgpwbHQudGlnaHRfbGF5b3V0KCkKcGx0LnNob3coKQ== layout: vertical locale: en title: Bar chart --- :: ## Working with Pandas Analyze data using the popular Pandas library: ::pyodide --- code64: aW1wb3J0IHBhbmRhcyBhcyBwZAppbXBvcnQgbnVtcHkgYXMgbnAKCiMgQ3JlYXRlIGEgc2FtcGxlIERhdGFGcmFtZQpkZiA9IHBkLkRhdGFGcmFtZSh7CiAgICAnTmFtZSc6IFsnQWxpY2UnLCAnQm9iJywgJ0NoYXJsaWUnLCAnRGF2aWQnLCAnRXZlJ10sCiAgICAnQWdlJzogWzI1LCAzMCwgMzUsIDI4LCAzMl0sCiAgICAnU2NvcmUnOiBbODUsIDkyLCA3OCwgOTUsIDg4XSwKICAgICdDaXR5JzogWydOWUMnLCAnTEEnLCAnQ2hpY2FnbycsICdOWUMnLCAnTEEnXQp9KQoKcHJpbnQoIk9yaWdpbmFsIERhdGFGcmFtZToiKQpwcmludChkZikKcHJpbnQoIlxuIiArICI9Iio1MCArICJcbiIpCgpwcmludCgiU3VtbWFyeSBTdGF0aXN0aWNzOiIpCnByaW50KGRmLmRlc2NyaWJlKCkpCnByaW50KCJcbiIgKyAiPSIqNTAgKyAiXG4iKQoKcHJpbnQoIkdyb3VwIGJ5IENpdHk6IikKcHJpbnQoZGYuZ3JvdXBieSgnQ2l0eScpWydTY29yZSddLmFnZyhbJ21lYW4nLCAnY291bnQnXSkp layout: vertical locale: en title: DataFrame operations --- :: ## Advanced: Machine Learning Try a simple machine learning example: ::pyodide --- code64: aW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAppbXBvcnQgbnVtcHkgYXMgbnAKZnJvbSBza2xlYXJuLmNsdXN0ZXIgaW1wb3J0IEtNZWFucwpmcm9tIHNrbGVhcm4uZGF0YXNldHMgaW1wb3J0IG1ha2VfYmxvYnMKCiMgR2VuZXJhdGUgc2FtcGxlIGRhdGEKWCwgeV90cnVlID0gbWFrZV9ibG9icyhuX3NhbXBsZXM9MzAwLCBjZW50ZXJzPTQsIAogICAgICAgICAgICAgICAgICAgICAgIGNsdXN0ZXJfc3RkPTAuNjAsIHJhbmRvbV9zdGF0ZT0wKQoKIyBQZXJmb3JtIEstTWVhbnMgY2x1c3RlcmluZwprbWVhbnMgPSBLTWVhbnMobl9jbHVzdGVycz00LCByYW5kb21fc3RhdGU9MCkKeV9rbWVhbnMgPSBrbWVhbnMuZml0X3ByZWRpY3QoWCkKCiMgVmlzdWFsaXplCnBsdC5maWd1cmUoZmlnc2l6ZT0oMTAsIDYpKQpwbHQuc2NhdHRlcihYWzosIDBdLCBYWzosIDFdLCBjPXlfa21lYW5zLCBzPTUwLCBjbWFwPSd2aXJpZGlzJywgYWxwaGE9MC42KQoKIyBQbG90IGNsdXN0ZXIgY2VudGVycwpjZW50ZXJzID0ga21lYW5zLmNsdXN0ZXJfY2VudGVyc18KcGx0LnNjYXR0ZXIoY2VudGVyc1s6LCAwXSwgY2VudGVyc1s6LCAxXSwgYz0ncmVkJywgcz0yMDAsIGFscGhhPTAuOCwgCiAgICAgICAgICAgIG1hcmtlcj0nWCcsIGVkZ2Vjb2xvcnM9J2JsYWNrJywgbGluZXdpZHRocz0yLCBsYWJlbD0nQ2VudHJvaWRzJykKCnBsdC50aXRsZSgnSy1NZWFucyBDbHVzdGVyaW5nIFJlc3VsdHMnKQpwbHQueGxhYmVsKCdGZWF0dXJlIDEnKQpwbHQueWxhYmVsKCdGZWF0dXJlIDInKQpwbHQubGVnZW5kKCkKcGx0LmdyaWQoVHJ1ZSwgYWxwaGE9MC4zKQpwbHQuc2hvdygpCgpwcmludChmIkNsdXN0ZXIgQ2VudGVyczpcbntjZW50ZXJzfSIp layout: vertical locale: en title: K-Means Clustering --- :: ## Custom Layout Options Use the HTML form to override locale or layout per cell: ::pyodide --- code64: IyBUaGlzIGNlbGwgdXNlcyBob3Jpem9udGFsIGxheW91dAppbXBvcnQgbWF0aAoKcmFkaXVzID0gNQphcmVhID0gbWF0aC5waSAqIHJhZGl1cyAqKiAyCmNpcmN1bWZlcmVuY2UgPSAyICogbWF0aC5waSAqIHJhZGl1cwoKcHJpbnQoZiJDaXJjbGUgd2l0aCByYWRpdXMge3JhZGl1c306IikKcHJpbnQoZiJBcmVhOiB7YXJlYTouMmZ9IikKcHJpbnQoZiJDaXJjdW1mZXJlbmNlOiB7Y2lyY3VtZmVyZW5jZTouMmZ9Iik= layout: horizontal locale: en title: Horizontal Layout --- :: ::pyodide --- code64: cHJpbnQoIuS9oOWlve+8jFB5b2RpZGXvvIEiKQpwcmludCgi6L+Z5piv5LiA5Liq5pSv5oyB5Lit5paH55qEIFB5dGhvbiDnjq/looMiKQoKIyDorqHnrpfmlpDms6LpgqPlpZHmlbDliJcKZGVmIGZpYm9uYWNjaShuKToKICAgIGlmIG4gPD0gMToKICAgICAgICByZXR1cm4gbgogICAgcmV0dXJuIGZpYm9uYWNjaShuLTEpICsgZmlib25hY2NpKG4tMikKCnByaW50KGYi5paQ5rOi6YKj5aWR5pWw5YiX5YmNIDEwIOmhue+8mntbZmlib25hY2NpKGkpIGZvciBpIGluIHJhbmdlKDEwKV19Iik= layout: vertical locale: zh-CN title: 中文示例 --- :: ## Markdown Syntax You can use the `pyodide` language identifier in code blocks to create interactive cells: ````markdown ```pyodide print("Hello") ``` ```pyodide title="With Title" print("Hello") ``` ```` You can also use the `` component for more control: ```html print("Hello") ``` ::note{title="Important Notes"} - **First run**: Downloads Pyodide runtime (\~10MB); subsequent runs are instant - **Variable persistence**: Variables persist within this page; navigating away resets the environment - **Package support**: Most pure Python packages work; some C extensions are available - **Performance**: Runs in browser with near-native speed via WebAssembly :: ::warning{title="Limitations"} - Large numerical computations may be slower than native Python - Some packages with C dependencies might not be available - File I/O is limited to browser's virtual filesystem :: # WebR Playground []{#webr-playground} This page demonstrates the interactive R capabilities provided by the `vitepress-webr` package. WebR allows you to run R code directly in the browser without any server-side setup. ::tip{title="Usage Guide"} - Click **"Run"** to execute R code - Use **"Hide Output"** / **"Show Output"** to collapse a result without clearing it - All code blocks share the same R environment on this page - WebR downloads on first use (\~20MB) :: ## Basic Examples Start with simple R expressions: ::web-r --- code64: IyBIZWxsbyBXb3JsZAp4IDwtIDQyCm1lc3NhZ2UgPC0gcGFzdGUoIlRoZSBhbnN3ZXIgaXMiLCB4KQpwcmludChtZXNzYWdlKQ== layout: vertical locale: en title: Hello World --- :: ::web-r --- code64: IyBWZWN0b3Igb3BlcmF0aW9ucwpudW1iZXJzIDwtIGMoMSwgMiwgMywgNCwgNSkKcHJpbnQocGFzdGUoIlN1bToiLCBzdW0obnVtYmVycykpKQpwcmludChwYXN0ZSgiTWVhbjoiLCBtZWFuKG51bWJlcnMpKSkKcHJpbnQocGFzdGUoIlN0YW5kYXJkIGRldmlhdGlvbjoiLCBzZChudW1iZXJzKSkp layout: vertical locale: en title: Vector operations --- :: ::web-r --- code64: IyBXb3JraW5nIHdpdGggZGF0YSBmcmFtZXMKZGYgPC0gZGF0YS5mcmFtZSgKICBuYW1lID0gYygiQWxpY2UiLCAiQm9iIiwgIkNoYXJsaWUiLCAiRGF2aWQiKSwKICBhZ2UgPSBjKDI1LCAzMCwgMzUsIDI4KSwKICBzY29yZSA9IGMoODUsIDkyLCA3OCwgOTUpCikKcHJpbnQoZGYpCnByaW50KHN1bW1hcnkoZGYpKQ== layout: vertical locale: en title: Working with data frames --- :: ## Data Visualization Create beautiful plots with R's graphics system: ::web-r --- code64: IyBCYXNpYyBzY2F0dGVyIHBsb3QKZGF0YShpcmlzKQpwbG90KGlyaXMkU2VwYWwuTGVuZ3RoLCBpcmlzJFNlcGFsLldpZHRoLCAKICAgICBjb2wgPSBpcmlzJFNwZWNpZXMsCiAgICAgcGNoID0gMTksCiAgICAgeGxhYiA9ICJTZXBhbCBMZW5ndGgiLAogICAgIHlsYWIgPSAiU2VwYWwgV2lkdGgiLAogICAgIG1haW4gPSAiSXJpcyBEYXRhc2V0OiBTZXBhbCBEaW1lbnNpb25zIikKbGVnZW5kKCJ0b3ByaWdodCIsIGxlZ2VuZCA9IGxldmVscyhpcmlzJFNwZWNpZXMpLCAKICAgICAgIGNvbCA9IDE6MywgcGNoID0gMTkp layout: vertical locale: en title: Basic scatter plot --- :: ::web-r --- code64: IyBCb3ggcGxvdApkYXRhKG10Y2FycykKYm94cGxvdChtcGcgfiBjeWwsIGRhdGEgPSBtdGNhcnMsCiAgICAgICAgeGxhYiA9ICJOdW1iZXIgb2YgQ3lsaW5kZXJzIiwKICAgICAgICB5bGFiID0gIk1pbGVzIFBlciBHYWxsb24iLAogICAgICAgIG1haW4gPSAiRnVlbCBFZmZpY2llbmN5IGJ5IEN5bGluZGVyIENvdW50IiwKICAgICAgICBjb2wgPSBjKCJsaWdodGJsdWUiLCAibGlnaHRncmVlbiIsICJsaWdodGNvcmFsIikp layout: vertical locale: en title: Box plot --- :: ::web-r --- code64: IyBIaXN0b2dyYW0gd2l0aCBub3JtYWwgY3VydmUKc2V0LnNlZWQoNDIpCmRhdGEgPC0gcm5vcm0oMTAwMCwgbWVhbiA9IDEwMCwgc2QgPSAxNSkKaGlzdChkYXRhLCBicmVha3MgPSAzMCwgcHJvYmFiaWxpdHkgPSBUUlVFLAogICAgIGNvbCA9ICJza3libHVlIiwgYm9yZGVyID0gIndoaXRlIiwKICAgICBtYWluID0gIk5vcm1hbCBEaXN0cmlidXRpb24iLAogICAgIHhsYWIgPSAiVmFsdWUiLCB5bGFiID0gIkRlbnNpdHkiKQoKIyBBZGQgbm9ybWFsIGN1cnZlCmN1cnZlKGRub3JtKHgsIG1lYW4gPSAxMDAsIHNkID0gMTUpLCAKICAgICAgYWRkID0gVFJVRSwgY29sID0gInJlZCIsIGx3ZCA9IDIp layout: vertical locale: en title: Histogram with normal curve --- :: ::web-r --- code64: IyBMaW5lIHBsb3Qgd2l0aCBtdWx0aXBsZSBzZXJpZXMKeWVhcnMgPC0gMjAxNToyMDI0CnByb2R1Y3RfYSA8LSBjKDEwMCwgMTIwLCAxNDUsIDE2MCwgMTgwLCAyMTAsIDIzMCwgMjYwLCAyOTAsIDMyMCkKcHJvZHVjdF9iIDwtIGMoODAsIDk1LCAxMTAsIDEyNSwgMTQwLCAxNjAsIDE4NSwgMjEwLCAyNDAsIDI3NSkKCnBsb3QoeWVhcnMsIHByb2R1Y3RfYSwgdHlwZSA9ICJiIiwgY29sID0gImJsdWUiLCAKICAgICB5bGltID0gYyg1MCwgMzUwKSwgbHdkID0gMiwgcGNoID0gMTYsCiAgICAgeGxhYiA9ICJZZWFyIiwgeWxhYiA9ICJTYWxlcyIsCiAgICAgbWFpbiA9ICJQcm9kdWN0IFNhbGVzIENvbXBhcmlzb24iKQpsaW5lcyh5ZWFycywgcHJvZHVjdF9iLCB0eXBlID0gImIiLCBjb2wgPSAicmVkIiwgbHdkID0gMiwgcGNoID0gMTYpCmxlZ2VuZCgidG9wbGVmdCIsIGxlZ2VuZCA9IGMoIlByb2R1Y3QgQSIsICJQcm9kdWN0IEIiKSwKICAgICAgIGNvbCA9IGMoImJsdWUiLCAicmVkIiksIGx3ZCA9IDIsIHBjaCA9IDE2KQpncmlkKCk= layout: vertical locale: en title: Line plot with multiple series --- :: ## Statistical Analysis Perform statistical tests and modeling: ::web-r --- code64: IyBMaW5lYXIgcmVncmVzc2lvbgpkYXRhKG10Y2FycykKbW9kZWwgPC0gbG0obXBnIH4gd3QgKyBocCwgZGF0YSA9IG10Y2FycykKcHJpbnQoc3VtbWFyeShtb2RlbCkpCgojIENyZWF0ZSBkaWFnbm9zdGljIHBsb3RzCnBhcihtZnJvdyA9IGMoMiwgMikpCnBsb3QobW9kZWwp layout: vertical locale: en title: Linear regression --- :: ::web-r --- code64: IyBDb3JyZWxhdGlvbiBhbmFseXNpcwpkYXRhKGlyaXMpCm51bWVyaWNfY29scyA8LSBpcmlzWywgMTo0XQpjb3JfbWF0cml4IDwtIGNvcihudW1lcmljX2NvbHMpCnByaW50KCJDb3JyZWxhdGlvbiBNYXRyaXg6IikKcHJpbnQocm91bmQoY29yX21hdHJpeCwgMykp layout: vertical locale: en title: Correlation analysis --- :: ::web-r --- code64: IyBULXRlc3QKZ3JvdXAxIDwtIHJub3JtKDMwLCBtZWFuID0gNTAsIHNkID0gMTApCmdyb3VwMiA8LSBybm9ybSgzMCwgbWVhbiA9IDU1LCBzZCA9IDEwKQoKdF9yZXN1bHQgPC0gdC50ZXN0KGdyb3VwMSwgZ3JvdXAyKQpwcmludCh0X3Jlc3VsdCkKCiMgVmlzdWFsaXplIHRoZSBncm91cHMKYm94cGxvdChsaXN0KEdyb3VwMSA9IGdyb3VwMSwgR3JvdXAyID0gZ3JvdXAyKSwKICAgICAgICBtYWluID0gIlR3byBTYW1wbGUgdC10ZXN0IiwKICAgICAgICB5bGFiID0gIlZhbHVlIiwKICAgICAgICBjb2wgPSBjKCJsaWdodGJsdWUiLCAibGlnaHRncmVlbiIpKQ== layout: vertical locale: en title: T-test --- :: ## Advanced: ggplot2 (if available) Note: ggplot2 may need to be loaded. Try this example: ::web-r --- code64: IyBDaGVjayBpZiBnZ3Bsb3QyIGlzIGF2YWlsYWJsZQppZiAocmVxdWlyZU5hbWVzcGFjZSgiZ2dwbG90MiIsIHF1aWV0bHkgPSBUUlVFKSkgewogIGxpYnJhcnkoZ2dwbG90MikKICAKICBkYXRhKG1wZykKICBwIDwtIGdncGxvdChtcGcsIGFlcyh4ID0gZGlzcGwsIHkgPSBod3ksIGNvbG9yID0gY2xhc3MpKSArCiAgICBnZW9tX3BvaW50KHNpemUgPSAzLCBhbHBoYSA9IDAuNikgKwogICAgZ2VvbV9zbW9vdGgobWV0aG9kID0gImxtIiwgc2UgPSBGQUxTRSwgY29sb3IgPSAiYmxhY2siKSArCiAgICBsYWJzKHRpdGxlID0gIkVuZ2luZSBEaXNwbGFjZW1lbnQgdnMgSGlnaHdheSBNUEciLAogICAgICAgICB4ID0gIkVuZ2luZSBEaXNwbGFjZW1lbnQgKEwpIiwKICAgICAgICAgeSA9ICJIaWdod2F5IE1QRyIpICsKICAgIHRoZW1lX21pbmltYWwoKQogIHByaW50KHApCn0gZWxzZSB7CiAgcGxvdChtcGckZGlzcGwsIG1wZyRod3ksIGNvbCA9IGFzLm51bWVyaWMoZmFjdG9yKG1wZyRjbGFzcykpLAogICAgICAgcGNoID0gMTksIHhsYWIgPSAiRW5naW5lIERpc3BsYWNlbWVudCAoTCkiLCAKICAgICAgIHlsYWIgPSAiSGlnaHdheSBNUEciLAogICAgICAgbWFpbiA9ICJFbmdpbmUgRGlzcGxhY2VtZW50IHZzIEhpZ2h3YXkgTVBHIikKfQ== layout: vertical locale: en title: ggplot2 example --- :: ## Variable Persistence Variables are shared across code blocks on this page: ::web-r --- code64: IyBEZWZpbmUgdmFyaWFibGVzCm15X2RhdGEgPC0gZGF0YS5mcmFtZSgKICB4ID0gMToxMCwKICB5ID0gKDE6MTApXjIKKQpwcmludCgiRGF0YSBjcmVhdGVkOiIpCnByaW50KG15X2RhdGEp layout: vertical locale: en title: Define variables --- :: ::web-r --- code64: IyBSZXVzZSB2YXJpYWJsZXMgZnJvbSBwcmV2aW91cyBibG9jawpwbG90KG15X2RhdGEkeCwgbXlfZGF0YSR5LCB0eXBlID0gImIiLAogICAgIGNvbCA9ICJwdXJwbGUiLCBsd2QgPSAyLCBwY2ggPSAxNiwKICAgICBtYWluID0gIlJldXNpbmcgVmFyaWFibGVzIiwKICAgICB4bGFiID0gIlgiLCB5bGFiID0gIlkgPSBYwrIiKQpncmlkKCk= layout: vertical locale: en title: Reuse variables from previous block --- :: ## Markdown Syntax You can use the `webr` language identifier in code blocks to create interactive cells: ````markdown ```webr print("Hello") ``` ```webr title="With Title" print("Hello") ``` ```` ::note{title="Important Notes"} - **First run**: Downloads WebR runtime (\~20MB); subsequent runs are instant - **Variable persistence**: Variables persist within this page; navigating away resets the environment - **Package availability**: Core R packages are available; some additional packages may need to be loaded - **Performance**: Most R operations run with good performance via WebAssembly :: ::warning{title="Limitations"} - Not all R packages are available in WebR - Some packages requiring system dependencies may not work - Large datasets may consume significant browser memory :: # Chart.js Visualizations []{#chartjs-visualizations} `ChartJsFigure` is for data-oriented charts. Unlike `ModelCurveChart`, it uses Chart.js canvas rendering and is better suited to line charts, bar charts, scatter plots, return series, portfolio sorts, and simulation output. ## Line Chart: Power Curves :chart-js-figure{props64="eyJ0eXBlIjoibGluZSIsInRpdGxlIjoiTGFyZ2VyIHNhbXBsZXMgcHJvZHVjZSBzdGVlcGVyIHBvd2VyIGN1cnZlcyIsInN1YnRpdGxlIjoiRm9yIHRoZSBzYW1lIHRydWUgZWZmZWN0IHNpemUsIGEgbGFyZ2VyIHNhbXBsZSBpcyBtb3JlIGxpa2VseSB0byByZWplY3QgYSBmYWxzZSBudWxsLiIsImhlaWdodCI6MzYwLCJkYXRhIjp7ImxhYmVscyI6WyIwLjAiLCIwLjIiLCIwLjQiLCIwLjYiLCIwLjgiLCIxLjAiXSwiZGF0YXNldHMiOlt7ImxhYmVsIjoibiA9IDI1IiwiZGF0YSI6WzAuMDUsMC4wOSwwLjIxLDAuNDMsMC42NywwLjg0XSwiYm9yZGVyQ29sb3IiOiIjZDk3NzA2IiwiYmFja2dyb3VuZENvbG9yIjoicmdiYSgyMTcsIDExOSwgNiwgMC4xNCkiLCJ0ZW5zaW9uIjowLjMyfSx7ImxhYmVsIjoibiA9IDUwIiwiZGF0YSI6WzAuMDUsMC4xMywwLjM4LDAuNywwLjkxLDAuOThdLCJib3JkZXJDb2xvciI6IiMyNTYzZWIiLCJiYWNrZ3JvdW5kQ29sb3IiOiJyZ2JhKDM3LCA5OSwgMjM1LCAwLjE0KSIsInRlbnNpb24iOjAuMzJ9LHsibGFiZWwiOiJuID0gMTAwIiwiZGF0YSI6WzAuMDUsMC4yMiwwLjY3LDAuOTQsMC45OTUsMV0sImJvcmRlckNvbG9yIjoiIzBmNzY2ZSIsImJhY2tncm91bmRDb2xvciI6InJnYmEoMTUsIDExOCwgMTEwLCAwLjE0KSIsInRlbnNpb24iOjAuMzJ9XX0sIm9wdGlvbnMiOnsic2NhbGVzIjp7IngiOnsidGl0bGUiOnsiZGlzcGxheSI6dHJ1ZSwidGV4dCI6InRydWUgZWZmZWN0IHNpemUgzrQifX0sInkiOnsibWluIjowLCJtYXgiOjEsInRpdGxlIjp7ImRpc3BsYXkiOnRydWUsInRleHQiOiJwcm9iYWJpbGl0eSBvZiByZWplY3RpbmcgSDAifX19fSwiY2FwdGlvbiI6IkNoYXJ0LmpzIHByb3ZpZGVzIGxlZ2VuZHMgYW5kIHRvb2x0aXBzIGJ5IGRlZmF1bHQsIHdoaWNoIG1ha2VzIGl0IHVzZWZ1bCBmb3IgY2hhcnRzIHdoZXJlIHN0dWRlbnRzIG5lZWQgdG8gY29tcGFyZSBkYXRhIHZhbHVlcy4ifQ=="} ## Bar Chart: Factor Sorts :chart-js-figure{props64="eyJ0eXBlIjoiYmFyIiwidGl0bGUiOiJQb3J0Zm9saW8gc29ydCByZXR1cm5zIiwic3VidGl0bGUiOiJCYXIgY2hhcnRzIG1ha2UgbW9ub3RvbmljaXR5IGNoZWNrcyBlYXN5IHRvIHNjYW4uIiwiaGVpZ2h0IjozNDAsImRhdGEiOnsibGFiZWxzIjpbIlExIiwiUTIiLCJRMyIsIlE0IiwiUTUiXSwiZGF0YXNldHMiOlt7ImxhYmVsIjoibmV4dC1wZXJpb2QgbWVhbiByZXR1cm4gKCUpIiwiZGF0YSI6Wy0wLjM1LC0wLjA1LDAuMTIsMC4zNiwwLjc4XSwiYmFja2dyb3VuZENvbG9yIjpbIiM5NGEzYjgiLCIjNjBhNWZhIiwiIzM4YmRmOCIsIiMyMmM1NWUiLCIjMTZhMzRhIl0sImJvcmRlclJhZGl1cyI6Nn1dfSwib3B0aW9ucyI6eyJzY2FsZXMiOnsieCI6eyJ0aXRsZSI6eyJkaXNwbGF5Ijp0cnVlLCJ0ZXh0IjoiZmFjdG9yIHF1YW50aWxlIn19LCJ5Ijp7InRpdGxlIjp7ImRpc3BsYXkiOnRydWUsInRleHQiOiJuZXh0LXBlcmlvZCBtZWFuIHJldHVybiAoJSkifX19fSwiY2FwdGlvbiI6IlVzZSBiYXIgY2hhcnRzIGZvciBjcm9zcy1zZWN0aW9uYWwgY29tcGFyaXNvbnMsIHBvcnRmb2xpbyBzb3J0cywgYW5kIHZhcmlhbmNlIGFuYWx5c2lzLiJ9"} ## Scatter Plot: Risk and Return :chart-js-figure{props64="eyJ0eXBlIjoic2NhdHRlciIsInRpdGxlIjoiQXNzZXQgcmlzayBhbmQgZXhwZWN0ZWQgcmV0dXJuIiwic3VidGl0bGUiOiJTY2F0dGVyIHBsb3RzIHdvcmsgd2VsbCBmb3IgZXN0aW1hdGVkIHNhbXBsZXMsIG91dGxpZXJzLCBhbmQgcmlzay1yZXR1cm4gcmVsYXRpb25zaGlwcy4iLCJoZWlnaHQiOjM2MCwiZGF0YSI6eyJkYXRhc2V0cyI6W3sibGFiZWwiOiJhc3NldCBzYW1wbGUiLCJkYXRhIjpbeyJ4Ijo4LCJ5Ijo1LjJ9LHsieCI6MTEsInkiOjYuMX0seyJ4IjoxNCwieSI6Ny4zfSx7IngiOjE3LCJ5Ijo4LjR9LHsieCI6MjEsInkiOjEwLjJ9LHsieCI6MjUsInkiOjExLjF9XSwiYmFja2dyb3VuZENvbG9yIjoiIzI1NjNlYiIsInBvaW50UmFkaXVzIjo1fV19LCJvcHRpb25zIjp7InNjYWxlcyI6eyJ4Ijp7InRpdGxlIjp7ImRpc3BsYXkiOnRydWUsInRleHQiOiJ2b2xhdGlsaXR5ICglKSJ9fSwieSI6eyJ0aXRsZSI6eyJkaXNwbGF5Ijp0cnVlLCJ0ZXh0IjoiZXhwZWN0ZWQgcmV0dXJuICglKSJ9fX19LCJjYXB0aW9uIjoiVXNlIE1vZGVsQ3VydmVDaGFydCB3aGVuIHRoZSB0ZWFjaGluZyBwb2ludCBkZXBlbmRzIG9uIGN1c3RvbSBtb2RlbCBhbm5vdGF0aW9uczsgdXNlIENoYXJ0SnNGaWd1cmUgd2hlbiB0aGUgdGVhY2hpbmcgcG9pbnQgZGVwZW5kcyBvbiBkYXRhIHZhbHVlcyBhbmQgaW50ZXJhY3RpdmUgY29tcGFyaXNvbi4ifQ=="} # Playground []{#playground} This section demonstrates the various plugins and features integrated into this project. - [Typst & LaTeX Support](https://www.pengjiaxin.com/01-typstex) - Mathematical typesetting using Typst and LaTeX. - [Citation Support](https://www.pengjiaxin.com/02-citation) - Bibliography and citation management. - [Pyodide](https://www.pengjiaxin.com/03-pyodide) - Python code execution in the browser. - [WebR](https://www.pengjiaxin.com/04-webr) - R code execution in the browser. - [Chart.js Visualizations](https://www.pengjiaxin.com/05-chartjs) - Interactive data charts inside Markdown pages. # Statistics for General Insurance []{#statistics-for-general-insurance} An insurer receives premiums now and pays uncertain claims later. This course develops one connected answer to five questions: 1. **Reserve:** how much do claims that have already happened still cost? 2. **Model:** how often will claims occur, and how large can they be? 3. **Transfer:** which losses remain after reinsurance? 4. **Aggregate:** what can the whole portfolio lose in one period? 5. **Survive:** how much capital is needed against adverse paths through time? The pages are concise by design. Each new idea is introduced through a calculation, followed by the assumption that makes the calculation defensible. ::tip{title="The discipline of the course"} Before choosing a formula, write down the **unit** , **time period** , **information date** , **loss basis** , and **decision** . Most serious insurance-model errors begin before any arithmetic is done. :: ## Learning outcomes By the end, you should be able to: - validate paid, incurred, and claim-count data before constructing a run-off triangle; - calculate and critique chain-ladder, frequency–severity, and Bornhuetter–Ferguson reserves; - choose frequency and severity models using exposure, tail, censoring, and validation evidence; - translate proportional and excess-of-loss wording into retained-loss functions; - derive or simulate aggregate-loss moments and tail measures; - interpret classical ruin results without confusing them with accounting or regulatory capital; - present a recommendation with assumptions, diagnostics, uncertainty, and limitations. These outcomes suit an upper-undergraduate course and provide a bridge to postgraduate stochastic reserving, extreme-value theory, credibility, and solvency modelling. ## One portfolio, used throughout **Harbour Mutual** is a fictional UK motor insurer. All figures are synthetic unless a page explicitly labels an external data source. | Item | Course convention | | --------------- | ---------------------------------------------- | | Valuation date | 31 December 2023 | | Origin period | Accident year (AY) | | Development age | Years since the start of the accident year | | Main triangle | Cumulative paid own-damage loss, £m | | Exposure | Earned vehicle-years | | Severity | Ultimate cost per claim | | Reinsurance | Applied to each loss unless stated otherwise | | Capital horizon | One year for VaR/TVaR; multiple years for ruin | Its paid triangle is: | AY | Dev 0 | Dev 1 | Dev 2 | Dev 3 | | ---- | ----: | ----: | ----: | ----: | | 2020 | 100 | 180 | 240 | 280 | | 2021 | 120 | 220 | 300 | — | | 2022 | 140 | 260 | — | — | | 2023 | 160 | — | — | — | Blank cells are **unobserved future development**, not zero. With volume-weighted age-to-age factors, [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[0]{.mord.mtight}[:]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[360]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[660]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[1.8333]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[:]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[400]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[540]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[1.35]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[2]{.mord.mtight}[:]{.mrel.mtight}[3]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[240]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[280]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.1667.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This gives the following baseline—not a final professional opinion: | AY | Latest paid | Projected ultimate | Reserve | | --------- | ----------: | -----------------: | --------: | | 2020 | 280.0 | 280.0 | 0.0 | | 2021 | 300.0 | 350.0 | 50.0 | | 2022 | 260.0 | 409.5 | 149.5 | | 2023 | 160.0 | 462.0 | 302.0 | | **Total** | **1,000.0** | **1,501.5** | **501.5** | The calculation is easy. The hard question is whether past development is stable enough to project the unobserved cells. The [reserving module](https://www.pengjiaxin.com/../02-chain-ladder/) makes that question explicit. ## Vocabulary that changes the model | Term | Operational meaning | Common mistake | | ------------------------ | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | | Paid loss | Cash paid by the valuation date | Treating settlement speed as claim severity | | Case reserve | Current estimate on a reported, unsettled claim | Assuming adjuster practice is stable | | Incurred loss | Usually paid plus case reserve | Using the label without documenting the organisation's definition | | IBNR | Future recognition of losses already incurred; usage may include development on known claims | Treating every organisation's IBNR convention as identical | | Ultimate loss | Expected cost after all development | Calling the oldest observed cell “ultimate” without evidence | | Exposure | Amount of insured risk, such as vehicle-years | Comparing raw counts when portfolio size changed | | Deductible | Amount borne by the policyholder | Fitting the observed payment distribution as if it were ground-up loss | | Policy/reinsurance limit | Maximum payment under stated terms | Using an unlimited severity model without applying the contract | Two identities organise the course: [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[[reserve]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0178em;vertical-align:-0.0833em;"}[[[[[[]{.pstrut style="height:3em;"}[[ultimate loss]{.mord}]{.mord.text}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[loss observed to date]{.mord}]{.mord.text}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.106em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is claim frequency, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is severity, and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is aggregate loss. These identities do not specify a model; they tell us what must be estimated. ## Course route :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRFsiRGF0YSBjb250cmFjdCJdIC0tPiBSWyJSZXNlcnZlIHBhc3QgZXZlbnRzIl0KICBEIC0tPiBGWyJNb2RlbCBjb3VudCBhbmQgc2V2ZXJpdHkiXQogIEYgLS0+IFhbIkFwcGx5IHJlaW5zdXJhbmNlIHRlcm1zIl0KICBSIC0tPiBBWyJBZ2dyZWdhdGUgcmV0YWluZWQgcmlzayJdCiAgWCAtLT4gQQogIEEgLS0+IENbIlRhaWwgY2FwaXRhbCJdCiAgQyAtLT4gVVsiU3VycGx1cyBhbmQgcnVpbiJdCiAgVSAtLT4gUFsiSW50ZWdyYXRlZCBwb3J0Zm9saW8gZGVjaXNpb24iXQ==" locale="en"} | Unit | Preparation | In-class question | Evidence produced | | --------------------- | -------------------------------------- | ------------------------------------------------------------------ | --------------------------------------------------- | | 1. Data and reserving | cumulative vs incremental claims | Which cells are observed, and as of when? | validated triangle and data contract | | 2. Reserving methods | weighted averages; expected loss ratio | What makes a development pattern credible? | chain-ladder, frequency–severity, and BF comparison | | 3. Severity | survival functions and quantiles | Which model fits the centre **and** the tail? | fitted models and out-of-sample diagnostics | | 4. Frequency | Poisson and conditional expectation | Is variance larger than the mean because exposure or risk differs? | exposure-adjusted count model | | 5. Reinsurance | functions and layer notation | What exactly is retained for this claim or event? | contract loss transformation | | 6. Aggregate risk | expectation, variance, simulation | How do count, severity, and dependence combine? | simulated loss distribution and tail measures | | 7. Ruin and capstone | surplus processes | What does the model omit from a real capital decision? | recommendation with limitations | Suggested workload is **2 hours of preparation, 2 hours in class, and 2 hours of practice per unit**. Students who have not used simulation should add one hour to Units 3 and 6. Every executable example runs in the page; no local Python or R installation is required. ## A 10-minute readiness check 1. A portfolio has 25,000 vehicle-years and 1,000 claims. What is observed frequency per vehicle-year? 2. Expected claim count is 100 and expected severity is £2,000. Is aggregate loss always £200,000? 3. A £120,000 claim enters an unlimited £50,000 excess-of-loss layer. What is retained? 4. Why can paid and incurred triangles produce different reserves? 5. Why is a 99.5% one-year VaR not the same object as an ultimate ruin probability? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[[,]{.mpunct}]{.mord}[000/25]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.04]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} claims per vehicle-year. 2. No. Under standard independence assumptions £200,000 is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, not the realised loss. 3. The insurer retains £50,000 and cedes £70,000. 4. Paid data reflect settlement timing; incurred data also reflect case-reserving practice. Either process may change. 5. They use different horizons, loss definitions, and dynamics. VaR is a quantile of a specified one-year distribution; ruin is a path event in a surplus process. :: ## First executable example: from claims to retained loss Suppose annual count is Poisson with mean 40 and individual loss is lognormal with mean about £5,000. Compare gross loss with a £20,000 per-loss retention. Change the seed or retention and rerun. ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZygyMDI2KQp5ZWFycyA9IDIwXzAwMApjb3VudHMgPSBybmcucG9pc3Nvbig0MCwgc2l6ZT15ZWFycykKbG9zc2VzID0gW10KcmV0YWluZWQgPSBbXQoKIyBzaWdtYT0xIGFuZCB0aGlzIG11IGdpdmUgRVtYXSBhcHByb3hpbWF0ZWx5IMKjNSwwMDAuCm11LCBzaWdtYSwgcmV0ZW50aW9uID0gbnAubG9nKDVfMDAwKSAtIDAuNSwgMS4wLCAyMF8wMDAKZm9yIG4gaW4gY291bnRzOgogICAgeCA9IHJuZy5sb2dub3JtYWwobXUsIHNpZ21hLCBzaXplPW4pCiAgICBsb3NzZXMuYXBwZW5kKHguc3VtKCkpCiAgICByZXRhaW5lZC5hcHBlbmQobnAubWluaW11bSh4LCByZXRlbnRpb24pLnN1bSgpKQoKZ3Jvc3MgPSBucC5hc2FycmF5KGxvc3NlcykKbmV0ID0gbnAuYXNhcnJheShyZXRhaW5lZCkKZm9yIGxhYmVsLCB2YWx1ZXMgaW4gWygiZ3Jvc3MiLCBncm9zcyksICgicmV0YWluZWQiLCBuZXQpXToKICAgIHByaW50KGYie2xhYmVsOjhzfSBtZWFuID0gwqN7dmFsdWVzLm1lYW4oKTosLjBmfTsgIgogICAgICAgICAgZiI5OSUgcXVhbnRpbGUgPSDCo3tucC5xdWFudGlsZSh2YWx1ZXMsIC45OSk6LC4wZn0iKQoKcGx0Lmhpc3QoZ3Jvc3MgLyAxXzAwMCwgYmlucz02MCwgYWxwaGE9LjU1LCBsYWJlbD0iZ3Jvc3MiKQpwbHQuaGlzdChuZXQgLyAxXzAwMCwgYmlucz02MCwgYWxwaGE9LjU1LCBsYWJlbD0icmV0YWluZWQiKQpwbHQueGxhYmVsKCJhbm51YWwgYWdncmVnYXRlIGxvc3MgKMKjMDAwKSIpCnBsdC55bGFiZWwoInNpbXVsYXRlZCB5ZWFycyIpCnBsdC5sZWdlbmQoKQpwbHQuc2hvdygp layout: vertical locale: en packages: numpy,matplotlib title: Gross and retained annual loss --- :: The example previews three important points: an expected value does not describe tail risk; reinsurance acts on a precisely defined loss; and simulation answers only the model we programmed. ## Contemporary context—and its boundary - **Accounting:** IFRS 17 is effective for annual periods beginning on or after 1 January 2023. It governs recognition and measurement of insurance contracts; it does not turn the deterministic chain ladder into an accounting standard. - **Regulation:** Solvency UK reporting applies for reporting dates from 31 December 2024. A classroom ruin probability is not the Solvency Capital Requirement. - **Emerging loss:** Swiss Re Institute estimated 2025 natural-catastrophe economic losses at USD 220 billion, with 49% insured, and reported that secondary perils generated 92% of insured losses. This motivates heavy-tail and dependence analysis; it does not identify a distribution by itself. ### Reading-list provenance The module reading lists were last checked on **1 August 2026**. They form a selective teaching map, not a PRISMA systematic review. Sources are used in three layers: 1. peer-reviewed papers and established texts for mathematical foundations; 2. official standard-setter and regulator pages for current institutional boundaries; 3. recent professional research, data releases, and clearly labelled preprints for examples and open methods. Coverage is therefore illustrative rather than exhaustive. A current statistic can motivate a stress, and a preprint can motivate an extension; neither supplies a portfolio parameter without validation. ::warning{title="Evidence rule"} Current industry figures are used to pose modelling questions, not to prove universal parameters. Check scope, definitions, currency, exposure, event date, publication date, and revisions before reusing any number. :: ## How to study and report For every method, keep a one-page model record: | Field | Minimum answer | | ----------- | ------------------------------------------------------------------ | | Decision | reserve selection, treaty comparison, or capital measure | | Data | unit, scope, valuation date, and transformations | | Assumptions | stability, independence, distribution, and contract terms | | Validation | residuals, holdout/diagonal test, sensitivity, or simulation error | | Uncertainty | process, parameter, model, and operational sources | | Boundary | what the result must **not** be interpreted as | Start with [the claims-development data contract](https://www.pengjiaxin.com/../02-chain-ladder/). ## Sources and further reading - [IFRS Foundation — IFRS 17 Insurance Contracts](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-17-insurance-contracts/){rel=""nofollow""} - [Bank of England — Solvency UK insurance-sector reporting](https://www.bankofengland.co.uk/prudential-regulation/regulatory-reporting/regulatory-reporting-insurance-sector){rel=""nofollow""} - [Swiss Re Institute — natural catastrophes in 2025](https://www.swissre.com/press-release/Wildfires-storms-floods-contribute-to-record-92-of-global-insured-losses-in-2025-says-Swiss-Re-Institute/7b39b1a5-b878-4a55-a5ff-bf5aa561a675){rel=""nofollow""} - Mack, T. (1993), “Distribution-Free Calculation of the Standard Error of Chain Ladder Reserve Estimates,” *ASTIN Bulletin*, 23(2), 213–225. - Klugman, S. A., Panjer, H. H., and Willmot, G. E. (2019), *Loss Models: From Data to Decisions*, 5th ed. # Basic Chain Ladder []{#basic-chain-ladder} The deterministic chain ladder estimates how a cumulative triangle will develop if historical age-to-age patterns continue. ## 1. Start with cumulative observations Let [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be cumulative paid loss for origin year [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} at development age [[]{.katex-mathml}[[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. | AY | Dev 0 | Dev 1 | Dev 2 | Dev 3 | | ---- | ----: | ----: | ----: | ----: | | 2020 | 100 | 180 | 240 | 280 | | 2021 | 120 | 220 | 300 | — | | 2022 | 140 | 260 | — | — | | 2023 | 160 | — | — | — | Units are £m. The triangle is cumulative, paid, nominal, gross of reinsurance, and valued at year-end 2023. ## 2. Estimate age-to-age factors The usual volume-weighted factor is a ratio of column sums over rows for which both ages are observed: [[[]{.katex-mathml}[[[]{.strut style="height:1.2205em;vertical-align:-0.2861em;"}[[[[[[[]{.pstrut style="height:3em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.3333em);margin-left:0.3333em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.8201em;vertical-align:-1.183em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[∈]{.mrel.mtight}[[I]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0785em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1786em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.497em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[∈]{.mrel.mtight}[[I]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0785em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1786em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.497em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.887em;"}]{.vlist style="height:1.637em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.183em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For the example: | Transition | Calculation | Factor | Data supporting it | | ---------- | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -----: | -----------------: | | 0 → 1 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[180]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[220]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[260]{.mord}[)]{.mclose}[/]{.mord}[(]{.mopen}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[120]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[140]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 1.8333 | 3 origin years | | 1 → 2 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[240]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[300]{.mord}[)]{.mclose}[/]{.mord}[(]{.mopen}[180]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[220]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 1.3500 | 2 origin years | | 2 → 3 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[280/240]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 1.1667 | 1 origin year | Volume weighting gives larger cells more influence. It is not automatically superior to an arithmetic or credibility-weighted selection; it is a modelling choice whose sensitivity should be shown. ::tip{title="Terminology"} [[]{.katex-mathml}[[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is a **link ratio** or age-to-age development factor. Its reciprocal is a completion proportion only under the selected development pattern. Calling both quantities a “grossing-up factor” invites direction errors. :: ## 3. Convert link ratios into cumulative development factors The cumulative development factor (CDF) from age [[]{.katex-mathml}[[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to ultimate age [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[J]{.mord.mathnormal style="margin-right:0.0962em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[[]{.katex-mathml}[[[]{.strut style="height:1.2094em;vertical-align:-0.2861em;"}[[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2666em;vertical-align:-1.4382em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[=]{.mrel.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∏]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[J]{.mord.mathnormal.mtight style="margin-right:0.0962em;"}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4382em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.3333em);margin-left:0.3333em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[p]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4209em;vertical-align:-1.0994em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.1867em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.0994em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is the implied percentage paid by age [[]{.katex-mathml}[[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. | Latest age | CDF to Dev 3 | Implied paid proportion | | ---------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ----------------------: | | 0 | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1.8333]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1.35]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.1667]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2.8875]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 34.63% | | 1 | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1.35]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.1667]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.5750]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 63.49% | | 2 | [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[1.1667]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 85.71% | | 3 | [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 100% | A “100%” at Dev 3 is an assumption of this example. Real long-tailed business generally requires a selected tail factor beyond the observed triangle. ## 4. Project ultimate loss and reserve If the latest observed value for origin year [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0572em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.0733em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2094em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0572em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0572em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0733em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0572em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | AY | Latest age | Latest paid | CDF | Ultimate | Reserve | | --------- | ---------: | ----------: | -----: | ----------: | --------: | | 2020 | 3 | 280.0 | 1.0000 | 280.0 | 0.0 | | 2021 | 2 | 300.0 | 1.1667 | 350.0 | 50.0 | | 2022 | 1 | 260.0 | 1.5750 | 409.5 | 149.5 | | 2023 | 0 | 160.0 | 2.8875 | 462.0 | 302.0 | | **Total** | | **1,000.0** | | **1,501.5** | **501.5** | ### Why the youngest year dominates AY 2023 supplies only £160m of observed paid loss yet contributes £302m of reserve. It is both the least mature and the most leveraged by assumptions: a 5% change in its selected CDF changes its ultimate by about £23.1m. This is why reserve review should focus on influence, not merely on the number of rows. ## 5. Reproduce the calculation ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBwYW5kYXMgYXMgcGQKCnRyaWFuZ2xlID0gbnAuYXJyYXkoWwogICAgWzEwMC4sIDE4MC4sIDI0MC4sIDI4MC5dLAogICAgWzEyMC4sIDIyMC4sIDMwMC4sIG5wLm5hbl0sCiAgICBbMTQwLiwgMjYwLiwgbnAubmFuLCBucC5uYW5dLAogICAgWzE2MC4sIG5wLm5hbiwgbnAubmFuLCBucC5uYW5dLApdKQoKZmFjdG9ycyA9IFtdCmZvciBqIGluIHJhbmdlKHRyaWFuZ2xlLnNoYXBlWzFdIC0gMSk6CiAgICBvYnNlcnZlZCA9IH5ucC5pc25hbih0cmlhbmdsZVs6LCBqICsgMV0pCiAgICBmYWN0b3JzLmFwcGVuZCh0cmlhbmdsZVtvYnNlcnZlZCwgaiArIDFdLnN1bSgpCiAgICAgICAgICAgICAgICAgICAvIHRyaWFuZ2xlW29ic2VydmVkLCBqXS5zdW0oKSkKCmNkZnMgPSBucC5vbmVzKHRyaWFuZ2xlLnNoYXBlWzFdKQpmb3IgaiBpbiByYW5nZShsZW4oZmFjdG9ycykgLSAxLCAtMSwgLTEpOgogICAgY2Rmc1tqXSA9IGZhY3RvcnNbal0gKiBjZGZzW2ogKyAxXQoKbGF0ZXN0X2FnZSA9IG5wLnN1bSh+bnAuaXNuYW4odHJpYW5nbGUpLCBheGlzPTEpIC0gMQpsYXRlc3QgPSB0cmlhbmdsZVtucC5hcmFuZ2UobGVuKHRyaWFuZ2xlKSksIGxhdGVzdF9hZ2VdCnVsdGltYXRlID0gbGF0ZXN0ICogY2Rmc1tsYXRlc3RfYWdlXQpyZXNlcnZlID0gdWx0aW1hdGUgLSBsYXRlc3QKCnJlc3VsdCA9IHBkLkRhdGFGcmFtZSh7CiAgICAiQVkiOiBbMjAyMCwgMjAyMSwgMjAyMiwgMjAyM10sCiAgICAibGF0ZXN0X2FnZSI6IGxhdGVzdF9hZ2UsCiAgICAibGF0ZXN0X3BhaWQiOiBsYXRlc3QsCiAgICAidWx0aW1hdGUiOiB1bHRpbWF0ZSwKICAgICJyZXNlcnZlIjogcmVzZXJ2ZSwKfSkKcHJpbnQoImZhY3RvcnM6IiwgbnAucm91bmQoZmFjdG9ycywgNikpCnByaW50KHJlc3VsdC5yb3VuZCgxKS50b19zdHJpbmcoaW5kZXg9RmFsc2UpKQpwcmludChmInRvdGFsIHJlc2VydmU6IMKje3Jlc2VydmUuc3VtKCk6LjFmfW0iKQoKIyBTZW5zaXRpdml0eTogaW5jcmVhc2Ugb25seSB0aGUgc2VsZWN0ZWQgMOKGkjEgZmFjdG9yIGJ5IDUlLgpzdHJlc3NfZmFjdG9ycyA9IG5wLmFycmF5KGZhY3RvcnMpCnN0cmVzc19mYWN0b3JzWzBdICo9IDEuMDUKc3RyZXNzX2NkZnMgPSBucC5vbmVzKDQpCmZvciBqIGluIHJhbmdlKDIsIC0xLCAtMSk6CiAgICBzdHJlc3NfY2Rmc1tqXSA9IHN0cmVzc19mYWN0b3JzW2pdICogc3RyZXNzX2NkZnNbaiArIDFdCnN0cmVzc19yZXNlcnZlID0gKGxhdGVzdCAqIHN0cmVzc19jZGZzW2xhdGVzdF9hZ2VdIC0gbGF0ZXN0KS5zdW0oKQpwcmludChmInJlc2VydmUgYWZ0ZXIgNSUgc3RyZXNzIHRvIGYwOiDCo3tzdHJlc3NfcmVzZXJ2ZTouMWZ9bSIp layout: vertical locale: en packages: numpy,pandas title: Chain-ladder calculation and factor sensitivity --- :: ## 6. State the assumptions as testable claims The chain ladder does not merely assume “the past repeats.” It requires more precise claims: | Assumption | Observable warning sign | Response | | ------------------------------------- | -------------------------------- | ------------------------------------------------------------ | | comparable origin years | exposure or mix changes sharply | on-level, segment, or use an exposure-based method | | stable development by age | link ratios trend by origin year | investigate operations, inflation, or model calendar effects | | no unmodelled calendar shock | residuals align on diagonals | isolate shock or use a model with calendar terms | | adequate volume | one cell controls a factor | use credibility, benchmarks, or a range | | latest cumulative value is meaningful | large recoveries/reopenings | reconcile and model the mechanism | | selected tail is adequate | oldest years still develop | fit or benchmark a tail factor | ## 7. Three quick diagnostics ### Leave-one-origin-year-out Re-estimate each factor after removing one eligible origin year. Large movement identifies influential observations; it does not automatically justify deleting them. ### Backtest a historical diagonal Pretend the latest diagonal was unavailable, project it using only older data, and compare projection with what actually emerged. Repeat across diagonals where possible. ### Compare paid and incurred Agreement is not proof, but divergence can reveal settlement-speed changes or case-reserving shifts. Define incurred consistently before comparing. ## Practice 1. If [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[0]{.mord.mtight}[:]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is unchanged but [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[:]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} rises from 1.35 to 1.42, calculate AY 2022 ultimate and reserve. 2. Why is the Dev 2→3 factor especially uncertain here? 3. A £20m payment is moved from Dev 1 to Dev 0 without changing ultimate loss. Predict the direction of the early link ratios. ::legacy-details{title="Answers"} 1. Ultimate [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[260]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1.42]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.1667]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[430.7]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; reserve [[]{.katex-mathml}[[[]{.strut style="height:0.4831em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[170.7]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Only AY 2020 supplies a fully observed pair, so process variation and that year's peculiarities are inseparable from the selected factor. 3. Dev 0 rises and Dev 1 cumulative is unchanged, so the 0→1 ratio falls. The change is payment timing, not necessarily ultimate severity. :: Next, [separate claim emergence from average claim cost](https://www.pengjiaxin.com/02-average-per-claim). # Frequency–Severity Reserving []{#frequencyseverity-reserving} A paid-loss triangle can rise because more claims become known, known claims cost more, or payments accelerate. A frequency–severity view separates two mechanisms before recombining them. [[[]{.katex-mathml}[[[]{.strut style="height:1.0733em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1703em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.109em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[[ultimate]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1703em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[A]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.2778em);margin-left:0.2778em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[[ultimate]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is ultimate claim count and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is average ultimate cost per claim. ::warning{title="Define “one claim” first"} A claimant, coverage, event, and claim-file record need not be the same unit. Reopened and nil claims can change counts without changing economic loss. Freeze one operational definition across all periods. :: ## 1. Add a cumulative reported-count triangle Harbour Mutual reports: | AY | Dev 0 | Dev 1 | Dev 2 | Dev 3 | | ---- | ----: | ----: | ----: | ----: | | 2020 | 50 | 80 | 95 | 100 | | 2021 | 55 | 88 | 104 | — | | 2022 | 60 | 96 | — | — | | 2023 | 70 | — | — | — | Use the same volume-weighted calculation as chain ladder: | Count transition | Selected factor | CDF to ultimate | | ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | --------------: | | 0 → 1 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[264/165]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.6000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 1.9950 | | 1 → 2 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[199/168]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.1845]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 1.2469 | | 2 → 3 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[100/95]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.0526]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 1.0526 | Projected ultimate counts are therefore approximately 100.0, 109.5, 119.7, and 139.6 for AY 2020–2023. Fractional values are expectations, not literal future files. ## 2. Examine average paid per reported claim For diagnosis, divide cumulative paid loss by cumulative reported count in the matching cell: [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.04em;vertical-align:-1.27em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[N]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.109em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[[reported]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.967em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.413em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.143em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[[paid]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.967em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.413em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.803em;"}]{.vlist style="height:1.77em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.27em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | AY | Dev 0 | Dev 1 | Dev 2 | Dev 3 | | ---- | ----: | ----: | ----: | ----: | | 2020 | 2.000 | 2.250 | 2.526 | 2.800 | | 2021 | 2.182 | 2.500 | 2.885 | — | | 2022 | 2.333 | 2.708 | — | — | | 2023 | 2.286 | — | — | — | Values are £m per count only because the teaching triangle is deliberately small. Real work would normally use £000 per claim. This ratio is not yet “settled severity”: its numerator is paid to date while its denominator is reported claims to date. It is useful only when we understand the timing mismatch. Using the arithmetic mean of observed cell-level ratios gives illustrative average-cost factors: | Average-cost transition | Selected factor | CDF to ultimate | | ----------------------- | --------------: | --------------: | | 0 → 1 | 1.1438 | 1.4431 | | 1 → 2 | 1.1383 | 1.2616 | | 2 → 3 | 1.1083 | 1.1083 | The selection rule is intentionally visible. Alternatives include volume weighting, settled-claim severity, payments-per-settlement, or a regression model with inflation and mix terms. ## 3. Recombine the two projections | AY | Ultimate count | Ultimate average cost | Ultimate loss | Reserve | | --------- | -------------: | --------------------: | ------------: | --------: | | 2020 | 100.0 | 2.800 | 280.0 | 0.0 | | 2021 | 109.5 | 3.197 | 350.0 | 50.0 | | 2022 | 119.7 | 3.417 | 409.0 | 149.0 | | 2023 | 139.6 | 3.299 | 460.6 | 300.6 | | **Total** | | | **1,499.7** | **499.7** | The result is close to the £501.5m chain-ladder reserve because both components were derived from the same paid and count observations. The value of the decomposition is not the £1.8m difference; it is the explanation of **where development comes from**. ## 4. Read the signals | Observed pattern | Plausible mechanism | Additional evidence | | -------------------------------------------------- | ------------------------------------------------- | ------------------------------------------------- | | count factors fall, cost factors stable | faster reporting | report-date distributions and operational changes | | counts stable, average cost rises by calendar year | inflation or claim mix | price indices, injury mix, repair duration | | average paid cost falls while closure rises | accelerated small-claim settlement | open/closed counts and payment type | | count and cost both jump | exposure, catastrophe, coding, or coverage change | policy and event-level data | Never infer the mechanism from the triangle alone. The table generates hypotheses to test. ## 5. A more defensible practical implementation For each origin year: 1. Model **ultimate claim count** using cumulative reported or settled counts, with exposure where relevant. 2. Model **ultimate average severity** on a coherent claim population. 3. Apply inflation and mix adjustments at the level where they arise. 4. Multiply expected count and severity only after addressing dependence: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} holds when severities are identically distributed and independent of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. More generally, use [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:-0.1667em;"}[]{.mspace style="margin-right:0.1667em;"}[[\[]{.mopen.delimcenter style="top:0em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]]{.mclose}[]]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} can represent weather, inflation, or portfolio mix affecting both frequency and severity. ## 6. Compare with chain ladder | Question | Chain ladder | Frequency–severity | | ------------------ | --------------------------------- | ----------------------------------------------------- | | What is projected? | aggregate cumulative loss | counts and cost per claim | | Main strength | simple, transparent, reproducible | operational explanation and scenario control | | Main data need | consistent loss triangle | aligned count, loss, status, and exposure definitions | | Main risk | stable pattern assumed | two models can compound misspecification | Use frequency–severity as a diagnostic even when the selected reserve remains chain-ladder based. ## Practice 1. AY 2023 ultimate count is 140 and selected average ultimate cost is £3.5m. Find ultimate loss and reserve from £160m paid. 2. A claims-system migration creates duplicate claim-file IDs. Which component is biased first? 3. Why might average **settled** claim cost be biased downward at early ages? ::legacy-details{title="Answers"} 1. Ultimate [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[140]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[3.5]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£490]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m; reserve [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[490]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[160]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£330]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m. 2. Reported frequency; the resulting average cost may be biased downward because the denominator is inflated. 3. Small, simple claims often settle first. Early settled claims are therefore not representative of all claims. :: Next, [combine observed development with an independent prior](https://www.pengjiaxin.com/03-b-f-method). # Bornhuetter–Ferguson Method []{#bornhuetterferguson-method} The Bornhuetter–Ferguson (BF) method is designed for immature origin years. It uses observed loss for the developed portion and an independent prior for the unobserved portion. ## 1. Build the prior ultimate Let [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be earned premium on a consistent on-level basis and [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} the selected expected loss ratio (ELR): [[[]{.katex-mathml}[[[]{.strut style="height:1.2253em;vertical-align:-0.2769em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.109em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[[prior]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.9484em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2769em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For Harbour Mutual, use an 86% ELR: | AY | Earned premium (£m) | ELR | Prior ultimate (£m) | | ---- | ------------------: | --: | ------------------: | | 2020 | 324 | 86% | 278.64 | | 2021 | 365 | 86% | 313.90 | | 2022 | 380 | 86% | 326.80 | | 2023 | 580 | 86% | 498.80 | An ELR may come from pricing, plan, exposure × frequency × severity, or comparable mature periods. “Independent” means it should not simply repackage the same immature paid losses. ## 2. Estimate the unobserved proportion From the chain-ladder CDF, the expected paid proportion at age [[]{.katex-mathml}[[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[1/]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. BF assigns the prior only to the unpaid proportion: [[[]{.katex-mathml}[[[]{.strut style="height:1.1703em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2253em;vertical-align:-0.2769em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.109em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[[prior]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.9484em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2769em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0572em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1.1703em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.109em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0572em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1703em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Notice what does **not** happen: BF does not multiply current paid loss by a large CDF. Early random payments therefore have less influence on the youngest years. ## 3. Work the portfolio | AY | Latest paid | Paid proportion | Prior ultimate | BF reserve | BF ultimate | | --------- | -----------: | --------------: | -------------: | ---------: | -----------: | | 2020 | 280.00 | 100.00% | 278.64 | 0.00 | 280.00 | | 2021 | 300.00 | 85.71% | 313.90 | 44.84 | 344.84 | | 2022 | 260.00 | 63.49% | 326.80 | 119.31 | 379.31 | | 2023 | 160.00 | 34.63% | 498.80 | 326.06 | 486.06 | | **Total** | **1,000.00** | | | **490.21** | **1,490.21** | For AY 2023: [[[]{.katex-mathml}[[[]{.strut style="height:1.1703em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[2023]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[498.8]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2.8875]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[326.06.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The chain ladder gives £302.0m for the same year. BF is higher because pricing's prior ultimate (£498.8m) exceeds the chain-ladder ultimate (£462.0m). ## 4. Understand the credibility mechanism Rewrite BF as: [[[]{.katex-mathml}[[[]{.strut style="height:1.1703em;vertical-align:-0.247em;"}[[[[[[[]{.pstrut style="height:3em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.109em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.7341em;vertical-align:-2.2841em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.45em;"}[[[[chain-ladder ultimate]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.1659em;"}[[]{.pstrut style="height:3.45em;"}[[[[[[]{.pstrut style="height:3.45em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-1.852em;"}[[]{.pstrut style="height:3.45em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.mord}]{style="top:-3.45em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.598em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3.45em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.2841em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.6955em;vertical-align:-1.7471em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[prior ultimate]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.389em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.0751em;"}[[]{.pstrut style="height:3em;"}[[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.109em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[[prior]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.9484em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2769em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.9484em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9249em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.9484em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.7471em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Thus [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} acts like credibility given to the chain-ladder indication: - at 35% paid, most weight remains on the prior; - at 86% paid, observed experience dominates; - at 100% paid, BF ultimate equals observed paid loss. This algebra explains BF more clearly than memorising a separate reserve formula. ## 5. Sensitivity belongs in the answer For a change [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[q]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} in ELR, [[[]{.katex-mathml}[[[]{.strut style="height:1.1383em;vertical-align:-0.247em;"}[Δ]{.mord}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}[F]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[Δ]{.mord}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} AY 2023 has premium £580m and is 34.63% paid. A five-percentage-point ELR increase changes its reserve by [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[580]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.3463]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.05]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£18.96]{.mord}[[m]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Report this sensitivity rather than presenting £326.06m as if it were exact. ## 6. When the method helps—and when it hides problems | Situation | BF response | Required challenge | | --------------------------------- | ---------------------------------------- | --------------------------------------------------------- | | very immature recent year | stabilises against early random payments | is the ELR current and on-level? | | exposure or rate changed | prior can reflect new portfolio | are premium and expected loss both adjusted consistently? | | large early catastrophe payment | limits overreaction | should the catastrophe be modelled separately? | | persistent adverse emergence | gradually responds as maturity increases | is slow response delaying recognition? | | weak or politically selected plan | gives false stability | use independent benchmarks and scenarios | ::warning{title="BF is not automatically conservative"} It is higher than chain ladder only when its prior for the unobserved portion is higher. A low prior can suppress genuine adverse emergence. :: ## 7. Cape Cod as the next idea BF takes the ELR as external. Cape Cod estimates an ELR from the triangle and exposure, broadly: [[[]{.katex-mathml}[[[]{.strut style="height:0.865em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4254em;vertical-align:-0.9857em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.6897em;"}]{.vlist style="height:1.4397em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9857em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} then uses this estimated ratio in a BF-style projection. This can improve internal consistency, but it makes the prior less independent from the observed data. ## Practice 1. A year has £200m earned premium, 75% ELR, and is 40% paid. Calculate the BF reserve. 2. If £100m has already been paid, calculate BF ultimate and chain-ladder ultimate under the same 40% paid pattern. 3. What happens if the early paid amount doubles but premium, ELR, and paid proportion remain fixed? ::legacy-details{title="Answers"} 1. Prior ultimate [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[200]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.75]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[150]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; reserve [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[150]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.60]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£90]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m. 2. BF ultimate [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[90]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£190]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m; chain-ladder ultimate [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[100/0.40]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£250]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m. 3. BF reserve remains £90m, so BF ultimate rises only by the additional paid amount. Chain-ladder ultimate doubles. This is the intended stability—and a reason to monitor whether the prior has become stale. :: Next, quantify and test what the point estimates conceal in [Uncertainty and Diagnostics](https://www.pengjiaxin.com/04-uncertainty-diagnostics). # Uncertainty and Diagnostics []{#uncertainty-and-diagnostics} A reserve estimate is conditional on data and assumptions. A complete analysis asks both **how variable can future emergence be?** and **what if the model structure is wrong?** ## 1. Separate four uncertainties | Source | Meaning | Example | Typical treatment | | ---------------- | ------------------------------------------------- | ---------------------------------------------- | ------------------------------------------------ | | Process | future claims vary even with known parameters | next year's payments differ randomly | stochastic model or simulation | | Parameter | factors and distribution parameters are estimated | Dev 2→3 uses one origin year | standard error, bootstrap, sensitivity | | Model | another plausible structure gives another answer | calendar inflation breaks age-only development | alternative models and scenarios | | Operational/data | recorded information is incomplete or unstable | reopened claims or system migration | reconciliation, controls, data-quality allowance | One confidence interval rarely captures all four. ## 2. Mack chain ladder: what it adds Mack's distribution-free framework keeps chain-ladder mean structure while estimating conditional variance under assumptions such as: [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2472em;vertical-align:-0.3831em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with origin years independent. It yields standard errors for projected reserves without assuming a full claim distribution. ::warning{title="What a Mack standard error does not cover"} It does not automatically cover changing inflation, a new claims process, dependence across origin years, an omitted tail, or uncertainty in manually selected factors. Those are model and operational questions. :: ## 3. Bootstrap: preserve the workflow A reserving bootstrap typically: 1. fits an incremental mean model; 2. computes and scales residuals; 3. resamples residuals to create pseudo-triangles; 4. refits development parameters; 5. simulates future process outcomes; 6. stores total reserve and origin-year results. Refitting in each replicate captures parameter variation. Simulating future increments captures process variation. Merely sampling final point estimates captures neither correctly. ## 4. Backtest by valuation date For each historical diagonal [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : 1. hide all observations after [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 2. fit the method using only information available at [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. predict the next diagonal or later ultimate; 4. compare with subsequently observed values; 5. repeat over several [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Useful measures include signed error, absolute percentage error where denominators are stable, interval coverage, and error by development age. Reserve backtesting must avoid **look-ahead bias**: factor selections and exclusions should reflect what could have been known at the historical valuation date. ### Tiny backtest example Using only AY 2020 and 2021 to estimate [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[0]{.mord.mtight}[:]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} gives [[[]{.katex-mathml}[[[]{.strut style="height:1.3111em;vertical-align:-0.2663em;"}[[[[[[[]{.pstrut style="height:3em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.3333em);margin-left:0.3333em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[0]{.mord.mtight}[:]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:-0.1076em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[(]{.mopen.mtight}[−]{.mord.mtight}[2022]{.mord.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[120]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[180]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[220]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.8182.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It predicts AY 2022 Dev 1 paid of [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[140]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.8182]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[254.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, versus £260m observed. The next-diagonal error is £5.5m, or 2.1% of observed. One good prediction is not validation; the example shows the information boundary. ## 5. Residual patterns diagnose structure | Pattern | Interpretation to investigate | | -------------------------------------- | -------------------------------------------------- | | residuals trend across origin years | portfolio mix, exposure, or underwriting change | | residuals align on calendar diagonals | inflation, legislation, catastrophe, or operations | | variance rises faster than fitted mean | heteroscedasticity or large-loss mixture | | paid and incurred residuals diverge | settlement and case-reserve processes changed | | youngest years fail repeatedly | prior or development pattern is stale | Residuals are prompts for investigation, not mechanical deletion rules. ## 6. Scenario table for the reserve committee | Scenario | Change from baseline | Question answered | | ---------------- | ----------------------------------------------- | ---------------------------------- | | factor selection | use trimmed or credibility-weighted link ratios | sensitivity to influential cells | | tail | add plausible tail factors | cost beyond observed development | | inflation | increase future severity/calendar effect | sensitivity to claims inflation | | large loss | model separately or cap for factor selection | concentration risk | | prior | vary ELR in BF | dependence on external expectation | | settlement speed | shift payment timing without changing ultimate | paid-pattern instability | Present the rationale and probability status: a deterministic stress is not a percentile unless linked to a probabilistic model. ## 7. Current research: richer time and claim information Recent work develops two complementary directions. State-space models make aggregate reserving dynamics and sampling distributions explicit. Individual-claim approaches use transaction histories, claim status, covariates, and survival methods. Examples include Selukar's state-space workflow (2025), the CAS **Claim Life Cycle Model** (2024), the **ReSurv** claim-count framework (2025), and a 2026 preprint connecting chain ladder with individual-claim prediction. The teaching conclusion is measured: - individual data can explain reporting, closure, reopening, and payment timing; - richer data do not remove selection bias, censoring, or operational drift; - aggregate triangles remain valuable for reconciliation and benchmarking; - recent preprints are research-frontier evidence, not settled professional standards. ## 8. Minimum reserve report A reviewer should be able to reproduce: 1. data scope and valuation date; 2. triangle transformations and exclusions; 3. factor/prior/tail selections; 4. central estimate by origin year; 5. process and parameter uncertainty where modelled; 6. alternative methods and scenarios; 7. backtest results and known failure modes; 8. judgement, ownership, and limitations. ## Practice 1. Classify “future claim amounts vary around a correct expected value.” 2. Classify “a repair-cost shock affects all cells on the latest diagonal.” 3. Why is fitting on the full triangle and then pretending to backtest an earlier diagonal invalid? ::legacy-details{title="Answers"} 1. Process uncertainty. 2. Primarily model/calendar uncertainty; parameter and process effects may accompany it. 3. The selected factors have already seen the held-out observations, so the error is optimistically biased by information leakage. :: ## Sources and further reading - Mack, T. (1993), “Distribution-Free Calculation of the Standard Error of Chain Ladder Reserve Estimates,” *ASTIN Bulletin*, 23(2), 213–225. - England, P. D. and Verrall, R. J. (2002), “Stochastic Claims Reserving in General Insurance,” *British Actuarial Journal*, 8(3), 443–518. - [CAS — The Development and Use of a Claim Life Cycle Model (2024)](https://forum.casact.org/article/122947-the-development-and-use-of-claim-life-cycle-model){rel=""nofollow""} - [CAS — Claim Counts Prediction Using Individual Data with ReSurv (2025)](https://forum.casact.org/article/131925-claim-counts-prediction-using-individual-data-with-resurv){rel=""nofollow""} - [Selukar — Stochastic Claims Reserving Using State Space Modeling (2025 preprint)](https://arxiv.org/abs/2504.09292){rel=""nofollow""} - [Richman and Wüthrich — From Chain-Ladder to Individual Claims Reserving (2026 preprint)](https://arxiv.org/abs/2602.15385){rel=""nofollow""} # Claims Development and Reserving []{#claims-development-and-reserving} Reserving estimates the future cost of events that have already occurred. A run-off triangle is a **data arrangement**, not a method: rows identify origin periods, columns identify development age, and diagonals identify calendar periods. ## 1. Fix the data contract Before calculating a factor, document: | Question | Harbour Mutual answer | Why it matters | | -------------------------- | -------------------------- | ------------------------------------------------------- | | What is one row? | accident year | policy year and report year answer different questions | | What is one column? | annual development age | unequal intervals invalidate a simple factor comparison | | Incremental or cumulative? | cumulative paid loss | link ratios require a consistent basis | | Gross or net? | gross of reinsurance | mixing bases changes development mechanically | | Currency and price level? | nominal £m | inflation can create calendar effects | | Information date? | 31 December 2023 | determines which cells were genuinely observable | | What is “ultimate”? | selected value after Dev 3 | oldest observed does not automatically mean complete | ::warning{title="Never encode missing cells as zero"} Zero means “observed and no amount occurred.” A blank upper-right cell means “not observed by the valuation date.” Confusing them biases every projection. :: ## 2. See all three time axes For origin year [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, development age [[]{.katex-mathml}[[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, calendar year is [[]{.katex-mathml}[[[]{.strut style="height:0.7429em;vertical-align:-0.0833em;"}[i]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Therefore cells on a diagonal share an economic and operational period. | AY | Dev 0 | Dev 1 | Dev 2 | Dev 3 | | ---- | ------: | ------: | ------: | ------: | | 2020 | 100 | 180 | 240 | **280** | | 2021 | 120 | 220 | **300** | — | | 2022 | 140 | **260** | — | — | | 2023 | **160** | — | — | — | The bold diagonal is the latest observation. A claims-system change in calendar 2023 can affect all four bold cells, even though they have different development ages. A pure development model may mistake that diagonal effect for ordinary maturation. ## 3. Convert carefully If [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is incremental loss and [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} cumulative loss, [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.1609em;vertical-align:-1.3021em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[=]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3471em;margin-left:0em;"}]{.vlist style="height:1.8588em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For AY 2020, cumulative [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[100]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[180]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[240]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[280]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} becomes incremental [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[100]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[80]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[60]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[40]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Negative paid increments usually indicate recoveries, corrections, or data errors; negative incurred increments can also reflect case-reserve releases. Investigate rather than deleting them automatically. ## 4. Diagnose before modelling Use this order: 1. Reconcile triangle totals to the source system or ledger. 2. Check duplicates, currencies, gross/net basis, and reopenings. 3. Plot age-to-age factors by origin year. 4. Plot incremental proportions by development age. 5. Inspect calendar diagonals for inflation, legislation, operational changes, or catastrophes. 6. Separate large losses or materially different claim types when justified. 7. Record every adjustment and retain an unmodified extract. ### Mini-case: faster settlement or lower severity? Suppose Dev-0 paid loss rises from 140 to 160 while ultimate claim cost is unchanged. A chain ladder may interpret the higher early payment as a higher ultimate. An operational explanation—claims are being settled earlier—implies a lower later factor instead. Paid triangles cannot distinguish these explanations without claim counts, incurred data, or operational evidence. ## 5. Choose the question, then the method | Method | Main evidence | Useful when | Main vulnerability | | ------------------------------------------------------------------------------------ | -------------------------------------------- | --------------------------------------------- | ------------------------------------------------------------- | | [Chain ladder](https://www.pengjiaxin.com/01-basic-chain) | observed development pattern | triangle is sufficiently mature and stable | recent years inherit historical pattern | | [Frequency–severity](https://www.pengjiaxin.com/02-average-per-claim) | count emergence and average cost | count and cost processes explain the movement | inconsistent count definitions; interaction between processes | | [Bornhuetter–Ferguson](https://www.pengjiaxin.com/03-b-f-method) | prior ultimate plus observed maturity | immature periods need external structure | prior may be weak or stale | | [Uncertainty and diagnostics](https://www.pengjiaxin.com/04-uncertainty-diagnostics) | residuals, backtests, stochastic assumptions | a point reserve is not enough | assumptions can be hidden behind one error number | These are not competing buttons. A reserve committee compares their evidence, understands differences, and selects a range or central estimate. ## Practice: classify the problem For each observation, identify the most relevant axis and one response. 1. All claim types settle faster after a new payment platform goes live in 2022. 2. Bodily-injury claims have much larger and later payments than vehicle-damage claims. 3. One catastrophe affects several origin years through reopened claims in the same calendar year. 4. A recent year has almost no development data, but pricing supplied an expected loss ratio. ::legacy-details{title="Suggested answers"} 1. Calendar/operational effect: inspect diagonals and paid-versus-reported speed; do not extrapolate old link ratios blindly. 2. Portfolio heterogeneity: segment if definitions and volume support it. 3. Calendar/event effect: isolate and model the event where appropriate. 4. Immaturity: BF or another prior-informed method may be more stable than chain ladder alone. :: ## Public data for extended work The Casualty Actuarial Society provides updated Schedule P loss-reserve data and associated research resources. They are useful for reproducing methods on real triangles, but Schedule P line definitions and US reporting conventions must be documented before transferring a conclusion to another market. - [CAS downloadable datasets and reserving workbooks](https://www.casact.org/publications-research/research/downloadable-programs-spreadsheets-and-workbooks){rel=""nofollow""} - [CAS announcement of expanded Schedule P data, 2026](https://www.casact.org/article/more-data-now-available-cas-sponsored-research-including-updated-schedule-p-data){rel=""nofollow""} # Core Severity Models []{#core-severity-models} Let [[]{.katex-mathml}[[[]{.strut style="height:0.8193em;vertical-align:-0.136em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be one ground-up claim amount at a common price level. A severity model must match the support, centre, variability, and tail relevant to the decision. ## 1. Exponential: a transparent benchmark With scale [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[x]{.mord.mathnormal.mtight}[/]{.mord.mtight}[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1324em;vertical-align:-0.1944em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[x]{.mord.mathnormal.mtight}[/]{.mord.mtight}[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8641em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Its memoryless property, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[s]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[s]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[t]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} is convenient but often unrealistic: exceeding a large threshold supplies no information about further excess. Use Exponential as a benchmark, not a default. ## 2. Gamma: flexible centre with exponential-type tail With shape [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and scale [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.501em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[Γ]{.mord}[(]{.mopen}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[)]{.mclose}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7751em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[x]{.mord.mathnormal.mtight}[/]{.mord.mtight}[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.888em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.565em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8641em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} recovers the Exponential distribution. - [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} has density zero at the origin and a positive mode. - coefficient of variation is [[]{.katex-mathml}[[[]{.strut style="height:1.1822em;vertical-align:-0.25em;"}[1/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8922em;"}]{.vlist style="height:0.9322em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1078em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, so shape directly controls relative dispersion. Gamma regression is useful when mean severity changes with claim or policy characteristics while positive support is preserved. ## 3. Lognormal: multiplicative variation and a heavier tail If [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[μ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2314em;vertical-align:-0.1944em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[μ]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[[σ]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.931em;margin-right:0.0714em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}[/2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:1.0369em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.8em;vertical-align:-0.65em;"}[[[(]{.delimsizing.size2}]{.mopen.delimcenter style="top:0em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[[σ]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.931em;margin-right:0.0714em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:1.0369em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[[)]{.delimsizing.size2}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[2]{.mord.mtight}[μ]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[[σ]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.931em;margin-right:0.0714em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:1.0369em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Q]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2141em;vertical-align:-0.35em;"}[exp]{.mop}[]{.mspace style="margin-right:-0.1667em;"}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[Φ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[[)]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The logarithm turns multiplicative effects into additive ones. The lognormal tail is heavier than Gamma or Exponential but lighter than a power-law Pareto tail. ## 4. Same mean, different decision Choose parameters so all three models have mean £5,000: | Model | Parameters | SD | 99% quantile | | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -----: | ------------: | | Exponential | [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | £5,000 | £23,026 | | Gamma | [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord,mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[4]{.mord}[,]{.mpunct}[ ]{.mspace}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[[,]{.mpunct}]{.mord}[250]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | £2,500 | £12,556 | | Lognormal | CV [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[μ]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[7.9279]{.mord}[,]{.mpunct}[ ]{.mspace}[]{.mspace style="margin-right:0.1667em;"}[σ]{.mord,mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.0857]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | £7,500 | about £34,665 | An expected-loss calculation sees no difference. A capital or reinsurance decision does. ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKZnJvbSBzY2lweSBpbXBvcnQgc3RhdHMKCm1lYW4gPSA1XzAwMApjdl9sb2dub3JtYWwgPSAxLjUKc2lnbWEyID0gbnAubG9nKDEgKyBjdl9sb2dub3JtYWwqKjIpCnNpZ21hID0gbnAuc3FydChzaWdtYTIpCm11ID0gbnAubG9nKG1lYW4pIC0gc2lnbWEyIC8gMgoKbW9kZWxzID0gewogICAgIkV4cG9uZW50aWFsIjogc3RhdHMuZXhwb24oc2NhbGU9bWVhbiksCiAgICAiR2FtbWEoaz00KSI6IHN0YXRzLmdhbW1hKGE9NCwgc2NhbGU9bWVhbi80KSwKICAgICJMb2dub3JtYWwoQ1Y9MS41KSI6IHN0YXRzLmxvZ25vcm0ocz1zaWdtYSwgc2NhbGU9bnAuZXhwKG11KSksCn0KCmZvciBuYW1lLCBtb2RlbCBpbiBtb2RlbHMuaXRlbXMoKToKICAgIHByaW50KGYie25hbWU6MjBzfSBtZWFuPcKje21vZGVsLm1lYW4oKTosLjBmfSwgIgogICAgICAgICAgZiJTRD3Co3ttb2RlbC5zdGQoKTosLjBmfSwgcTk5PcKje21vZGVsLnBwZiguOTkpOiwuMGZ9IikKCnggPSBucC5saW5zcGFjZSgwLCA0NV8wMDAsIDUwMCkKZm9yIG5hbWUsIG1vZGVsIGluIG1vZGVscy5pdGVtcygpOgogICAgcGx0LnNlbWlsb2d5KHgsIG1vZGVsLnNmKHgpLCBsYWJlbD1uYW1lKQpwbHQueGxhYmVsKCJjbGFpbSBzaXplICjCoykiKQpwbHQueWxhYmVsKCJQKFggPiB4KSwgbG9nYXJpdGhtaWMgc2NhbGUiKQpwbHQueWxpbSgxZS00LCAxKQpwbHQubGVnZW5kKCkKcGx0LnNob3coKQ== layout: vertical locale: en packages: numpy,scipy,matplotlib title: Equal means, unequal tails --- :: ## 5. Contracts transform severity ### Ordinary deductible With deductible [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, insurer payment per loss is [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Unconditional expected payment is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3262em;vertical-align:-0.9119em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∞]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.4143em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9119em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[x]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For Exponential [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with mean [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.938em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[d]{.mord.mathnormal.mtight}[/]{.mord.mtight}[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£2]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, expected insurer payment per underlying loss is [[]{.katex-mathml}[[[]{.strut style="height:1.0085em;vertical-align:-0.1944em;"}[5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£3]{.mord}[[,]{.mpunct}]{.mord}[352]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ### Limit With payment limit [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} applied to the post-deductible amount, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Values recorded at [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may be **right-censored**: the true loss exceeded the observable payment. Treating them as exact claims understates the tail. ### Conditional payment severity The mean payment **given that a payment occurs** is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[d]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[d]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Do not confuse this with the unconditional payment per exposure or per ground-up loss. ## 6. Choose a model by consequence | Task | Most important checks | | ------------------------ | ------------------------------------------------------- | | ordinary claim budgeting | mean, calibration by segment, out-of-sample error | | deductible pricing | probability above deductible and payment mean | | high-layer reinsurance | survival and mean excess near attachment | | capital | aggregate tail, dependence, parameter/model uncertainty | ## Practice 1. For Exponential mean £4,000, find [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[£10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. A Gamma model has shape 9 and mean £4,500. Find scale and coefficient of variation. 3. Why can a model fit a histogram well but price a high layer badly? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:0.888em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[10]{.mord.mtight}[[,]{.mpunct.mtight}]{.mord.mtight}[000/4]{.mord.mtight}[[,]{.mpunct.mtight}]{.mord.mtight}[000]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.888em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8141em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[2.5]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.0821]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Scale [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[4]{.mord}[[,]{.mpunct}]{.mord}[500/9]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£500]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; CV [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1572em;vertical-align:-0.25em;"}[1/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[9]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8672em;"}]{.vlist style="height:0.9072em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1328em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. Most histogram mass is in the body; few tail observations determine high-layer cost. Tail diagnostics and uncertainty must be assessed separately. :: Continue to [Pareto, Weibull, and extreme-value models](https://www.pengjiaxin.com/02-more-dist). # Tail Models and Extreme Values []{#tail-models-and-extreme-values} Tail modelling asks a narrow question: how quickly does [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} decay at large [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? It matters when a few losses dominate reserves, reinsurance, or capital. ## 1. Compare tail classes | Model | Survival behaviour | Moment implication | Typical role | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------- | | Weibull | [[]{.katex-mathml}[[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[exp]{.mop}[\[]{.mopen}[−]{.mord}[(]{.mopen}[x]{.mord,mathnormal}[/]{.mord}[λ]{.mord,mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord,mathnormal,mtight style="margin-right:0.0315em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | all positive moments finite | flexible light/stretch-exponential tail | | Lognormal | slower than any exponential, faster than any power | all moments finite | multiplicative severity benchmark | | Pareto/Lomax | power law [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0213em;vertical-align:-0.25em;"}[x]{.mord,mathnormal}[/]{.mord}[θ]{.mord,mathnormal style="margin-right:0.0278em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord,mtight}[α]{.mord,mathnormal,mtight style="margin-right:0.0037em;"}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7713em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | moment [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[r]{.mord,mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} exists only if [[]{.katex-mathml}[[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[r]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[α]{.mord,mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | heavy-tail benchmark | | GPD exceedance | shape [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord,mathnormal style="margin-right:0.046em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} determines tail class | mean exists if [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord,mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | losses above a high threshold | “Heavy-tailed” has a mathematical meaning; it is not merely “large variance.” ## 2. Weibull: shape controls ageing With scale [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and shape [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[exp]{.mop}[\[]{.mopen}[−]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[/]{.mord}[λ]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[h]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[λ]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[/]{.mord}[λ]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}: Exponential, constant hazard; - [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}: decreasing hazard; - [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}: increasing hazard. For claim size, hazard is a mathematical description of exceedance, not a literal failure rate unless the insurance mechanism supports that interpretation. ## 3. Pareto II/Lomax: power-law benchmark This page uses [[[]{.katex-mathml}[[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.9972em;vertical-align:-0.686em;"}[[[[(]{.delimsizing.size2}]{.mopen.delimcenter style="top:0em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[x]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size2}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.6029em;margin-right:0.05em;"}]{.vlist style="height:1.3112em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1408em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:1em;"}[(]{.mopen}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4271em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[(]{.mopen}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[(]{.mopen}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:1em;"}[(]{.mopen}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the mean exists but variance is infinite. A finite sample still has a finite sample variance; the instability appears as the sample grows and new extremes arrive. ::tip{title="Parameterisation check"} Some texts use a Pareto Type I distribution with support [[]{.katex-mathml}[[[]{.strut style="height:0.7719em;vertical-align:-0.136em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and survival [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[x]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6644em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Always show the support and survival function rather than reporting only “Pareto( [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ).” :: ## 4. Peaks over threshold and the GPD Choose a high threshold [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and define excess [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Extreme-value theory motivates the Generalized Pareto distribution (GPD): [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.6779em;vertical-align:-0.95em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[ξ]{.mord.mathnormal style="margin-right:0.046em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1/]{.mord.mtight}[ξ]{.mord.mathnormal.mtight style="margin-right:0.046em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.7279em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} on the support where [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ξ]{.mord.mathnormal style="margin-right:0.046em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[/]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, with scale [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and shape [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord.mathnormal style="margin-right:0.046em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. | Shape | Tail | Consequence | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord,mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | finite upper endpoint | useful only when a genuine cap exists | | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord,mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Exponential limit | light tail | | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord,mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Pareto-type heavy tail | mean finite only if [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord,mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; variance only if [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord,mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | For [[]{.katex-mathml}[[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[)]{.mclose}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Both the exceedance rate [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and the conditional excess model are needed to price a layer. ## 5. Threshold choice is a bias–variance decision - Too low: the asymptotic GPD approximation may be biased. - Too high: very few exceedances create unstable shape estimates. Use several views together: 1. mean residual life plot; 2. parameter stability over candidate thresholds; 3. QQ/PP diagnostics for exceedances; 4. number and independence of exceedances; 5. sensitivity of the actual target—quantile or layer price. A plot does not “select” the threshold automatically. Report a plausible range and show consequence sensitivity. ## 6. Worked layer calculation Suppose [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[£100]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.02]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Above £100,000, excess follows a GPD with [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord.mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.25]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£50]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Estimate [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[£300]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Here [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£200]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[200]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.604em;vertical-align:-0.95em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.25]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[50]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[200]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.654em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8641em;"}[[2]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.0625.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[300]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.02]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.0625]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.00125.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The result is conditional on the threshold, exceedance rate, fitted shape, common price level, and independence assumptions. ## 7. Extremes are often dependent One storm can generate thousands of claims. Claim-level independence then understates occurrence aggregation. Decide whether the modelling unit is: - claim loss; - policy loss; - event/occurrence loss; - annual aggregate loss. Declustering or event identifiers may be required before applying an extreme-value model. ## 8. Current case: secondary perils Swiss Re Institute reported 2025 global natural-catastrophe economic losses of about USD 220bn, 49% insured, and attributed 92% of insured losses to secondary perils such as severe convective storms, floods, and wildfires. This is useful for asking: - should frequency and severity be conditioned on peril and region? - do events share climate and inflation drivers? - are annual totals dominated by one event or many medium events? - what is the effect of policy penetration and reporting coverage? The figures do **not** prove that a Pareto or GPD fits a particular insurer's claims. Distribution choice requires insurer-level, definition-consistent data. ## Practice 1. For Lomax [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, find the mean. 2. For GPD [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ξ]{.mord.mathnormal style="margin-right:0.046em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, which of mean and variance exist? 3. Why can increasing a GPD threshold make the estimated tail shape less stable even if the model approximation improves? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[20]{.mord}[[,]{.mpunct}]{.mord}[000/]{.mord}[(]{.mopen}[3]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. The mean exists because [[]{.katex-mathml}[[[]{.strut style="height:0.6835em;vertical-align:-0.0391em;"}[0.6]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; variance does not because [[]{.katex-mathml}[[[]{.strut style="height:0.7804em;vertical-align:-0.136em;"}[0.6]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. Fewer observations exceed the threshold, so sampling and parameter uncertainty increase. :: ## Sources and further reading - Pickands, J. (1975), “Statistical Inference Using Extreme Order Statistics,” *Annals of Statistics*, 3(1), 119–131. - Balkema, A. A. and de Haan, L. (1974), “Residual Life Time at Great Age,” *Annals of Probability*, 2(5), 792–804. - Embrechts, P., Klüppelberg, C., and Mikosch, T. (1997), *Modelling Extremal Events for Insurance and Finance*. - [Swiss Re Institute — natural catastrophes in 2025](https://www.swissre.com/press-release/Wildfires-storms-floods-contribute-to-record-92-of-global-insured-losses-in-2025-says-Swiss-Re-Institute/7b39b1a5-b878-4a55-a5ff-bf5aa561a675){rel=""nofollow""} # Claim Count Models []{#claim-count-models} A count without an exposure period is rarely comparable. Let [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[N]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be claims from exposure [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} —for example, earned vehicle-years—during a stated period. ## 1. Begin with an observed rate | Portfolio | Vehicle-years | Claims | Raw count | Claims per vehicle-year | | --------- | ------------: | -----: | --------: | ----------------------: | | A | 10,000 | 400 | lower | 0.040 | | B | 15,000 | 525 | higher | 0.035 | Portfolio B has more claims but lower observed frequency. Modelling counts without the exposure denominator reverses the comparison. ## 2. Poisson: the benchmark process If [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Poisson]{.mord.mathrm}]{.mop}[(]{.mopen}[λ]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[n]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[λ]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}[!]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6644em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For risk [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, write [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, where [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is expected frequency per unit exposure. A log-link regression becomes [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[N]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is an **offset**: its coefficient is fixed at one. If a rating factor has coefficient [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.20]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, its multiplicative effect on expected frequency is [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.20]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.22]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, holding other variables and exposure fixed. ### Why Poisson appears Poisson is plausible when many opportunities each have small event probability and events are approximately independent over a fixed exposure. These are process claims to investigate, not consequences of integer-valued data. ## 3. Binomial: fixed opportunities If exactly [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} policies can each produce one event with probability [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} independently, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Binomial]{.mord.mathrm}]{.mop}[(]{.mopen}[m]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[p]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[p]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Binomial is appropriate for “at least one claim” per policy. It is not appropriate when one policy can generate several claims unless the response is deliberately reduced to a binary indicator. ## 4. Negative binomial: extra-Poisson variation A useful parameterisation has [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[N]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[N]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It can arise from Poisson counts with a Gamma-distributed latent rate. Different policyholders then have different unobserved propensities, even after measured rating factors are included. ### Diagnose, do not merely switch families Overdispersion—sample or residual variance exceeding the Poisson mean—can arise from: - unobserved heterogeneity; - common weather or event shocks; - omitted seasonality or trend; - excess zeros; - exposure errors; - serial or spatial dependence. Negative binomial handles one variance pattern but does not identify which mechanism caused it. ## 5. Zero-inflated and hurdle models Two distinct questions can generate excess zeros: - **Zero-inflated model:** some observations are in a structural-zero state; the remaining state can also produce zeros. - **Hurdle model:** one process determines zero versus positive; a zero-truncated count model determines positive counts. Use them only when the zero mechanism has operational meaning. A flexible model can fit zeros while giving misleading interventions. ## 6. Time and dependence For monthly or regional counts, condition on known structure: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[N]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[⊤]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[s]{.mord.mathnormal}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[s]{.mord.mathnormal}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} can represent seasonality/trend and [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} a group effect. Event clustering may require random effects, event-level models, or correlated processes; multiplying independent Poisson probabilities is then invalid. ## 7. A current data-literacy example The Association of British Insurers reported £11.9bn of motor claim payouts across 2.5m claims in 2025. Dividing gives £4,760 per reported claim, but that number should **not** be presented as market severity without checking: - whether payout and count scopes match; - claim versus coverage definitions; - whether figures are paid during year or ultimate accident-year cost; - mix of damage, theft, injury, and third-party claims; - the ABI's warning that improved 2025 coverage limits direct year-on-year comparison. The example illustrates why a quotient is not automatically a statistical estimand. ## 8. Validation checklist | Check | What failure suggests | | --------------------------------------------- | ---------------------------------- | | predicted vs observed counts by exposure band | offset or non-linearity problem | | Pearson/deviance residual pattern | misspecified mean or variance | | variance-to-mean by homogeneous segment | overdispersion or omitted grouping | | zero calibration | excess-zero mechanism | | rolling-time validation | trend/seasonality instability | | event-level residual clustering | dependence | ## Practice 1. Expected annual rate is 0.08 per policy. What is Poisson expected count for 2,500 policy-years? 2. Under [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, find negative-binomial variance. 3. A portfolio's exposure doubles while rate is unchanged. What happens to expected count and expected rate? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[2]{.mord}[[,]{.mpunct}]{.mord}[500]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.08]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[200]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[2]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[[2]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. Expected count doubles; expected count per exposure remains unchanged. :: ## Source for the current example - [Association of British Insurers — £11.9bn paid to motorists in 2025](https://www.abi.org.uk/news/news-articles/2026/2/11.9-billion-paid-out-in-2025-to-support-motorists-across-2.5-million-claims/){rel=""nofollow""} # Fitting and Validating Loss Models []{#fitting-and-validating-loss-models} Model fitting estimates parameters; validation asks whether the fitted model is useful for unseen insurance decisions. These are separate steps. ## 1. Audit the sample Before fitting, answer: 1. Are amounts at a common price and currency level? 2. Are losses ground-up or payments after deductible and limit? 3. Are limit observations censored or genuinely equal to the limit? 4. Are small losses absent because of truncation or because none occurred? 5. Are claims independent, or clustered within events and policyholders? 6. Was the sample selected using information unavailable at prediction time? The likelihood must describe the **observation process**, not only the latent ground-up loss. ## 2. Likelihood contributions For exact independent observations [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with density [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Left truncation at threshold [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} If only claims with [[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} enter the dataset and their ground-up values are observed, each contribution is [[[]{.katex-mathml}[[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[d]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3871em;vertical-align:-0.9601em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[d]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.mord}]{style="top:-2.2899em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9601em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Ignoring the denominator treats a selected large-loss sample as representative of all losses. ### Right censoring at limit [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} An exact value below [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contributes [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; an observation known only to satisfy [[]{.katex-mathml}[[[]{.strut style="height:0.8193em;vertical-align:-0.136em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} contributes [[]{.katex-mathml}[[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[u]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Replacing every limited payment by an exact loss of [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} understates the ground-up tail. ### Deductible payment data If recorded payment is [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} conditional on [[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, derive the density of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} from the conditional loss distribution. Do not fit [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} as if it were ground-up [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 3. Estimation methods | Method | Idea | Strength | Limitation | | ------------------ | -------------------------------------- | --------------------------------------- | ---------------------------------------------- | | Maximum likelihood | maximise observation-model probability | handles censoring/truncation coherently | can be tail-sensitive and numerically unstable | | Method of moments | match sample and model moments | simple and interpretable | high moments unstable for heavy tails | | Quantile matching | match selected empirical quantiles | targets decision-relevant regions | discards other information | | Bayesian inference | combine likelihood and prior | propagates parameter uncertainty | prior and computation must be justified | ## 4. Fit candidates, then test unseen data The executable example generates a fixed synthetic lognormal sample. It compares Exponential, Gamma, and lognormal fits using training AIC and held-out negative log score. ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBwYW5kYXMgYXMgcGQKaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdApmcm9tIHNjaXB5IGltcG9ydCBzdGF0cwoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDE3KQp4ID0gcm5nLmxvZ25vcm1hbChtZWFuPTguMCwgc2lnbWE9MC45LCBzaXplPTYwMCkKcm5nLnNodWZmbGUoeCkKdHJhaW4sIHRlc3QgPSB4Wzo0NTBdLCB4WzQ1MDpdCgpmaXRzID0gewogICAgIkV4cG9uZW50aWFsIjogKHN0YXRzLmV4cG9uLCBzdGF0cy5leHBvbi5maXQodHJhaW4sIGZsb2M9MCksIDEpLAogICAgIkdhbW1hIjogKHN0YXRzLmdhbW1hLCBzdGF0cy5nYW1tYS5maXQodHJhaW4sIGZsb2M9MCksIDIpLAogICAgIkxvZ25vcm1hbCI6IChzdGF0cy5sb2dub3JtLCBzdGF0cy5sb2dub3JtLmZpdCh0cmFpbiwgZmxvYz0wKSwgMiksCn0KCnJvd3MgPSBbXQpmb3IgbmFtZSwgKGRpc3QsIHBhcmFtcywgaykgaW4gZml0cy5pdGVtcygpOgogICAgdHJhaW5fbGwgPSBucC5zdW0oZGlzdC5sb2dwZGYodHJhaW4sICpwYXJhbXMpKQogICAgdGVzdF9ubGwgPSAtbnAubWVhbihkaXN0LmxvZ3BkZih0ZXN0LCAqcGFyYW1zKSkKICAgIHJvd3MuYXBwZW5kKFtuYW1lLCAyKmsgLSAyKnRyYWluX2xsLCB0ZXN0X25sbCwKICAgICAgICAgICAgICAgICBkaXN0LnBwZiguOTksICpwYXJhbXMpXSkKCnJlc3VsdCA9IHBkLkRhdGFGcmFtZShyb3dzLCBjb2x1bW5zPVsKICAgICJtb2RlbCIsICJ0cmFpbmluZ19BSUMiLCAiaGVsZG91dF9tZWFuX05MTCIsICJmaXR0ZWRfcTk5IgpdKQpwcmludChyZXN1bHQucm91bmQoMikuc29ydF92YWx1ZXMoImhlbGRvdXRfbWVhbl9OTEwiKS50b19zdHJpbmcoaW5kZXg9RmFsc2UpKQpwcmludChmImVtcGlyaWNhbCBoZWxkLW91dCBxOTkgPSDCo3tucC5xdWFudGlsZSh0ZXN0LCAuOTkpOiwuMGZ9IikKCmdyaWQgPSBucC5saW5zcGFjZSgwLCBucC5xdWFudGlsZSh4LCAuOTk1KSwgNDAwKQplbXBpcmljYWxfc3Vydml2YWwgPSBucC5hcnJheShbKHRyYWluID4geikubWVhbigpIGZvciB6IGluIGdyaWRdKQpwbHQuc2VtaWxvZ3koZ3JpZCwgbnAubWF4aW11bShlbXBpcmljYWxfc3Vydml2YWwsIDEvbGVuKHRyYWluKSksCiAgICAgICAgICAgICBjb2xvcj0iYmxhY2siLCBsYWJlbD0idHJhaW5pbmcgZW1waXJpY2FsIikKZm9yIG5hbWUsIChkaXN0LCBwYXJhbXMsIF8pIGluIGZpdHMuaXRlbXMoKToKICAgIHBsdC5zZW1pbG9neShncmlkLCBkaXN0LnNmKGdyaWQsICpwYXJhbXMpLCBsYWJlbD1uYW1lKQpwbHQueGxhYmVsKCJjbGFpbSBhbW91bnQgKMKjKSIpCnBsdC55bGFiZWwoInN1cnZpdmFsIHByb2JhYmlsaXR5IikKcGx0LmxlZ2VuZCgpCnBsdC5zaG93KCk= layout: vertical locale: en packages: numpy,pandas,scipy,matplotlib title: "Candidate severity models: fit versus prediction" --- :: The synthetic generator makes lognormal plausible, but a finite holdout need not rank it first every run. That sampling variation is part of the lesson. ## 5. Diagnostics answer different questions | Diagnostic | Good for | Weakness | | ---------------------------- | ------------------------------- | ---------------------------------------- | | density/histogram | body shape and modes | hides tail discrepancies | | empirical vs fitted survival | exceedance probability | noisy at extremes | | QQ plot | quantile calibration | tail points have high variance | | PP/PIT plot | overall probability calibration | can visually underweight tail | | mean excess plot | threshold-tail behaviour | highly variable at high thresholds | | held-out log score | predictive distribution | sensitive to sample split and dependence | | layer-cost backtest | actual reinsurance decision | needs adequate attachment-region data | Use logarithmic survival axes to make tail differences visible. ## 6. AIC and goodness-of-fit boundaries For a model with [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} estimated parameters, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[AIC]{.mord.mathrm}]{.mop}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[2]{.mord}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1844em;vertical-align:-0.25em;"}[2]{.mord}[ℓ]{.mord}[(]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Lower AIC compares estimated information loss **among models fitted to the same observations and likelihood basis**. It is not an absolute fit certificate, and AIC values from differently truncated samples are not directly comparable. The ordinary one-sample Kolmogorov–Smirnov null distribution assumes the reference distribution is fully specified. If parameters are fitted from the same data, textbook p-values are generally invalid. Use an appropriate correction or parametric bootstrap: 1. fit the model and calculate the observed statistic; 2. simulate many samples from the fitted model; 3. refit the model to each sample; 4. recompute the statistic; 5. compare the observed statistic with this simulated reference distribution. ## 7. Parameter and model uncertainty A fitted 99.5% quantile [[]{.katex-mathml}[[[]{.strut style="height:1.1844em;vertical-align:-0.25em;"}[Q]{.mord.mathnormal}[(]{.mopen}[.995]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is a point estimate. Quantify uncertainty with profile likelihood, bootstrap, posterior draws, and/or alternative plausible families. For a high layer, model spread can dominate sampling error within one chosen family. ## Practice 1. A dataset records only claims above £10,000. Which likelihood adjustment is required? 2. A policy pays £100,000 for every ground-up claim at or above its limit. Is £100,000 an exact ground-up loss? 3. Why should a time-dependent portfolio use a chronological holdout rather than a random split? ::legacy-details{title="Answers"} 1. Left truncation: divide each exact density by [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. No. It is a right-censored observation: ground-up loss is known only to be at least £100,000. 3. A random split leaks future regimes across train and test; a chronological split better represents prospective prediction under drift. :: # Mixtures and Heterogeneity []{#mixtures-and-heterogeneity} A portfolio distribution can be wide because each risk is volatile, because risks belong to different groups, or both. Mixture models separate **within-group** and **between-group** variation. ## 1. Finite mixture Let latent class [[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} have [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, where [[]{.katex-mathml}[[[]{.strut style="height:1.0497em;vertical-align:-0.2997em;"}[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Conditional on class [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, loss has density [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.1304em;vertical-align:-1.3021em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[K]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The moments expose the two sources of variation: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3521em;vertical-align:-1.3021em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.6862em;vertical-align:-2.6362em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[[within classes]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-0.4138em;"}[[]{.pstrut style="height:3.05em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-1.0999em;"}[[]{.pstrut style="height:3.05em;"}[[[[[[[]{.pstrut style="height:3.05em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9501em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.6362em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.6862em;vertical-align:-2.6362em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[[between classes]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-0.4138em;"}[[]{.pstrut style="height:3.05em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-1.0999em;"}[[]{.pstrut style="height:3.05em;"}[[[[[[[]{.pstrut style="height:3.05em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[μ]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9501em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.6362em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Example: ordinary and complex claims Suppose 90% of claims have mean £2,000 and SD £1,000; 10% have mean £20,000 and SD £10,000. [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.9]{.mord}[(]{.mopen}[2]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.1]{.mord}[(]{.mopen}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£3]{.mord}[[,]{.mpunct}]{.mord}[800.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The mixture SD is about £6,329. A single “average claim” hides both the rare high-cost class and the uncertainty over class membership. ## 2. Observed segmentation versus latent class | Approach | Example | Advantage | Risk | | -------------------------- | ----------------------------------------------- | ---------------------------- | -------------------------------------- | | observed segmentation | vehicle type or injury indicator | interpretable and actionable | coding changes; small cells | | latent finite mixture | unobserved simple/complex claim | flexible distribution shape | classes may not have unique meaning | | hierarchical/random effect | region or policyholder risk varies continuously | partial pooling | distribution of random effects matters | Prefer observed, causally relevant information when available. Latent classes are mathematical devices unless external evidence gives them operational meaning. ## 3. Continuous mixture: Poisson–Gamma gives negative binomial Suppose conditional claim count is Poisson: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Λ]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Poisson]{.mord.mathrm}]{.mop}[(]{.mopen}[Λ]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} but latent rates differ across risks: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Λ]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[Λ]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1771em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Gamma mixing produces a negative-binomial marginal count with [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.1771em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The first variance term is Poisson process variation; the second is heterogeneity. ::web-r --- code64: c2V0LnNlZWQoMjAyNikKbl9yaXNrcyA8LSAyMDAwMAptdSA8LSAyCmsgPC0gMC44CgojIFIgdXNlcyBHYW1tYSBzaGFwZSBhbmQgc2NhbGU7IHNjYWxlID0gbXUgLyBrLgpsYXRlbnRfcmF0ZSA8LSByZ2FtbWEobl9yaXNrcywgc2hhcGUgPSBrLCBzY2FsZSA9IG11IC8gaykKY291bnRfbWl4dHVyZSA8LSBycG9pcyhuX3Jpc2tzLCBsYW1iZGEgPSBsYXRlbnRfcmF0ZSkKY291bnRfcG9pc3NvbiA8LSBycG9pcyhuX3Jpc2tzLCBsYW1iZGEgPSBtdSkKCmNhdChzcHJpbnRmKCJQb2lzc29uOiAgICAgICBtZWFuICUuM2YsIHZhcmlhbmNlICUuM2ZcbiIsCiAgICAgICAgICAgIG1lYW4oY291bnRfcG9pc3NvbiksIHZhcihjb3VudF9wb2lzc29uKSkpCmNhdChzcHJpbnRmKCJQb2lzc29uLUdhbW1hOiBtZWFuICUuM2YsIHZhcmlhbmNlICUuM2ZcbiIsCiAgICAgICAgICAgIG1lYW4oY291bnRfbWl4dHVyZSksIHZhcihjb3VudF9taXh0dXJlKSkpCmNhdChzcHJpbnRmKCJUaGVvcnkgZm9yIG1peHR1cmU6IG1lYW4gJS4zZiwgdmFyaWFuY2UgJS4zZlxuIiwKICAgICAgICAgICAgbXUsIG11ICsgbXVeMi9rKSkKCmhpc3QoY291bnRfbWl4dHVyZSwgYnJlYWtzID0gc2VxKC0wLjUsIG1heChjb3VudF9taXh0dXJlKSswLjUsIGJ5PTEpLAogICAgIHByb2JhYmlsaXR5ID0gVFJVRSwgY29sID0gIiM2MGE1ZmEiLCBib3JkZXIgPSAid2hpdGUiLAogICAgIG1haW4gPSAiQ291bnRzIHVuZGVyIGxhdGVudCByYXRlIGhldGVyb2dlbmVpdHkiLCB4bGFiID0gImNsYWltIGNvdW50Iik= layout: vertical locale: en title: Poisson–Gamma heterogeneity creates overdispersion --- :: ## 4. Mixture is not compound aggregation Do not confuse: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[mixture: ]{.mord}]{.mord.text}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[Z]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[compound sum: ]{.mord}]{.mord.text}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A mixture selects a distribution or parameter state; a compound model sums a random number of losses. An insurance portfolio can require both. ## 5. Changing mix can imitate inflation Suppose group-specific severities stay constant, but the high-cost group's weight rises from 10% to 20%: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.9]{.mord}[(]{.mopen}[2]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.1]{.mord}[(]{.mopen}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[3]{.mord}[[,]{.mpunct}]{.mord}[800]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.8]{.mord}[(]{.mopen}[2]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.2]{.mord}[(]{.mopen}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[5]{.mord}[[,]{.mpunct}]{.mord}[600.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Portfolio mean rises 47.4% with no within-group inflation. Severity trends should therefore be decomposed into price, coverage, and mix effects. ## 6. Identifiability and stability Mixture likelihoods can have multiple local optima, near-empty components, and label switching. A component with tiny weight and huge mean can dominate the tail. Use: - several initial values and convergence checks; - minimum-volume or regularisation rules justified before seeing results; - holdout performance and tail sensitivity; - stability across valuation dates; - comparison with simpler observed segmentation. ::warning{title="Flexibility is not evidence"} A two-component model can fit many shapes. It does not prove that two real claim populations exist, nor that their fitted weights will remain stable. :: ## Practice 1. A 70/30 mixture has component means 1 and 6. Find the mixture mean. 2. In a Poisson–Gamma mixture, what happens as [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[∞]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? 3. Why can changing class weights bias a trend estimated from the unsegmented mean? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.7]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.3]{.mord}[(]{.mopen}[6]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[Λ]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[/]{.mord}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}; latent rates become homogeneous and the marginal count approaches Poisson variance [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. The aggregate mean changes even when every class-specific mean is constant; composition is confounded with within-class trend. :: Next, apply these distributions to [contractually transformed losses](https://www.pengjiaxin.com/../04-reinsurance/). # Frequency and Severity Models []{#frequency-and-severity-models} Probability models turn incomplete claim experience into statements about unobserved losses. The right starting point is the insurance process: [[[]{.katex-mathml}[[[]{.strut style="height:0.7054em;vertical-align:-0.1944em;"}[[exposure]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[⟶]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7054em;vertical-align:-0.011em;"}[[claim count ]{.mord}]{.mord.text}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[⟶]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[severities ]{.mord}]{.mord.text}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⟶]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.106em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Model-selection map | Question | Data unit | First models | Essential complication | | ---------------------------------------- | ---------------------------------- | --------------------------- | -------------------------------------------- | | How large is an ordinary positive claim? | one ground-up loss | Gamma, lognormal | deductible, limit, inflation | | How heavy is the extreme tail? | threshold exceedance or event loss | Pareto, GPD | threshold uncertainty, dependence | | How many claims occur? | count plus exposure period | Poisson, negative binomial | exposure, heterogeneity, seasonality | | Which model predicts unseen claims? | training and validation samples | likelihood-based candidates | censoring, truncation, parameter uncertainty | | Why are there several claim populations? | latent or observed groups | mixture/hierarchical model | identifiability and changing mix | No distribution is “the insurance distribution.” A body model that predicts typical claims well can fail at reinsurance layers; a tail model can waste information if fitted to every small claim. ## The four objects to report For a loss [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : | Object | Definition | Insurance use | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | CDF | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[x]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | probability a loss is no larger than [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | Survival | [[]{.katex-mathml}[[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord,accent}[(]{.mopen}[x]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[x]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | attachment and exceedance probability | | Quantile | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Q]{.mord,mathnormal}[(]{.mopen}[p]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[F]{.mord,mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | VaR and scenario thresholds | | Stop-loss mean | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord,mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mclose}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2151em;vertical-align:-0.3558em;"}[[∫]{.mop,op-symbol,small-op style="margin-right:0.1945em;position:relative;top:-0.0006em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.3442em;margin-left:-0.1945em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∞]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.2579em;margin-right:0.05em;"}]{.vlist style="height:0.8593em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3558em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord,accent}[(]{.mopen}[x]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord,mathnormal}[x]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | expected unlimited layer loss above [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[d]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | The mean alone is not enough. Two models can share [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and imply radically different high quantiles and reinsurance costs. ## Observation comes before fitting For every sample, label whether losses are: - ground-up, insurer-paid, or reinsurer-paid; - exact, right-censored at a limit, or truncated below a reporting threshold; - nominal or adjusted to a common price level; - per claim, occurrence, policy, claimant, or coverage; - independent observations or claims clustered by event/policyholder. The [severity pages](https://www.pengjiaxin.com/01-loss-dist) begin with ordinary positive losses, [tail models](https://www.pengjiaxin.com/02-more-dist) focus on extremes, [count models](https://www.pengjiaxin.com/03-case-dist) use exposure, [fitting](https://www.pengjiaxin.com/04-fit-dist) respects the observation mechanism, and [mixtures](https://www.pengjiaxin.com/05-mix-dist) represent heterogeneity. ## A compact analysis protocol 1. Define the target random variable and decision. 2. Reconcile and visualise raw and transformed data. 3. Choose several plausible models from mechanism and support. 4. Fit using the correct likelihood. 5. check centre, tail, calibration, and held-out prediction separately. 6. quantify parameter and model sensitivity. 7. apply policy and reinsurance terms only on the stated loss basis. ::tip{title="Capitalisation is deliberate"} In this course, **Poisson** , **Gamma** , and **Pareto** name distributions; frequency, severity, survival, and hazard name concepts. Symbols are defined locally because parameterisations differ across textbooks and software. :: # Proportional Reinsurance []{#proportional-reinsurance} Under proportional reinsurance, premium and covered losses are shared in an agreed proportion. The transformation is simple; contract economics are not. ## 1. Quota share Let [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be the ceded proportion, [[]{.katex-mathml}[[[]{.strut style="height:0.7804em;vertical-align:-0.136em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8304em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.8991em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ced]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.038em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a 40% quota share and a £250,000 covered loss: [[[]{.katex-mathml}[[[]{.strut style="height:0.8991em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ced]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.4]{.mord}[(]{.mopen}[250]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£100]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.8436em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£150]{.mord}[[,]{.mpunct}]{.mord}[000.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If the transformation applies to every loss and no other term intervenes, [[[]{.katex-mathml}[[[]{.strut style="height:1.0936em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0936em;vertical-align:-0.25em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and positive-homogeneous measures such as VaR scale in the same way. The treaty reduces large and small losses proportionally; it does not target only the tail. ## 2. Portfolio example Suppose annual gross earned premium is £12m and ultimate covered loss is £9m. With 40% quota share: | Item | Gross | Ceded | Retained | | ------------------------- | -----: | ----: | -------: | | Premium before commission | £12.0m | £4.8m | £7.2m | | Loss | £9.0m | £3.6m | £5.4m | If the reinsurer pays a 25% ceding commission on ceded premium, commission is [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.25]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4.8]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£1.2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m. That payment can compensate acquisition and administration costs; it is not a reduction of claim loss. ## 3. Surplus share Surplus reinsurance shares a policy according to sum insured. Let the insurer retain [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} lines of size [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and let policy sum insured be [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Ignoring treaty capacity and wording complications, ceded proportion is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[max]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Example: one retention line is £100,000 and a policy has sum insured £400,000: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[400]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[100]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[75%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A £200,000 covered loss is then ceded £150,000 and retained £50,000. A policy with sum insured £80,000 remains fully retained. ::tip{title="Distinguish sum insured from loss"} Surplus participation is commonly determined from the policy's sum insured, then applied proportionally to covered loss. It is not the same as applying an excess layer directly to loss amount. :: ## 4. Commissions change incentives Common structures include: - fixed ceding commission; - sliding-scale commission linked to loss ratio; - profit commission after specified expenses and carry-forward rules. They affect net economics and incentives even when the gross/ceded loss split is unchanged. State whether a result is **loss only** or a complete underwriting cash-flow view. ## 5. When proportional cover is useful | Objective | Why quota/surplus may help | Trade-off | | ------------------------------ | ---------------------------------------- | -------------------------------------------- | | support portfolio growth | shares losses and premium from inception | cedes profitable ordinary business too | | manage all-size volatility | scales broad portfolio experience | less targeted than excess cover | | provide underwriting capacity | surplus share limits retained line | requires accurate sum-insured administration | | align reinsurer with portfolio | both share experience | commission and reporting terms matter | ## Practice 1. A 30% quota share covers a £600,000 loss. Find ceded and retained loss. 2. Gross premium is £20m, ceded share 30%, and ceding commission 20% of ceded premium. Find ceded premium and commission. 3. Why does quota share not change the coefficient of variation of loss under the simple proportional transformation? ::legacy-details{title="Answers"} 1. Ceded £180,000; retained £420,000. 2. Ceded premium £6m; commission £1.2m. 3. Both mean and SD multiply by [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, so their ratio is unchanged. Portfolio capital and cash effects can still change. :: Next, target layers of loss with [Excess-of-Loss Reinsurance](https://www.pengjiaxin.com/02-excess). # Excess-of-Loss Reinsurance []{#excess-of-loss-reinsurance} For attachment [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[a]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and limit [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the ceded amount is [[[]{.katex-mathml}[[[]{.strut style="height:0.8991em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ced]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[}]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and retained amount is [[[]{.katex-mathml}[[[]{.strut style="height:0.8436em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8991em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ced]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Equivalently, [[[]{.katex-mathml}[[[]{.strut style="height:0.8436em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:4.32em;vertical-align:-1.91em;"}[[[[[[[[]{.pstrut style="height:3.15em;"}[[⎩]]{.delimsizinginner.delim-size4}]{style="top:-2.2em;"}[[]{.pstrut style="height:3.15em;"}[]{style="height:0.316em;width:0.8889em;"}]{style="top:-2.192em;"}[[]{.pstrut style="height:3.15em;"}[[⎨]]{.delimsizinginner.delim-size4}]{style="top:-3.15em;"}[[]{.pstrut style="height:3.15em;"}[]{style="height:0.316em;width:0.8889em;"}]{style="top:-4.292em;"}[[]{.pstrut style="height:3.15em;"}[[⎧]]{.delimsizinginner.delim-size4}]{style="top:-4.6em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.008em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}]{.mord}]{style="top:-4.41em;"}[[]{.pstrut style="height:3.008em;"}[[a]{.mord.mathnormal}[,]{.mpunct}]{.mord}]{style="top:-2.97em;"}[[]{.pstrut style="height:3.008em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[,]{.mpunct}]{.mord}]{style="top:-1.53em;"}]{.vlist style="height:2.41em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.91em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}[]{.arraycolsep style="width:1em;"}[[[[[[]{.pstrut style="height:3.008em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[a]{.mord.mathnormal}[,]{.mpunct}]{.mord}]{style="top:-4.41em;"}[[]{.pstrut style="height:3.008em;"}[[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[,]{.mpunct}]{.mord}]{style="top:-2.97em;"}[[]{.pstrut style="height:3.008em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[.]{.mord}]{.mord}]{style="top:-1.53em;"}]{.vlist style="height:2.41em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.91em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}[]{.mclose.nulldelimiter}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The last line matters: after the layer is exhausted, additional loss returns to the insurer. ## 1. One limited layer For £20m xs £10m: | Input loss [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Below attachment | In layer | Above exhaustion | Ceded | Retained | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ---------------: | -------: | ---------------: | ----: | -------: | | £6m | £6m | £0m | £0m | £0m | £6m | | £18m | £10m | £8m | £0m | £8m | £10m | | £45m | £10m | £20m | £15m | £20m | £25m | For an unlimited layer, take [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[∞]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, so ceded loss is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and retained loss is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[a]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 2. Expected layer loss For a non-negative loss [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[min]{.mop}[{(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[}]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.511em;vertical-align:-0.9119em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[a]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[a]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.599em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9119em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[x]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This identity shows why layer pricing depends on the survival function around attachment and exhaustion—not merely on [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ### Exponential example If [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is Exponential with mean [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ced]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.8em;vertical-align:-0.65em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size2}]{.mopen.delimcenter style="top:0em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[a]{.mord.mathnormal.mtight}[/]{.mord.mtight}[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[(]{.mopen.mtight}[a]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[)]{.mclose.mtight}[/]{.mord.mtight}[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[)]{.delimsizing.size2}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ced]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[(]{.mopen}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£664.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is expected ceded amount **per ground-up loss**, before premium, expenses, and dependence. ## 3. The aggregation unit changes the answer Suppose one storm causes three covered risk losses: £8m, £9m, and £12m. Consider an unlimited £10m attachment. ### Per-risk layer Apply the treaty separately: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[9]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[12]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£2]{.mord}[[m]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Per-occurrence layer Aggregate the event first: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[9]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[12]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£19]{.mord}[[m]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The difference is not a modelling nuance; it is the contract's subject loss. ## 4. Aggregate stop loss Let annual aggregate covered loss be [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. An annual aggregate layer with attachment [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and limit [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} pays [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[L]{.mord.mathnormal}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It responds to a bad year caused by many claims, large claims, or both. It therefore depends on the complete aggregate distribution and any annual aggregate deductible, corridor, or limit. ## 5. Reinstatement and exhaustion An occurrence layer's limit may be consumed by one event. A reinstatement restores all or part of capacity, often for additional premium. To model annual recovery, specify: - number and size of reinstatements; - free or paid reinstatement; - pro rata as to amount and/or time; - event ordering and hours clause; - annual aggregate limit if any. Ignoring reinstatements can understate available cover; assuming unlimited reinstatements can overstate it. ## 6. Basis and counterparty risk Even a perfectly calculated layer may not protect the intended outcome because: - policy loss and treaty loss definitions differ; - multiple events fall inside or outside the hours clause; - exclusions create uncovered loss; - claims settle before recovery is received; - reinsurer default or dispute delays payment. These are part of retained risk, not footnotes to a severity formula. ## Practice For £15m xs £5m, calculate ceded and retained amounts for gross loss of: 1. £3m; 2. £12m; 3. £28m. ::legacy-details{title="Answers"} 1. Ceded £0m; retained £3m. 2. Ceded £7m; retained £5m. 3. Ceded is capped at £15m; retained £13m (£5m below attachment plus £8m above exhaustion). :: Next, see how [inflation moves losses through fixed nominal layers](https://www.pengjiaxin.com/03-inflation). # Inflation and Layer Erosion []{#inflation-and-layer-erosion} Claims inflation changes both loss projections and which losses enter a nominal reinsurance layer. It can reflect repair prices, wages, medical costs, litigation, social attitudes, supply constraints, policy terms, and portfolio mix. ## 1. Put losses on a common level If base-period loss is [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and cumulative severity index is [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0477em;vertical-align:-1.2671em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[s]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∏]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.7806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[i]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At constant annual inflation [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0436em;vertical-align:-0.25em;"}[i]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7936em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. With 10% inflation, a £80,000 base loss becomes [[[]{.katex-mathml}[[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[80]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[(]{.mopen}[1.10]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£96]{.mord}[[,]{.mpunct}]{.mord}[800]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} after two years—not £96,000, because inflation compounds. ## 2. Fixed nominal layers erode For a fixed attachment [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[a]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and limit [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Consider £50,000 xs £50,000: | Time | Indexed loss | Ceded | Retained | | ---------------------- | -----------: | ------: | -------: | | base | £80,000 | £30,000 | £50,000 | | after two years at 10% | £96,800 | £46,800 | £50,000 | More of the same real loss enters the fixed nominal layer. The reinsurer's expected frequency of attachment and expected recovery can rise even if the underlying real-risk distribution is unchanged. Once loss exceeds £100,000, this layer is exhausted and further nominal inflation again falls on the insurer. ## 3. Indexed layers preserve a real position If attachment and limit are indexed by the same [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[l]{.mord.mathnormal style="margin-right:0.0197em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0197em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[l]{.mord.mathnormal style="margin-right:0.0197em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0197em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[l]{.mord.mathnormal style="margin-right:0.0197em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0197em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[min]{.mop}[{(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[l]{.mord.mathnormal style="margin-right:0.0197em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0197em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This preserves the layer in real terms under a common proportional inflation model. In practice, claim categories inflate differently and wording may index attachment, limit, or neither. ## 4. Separate four effects Suppose observed average claim rises 15%. Decompose before applying a trend: | Effect | Example | Needed evidence | | ------------------------ | -------------------------------------- | --------------------------------------------- | | price/severity inflation | parts and labour cost more | matched claim categories and external indices | | mix | more bodily injury, fewer glass claims | claim-type weights and within-type means | | exposure | more or different vehicles insured | earned exposure and rating variables | | settlement/reporting | claims close later or earlier | report, payment, and closure lags | An unsegmented mean cannot identify these mechanisms. ### Composition example If 90% ordinary claims average £2,000 and 10% complex claims average £20,000, portfolio mean is £3,800. If the complex share rises to 20%, mean becomes £5,600—a 47.4% increase with no inflation inside either group. ## 5. Inflation creates calendar effects in reserves Claims paid in the same calendar year face similar repair and wage conditions even when they come from different accident years. In a run-off triangle, inflation can therefore align along diagonals. A development-age-only chain ladder may absorb old inflation into its factors and project it forward implicitly. That can be too high or too low when inflation regime changes. Useful responses include: - bringing incremental claims to a common price level before fitting; - modelling origin, development, and calendar effects; - explicit severity trend scenarios; - separate treatment of large or long-settling claims. Do not both pre-inflate data and add the same inflation again in future factors. ## 6. Stress the decision, not one parameter For each plausible annual trend, recalculate: 1. gross ultimate losses and reserve; 2. attachment probability; 3. expected ceded loss; 4. probability of layer exhaustion; 5. net aggregate VaR/TVaR; 6. timing and reinstatement premium. | Stress | Gross effect | Fixed layer effect | | ---------------------------- | ---------------------- | ------------------------------------ | | uniform severity +10% | all losses scale | more attachment, possible exhaustion | | only large losses +15% | centre may barely move | high layers change materially | | faster settlement | payment timing changes | cash/recovery timing changes | | high-cost class weight rises | mixture shifts | attachment frequency can jump | ## 7. Current evidence, used carefully Recent UK motor and liability publications document persistent concern about repair, wage, injury, and social inflation. They are useful external scenarios, but not plug-in parameters for Harbour Mutual: - ABI's motor claims-inflation discussion reports that its selected motor claims-cost measure grew faster than CPI over 2019–2023; it is an industry-authored summary with its own scope. - CAS research examines liability insurance inflation through year-end 2024 and emphasises line- and environment-specific effects. - ABI's 2025 payout release explicitly warns that improved data coverage limits direct absolute year-on-year comparison. The defensible use is to create and document scenarios, then calibrate with portfolio data. ## Practice 1. Inflate £120,000 for three years at 6% annually. 2. Under £100,000 xs £50,000, find ceded loss for £80,000, £120,000, and £190,000. 3. Why can a general consumer-price index be a poor claims index? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[120]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[(]{.mopen}[1.06]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£142]{.mord}[[,]{.mpunct}]{.mord}[922]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. £30,000; £70,000; and £100,000 (the layer limit), respectively. 3. Claim baskets include specialised labour, parts, medical care, litigation, and mix effects whose weights and trends differ from household consumption. :: ## Sources and further reading - [CAS — Understanding and Coping with the New Normal in Insurance Inflation (2024)](https://forum.casact.org/article/121372-understanding-and-coping-with-the-new-normal-in-insurance-inflation){rel=""nofollow""} - [CAS — Increasing Inflation on Liability Insurance: Impact as of Year-End 2024 (2025)](https://forum.casact.org/article/165011-increasing-inflation-on-liability-insurance-impact-as-of-year-end-2024){rel=""nofollow""} - [ABI — Motor claims inflation: causes and consequences (2025)](https://www.abi.org.uk/news/blog-articles/2025/9/motor-claims-inflation-causes-consequences-and-what-comes-next/){rel=""nofollow""} # Reinsurance Decision Lab []{#reinsurance-decision-lab} Harbour Mutual expects 40 claims per year. Ground-up severity is modelled as lognormal with mean about £5,000 and log-scale SD 1. Compare: - **No treaty**; - **40% quota share:** insurer retains 60% of each covered loss; - **£20,000 xs £20,000 per loss:** ceded [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. This is a loss-only comparison: premium, commission, reinstatement, expenses, counterparty default, and dependence are excluded. ## 1. Check three claims by hand | Gross claim | 40% quota ceded | Quota retained | XL ceded | XL retained | | ----------: | --------------: | -------------: | -------: | ----------: | | £10,000 | £4,000 | £6,000 | £0 | £10,000 | | £30,000 | £12,000 | £18,000 | £10,000 | £20,000 | | £70,000 | £28,000 | £42,000 | £20,000 | £50,000 | The XL layer targets medium-large claims but exposes the insurer again above £40,000. ## 2. Simulate annual outcomes ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBwYW5kYXMgYXMgcGQKaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDIwMjYpCm5feWVhcnMgPSAzMF8wMDAKZnJlcXVlbmN5ID0gNDAKbWVhbl9zZXZlcml0eSA9IDVfMDAwCnNpZ21hID0gMS4wCm11ID0gbnAubG9nKG1lYW5fc2V2ZXJpdHkpIC0gc2lnbWEqKjIgLyAyCgpncm9zcyA9IG5wLnplcm9zKG5feWVhcnMpCnF1b3RhX25ldCA9IG5wLnplcm9zKG5feWVhcnMpCnhsX25ldCA9IG5wLnplcm9zKG5feWVhcnMpCnhsX2NlZGVkID0gbnAuemVyb3Mobl95ZWFycykKCmZvciB5ZWFyLCBuIGluIGVudW1lcmF0ZShybmcucG9pc3NvbihmcmVxdWVuY3ksIHNpemU9bl95ZWFycykpOgogICAgeCA9IHJuZy5sb2dub3JtYWwobXUsIHNpZ21hLCBzaXplPW4pCiAgICBjZWRlZF94bCA9IG5wLm1pbmltdW0obnAubWF4aW11bSh4IC0gMjBfMDAwLCAwKSwgMjBfMDAwKQogICAgZ3Jvc3NbeWVhcl0gPSB4LnN1bSgpCiAgICBxdW90YV9uZXRbeWVhcl0gPSAwLjYwICogeC5zdW0oKQogICAgeGxfY2VkZWRbeWVhcl0gPSBjZWRlZF94bC5zdW0oKQogICAgeGxfbmV0W3llYXJdID0gKHggLSBjZWRlZF94bCkuc3VtKCkKCm91dGNvbWVzID0gewogICAgIkdyb3NzIjogZ3Jvc3MsCiAgICAiNDAlIHF1b3RhIG5ldCI6IHF1b3RhX25ldCwKICAgICIyMGsgeHMgMjBrIG5ldCI6IHhsX25ldCwKfQpyb3dzID0gW10KZm9yIG5hbWUsIHZhbHVlcyBpbiBvdXRjb21lcy5pdGVtcygpOgogICAgcm93cy5hcHBlbmQoWwogICAgICAgIG5hbWUsCiAgICAgICAgdmFsdWVzLm1lYW4oKSwKICAgICAgICB2YWx1ZXMuc3RkKGRkb2Y9MSksCiAgICAgICAgbnAucXVhbnRpbGUodmFsdWVzLCAuOTkpLAogICAgICAgIHZhbHVlc1t2YWx1ZXMgPj0gbnAucXVhbnRpbGUodmFsdWVzLCAuOTkpXS5tZWFuKCksCiAgICBdKQoKc3VtbWFyeSA9IHBkLkRhdGFGcmFtZShyb3dzLCBjb2x1bW5zPVsKICAgICJiYXNpcyIsICJtZWFuIiwgIlNEIiwgIlZhUl85OSIsICJUVmFSXzk5IgpdKQpwcmludChzdW1tYXJ5LnJvdW5kKDApLnRvX3N0cmluZyhpbmRleD1GYWxzZSkpCnByaW50KGYiWEwgbWVhbiBjZWRlZCBsb3NzOiDCo3t4bF9jZWRlZC5tZWFuKCk6LC4wZn0iKQpwcmludChmIlhMIGF0dGFjaGVzIGluIHsoeGxfY2VkZWQgPiAwKS5tZWFuKCk6LjElfSBvZiBzaW11bGF0ZWQgeWVhcnMiKQoKZm9yIG5hbWUsIHZhbHVlcyBpbiBvdXRjb21lcy5pdGVtcygpOgogICAgcGx0Lmhpc3QodmFsdWVzIC8gMV8wMDAsIGJpbnM9NzAsIGRlbnNpdHk9VHJ1ZSwgaGlzdHR5cGU9InN0ZXAiLAogICAgICAgICAgICAgbGluZXdpZHRoPTEuNSwgbGFiZWw9bmFtZSkKcGx0LnhsYWJlbCgiYW5udWFsIGxvc3MgKMKjMDAwKSIpCnBsdC55bGFiZWwoImRlbnNpdHkiKQpwbHQubGVnZW5kKCkKcGx0LnNob3coKQ== layout: vertical locale: en packages: numpy,pandas,matplotlib title: Gross, quota-share, and excess-of-loss outcomes --- :: Monte Carlo output varies slightly. The comparison is reproducible because the seed, sample size, distribution, and treaty functions are visible. ## 3. Interpret, do not rank mechanically | Observation | Interpretation | Missing decision input | | ---------------------------------- | --------------------------------- | ----------------------------------------- | | quota share cuts every loss by 40% | broad capital and volume transfer | ceded premium and commission | | XL focuses on claims above £20k | more tail-targeted | attachment-region fit and exhaustion risk | | annual XL recovery varies | large-claim frequency matters | dependence and event aggregation | | simulated 99% metrics differ | treaties reshape the distribution | parameter/model uncertainty | The lowest net VaR is not automatically the best treaty. Compare net underwriting result after reinsurance price and consider liquidity, counterparty, basis, and strategic constraints. ## 4. Validate the simulation For compound Poisson gross loss with independent severity, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[40]{.mord}[(]{.mopen}[5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£200]{.mord}[[,]{.mpunct}]{.mord}[000.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Also, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Simulation mean and SD should be close to analytical values within Monte Carlo error. If not, inspect parameterisation and units before interpreting tail results. ## 5. Extend one assumption at a time Try these in the cell: 1. multiply each severity by 1.10 while keeping layer terms fixed; 2. increase log-scale [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[σ]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} from 1.0 to 1.3 while preserving mean; 3. add an annual catastrophe state that increases count and severity together; 4. change the treaty to £50,000 xs £10,000; 5. add a second reinstatement-limited occurrence layer only after defining events. For each change, predict direction before running. Then explain whether mean, SD, attachment, exhaustion, VaR, or TVaR moved most. ## 6. Decision memo template Conclude in six lines: 1. portfolio and valuation basis; 2. treaties and precise loss functions; 3. gross versus net mean and tail metrics; 4. price/commission assumptions; 5. key sensitivity and data limitation; 6. recommendation and condition that would reverse it. Next, connect the transformed losses to [aggregate risk models](https://www.pengjiaxin.com/../05-risk-theory/). # Reinsurance as a Loss Transformation []{#reinsurance-as-a-loss-transformation} Reinsurance does not remove uncertainty; it reallocates specified losses. For every outcome, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9269em;vertical-align:-0.0833em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ced]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} subject to contract terms, exclusions, reinstatements, expenses, credit risk, and timing. ## Contract-first workflow 1. **Define loss:** ground-up, policy payment, event loss, or annual aggregate. 2. **Define unit:** risk, claim, occurrence, policy, or treaty year. 3. **Apply underlying terms:** deductibles, policy limits, exclusions. 4. **Apply treaty:** share, attachment, limit, aggregate deductible, and order. 5. **Aggregate consistently:** recognise claims belonging to the same occurrence. 6. **Add economics:** premium, commission, reinstatement premium, expenses, timing, and counterparty risk. 7. **Test scenarios:** inflation, event clustering, exhaustion, and wording ambiguity. ::warning{title="Wording dominates formula"} “£20m excess of £10m” is incomplete until the loss unit and basis are known. The same numbers produce different recoveries per risk, per occurrence, and in annual aggregate. :: ## Treaty map | Treaty | Core transformation | Responds most directly to | | ------------------------------------------------------------------ | -------------------------------------- | ------------------------------------------- | | [Quota share](https://www.pengjiaxin.com/01-proportional) | fixed proportion of every covered loss | capital/volume sharing across the portfolio | | [Surplus share](https://www.pengjiaxin.com/01-proportional) | share varies with retained sum insured | heterogeneous policy limits | | [Per-risk excess](https://www.pengjiaxin.com/02-excess) | layer applied to one insured risk | one large risk loss | | [Per-occurrence excess](https://www.pengjiaxin.com/02-excess) | layer applied to event aggregation | catastrophe/event accumulation | | [Aggregate excess/stop loss](https://www.pengjiaxin.com/02-excess) | layer applied to annual total | adverse annual frequency and severity | ## Layer notation used in this course For attachment [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[a]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and limit [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, ceded loss from input [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[a]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} “£20m xs £10m” means [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m and [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£20]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m: the reinsurer pays losses in the layer from £10m to £30m, before other wording effects. | Input loss | Ceded | Retained | | ---------: | ----: | -------: | | £6m | £0m | £6m | | £18m | £8m | £10m | | £45m | £20m | £25m | The insurer retains loss below attachment **and** above exhaustion. ## What “better” means A treaty can be compared on: - expected ceded loss and expected net result; - volatility and tail reduction at the chosen horizon; - probability of attachment and exhaustion; - liquidity and timing of recoveries; - basis, credit, legal, and operational risk; - premium and opportunity cost. A lower retained 99% quantile is not automatically good value; price and counterparty terms matter. Proceed from [proportional sharing](https://www.pengjiaxin.com/01-proportional) to [excess layers](https://www.pengjiaxin.com/02-excess), then study [inflation and layer erosion](https://www.pengjiaxin.com/03-inflation) and run the [treaty comparison lab](https://www.pengjiaxin.com/04-examples). # Collective Risk Model []{#collective-risk-model} Let annual claim count be [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and severities be [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Aggregate loss is [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.106em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} when [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 1. Baseline assumptions The classical compound model assumes: 1. [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are independent and identically distributed; 2. [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is independent of all [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. losses use one period, currency, and contract basis. These assumptions make the derivation possible. They are not universal insurance facts. ## 2. Mean by conditioning Given [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[n]{.mord.mathnormal}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[n]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Using the law of total expectation, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If expected count is 40 and expected severity £5,000, expected annual aggregate is £200,000. Realised loss is not fixed at that amount. ## 3. Variance by conditioning Given [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[n]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The law of total variance gives [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The first term is severity variation for a given count; the second is count variation acting through mean severity. ### Compound Poisson simplification If [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Poisson]{.mord.mathrm}]{.mop}[(]{.mopen}[λ]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For lognormal severity with mean £5,000 and log-scale SD [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0085em;vertical-align:-0.1944em;"}[£5]{.mord}[[,]{.mpunct}]{.mord}[00]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. At [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[40]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[£200]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[SD]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£52]{.mord}[[,]{.mpunct}]{.mord}[136.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## 4. Probability-generating and moment-generating functions If [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0913em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8413em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is the count PGF and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0913em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[tX]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8413em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} exists, then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[S]{.mord.mathnormal.mtight style="margin-right:0.0576em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[t]{.mord.mathnormal}[))]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For Poisson count, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[S]{.mord.mathnormal.mtight style="margin-right:0.0576em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[exp]{.mop}[{]{.mopen}[λ]{.mord.mathnormal}[(]{.mopen}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This identity supports moment derivation and analytic approximations. For heavy-tailed severities such as lognormal, the MGF is infinite for [[]{.katex-mathml}[[[]{.strut style="height:0.6542em;vertical-align:-0.0391em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; use Laplace transforms, characteristic functions, recursion, or simulation instead of forcing an MGF argument. ## 5. Distribution methods | Method | Best suited to | Main caution | | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------- | | exact convolution | small discrete counts/support | quickly becomes expensive | | Panjer recursion | discrete severity and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[a]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[b]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} count families | discretisation and grid choice | | FFT | discretised aggregate distribution | aliasing, truncation, numerical setup | | Normal/Gamma approximation | high-frequency, moderate-tail screening | can miss skew and extreme tail | | Monte Carlo | complex treaties and dependence | simulation error and rare-event inefficiency | Panjer recursion is not a new risk model; it is an algorithm for computing the compound distribution under eligible count laws and discretised severity. ## 6. Reinsurance enters at the right level For a per-loss treaty [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} retained by the insurer, [[[]{.katex-mathml}[[[]{.strut style="height:0.8436em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.106em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Replace severity moments by moments of [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. For an annual aggregate treaty [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, first construct gross [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then apply [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.8436em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[ret]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Applying an aggregate treaty claim by claim answers a different contract. ## 7. Dependence breaks the simple product If count and severity share a catastrophe state [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.1667em;"}[[\[]{.mopen.delimcenter style="top:0em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]]{.mclose}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]]{.mclose}[]]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} which need not equal [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. If high-count states also have high severity, the independence formula understates expected loss and usually understates tail risk. ## Practice 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[15]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[20]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Find [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Why can a Normal approximation produce impossible results for a low-frequency portfolio? 3. Where should a per-occurrence catastrophe treaty be applied? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[30]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}; variance [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[(]{.mopen}[20]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[15]{.mord}[(]{.mopen}[[3]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[335]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. It is symmetric and has support on negative values, while aggregate loss is non-negative and may have a large point mass at zero plus strong skew. 3. Aggregate all claims belonging to an occurrence, apply the occurrence layer, then aggregate retained occurrences over the year. :: Next, retain risk-specific structure in the [Individual Risk Model](https://www.pengjiaxin.com/02-individual). # Individual Risk Model []{#individual-risk-model} The individual model keeps each insured risk visible. For [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} policies, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[m]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} indicates whether a claim occurs and [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is its amount. The simplest form allows at most one claim per risk during the period. ## 1. One risk Let [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Bernoulli]{.mord.mathrm}]{.mop}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, independent of [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, with [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The first term is claim-size variation when a claim occurs; the second is occurrence variation. ## 2. Independent portfolio If [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are mutually independent, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[m]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[m]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Three-risk example | Risk | [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Mean claim | Claim SD | Expected loss | Loss variance (£²) | | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ---------: | -------: | ------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | A | 2% | £10,000 | £5,000 | £200 | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[2.460]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8141em;"}[1]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | B | 5% | £5,000 | £3,000 | £250 | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1.638]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8141em;"}[1]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | C | 1% | £50,000 | £30,000 | £500 | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[33.750]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8141em;"}[1]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | **Total** | | | | **£950** | **[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[37.848]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8141em;"}[1]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}** | Portfolio SD is about £6,152. Risk C supplies more than half the expected loss and almost 89% of variance. Risk contribution, not policy count, identifies concentration. ## 3. Dependence adds covariance Without independence, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.4638em;vertical-align:-1.4138em;"}[2]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[<]{.mrel.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Small positive covariance across many pairs can dominate individual variances. Sources include weather, geography, supply-chain inflation, court decisions, and shared policyholders. ### Common-shock construction Let [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} indicate a catastrophe state. Conditional on [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, risks may be independent with probabilities [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; marginally they are dependent because the same [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} shifts many probabilities. This gives a mechanism and a scenario to validate, rather than inserting one arbitrary correlation coefficient. ## 4. More than one claim per policy If a policy can have multiple claims, replace Bernoulli [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with count [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[N]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2532em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.109em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3111em;margin-left:0em;"}]{.vlist style="height:1.8394em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The portfolio becomes a sum of policy-level collective models. The individual/collective distinction is therefore about retained detail, not mutually exclusive theories. ## 5. Approximation by a collective model When [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is large and each [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is small, total claim count [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[]{.mspace style="margin-right:0.1667em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} may be approximated by Poisson with [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Severity becomes a probability-weighted mixture of risk severities. This simplifies calculation but can lose concentration and dependence information. Validate the aggregate tail, not only the mean. ## 6. Portfolio decisions The individual model is useful for: - pricing/risk classification with policy covariates; - concentration by geography or sum insured; - policy-specific deductibles and limits; - accumulation and scenario analysis; - explaining which segments drive capital. It is less useful when risk-level identifiers are unstable or the available data only support aggregate counts and severities. ## Practice 1. One risk has [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, claim mean £2,000, and claim SD £1,000. Find its expected loss and variance. 2. Two risks each have variance 4 and covariance 1. Find variance of their sum. 3. Why might a Poisson approximation preserve expected count but understate catastrophe tail? ::legacy-details{title="Answers"} 1. Mean £200; variance [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[0.1]{.mord}[(]{.mopen}[1]{.mord}[[,]{.mpunct}]{.mord}[00]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[0.1]{.mord}[(]{.mopen}[0.9]{.mord}[)]{.mclose}[(]{.mopen}[2]{.mord}[[,]{.mpunct}]{.mord}[00]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0085em;vertical-align:-0.1944em;"}[460]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[£]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[4]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[4]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. It can discard shared-event dependence, treating many claims from one catastrophe as independent arrivals. :: Verify both models in the [Computation Lab](https://www.pengjiaxin.com/03-examples). # Aggregate Risk Computation Lab []{#aggregate-risk-computation-lab} Use simulation to extend mathematics, not replace it. Each lab follows the same audit: 1. state the stochastic model and units; 2. derive available moments; 3. simulate with a fixed seed; 4. reconcile simulation with theory; 5. only then inspect tail quantities. ## Lab A — collective model in R Let [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Poisson]{.mord.mathrm}]{.mop}[(]{.mopen}[40]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and lognormal severity have mean £5,000 and log-scale SD 1. [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[40]{.mord}[(]{.mopen}[5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£200]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[SD]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.24em;vertical-align:-0.2561em;"}[[[[[[]{.pstrut style="height:3.2em;"}[[40]{.mord}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.2em;"}[[]{.pstrut style="height:3.2em;"}[]{.hide-tail style="min-width:1.02em;height:1.28em;"}]{style="top:-2.9439em;"}]{.vlist style="height:0.9839em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2561em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.24em;vertical-align:-0.2561em;"}[[[[[[]{.pstrut style="height:3.2em;"}[[40]{.mord}[(]{.mopen}[5]{.mord}[[,]{.mpunct}]{.mord}[00]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[e]{.mord.mathnormal}[)]{.mclose}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.2em;"}[[]{.pstrut style="height:3.2em;"}[]{.hide-tail style="min-width:1.02em;height:1.28em;"}]{style="top:-2.9439em;"}]{.vlist style="height:0.9839em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2561em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£52]{.mord}[[,]{.mpunct}]{.mord}[133.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::web-r --- code64: c2V0LnNlZWQoMjAyNikKbl95ZWFycyA8LSAzMDAwMApsYW1iZGEgPC0gNDAKbWVhbl94IDwtIDUwMDAKc2lnbWFfbG9nIDwtIDEKbXVfbG9nIDwtIGxvZyhtZWFuX3gpIC0gc2lnbWFfbG9nXjIgLyAyCgpjb3VudHMgPC0gcnBvaXMobl95ZWFycywgbGFtYmRhKQphZ2dyZWdhdGVfbG9zcyA8LSB2YXBwbHkoY291bnRzLCBmdW5jdGlvbihuKSB7CiAgaWYgKG4gPT0gMCkgMCBlbHNlIHN1bShybG5vcm0obiwgbWVhbmxvZyA9IG11X2xvZywgc2Rsb2cgPSBzaWdtYV9sb2cpKQp9LCBudW1lcmljKDEpKQoKdGhlb3J5X21lYW4gPC0gbGFtYmRhICogbWVhbl94CnNlY29uZF9tb21lbnRfeCA8LSBtZWFuX3heMiAqIGV4cChzaWdtYV9sb2deMikKdGhlb3J5X3NkIDwtIHNxcnQobGFtYmRhICogc2Vjb25kX21vbWVudF94KQoKY2F0KHNwcmludGYoIlRoZW9yeTogICAgIG1lYW4gwqMlMC4wZjsgU0QgwqMlMC4wZlxuIiwgdGhlb3J5X21lYW4sIHRoZW9yeV9zZCkpCmNhdChzcHJpbnRmKCJTaW11bGF0aW9uOiBtZWFuIMKjJTAuMGY7IFNEIMKjJTAuMGZcbiIsCiAgICAgICAgICAgIG1lYW4oYWdncmVnYXRlX2xvc3MpLCBzZChhZ2dyZWdhdGVfbG9zcykpKQpjYXQoc3ByaW50ZigiU2ltdWxhdGVkIDk5JSUgcXVhbnRpbGU6IMKjJTAuMGZcbiIsCiAgICAgICAgICAgIHVubmFtZShxdWFudGlsZShhZ2dyZWdhdGVfbG9zcywgMC45OSkpKSkKCmhpc3QoYWdncmVnYXRlX2xvc3MgLyAxMDAwLCBicmVha3MgPSA2MCwgY29sID0gIiM1ZWVhZDQiLCBib3JkZXIgPSAid2hpdGUiLAogICAgIG1haW4gPSAiQW5udWFsIGNvbXBvdW5kIGxvc3MiLCB4bGFiID0gImFnZ3JlZ2F0ZSBsb3NzICjCozAwMCkiKQphYmxpbmUodiA9IHRoZW9yeV9tZWFuIC8gMTAwMCwgY29sID0gIiNiOTFjMWMiLCBsd2QgPSAyKQ== layout: vertical locale: en title: "Compound Poisson–lognormal: theory versus simulation" --- :: Monte Carlo mean has standard error approximately [[]{.katex-mathml}[[[]{.strut style="height:1.06em;vertical-align:-0.25em;"}[[SD]{.mord.mathrm}]{.mop}[(]{.mopen}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[30]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.77em;"}]{.vlist style="height:0.81em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.23em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£301]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A difference of a few hundred pounds is therefore expected; a difference of £20,000 signals a problem. ## Lab B — heterogeneous individual risks in Python Simulate the three risks from the previous page. Claim severities are lognormal with the stated conditional means and SDs; risks and occurrence indicators are independent in this baseline. ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZygyMDI2KQpuX3llYXJzID0gMjAwXzAwMApwID0gbnAuYXJyYXkoWzAuMDIsIDAuMDUsIDAuMDFdKQptZWFuX2NsYWltID0gbnAuYXJyYXkoWzEwXzAwMC4sIDVfMDAwLiwgNTBfMDAwLl0pCnNkX2NsYWltID0gbnAuYXJyYXkoWzVfMDAwLiwgM18wMDAuLCAzMF8wMDAuXSkKCiMgQ29udmVydCBkZXNpcmVkIGxvZ25vcm1hbCBtZWFucyBhbmQgU0RzIGludG8gbG9nLXNjYWxlIHBhcmFtZXRlcnMuCnNpZ21hMiA9IG5wLmxvZzFwKChzZF9jbGFpbSAvIG1lYW5fY2xhaW0pICoqIDIpCm11ID0gbnAubG9nKG1lYW5fY2xhaW0pIC0gc2lnbWEyIC8gMgoKb2NjdXJzID0gcm5nLnJhbmRvbSgobl95ZWFycywgMykpIDwgcApzZXZlcml0eSA9IHJuZy5sb2dub3JtYWwobXUsIG5wLnNxcnQoc2lnbWEyKSwgc2l6ZT0obl95ZWFycywgMykpCnBvcnRmb2xpbyA9IChvY2N1cnMgKiBzZXZlcml0eSkuc3VtKGF4aXM9MSkKCnRoZW9yeV9tZWFuID0gbnAuc3VtKHAgKiBtZWFuX2NsYWltKQp0aGVvcnlfdmFyID0gbnAuc3VtKHAgKiBzZF9jbGFpbSoqMiArIHAgKiAoMS1wKSAqIG1lYW5fY2xhaW0qKjIpCnByaW50KGYiVGhlb3J5OiAgICAgbWVhbiDCo3t0aGVvcnlfbWVhbjosLjBmfTsgU0QgwqN7bnAuc3FydCh0aGVvcnlfdmFyKTosLjBmfSIpCnByaW50KGYiU2ltdWxhdGlvbjogbWVhbiDCo3twb3J0Zm9saW8ubWVhbigpOiwuMGZ9OyBTRCDCo3twb3J0Zm9saW8uc3RkKGRkb2Y9MSk6LC4wZn0iKQpwcmludChmIlplcm8tbG9zcyB5ZWFyczogeyhwb3J0Zm9saW8gPT0gMCkubWVhbigpOi4xJX0iKQoKcG9zaXRpdmUgPSBwb3J0Zm9saW9bcG9ydGZvbGlvID4gMF0KcGx0Lmhpc3QocG9zaXRpdmUgLyAxXzAwMCwgYmlucz03MCwgY29sb3I9IiM5M2M1ZmQiLCBlZGdlY29sb3I9IndoaXRlIikKcGx0LnhsYWJlbCgicG9zaXRpdmUgYW5udWFsIHBvcnRmb2xpbyBsb3NzICjCozAwMCkiKQpwbHQueWxhYmVsKCJzaW11bGF0ZWQgeWVhcnMiKQpwbHQuc2hvdygp layout: vertical locale: en packages: numpy,matplotlib title: "Individual risks: formula versus simulation" --- :: The high zero probability and long right tail make a Normal approximation poor despite matching mean and variance. ## Simulation quality checklist | Check | Minimum practice | | ----------------- | --------------------------------------------------------------------------------------- | | reproducibility | report seed, code, package versions, and sample size | | parameterisation | verify software's scale/rate and log/ordinary moments | | units | keep £, £000, and £m explicit | | Monte Carlo error | repeat seeds or estimate standard errors | | tail stability | show estimates across increasing simulation sizes | | rare events | use importance sampling or other variance reduction when crude simulation is inadequate | | model validation | compare with real holdout data, not simulation from the fitted model alone | ## Practice extensions 1. Double `n_years`; does mean error shrink roughly with [[]{.katex-mathml}[[[]{.strut style="height:1.0503em;vertical-align:-0.25em;"}[1/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[n]{.mord.mathnormal style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.7603em;"}]{.vlist style="height:0.8003em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2397em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? 2. In Lab A, change severity log-SD from 1 to 1.4 while preserving mean. Predict mean, SD, and 99% quantile before running. 3. In Lab B, make A and C occurrence indicators share a catastrophe state. Which analytical term must be added? ::legacy-details{title="Expected reasoning"} 1. Not exactly in one run, but typical Monte Carlo standard error scales as [[]{.katex-mathml}[[[]{.strut style="height:1.0503em;vertical-align:-0.25em;"}[1/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[n]{.mord.mathnormal style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.7603em;"}]{.vlist style="height:0.8003em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2397em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Mean remains about £200,000; SD and tail quantiles rise because [[]{.katex-mathml}[[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} rises. 3. Add [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[C]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to portfolio variance; the full tail also changes and cannot be recovered from variance alone. :: Continue to [Tail Risk and Capital](https://www.pengjiaxin.com/04-tail-capital). # Tail Risk, Dependence, and Capital []{#tail-risk-dependence-and-capital} Expected loss supports pricing and budgeting; capital is concerned with adverse outcomes around and beyond selected tolerances. First define the loss variable [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} —gross claims, net claims, underwriting loss, or change in own funds—and its horizon. ## 1. VaR and TVaR At confidence level [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[VaR]{.mord.mathrm}]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[in [f]{style="margin-right:0.0778em;"}]{.mop}[{]{.mopen}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a continuous loss distribution, VaR is its [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} quantile. Tail Value at Risk is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[TVaR]{.mord.mathrm}]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.476em;vertical-align:-0.9119em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.564em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9119em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[VaR]{.mord.mathrm}]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For continuous distributions it equals [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[VaR]{.mord.mathrm}]{.mop}[[[[[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[(]{.mopen}[L]{.mord.mathnormal}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. | Measure | Reads as | Main limitation | | -------- | -------------------------------------------------- | --------------------------------------------------------------------- | | VaR 99% | threshold exceeded in about 1% of modelled periods | says nothing about how bad exceedances are; not generally subadditive | | TVaR 99% | mean loss in the worst 1% under a continuous model | more tail-sensitive and data/model hungry | Neither is “capital” until premiums, expenses, assets, management actions, horizon, and decision rules are specified. ## 2. Empirical estimation For simulated losses [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[M]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : 1. sort the losses; 2. use a documented quantile convention for VaR; 3. average losses beyond the selected threshold for a simple continuous-sample TVaR estimate; 4. quantify Monte Carlo error—especially when [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[)]{.mclose}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is small. At 99.5%, 10,000 simulations leave only about 50 tail observations. That is usually weak evidence for a stable TVaR. ## 3. Dependence can erase apparent diversification Two regions can have identical marginal count and severity models but share catastrophe states. The next experiment compares independent regional states with one shared state while preserving each region's marginal distribution. ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBwYW5kYXMgYXMgcGQKaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDIwMjYpCm5feWVhcnMgPSAzMF8wMDAKcF9jYXQgPSAwLjAzCgpkZWYgcmVnaW9uX2xvc3NlcyhzdGF0ZXMpOgogICAgb3V0ID0gbnAuemVyb3MobGVuKHN0YXRlcykpCiAgICBmb3IgaSwgc3RhdGUgaW4gZW51bWVyYXRlKHN0YXRlcyk6CiAgICAgICAgY291bnRfbWVhbiA9IDgwIGlmIHN0YXRlIGVsc2UgMjAKICAgICAgICBzZXZlcml0eV9tZWFuID0gN181MDAgaWYgc3RhdGUgZWxzZSA1XzAwMAogICAgICAgIHNpZ21hID0gMC44CiAgICAgICAgbXUgPSBucC5sb2coc2V2ZXJpdHlfbWVhbikgLSBzaWdtYSoqMiAvIDIKICAgICAgICBuID0gcm5nLnBvaXNzb24oY291bnRfbWVhbikKICAgICAgICBvdXRbaV0gPSBybmcubG9nbm9ybWFsKG11LCBzaWdtYSwgc2l6ZT1uKS5zdW0oKQogICAgcmV0dXJuIG91dAoKIyBTYW1lIEJlcm5vdWxsaSBjYXRhc3Ryb3BoZSBwcm9iYWJpbGl0eSBmb3IgZXZlcnkgcmVnaW9uLgpzdGF0ZV9hID0gcm5nLnJhbmRvbShuX3llYXJzKSA8IHBfY2F0CnN0YXRlX2JfaW5kZXBlbmRlbnQgPSBybmcucmFuZG9tKG5feWVhcnMpIDwgcF9jYXQKc3RhdGVfY29tbW9uID0gcm5nLnJhbmRvbShuX3llYXJzKSA8IHBfY2F0Cgp0b3RhbF9pbmRlcGVuZGVudCA9IHJlZ2lvbl9sb3NzZXMoc3RhdGVfYSkgKyByZWdpb25fbG9zc2VzKHN0YXRlX2JfaW5kZXBlbmRlbnQpCnRvdGFsX2NvbW1vbiA9IHJlZ2lvbl9sb3NzZXMoc3RhdGVfY29tbW9uKSArIHJlZ2lvbl9sb3NzZXMoc3RhdGVfY29tbW9uKQoKZGVmIG1ldHJpY3MoeCk6CiAgICBxID0gbnAucXVhbnRpbGUoeCwgLjk5KQogICAgcmV0dXJuIFt4Lm1lYW4oKSwgeC5zdGQoZGRvZj0xKSwgcSwgeFt4ID49IHFdLm1lYW4oKV0KCnN1bW1hcnkgPSBwZC5EYXRhRnJhbWUoCiAgICBbbWV0cmljcyh0b3RhbF9pbmRlcGVuZGVudCksIG1ldHJpY3ModG90YWxfY29tbW9uKV0sCiAgICBpbmRleD1bImluZGVwZW5kZW50IHN0YXRlcyIsICJzaGFyZWQgY2F0YXN0cm9waGUgc3RhdGUiXSwKICAgIGNvbHVtbnM9WyJtZWFuIiwgIlNEIiwgIlZhUl85OSIsICJUVmFSXzk5Il0sCikKcHJpbnQoc3VtbWFyeS5yb3VuZCgwKS50b19zdHJpbmcoKSkKCmZvciBsYWJlbCwgdmFsdWVzIGluIFsoImluZGVwZW5kZW50IiwgdG90YWxfaW5kZXBlbmRlbnQpLCAoInNoYXJlZCBzdGF0ZSIsIHRvdGFsX2NvbW1vbildOgogICAgb3JkZXJlZCA9IG5wLnNvcnQodmFsdWVzKQogICAgc3Vydml2YWwgPSAxIC0gbnAuYXJhbmdlKDEsIGxlbih2YWx1ZXMpKzEpIC8gKGxlbih2YWx1ZXMpKzEpCiAgICBwbHQuc2VtaWxvZ3kob3JkZXJlZCAvIDFfMDAwLCBzdXJ2aXZhbCwgbGFiZWw9bGFiZWwpCnBsdC54bGFiZWwoInR3by1yZWdpb24gYWdncmVnYXRlIGxvc3MgKMKjMDAwKSIpCnBsdC55bGFiZWwoImVtcGlyaWNhbCBzdXJ2aXZhbCBwcm9iYWJpbGl0eSIpCnBsdC5sZWdlbmQoKQpwbHQuc2hvdygp layout: vertical locale: en packages: numpy,pandas,matplotlib title: Same marginals, different dependence --- :: The marginal model for each region is unchanged. Only dependence changes, yet aggregate tail risk should increase materially under the shared state. ## 4. Reinsurance and capital Calculate risk measures on the correctly transformed net loss: [[[]{.katex-mathml}[[[]{.strut style="height:0.8436em;"}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[[net]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7977em;vertical-align:-0.0833em;"}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[[gross]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[[gross]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[reinsurance premium and costs]{.mord}]{.mord.text}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} must implement the treaty at its contract unit. Then examine: - gross and net expected result; - gross and net VaR/TVaR; - attachment and exhaustion probability; - basis and counterparty scenarios; - model sensitivity near the layer. Ignoring reinsurance price makes every ceded layer look beneficial. ## 5. Parameter and model risk Tail results are functions of estimated inputs: [[[]{.katex-mathml}[[[]{.strut style="height:1.1844em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are parameters and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is model structure. A professional analysis varies: - frequency trend and catastrophe rate; - severity tail family and threshold; - inflation and portfolio mix; - dependence/common-shock structure; - treaty wording, exhaustion, and default; - reserve and premium uncertainty. Report model spread alongside simulation error. Running more simulations reduces only Monte Carlo error. ## 6. Current catastrophe evidence Swiss Re Institute's 2025 catastrophe estimate—USD 220bn economic losses, 49% insured, and 92% of insured losses from secondary perils—motivates repeated-event and regional-dependence scenarios. It does not supply Harbour Mutual's catastrophe probability, severity tail, or correlation. Use event catalogues and insurer exposure to calibrate; use current publications to challenge scenario completeness. ## 7. Regulatory boundary Classical aggregate models and VaR/TVaR are analytical building blocks. They are not, by themselves: - an IFRS 17 insurance-contract measurement; - a Solvency UK Solvency Capital Requirement; - a complete internal model or Own Risk and Solvency Assessment. Solvency UK reporting applies for reporting dates from 31 December 2024, and the PRA's current supervisory statements define requirements within a broader legal and governance framework. Always verify the current rulebook and firm permissions; do not infer compliance from a classroom percentile. ## Practice 1. A loss sample has VaR [[]{.katex-mathml}[[[]{.strut style="height:0.5169em;vertical-align:-0.15em;"}[[][[[[[[]{.pstrut style="height:2.7em;"}[[[99]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m and TVaR [[]{.katex-mathml}[[[]{.strut style="height:0.5169em;vertical-align:-0.15em;"}[[][[[[[[]{.pstrut style="height:2.7em;"}[[[99]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£18]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} m. Explain the difference in one sentence. 2. Why does doubling simulations not solve tail-model uncertainty? 3. Two portfolios have zero linear correlation. Does that prove tail independence? ::legacy-details{title="Answers"} 1. £10m is the modelled 99th-percentile threshold, while £18m is the mean loss in the corresponding worst tail under the stated convention. 2. It reduces Monte Carlo error conditional on the fitted model, not error from the wrong tail family, parameters, or dependence structure. 3. No. Non-linear or tail dependence can remain even when covariance is zero. :: ## Sources and further reading - Artzner, P., Delbaen, F., Eber, J.-M., and Heath, D. (1999), “Coherent Measures of Risk,” *Mathematical Finance*, 9(3), 203–228. - [Bank of England — Solvency II/UK capital requirement supervisory statement](https://www.bankofengland.co.uk/prudential-regulation/publication/2015/solvency2-the-solvency-and-minimum-capital-requirements-ss){rel=""nofollow""} - [Bank of England — Solvency UK insurance reporting](https://www.bankofengland.co.uk/prudential-regulation/regulatory-reporting/regulatory-reporting-insurance-sector){rel=""nofollow""} - [Swiss Re Institute — natural catastrophes in 2025](https://www.swissre.com/press-release/Wildfires-storms-floods-contribute-to-record-92-of-global-insured-losses-in-2025-says-Swiss-Re-Institute/7b39b1a5-b878-4a55-a5ff-bf5aa561a675){rel=""nofollow""} Next, move from a one-period loss distribution to [surplus paths and ruin](https://www.pengjiaxin.com/../06-ruin-theory/). # Aggregate Risk and Capital []{#aggregate-risk-and-capital} The previous modules modelled claim pieces. Risk theory combines them into a portfolio total and asks how its centre and tail change under dependence and reinsurance. Two constructions answer different questions: | Model | Random sum | Natural use | | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------- | | [Collective model](https://www.pengjiaxin.com/01-collective) | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord,mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2809em;vertical-align:-0.2997em;"}[[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord,mathnormal,mtight}[=]{.mrel,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[N]{.mord,mathnormal,mtight style="margin-right:0.109em;"}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.9812em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | portfolio count and severity are primary | | [Individual model](https://www.pengjiaxin.com/02-individual) | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord,mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.104em;vertical-align:-0.2997em;"}[[∑]{.mop,op-symbol,small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord,mathnormal,mtight}[=]{.mrel,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[m]{.mord,mathnormal,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.8043em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[I]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[B]{.mord,mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | identified risks have distinct claim probabilities/benefits | Both can be extended with covariates, multiple claims, dependence, inflation, and reinsurance. Their simplifying assumptions should be selected for the decision, not because one formula is familiar. ## The modelling chain :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRVsiRXhwb3N1cmUgYW5kIHJpc2sgbWl4Il0gLS0+IE5bIkZyZXF1ZW5jeSJdCiAgRSAtLT4gWFsiU2V2ZXJpdHkiXQogIE4gLS0+IFNbIkdyb3NzIGFnZ3JlZ2F0ZSBTIl0KICBYIC0tPiBTCiAgRFsiRGVwZW5kZW5jZSAvIGV2ZW50IHN0YXRlIl0gLS0+IE4KICBEIC0tPiBYCiAgUyAtLT4gVFsiVHJlYXR5IHRyYW5zZm9ybWF0aW9uIl0KICBUIC0tPiBMWyJOZXQgYW5udWFsIGxvc3MiXQogIEwgLS0+IE1bIk1lYW4sIHZhcmlhbmNlLCBWYVIsIFRWYVIiXQogIE0gLS0+IEtbIkRlY2lzaW9uIGFuZCBsaW1pdGF0aW9ucyJd" locale="en"} ## Questions before calculation 1. Is the horizon month, accident year, underwriting year, or ultimate runoff? 2. Does [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} count claims, policies, events, or payments? 3. Are severities iid and independent of count? If not, conditional on what state might they be? 4. Is loss gross or net of policy terms and reinsurance? 5. Are inflation, expenses, premium, and investment income included? 6. Is the output an expected cost, a pricing margin, economic capital evidence, or a regulatory input? ## Learning sequence 1. Derive compound-sum moments in [Collective Risk](https://www.pengjiaxin.com/01-collective). 2. Retain risk-level heterogeneity in [Individual Risk](https://www.pengjiaxin.com/02-individual). 3. Reconcile formulas and simulation in the [Computation Lab](https://www.pengjiaxin.com/03-examples). 4. Add tail measures and common shocks in [Tail Risk and Capital](https://www.pengjiaxin.com/04-tail-capital). ::tip{title="One core habit"} Before trusting a simulation, derive every moment that is available analytically. A mismatch usually reveals a parameterisation, unit, or coding error. :: # Finite-Time Ruin Simulation []{#finite-time-ruin-simulation} Closed-form ultimate results are rare. Event-driven Monte Carlo can estimate [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[u]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[]{.pstrut style="height:3em;"}[[[0]{.mord.mtight}[≤]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[≤]{.mrel.mtight}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3557em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8395em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} by checking surplus immediately after every claim—the only times a classical path can jump below zero. ## 1. Model and treaty Use the Exponential example: - [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£100]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}; - [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[40]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} claims/year; - mean gross severity £5,000; - gross premium rate £240,000/year. Compare an unlimited £20,000 per-loss retention. For Exponential severity, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0585em;vertical-align:-0.1944em;"}[5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£91.58]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} per ground-up claim. If illustrative reinsurance premium is 115% of expected ceded loss, [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[e]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[240]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1.15]{.mord}[(]{.mopen}[40]{.mord}[)]{.mclose}[(]{.mopen}[91.58]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[£235]{.mord}[[,]{.mpunct}]{.mord}[787]{.mord}[[/year]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This simple premium rule excludes expenses, brokerage, capital cost, and market pricing; it is visible so the comparison is not “free cover.” ## 2. Run event-driven simulation ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBwYW5kYXMgYXMgcGQKaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDIwMjYpCnUgPSAxMDBfMDAwCmxhbSA9IDQwCm1lYW5feCA9IDVfMDAwCmNfZ3Jvc3MgPSAyNDBfMDAwCnJldGVudGlvbiA9IDIwXzAwMApleHBlY3RlZF9jZWRlZF9wZXJfY2xhaW0gPSBtZWFuX3ggKiBucC5leHAoLXJldGVudGlvbiAvIG1lYW5feCkKY19uZXQgPSBjX2dyb3NzIC0gMS4xNSAqIGxhbSAqIGV4cGVjdGVkX2NlZGVkX3Blcl9jbGFpbQoKZGVmIGVzdGltYXRlX3J1aW4oaG9yaXpvbiwgbl9wYXRocyk6CiAgICBncm9zc19ydWluID0gbnAuemVyb3Mobl9wYXRocywgZHR5cGU9Ym9vbCkKICAgIG5ldF9ydWluID0gbnAuemVyb3Mobl9wYXRocywgZHR5cGU9Ym9vbCkKICAgIGZvciBwYXRoIGluIHJhbmdlKG5fcGF0aHMpOgogICAgICAgIG4gPSBybmcucG9pc3NvbihsYW0gKiBob3Jpem9uKQogICAgICAgIHRpbWVzID0gbnAuc29ydChybmcudW5pZm9ybSgwLCBob3Jpem9uLCBzaXplPW4pKQogICAgICAgIGNsYWltcyA9IHJuZy5leHBvbmVudGlhbChtZWFuX3gsIHNpemU9bikKICAgICAgICBncm9zc19hZnRlcl9jbGFpbSA9IHUgKyBjX2dyb3NzICogdGltZXMgLSBucC5jdW1zdW0oY2xhaW1zKQogICAgICAgIG5ldF9hZnRlcl9jbGFpbSA9IHUgKyBjX25ldCAqIHRpbWVzIC0gbnAuY3Vtc3VtKG5wLm1pbmltdW0oY2xhaW1zLCByZXRlbnRpb24pKQogICAgICAgIGdyb3NzX3J1aW5bcGF0aF0gPSBucC5hbnkoZ3Jvc3NfYWZ0ZXJfY2xhaW0gPCAwKQogICAgICAgIG5ldF9ydWluW3BhdGhdID0gbnAuYW55KG5ldF9hZnRlcl9jbGFpbSA8IDApCiAgICByZXR1cm4gZ3Jvc3NfcnVpbiwgbmV0X3J1aW4KCnJvd3MgPSBbXQpmb3IgaG9yaXpvbiwgcGF0aHMgaW4gWygxLCAzMF8wMDApLCAoNSwgMjBfMDAwKSwgKDIwLCAxMF8wMDApXToKICAgIGdyb3NzLCBuZXQgPSBlc3RpbWF0ZV9ydWluKGhvcml6b24sIHBhdGhzKQogICAgZm9yIGxhYmVsLCBpbmRpY2F0b3IgaW4gWygiZ3Jvc3MiLCBncm9zcyksICgibmV0IG9mIFhMIiwgbmV0KV06CiAgICAgICAgcCA9IGluZGljYXRvci5tZWFuKCkKICAgICAgICBzZSA9IG5wLnNxcnQocCAqICgxLXApIC8gcGF0aHMpCiAgICAgICAgcm93cy5hcHBlbmQoW2hvcml6b24sIGxhYmVsLCBwYXRocywgcCwgbWF4KDAsIHAtMS45NipzZSksIG1pbigxLCBwKzEuOTYqc2UpXSkKCnJlc3VsdCA9IHBkLkRhdGFGcmFtZShyb3dzLCBjb2x1bW5zPVsieWVhcnMiLCAiYmFzaXMiLCAicGF0aHMiLCAiZXN0aW1hdGUiLCAiQ0lfbG93IiwgIkNJX2hpZ2giXSkKZm9yIGNvbCBpbiBbImVzdGltYXRlIiwgIkNJX2xvdyIsICJDSV9oaWdoIl06CiAgICByZXN1bHRbY29sXSA9IHJlc3VsdFtjb2xdLm1hcChsYW1iZGEgejogZiJ7ejouMyV9IikKcHJpbnQoZiJJbGx1c3RyYXRpdmUgbmV0IHByZW1pdW0gcmF0ZTogwqN7Y19uZXQ6LC4wZn0veWVhciIpCnByaW50KHJlc3VsdC50b19zdHJpbmcoaW5kZXg9RmFsc2UpKQoKIyBQbG90IGEgZmV3IGdyb3NzIHBhdGhzOiBwcmVtaXVtIHJpc2VzIGNvbnRpbnVvdXNseSBhbmQgY2xhaW1zIGp1bXAgZG93bi4KZm9yIF8gaW4gcmFuZ2UoMTIpOgogICAgbiA9IHJuZy5wb2lzc29uKGxhbSAqIDUpCiAgICB0aW1lcyA9IG5wLnNvcnQocm5nLnVuaWZvcm0oMCwgNSwgc2l6ZT1uKSkKICAgIGNsYWltcyA9IHJuZy5leHBvbmVudGlhbChtZWFuX3gsIHNpemU9bikKICAgIGN1bXVsYXRpdmVfYmVmb3JlID0gbnAucl9bMCwgbnAuY3Vtc3VtKGNsYWltcylbOi0xXV0KICAgIGJlZm9yZV9jbGFpbSA9IHUgKyBjX2dyb3NzICogdGltZXMgLSBjdW11bGF0aXZlX2JlZm9yZQogICAgYWZ0ZXJfY2xhaW0gPSBiZWZvcmVfY2xhaW0gLSBjbGFpbXMKICAgIHRfcGxvdCA9IG5wLnJfWzAsIG5wLnJlcGVhdCh0aW1lcywgMiksIDVdCiAgICBzdXJwbHVzID0gbnAucl9bdSwgbnAuY29sdW1uX3N0YWNrKFtiZWZvcmVfY2xhaW0sIGFmdGVyX2NsYWltXSkucmF2ZWwoKSwKICAgICAgICAgICAgICAgICAgICB1ICsgY19ncm9zcyAqIDUgLSBjbGFpbXMuc3VtKCldCiAgICBwbHQucGxvdCh0X3Bsb3QsIHN1cnBsdXMgLyAxXzAwMCwgYWxwaGE9LjU1KQpwbHQuYXhobGluZSgwLCBjb2xvcj0iYmxhY2siLCBsaW5ld2lkdGg9MSkKcGx0LnhsYWJlbCgieWVhcnMiKQpwbHQueWxhYmVsKCJncm9zcyBzdXJwbHVzICjCozAwMCkiKQpwbHQuc2hvdygp layout: vertical locale: en packages: numpy,pandas,matplotlib title: Finite-horizon gross and net ruin --- :: For comparison, the exact gross **ultimate** probability under these Exponential assumptions is about 2.97%. Each gross finite-horizon estimate should not exceed it beyond Monte Carlo noise. ## 3. Why endpoint simulation is wrong Calculating only [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} misses paths that became negative before [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and later recovered. Store the running minimum or evaluate every downward jump. ## 4. Interpret the confidence interval narrowly The displayed interval approximates uncertainty from a finite Bernoulli Monte Carlo sample, conditional on all model inputs. It excludes: - estimation error in [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and severity; - tail-family and inflation uncertainty; - catastrophe dependence; - reinsurance pricing and default uncertainty; - model omissions such as expenses and assets. More paths narrow simulation error only. ## 5. Validation ladder 1. Verify [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and simulated severity mean. 2. Reconcile one-year aggregate moments with compound-Poisson formulas. 3. For Exponential severity, compare long-horizon gross simulation with the exact 2.97% result. 4. Increase path count and report stability. 5. Test heavy-tail and common-shock alternatives. 6. Compare net results with gross using a defensible reinsurance premium. ## 6. Scenario exercises Predict direction, change one input, then run: 1. reduce initial capital from £100,000 to £60,000; 2. replace Exponential severity with a same-mean lognormal distribution; 3. add 5% annual severity inflation without repricing premium; 4. cluster claims in a catastrophe state; 5. delay reinsurance recoveries by six months. The final two require a richer cash-flow process; do not fake them by changing only mean severity. ## Practice 1. If estimated ruin frequency is 1% from 10,000 paths, approximate its Monte Carlo SE. 2. Why should gross and net simulations use common random numbers when comparing treaties? 3. Why can a same-mean heavy-tailed severity increase ruin probability? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1.24em;vertical-align:-0.305em;"}[[[[[[]{.pstrut style="height:3.2em;"}[[0.01]{.mord}[(]{.mopen}[0.99]{.mord}[)]{.mclose}[/10]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord style="padding-left:1em;"}]{.svg-align style="top:-3.2em;"}[[]{.pstrut style="height:3.2em;"}[]{.hide-tail style="min-width:1.02em;height:1.28em;"}]{style="top:-2.895em;"}]{.vlist style="height:0.935em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.305em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.000995]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, about 0.10 percentage points. 2. Applying both treaties to the same simulated claims reduces noise in their difference. 3. More probability is shifted to very large early claims that can cross zero before premium accumulates. :: Finish by integrating the full course in the [Portfolio Risk Capstone](https://www.pengjiaxin.com/../07-capstone/). # Surplus and Ruin Theory []{#surplus-and-ruin-theory} Aggregate risk describes one period. Ruin theory studies an insurer's **path through time**: a firm can fail before an apparently favourable long-run average is realised. ## 1. Classical Cramér–Lundberg model Let [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6984em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.2387em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}[(]{.mopen.mtight}[t]{.mord.mathnormal.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.386em;margin-left:0em;"}]{.vlist style="height:1.961em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where: | Symbol | Meaning | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [[]{.katex-mathml}[[[]{.strut style="height:0.7719em;vertical-align:-0.136em;"}[u]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | initial surplus/capital | | [[]{.katex-mathml}[[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[c]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | premium income rate, net of whatever costs the model includes | | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord,mathnormal style="margin-right:0.109em;"}[(]{.mopen}[t]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Poisson claim count with intensity [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | iid positive claim severities, independent of [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord,mathnormal style="margin-right:0.109em;"}[(]{.mopen}[t]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Between claims, surplus rises linearly; at claim times, it jumps downward. The time of ruin is [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[in [f]{style="margin-right:0.0778em;"}]{.mop}[{]{.mopen}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Two probabilities must not be confused: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[u]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∞]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Finite-horizon ruin is usually smaller than ultimate ruin and often closer to an operational planning question. ## 2. Net profit condition Expected claim outflow per unit time is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. For surplus to have positive drift, [[[]{.katex-mathml}[[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Write [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is premium loading in this simplified model. ::warning{title="Positive drift is not safety"} Even when expected premium exceeds expected claims, one early large loss can cause ruin. The condition supports a non-trivial ultimate result; it does not imply a small finite-horizon probability. :: ## 3. Adjustment coefficient and Lundberg bound If the severity MGF exists for positive arguments, the adjustment coefficient [[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} solves [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[{]{.mopen}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[c]{.mord.mathnormal}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Under the classical assumptions, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8913em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[R]{.mord.mathnormal.mtight style="margin-right:0.0077em;"}[u]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} summarises premium loading and severity-tail behaviour. A larger [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} gives faster exponential decay of the bound with initial capital. This tool can fail for heavy-tailed severities whose MGF is infinite for all [[]{.katex-mathml}[[[]{.strut style="height:0.6542em;vertical-align:-0.0391em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Failure of the equation is information about the model, not a numerical inconvenience to ignore. ## 4. Exact Exponential example Suppose: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Poisson]{.mord.mathrm}]{.mop}[(]{.mopen}[40]{.mord}[t]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and premium loading is 20%, so [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1.2]{.mord}[(]{.mopen}[40]{.mord}[)]{.mclose}[(]{.mopen}[5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£240]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[[ per year]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For Exponential severity with rate [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the adjustment coefficient is [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[c]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[λ]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.0002]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[240]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[40]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.00003333.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The exact ultimate ruin probability is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0858em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[R]{.mord.mathnormal.mtight style="margin-right:0.0077em;"}[u]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.113em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[c]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At initial capital [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£100]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[100]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[3.3333]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[2.97%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The Lundberg bound is [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[3.3333]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[3.57%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The exact result depends on Exponential severity; the bound depends on the broader classical assumptions and existence of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 5. How assumptions change the answer | Classical assumption | Practical complication | Direction is not automatic | | ---------------------------- | -------------------------------------- | -------------------------------------------------- | | constant premium rate | renewals, rate changes, expenses | higher gross premium may accompany higher exposure | | Poisson independent arrivals | catastrophe clustering and seasonality | clustering usually worsens short-horizon paths | | iid severity | inflation, limits, mix, trend | changing tail can dominate average trend | | no investment return | stochastic assets and liquidity | return can help or introduce market dependence | | immediate known payment | reporting and settlement delays | accounting insolvency and cash ruin differ | | no reinsurance default | delayed/disputed recoveries | nominal cover can overstate available liquidity | ## 6. Reinsurance in the surplus process For retained claim [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and net premium rate [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[e]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.0936em;vertical-align:-0.25em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[e]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8436em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7651em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[e]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.2387em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}[(]{.mopen.mtight}[t]{.mord.mathnormal.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.386em;margin-left:0em;"}]{.vlist style="height:1.961em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Reinsurance reduces claim severity but also costs premium. Comparing gross [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with net [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} while leaving [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} unchanged overstates the economic benefit. For occurrence cover, the process must group claims into events before applying [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 7. What classical ruin is—and is not Ruin theory is valuable for: - understanding path dependence and timing; - studying the interaction of premium loading, capital, and claim tails; - comparing finite and ultimate horizons; - designing stress tests and simulation checks. It is not by itself IFRS 17 measurement, a Solvency UK SCR calculation, liquidity regulation, or proof of firm viability. Real decisions add reserving, expenses, taxes, assets, management actions, legal entities, and governance. Proceed to the [Finite-Time Simulation Lab](https://www.pengjiaxin.com/01-finite-time-simulation) to estimate path probabilities directly. ## Practice 1. [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£4]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£44]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} per year. Find loading [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Why is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[10]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} not generally equal to [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[10]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? 3. If [[]{.katex-mathml}[[[]{.strut style="height:0.7719em;vertical-align:-0.136em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, what does the long-run drift imply in the classical model? ::legacy-details{title="Answers"} 1. Expected claims are £40,000; [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[40]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, so [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[10%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Surplus may cross below zero before year 10 and later recover; ruin records the first crossing, not only the endpoint. 3. Drift is non-positive; under the usual conditions ultimate ruin occurs with probability one. :: ## Further reading - Asmussen, S. and Albrecher, H. (2010), *Ruin Probabilities*, 2nd ed. - Dickson, D. C. M. (2016), *Insurance Risk and Ruin*, 2nd ed. # Portfolio Risk Capstone []{#portfolio-risk-capstone} This capstone asks for one decision: **what reserve, reinsurance structure, and capital evidence should Harbour Mutual take to its risk committee?** The answer must connect every number to a loss definition and information date. ## Case file Harbour Mutual is a fictional UK motor insurer. Inputs are synthetic and intentionally incomplete so that judgement is visible. ### A. Existing claims at 31 December 2023 Cumulative paid loss (£m): | AY | Dev 0 | Dev 1 | Dev 2 | Dev 3 | | ---- | ----: | ----: | ----: | ----: | | 2020 | 100 | 180 | 240 | 280 | | 2021 | 120 | 220 | 300 | — | | 2022 | 140 | 260 | — | — | | 2023 | 160 | — | — | — | Earned premium (£m) is 324, 365, 380, and 580 respectively. Pricing's expected loss ratio is 86%. ### B. Prospective 2024 portfolio | Input | Central assumption | Stress | | ----------------------- | ----------------------: | --------------------------: | | Earned exposure | 3,000,000 vehicle-years | ±10% | | Claim frequency | 0.10 per vehicle-year | 0.09–0.12 | | Mean ground-up severity | £5,000 | +10% and +20% | | Lognormal log-SD | 1.0 | 0.8–1.3 | | Catastrophe state | not in baseline | student-defined, documented | Baseline expected prospective gross loss is [[[]{.katex-mathml}[[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[3]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[£5]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£1.5]{.mord}[[bn]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is **future 2024 risk**. It must not be added to the reserve for pre-2024 accidents unless the requested financial view explicitly combines them. ### C. Treaty candidates 1. no reinsurance; 2. 40% quota share; 3. £20,000 xs £20,000 per loss; 4. one student-designed occurrence or aggregate layer with complete wording assumptions. Market premium is deliberately absent. State the break-even ceded loss first, then identify what quotation or pricing assumptions are needed for a recommendation. ## Task 1 — Reserve past events Reproduce and explain: | Method | Central reserve indication | | ------------------------------- | -------------------------: | | Chain ladder | £501.5m | | Bornhuetter–Ferguson | about £490.2m | | Frequency–severity illustration | about £499.7m | Then: 1. validate the data contract; 2. show factor/prior selections and one sensitivity each; 3. backtest at least one historical diagonal; 4. select a central estimate or range; 5. distinguish process, parameter, model, and data uncertainty. The selected answer need not equal any single method, but the reconciliation must be numerical. ## Task 2 — Model prospective claims Specify: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.106em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[N]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Minimum analysis: - justify Poisson or negative-binomial frequency using exposure and dispersion; - compare at least two same-mean severity families in the tail; - state deductible, limit, inflation, and event treatment; - use a chronological or scenario holdout concept; - report expected loss and at least one 99% tail measure. ### Short explanation standard Weak: “Lognormal fits insurance claims.” Strong: “Gamma and lognormal models share the £5,000 mean, but the lognormal's 99% quantile is materially higher; because the decision prices a £20,000 attachment, survival calibration around £20,000–£40,000 receives more weight than histogram fit below £5,000.” ## Task 3 — Apply treaties exactly Write every candidate as a function before simulation: [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[QS]{.mord.mathnormal.mtight style="margin-right:0.0576em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0.6]{.mord}[x]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}[L]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{(]{.mopen}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[+]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[20]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For the designed treaty, state: - per-risk, per-occurrence, or annual-aggregate subject loss; - attachment, limit, and annual aggregate limit; - reinstatements and premium treatment; - gross/net, currency, indexation, and exclusions; - recovery timing and counterparty assumption. Compare gross and net mean, SD, VaR, TVaR, attachment, and exhaustion. Do not rank treaties until reinsurance economics are added. ## Task 4 — Challenge diversification Run at least three scenarios: 1. baseline independent frequency/severity; 2. same marginals with a shared catastrophe state; 3. claims inflation plus a fixed nominal layer. Explain which movement comes from: - changed marginal frequency/severity; - changed dependence; - changed contract response; - Monte Carlo noise. Use common random numbers for treaty comparison and show simulation stability at increasing sample sizes. ## Task 5 — Put the annual model on a path Choose initial capital and a net premium process. Estimate finite-time ruin over one and five years, then compare with any available classical benchmark. The conclusion must state why the output is not automatically: - IFRS 17 fulfilment cash flow or risk adjustment; - Solvency UK SCR; - a complete internal model; - a liquidity assessment. ## Required submission | Item | Maximum length | Purpose | | ------------------------------- | ----------------: | ------------------------------------------------------------------- | | Risk-committee memo | 1,200 words | decision, evidence, conditions, and limitations | | Reproducible technical appendix | 8 pages plus code | definitions, calculations, validation, sensitivity | | Model record | 1 page | data, assumptions, versions, owner, review date | | Exhibit pack | 4 figures/tables | reserve reconciliation, model tail, treaty comparison, surplus path | Concise writing is assessed through **evidence density**, not omission. Every exhibit must state units, information date, gross/net basis, and source. ## Assessment rubric | Criterion | Weight | Excellent evidence | | --------------------------------- | -----: | ------------------------------------------------------------------------ | | Data contract and reproducibility | 15% | another analyst can reconstruct every input and transformation | | Reserving reasoning | 20% | correct calculations, backtest, alternatives, and judgement | | Frequency/severity model | 20% | observation mechanism, tail validation, and uncertainty are explicit | | Treaty implementation | 15% | contract unit, layer, exhaustion, and economics are correct | | Aggregate/tail/ruin analysis | 20% | analytic checks, dependence, Monte Carlo error, and horizon are coherent | | Communication and boundaries | 10% | recommendation is brief, decision-relevant, and does not overclaim | ## Evidence desk: current material Use current sources to challenge the model, not to import unexamined parameters: | Source | Question it can inform | What it cannot establish alone | | --------------------------------- | ----------------------------------------------------- | ----------------------------------- | | CAS Schedule P data | real triangle structure and method reproduction | UK motor development pattern | | ABI 2025 motor release | current payout context and data-comparability warning | Harbour Mutual frequency/severity | | Swiss Re 2025 catastrophe results | peril mix and dependence scenarios | insurer-specific event distribution | | PRA Solvency UK material | current regulatory boundary | adequacy of this classroom model | | recent individual-claim papers | alternative reserving architecture | established universal best practice | ## Undergraduate and postgraduate routes - **Undergraduate:** deterministic reserving, two severity models, simulation with analytical moment checks, and clearly bounded recommendation. - **Postgraduate:** stochastic reserve uncertainty, censored/truncated likelihood, tail threshold sensitivity, common-shock dependence, and parameter/model uncertainty propagated into net capital. Both routes must be transparent and reproducible. Complexity earns credit only when it changes the decision or the confidence placed in it. ## Final oral defence: five questions 1. Which single assumption has the largest decision impact, and how do you know? 2. What new data would most reduce uncertainty? 3. Which result is directly observed, estimated, simulated, or externally sourced? 4. Under what scenario does your treaty recommendation reverse? 5. What claim are you deliberately **not** making? ## Core sources - [CAS downloadable reserving datasets](https://www.casact.org/publications-research/research/downloadable-programs-spreadsheets-and-workbooks){rel=""nofollow""} - [ABI — 2025 motor claim payouts and comparability note](https://www.abi.org.uk/news/news-articles/2026/2/11.9-billion-paid-out-in-2025-to-support-motorists-across-2.5-million-claims/){rel=""nofollow""} - [Swiss Re Institute — natural catastrophes in 2025](https://www.swissre.com/press-release/Wildfires-storms-floods-contribute-to-record-92-of-global-insured-losses-in-2025-says-Swiss-Re-Institute/7b39b1a5-b878-4a55-a5ff-bf5aa561a675){rel=""nofollow""} - [Bank of England — Solvency UK insurance-sector reporting](https://www.bankofengland.co.uk/prudential-regulation/regulatory-reporting/regulatory-reporting-insurance-sector){rel=""nofollow""} # Preparation — Stationarity in 30 Minutes []{#preparation-stationarity-in-30-minutes} ## The idea in one sentence A series is weakly stationary when its mean and variance are constant and the covariance between two observations depends on their **lag**, not their calendar date. [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathbb}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Stationary does not mean flat or independent. It means that dependence operates under a stable rule, so different parts of one path can inform the same population quantities. ## Three processes, three diagnoses | Process | What a shock does | Stationary? | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | disappears immediately | yes, if the noise has stable moments | | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.8]{.mord}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[−]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | decays as [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[0.]{.mord}[[8]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | yes | | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[−]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | remains permanently | no: variance grows with [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | For the AR(1), repeated substitution gives [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8528em;vertical-align:-0.2083em;"}[0.8]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0724em;vertical-align:-0.2083em;"}[0.]{.mord}[[8]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.313em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.1667em;"}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.]{.mord}[[8]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[4]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[11.11.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For the random walk, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.3693em;vertical-align:-0.4358em;"}[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.9335em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4358em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, so [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The calendar time now changes the distribution. ## Do not collapse five different problems into “non-stationary” | Pattern | Small example | First response | | -------------------------- | -------------------------------------------------------------- | -------------------------------------------------- | | deterministic trend | demand rises by 2 MWh each year | trend regressor or detrending | | stochastic trend/unit root | shocks permanently shift the level | first difference, if justified | | deterministic seasonality | every January is about 10 units higher | month indicators or seasonal terms | | seasonal unit root | this January resembles last January through accumulated shocks | seasonal difference | | structural break | a heat pump raises demand after installation | intervention term, regime model, or shorter window | | changing variance | seasonal amplitude grows with level | log/Box–Cox transform or variance model | Different operations answer different diagnoses. Applying log, first difference, and seasonal difference automatically can destroy useful structure. ## A useful counterexample: over-differencing Suppose [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is already white noise. Differencing gives [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} an MA(1) process with coefficient [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and lag-1 autocorrelation [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[−]{.mord}[1/2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The transformation has manufactured dependence and made the model non-invertible. “More stationary-looking” is not always better. ## Trend-stationary or difference-stationary? Two upward paths can look alike: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[trend-stationary: ]{.mord}]{.mord.text}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[difference-stationary: ]{.mord}]{.mord.text}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} After a shock, the first returns toward its deterministic trend; the second carries the shock forward. Detrending is appropriate for the first and differencing for the second. A short sample may not distinguish them cleanly, so report uncertainty rather than declaring a diagnosis from one test. ## ADF and KPSS ask opposite questions | Test | Null hypothesis | A small p-value suggests | | ---- | ---------------------------------------- | ----------------------------- | | ADF | a unit root is present | evidence against a unit root | | KPSS | the series is level- or trend-stationary | evidence against stationarity | Read them with plots, subject knowledge, and break dates. A break can make a stationary regime look like a unit root; low power can make a genuinely persistent process inconclusive. ::warning{title="The disciplined wording"} Do not write “the ADF proves stationarity.” Write: “At the stated deterministic terms and lag choice, the test rejects/does not reject a unit root; plots, KPSS evidence, and break sensitivity lead us to…” :: ## Four-case interpretation | ADF | KPSS | Reasonable next step | | --------------- | --------------- | -------------------------------------------------------------- | | rejects | does not reject | stationary modeling is plausible | | does not reject | rejects | differencing or a unit-root model is plausible | | rejects | rejects | inspect breaks, nonlinearity, variance, and test specification | | does not reject | does not reject | sample may be weakly informative; compare robust alternatives | ## Thirty-minute diagnostic routine 1. **Name the unit and frequency.** A “lag of 12” means nothing without monthly sampling. 2. **Plot levels and mark interventions.** A break is not an autocorrelation pattern. 3. **Compare seasonal positions.** Ask whether January behaves like January. 4. **Inspect variance against level.** Log only when a proportional interpretation is sensible. 5. **Compare detrending and differencing.** Explain which shock behavior each assumes. 6. **Use ADF/KPSS as supporting evidence.** State deterministic terms and lag choice. 7. **Replot and inspect the transformed series.** Watch for strong negative lag-1 correlation from over-differencing. 8. **Validate both choices out of sample.** Transformation is part of the model, not a preprocessing fact. ## Exit check For each statement, say true or false and give one sentence: 1. A stationary series must be independent. **False**—its lag covariance may be non-zero. 2. A random walk with zero drift has constant mean, so it is stationary. **False**—its variance grows. 3. Seasonal differencing and month indicators express the same assumption. **False**—one removes a seasonal stochastic trend; the other models stable seasonal means. 4. Differencing can harm a stationary series. **True**—it can inject an MA unit root. 5. Passing one unit-root test settles the model. **False**—specification, breaks, power, and the forecast task still matter. Continue to [Stochastic Processes and Stationarity](https://www.pengjiaxin.com/../01-stochastic-process/) for the population language behind these decisions. # Classical Time Series — Covariance, Operators, and Prediction ## Course identity This is a **traditional statistical time-series course** for advanced undergraduates and graduate students. Its central object is a stochastic process, not a collection of empirical forecasting recipes. Data examples are short simulations or hand-checkable numerical cases used to verify theory. For a finite block, [[[]{.katex-mathml}[[[]{.strut style="height:0.8361em;vertical-align:-0.15em;"}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.0573em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the course repeatedly asks four questions: 1. What structure must [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} have? 2. Which linear operator generates or transforms [[]{.katex-mathml}[[[]{.strut style="height:0.8361em;vertical-align:-0.15em;"}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? 3. Which normal equations define an estimator or predictor? 4. Which matrix recursion propagates uncertainty? ::tip{title="The matrix-first rule"} Whenever a scalar formula appears, identify its vector, matrix, and quadratic-form version. The scalar formula builds intuition; the matrix form reveals what generalises. :: ## Preparation You should already be able to: - calculate expectation, variance, covariance, and conditional expectation; - multiply partitioned matrices and solve [[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[Ax]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[b]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - interpret eigenvalues, positive definiteness, and a Cholesky factor; - use likelihood, least squares, and asymptotic standard errors; - read elementary R code. If stationarity is unfamiliar, begin with the [30-minute preparation note](https://www.pengjiaxin.com/01-stationary). ::legacy-details{title="Ten-minute diagnostic"} 1. Why must every covariance matrix be positive semidefinite? 2. If [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[i]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, what pattern appears along each diagonal? 3. What does [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} mean for powers [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? 4. Why is solving [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} preferable to computing [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} explicitly? 5. What does a Kalman update do when an observation is missing? Answers: variances of all linear combinations are non-negative; the matrix is Toeplitz; the powers decay to zero; linear solves are more stable and efficient; it performs prediction but skips measurement correction. :: ## Learning outcomes By the end, you will be able to: - construct and test Toeplitz covariance matrices for stationary processes; - derive ARMA autocovariances from difference equations and lag polynomials; - move between AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) equations, companion matrices, roots, and impulse responses; - obtain best linear predictors from projection normal equations; - derive Yule–Walker, conditional least-squares, and Gaussian-likelihood estimators; - express multivariate, seasonal, spectral, and state-space models with block matrices; - implement each derivation in base R and check dimensions, symmetry, eigenvalues, and numerical error; - explain which conclusions require Gaussianity and which use second moments only. ## The matrix spine | Statistical idea | Matrix statement | R operation | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ | | stationary covariance | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[γ]{.mord,mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[i]{.mord,mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[j]{.mord,mathnormal style="margin-right:0.0572em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `toeplitz(gamma)` | | valid covariance | [[]{.katex-mathml}[[[]{.strut style="height:0.9991em;vertical-align:-0.15em;"}[[a]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[a]{.mord,mathbf}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `eigen(..., symmetric=TRUE)` | | Gaussian simulation | [[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[X]{.mord,mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[[μ]{.mord,boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[L]{.mord,mathnormal}[z]{.mord,mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[L]{.mord,mathnormal}[[L]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Γ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `chol` and `%*%` | | AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) recursion | [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[[s]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[−]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[G]{.mord,mathnormal}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `eigen(F)` and recursive `%*%` | | Yule–Walker | [[]{.katex-mathml}[[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[[ϕ]{.mord,boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8247em;vertical-align:-0.3802em;"}[[[[γ]{.mord,boldsymbol style="margin-right:0.0639em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.0573em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `solve(Gamma, gamma)` | | linear prediction | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}[a]{.mord,mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Cov]{.mord,mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[X]{.mord,mathbf}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `solve` and a Schur complement | | Gaussian likelihood | $\log | \Sigma\_\theta | | VAR covariance | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[vec]{.mord,mathrm}]{.mop}[(]{.mopen}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[I]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[A]{.mord,mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⊗]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[A]{.mord,mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[vec]{.mord,mathrm}]{.mop}[(]{.mopen}[Σ]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `kronecker` | | Fourier transform | [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[d]{.mord,mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[F]{.mord,mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[x]{.mord,mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | complex `outer` and `%*%` | | Kalman filter | prediction and correction of [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[a]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord,mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | matrix recursion | ## Course map | Module | Main derivation | Executable check | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- | | [Preparation: stationarity](https://www.pengjiaxin.com/01-stationary) | stable first and second moments | distinguish deterministic and stochastic change | | [1. Processes and covariance](https://www.pengjiaxin.com/../01-stochastic-process/) | Toeplitz [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and Wold representation | construct, factor, and simulate a covariance matrix | | [2. ARMA difference equations](https://www.pengjiaxin.com/../02-arma/) | lag polynomials, companion form, Yule–Walker equations | compare roots, eigenvalues, and theoretical ACF | | [3. Linear prediction](https://www.pengjiaxin.com/../03-prediction/) | projection equations and state-space recursion | compute predictor weights and error variance | | [4. Estimation and inference](https://www.pengjiaxin.com/../04-estimation/) | OLS, moments, exact Gaussian likelihood | optimise a covariance-matrix likelihood | | [5. Multivariate systems](https://www.pengjiaxin.com/../05-multi-ar/) | block companion and Kronecker equations | solve a stationary VAR covariance | | [6. Spectral analysis](https://www.pengjiaxin.com/../06-spectral-analysis/) | Fourier matrix and spectral density | recover frequencies with a discrete transform | | [7. R matrix laboratory](https://www.pengjiaxin.com/../07-r-implementation/) | four integrated derivation labs | browser-based base R notebook | | [8. Optional Python appendix](https://www.pengjiaxin.com/../08-python-implementation/) | empirical implementation contrast | forecasting workflow | The Python appendix is supplementary. It is useful for comparing software conventions, but it is not the conceptual spine of this course. ## A finite-block view of one process Weak stationarity means that every finite block has [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}[[1]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-5.64em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-4.44em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-2.58em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-1.38em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This one matrix connects the course: - ARMA equations restrict its entries; - prediction partitions it; - Gaussian likelihood evaluates its determinant and quadratic form; - the spectrum diagonalises its large-sample analogue; - state-space recursions avoid constructing it all at once. ## How to read every R example Each webR cell is self-contained. Read it in this order: 1. **Dimensions:** write the size of every vector and matrix. 2. **Identity:** name the equation the code implements. 3. **Numerical check:** inspect symmetry, eigenvalues, or reconstruction error. 4. **Perturbation:** change one parameter and predict the direction of change first. 5. **Conclusion:** state a mathematical claim, not merely “the code ran.” Example conclusion: > The smallest eigenvalue of [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is positive, so this six-dimensional covariance block is positive definite. As [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} moves from [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.95]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the condition number increases; near-unit-root covariance matrices are harder to distinguish numerically. ## Ten-week route | Week | Preparation | Seminar or laboratory output | | ---: | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 1 | random vectors and covariance | build a Toeplitz covariance by hand | | 2 | stationarity and Wold representation | prove a covariance sequence is admissible or find a counterexample | | 3 | AR, MA, and lag polynomials | convert an AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) to companion form | | 4 | Yule–Walker equations | recover AR coefficients from autocovariances | | 5 | Hilbert-space projection | derive a best linear predictor and its error variance | | 6 | estimation and Gaussian likelihood | compare conditional and exact estimators | | 7 | VAR and Kronecker products | solve a discrete Lyapunov equation | | 8 | Fourier representation | connect a periodogram to a Fourier matrix | | 9 | state-space models | implement Kalman prediction and correction | | 10 | synthesis | defend every line of one R matrix computation | ## Assessment alignment | Task | Weight | Evidence expected | | --------------- | -----: | ----------------------------------------------------------- | | derivations | 35% | correct assumptions, dimensions, and algebra | | R matrix labs | 30% | reproducible code plus numerical verification | | theory critique | 15% | identify what fails without stationarity or Gaussianity | | final synthesis | 20% | connect covariance, prediction, likelihood, and state space | Graduate extensions ask for proofs, asymptotic arguments, multivariate identification, or computational complexity. Undergraduate solutions may use stated theorems but must still explain dimensions and assumptions. ## Reading ladder | Reading | Use in this course | | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | | [Brockwell & Davis, *Time Series: Theory and Methods*](https://doi.org/10.1007/978-1-4419-0320-4){rel=""nofollow""} | stationary processes, Hilbert-space prediction, ARMA, spectra, and asymptotics | | [Durbin & Koopman, *Time Series Analysis by State Space Methods*](https://doi.org/10.1093/acprof\:oso/9780199641178.001.0001){rel=""nofollow""} | matrix filtering, smoothing, likelihood, and initialisation | | [R `stats::ARMAacf` documentation](https://stat.ethz.ch/R-manual/R-devel/library/stats/html/ARMAacf.html){rel=""nofollow""} | implementation of theoretical ARMA autocorrelations from difference equations | | [R `stats::KalmanLike` documentation](https://stat.ethz.ch/R-manual/R-devel/RHOME/library/stats/html/KalmanLike.html){rel=""nofollow""} | the state-space machinery used by R's exact ARIMA likelihood | | [Düker et al. (2024/25), VARMA review](https://pmc.ncbi.nlm.nih.gov/articles/PMC11729849/){rel=""nofollow""} | graduate bridge from classical matrix equations to modern identification and estimation | | [Zheng (2024/25), infinite-order high-dimensional VAR](https://doi.org/10.1080/01621459.2024.2311365){rel=""nofollow""} | recent example of preserving interpretable linear dynamics under high dimensionality | The first four readings establish the course. The recent papers show where the same matrix ideas lead; they do not replace the foundations. ## Start Complete the [stationarity preparation](https://www.pengjiaxin.com/01-stationary), then open [Module 1](https://www.pengjiaxin.com/../01-stochastic-process/). Keep one page of matrix dimensions beside every derivation. # Module 1 — Processes, Dependence, and Stationarity []{#module-1-processes-dependence-and-stationarity} ## Core question We observe one sequence [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. What assumptions let that one path reveal a population mean, variance, and dependence structure? ## Learning outcomes You will be able to: - distinguish a stochastic process, a random variable, and one sample path; - construct the mean vector and Toeplitz covariance matrix of a stationary finite block; - calculate and interpret autocovariance and autocorrelation; - separate strict stationarity, weak stationarity, and ergodicity; - distinguish white noise from independence and Gaussianity; - derive the dependence and shock persistence of a stationary AR(1); - state exactly what the Wold representation does and does not promise. ## 1. Process versus path A stochastic process is a collection of random variables indexed by time: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6542em;vertical-align:-0.0391em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Z]{.mord.mathbb}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The capital letters describe the population mechanism. The data [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are one realised path. Observing 120 months is not the same as observing 120 independent copies: adjacent values may share shocks. | Object | Example | Question | | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- | | random variable | next month's demand [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[+]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | what values and probabilities are possible? | | process | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} over all months | how does the joint distribution change with time? | | sample path | `102, 108, 105, ...` | what can this one history reveal? | ## 2. Finite blocks expose the matrix structure For any selected times [[]{.katex-mathml}[[[]{.strut style="height:0.8095em;vertical-align:-0.1944em;"}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, define [[[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[X]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1492em;vertical-align:-0.2501em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[t]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[1]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2501em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[t]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.1645em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2501em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Its first two moments are [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[X]{.mord.mathbf}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathbf}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Γ]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.4401em;vertical-align:-0.5358em;"}[[[[\[]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[t]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2501em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[t]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3473em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[]]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3003em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.3029em;margin-right:0.05em;"}]{.vlist style="height:0.9043em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.5358em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For consecutive observations from a weakly stationary process, [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}[[1]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-5.64em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-4.44em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-2.58em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-1.38em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is symmetric Toeplitz: each diagonal is constant. It must also be positive semidefinite because [[[]{.katex-mathml}[[[]{.strut style="height:1.0491em;vertical-align:-0.15em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathbf}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} for every [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[a]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The bounds [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are necessary but not sufficient; all lags must fit together into valid covariance matrices. ::web-r --- code64: cGhpIDwtIDAuNzAKaW5ub3ZhdGlvbl92YXJpYW5jZSA8LSAyCm4gPC0gNgoKZ2FtbWEgPC0gaW5ub3ZhdGlvbl92YXJpYW5jZSAvICgxIC0gcGhpXjIpICogcGhpXigwOihuIC0gMSkpCkdhbW1hIDwtIHRvZXBsaXR6KGdhbW1hKQpsYW1iZGEgPC0gZWlnZW4oR2FtbWEsIHN5bW1ldHJpYyA9IFRSVUUsIG9ubHkudmFsdWVzID0gVFJVRSkkdmFsdWVzClUgPC0gY2hvbChHYW1tYSkKCmNhdCgiR2FtbWFfNjpcbiIpCnByaW50KHJvdW5kKEdhbW1hLCAzKSkKY2F0KCJcblNtYWxsZXN0IGVpZ2VudmFsdWU6Iiwgcm91bmQobWluKGxhbWJkYSksIDYpLCAiXG4iKQpjYXQoIkNvbmRpdGlvbiBudW1iZXI6Iiwgcm91bmQoa2FwcGEoR2FtbWEpLCAyKSwgIlxuIikKY2F0KCJDaG9sZXNreSByZWNvbnN0cnVjdGlvbiBlcnJvcjoiLAogICAgZm9ybWF0KG1heChhYnModChVKSAlKiUgVSAtIEdhbW1hKSksIHNjaWVudGlmaWMgPSBUUlVFKSwgIlxuIik= layout: vertical locale: en title: Construct and verify a stationary covariance block --- :: Change [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.7]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : alternating covariances appear, but validity remains. Move it to [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.98]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : the smallest eigenvalue and condition number reveal near-collinearity even before estimation. ## 3. Dependence is indexed by lag For a weakly stationary process, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} retains the unit squared; [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is unit-free and lies between [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Neither measures nonlinear dependence completely. ### Worked sample calculation Take one short path: [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[3]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[6]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[x]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The deviations are [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[2]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Using divisor [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[6]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[4]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[4]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1.667]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.113em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[6]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[(]{.mopen}[−]{.mord}[2]{.mord}[)]{.mclose}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[(]{.mopen}[−]{.mord}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[(]{.mopen}[−]{.mord}[1]{.mord}[)]{.mclose}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[(]{.mopen}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[−]{.mord}[0.167]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[ρ]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The sample is far too short for a strong conclusion; the exercise teaches what each ACF bar aggregates. ::tip{title="Estimator convention"} Some software divides lag- [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} covariance by [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} instead of [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Both conventions occur. State the convention when reproducing an exact number; in large samples the practical difference shrinks for fixed [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. :: ## 4. Three kinds of stability | Concept | Requirement | Why it matters | | ------------------- | ------------------------------------------------------------- | --------------------------------- | | strict stationarity | every finite joint distribution is unchanged by a time shift | complete distributional stability | | weak stationarity | constant finite mean/variance; covariance depends only on lag | ARMA, linear prediction, spectra | | ergodicity | time averages converge to population quantities | learning from one long path | Strict stationarity implies weak stationarity only when second moments exist. For a Gaussian process, weak stationarity is enough to determine shift-invariant finite-dimensional distributions. Stationarity alone does not guarantee that one path explores the population adequately; that is the role of ergodic conditions. ### Why persistence reduces effective information For a stationary mean-zero series, [[[]{.katex-mathml}[[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.1032em;vertical-align:-1.3021em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size4}]{.mopen.delimcenter style="top:0em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[h]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[n]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[h]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[[]]{.delimsizing.size4}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Positive autocovariances make the sample mean noisier than the iid formula [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[/]{.mord}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. One hundred highly persistent months need not contain one hundred months' worth of independent information. ## 5. White noise is not one assumption | Label | Required claim | | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | white noise | zero mean, constant variance, zero autocovariance at non-zero lags | | independent white noise | white noise observations are also independent | | Gaussian white noise | independent observations follow [[]{.katex-mathml}[[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[N]{.mord,mathnormal style="margin-right:0.109em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[σ]{.mord,mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Uncorrelated does not imply independent outside special families such as jointly Gaussian variables. A squared-noise series can be predictable in variance even when the level has zero autocorrelation. ## 6. The AR(1) as a complete dependence example Let [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[ϕ]{.mord.mathnormal}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ϕ]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, repeated substitution gives the causal representation [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0652em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[∞]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8747em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Therefore [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3715em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1324em;vertical-align:-0.1944em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[∣]{.mord.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.7]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1.0611em;vertical-align:-0.247em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : - long-run variance is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[4/]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.49]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[7.84]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - lag-3 correlation is [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[0.]{.mord}[[7]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.343]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - a unit shock has about half its effect after [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[0.5]{.mord}[)]{.mclose}[/]{.mord}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[0.7]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.94]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} periods. If [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, signs alternate; if [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, shocks do not decay and the process becomes a random walk. ## 7. Linear processes and Wold's result A causal linear process has the form [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.0652em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[∞]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with coefficients that decay sufficiently for the sum to exist. Its autocovariance is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0652em;vertical-align:-1.4138em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[∞]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[+]{.mbin.mtight}[∣]{.mord.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Wold's decomposition says that every covariance-stationary, purely non-deterministic process can be represented as an infinite moving average of uncorrelated innovations. It does **not** say that a short finite ARMA model is true, that innovations are independent, or that the coefficients are easy to estimate. ## 8. Diagnostic distinctions | Observation | Supported interpretation | Unsupported leap | | -------------------------------------- | -------------------------------------------------------------- | ------------------------------------- | | ACF decays slowly | strong linear persistence or unremoved low-frequency structure | “the process has a unit root” | | residual ACF is near zero | little remaining linear serial correlation at inspected lags | “residuals are iid Gaussian” | | sample mean stabilises | evidence consistent with mean ergodicity | proof of stationarity | | variance changes after an intervention | possible break or volatility shift | automatic need for first differencing | ## Practice 1. For [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[−]{.mord}[0.5]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with innovation variance 3, calculate [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[2]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[3]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Construct two dependent variables with zero correlation; explain why an ACF cannot detect their dependence. 3. For the six-point path above, recompute [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} using divisor [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 4. Explain why stationarity and ergodicity answer different questions. 5. Construct [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} for an AR(1) with [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and innovation variance [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.75]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then find [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} as a quadratic form. ::legacy-details{title="Answers"} 1. Variance [[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[3/]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.25]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; correlations are [[]{.katex-mathml}[[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[−]{.mord}[0.5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.25]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[0.125]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. If [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is symmetric around zero, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are dependent but can have zero covariance because [[]{.katex-mathml}[[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[−]{.mord}[1/5]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 4. Stationarity concerns invariance across calendar shifts; ergodicity concerns whether one long path recovers population quantities. 5. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, so [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.6em;vertical-align:-1.55em;"}[[[[[[[[]{.pstrut style="height:5.6em;"}[]{style="width:0.667em;height:3.6em;"}]{style="top:-4.05em;"}]{.vlist style="height:2.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.55em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-4.21em;"}[[]{.pstrut style="height:3em;"}[[0.5]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[0.25]{.mord}]{.mord}]{style="top:-1.81em;"}]{.vlist style="height:2.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.55em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[0.5]{.mord}]{.mord}]{style="top:-4.21em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[0.5]{.mord}]{.mord}]{style="top:-1.81em;"}]{.vlist style="height:2.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.55em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[0.25]{.mord}]{.mord}]{style="top:-4.21em;"}[[]{.pstrut style="height:3em;"}[[0.5]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-1.81em;"}]{.vlist style="height:2.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.55em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:5.6em;"}[]{style="width:0.667em;height:3.6em;"}]{style="top:-4.05em;"}]{.vlist style="height:2.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.55em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]{.mclose}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. :: ## Takeaway Time-series inference begins by stating what is random, what is observed once, and which form of stability connects one to the other. Continue to [ARMA and ARIMA](https://www.pengjiaxin.com/../02-arma/) to encode that stable dependence with lag polynomials. # Module 2 — ARMA, ARIMA, and Model Identification []{#module-2-arma-arima-and-model-identification} ## Core question Can a small number of lagged values and past shocks explain the serial dependence that remains after trend and seasonality are handled? ## Learning outcomes You will be able to: - write AR, MA, ARMA, and ARIMA models with the lag operator; - check AR causality/stationarity and MA invertibility from polynomial roots; - construct an AR companion matrix and solve its Yule–Walker equations; - derive benchmark ACF and PACF patterns; - explain why invertibility is an identification restriction; - detect under- and over-differencing; - turn plots into candidate models without treating them as proofs. ## 1. One notation, three model classes Let [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Define [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord.mathnormal}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0005em;vertical-align:-0.2861em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[q]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[q]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then | Model | Equation | Where memory lives | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------- | | AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord,mathnormal}[(]{.mopen}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[(]{.mopen}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | past observed values | | MA( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[μ]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | current and past shocks | | ARMA( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord,mathnormal}[(]{.mopen}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[(]{.mopen}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord,mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | both | | ARIMA( [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord,mathnormal}[(]{.mopen}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[θ]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | ARMA after differencing | The intercept in software is not always the unconditional mean. For [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[ϕ]{.mord.mathnormal}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the stationary mean is [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[/]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 2. AR means decaying feedback For AR(1), [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[ϕ]{.mord.mathnormal}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} It is causal and stationary when [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ϕ]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, with [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[ϕ]{.mord.mathnormal}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0724em;vertical-align:-0.2083em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.1667em;"}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1324em;vertical-align:-0.1944em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[∣]{.mord.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ), all roots of [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord.mathnormal}[(]{.mopen}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} must lie **outside** the unit circle. Equivalently, the companion-matrix eigenvalues lie inside it. ### Worked AR(2) root check Consider [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.75]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.125]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The polynomial is [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.75]{.mord}[z]{.mord.mathnormal style="margin-right:0.044em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8141em;"}[0.125]{.mord}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.25]{.mord}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Its roots are 2 and 4, both outside the unit circle, so the process is stationary. Two positive decay rates create a smoother ACF than a single cutoff rule could describe. ## 3. Companion and Yule–Walker forms For AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ), define [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1852em;vertical-align:-0.2861em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[G]{.mord.mathnormal}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where the first row of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[(]{.mopen}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, its first subdiagonal contains ones, and [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Three stability statements are equivalent: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[roots of ]{.mord}]{.mord.text}[ϕ]{.mord.mathnormal}[(]{.mopen}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[[ outside ]{.mord}]{.mord.text}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⟺]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[eigenvalues of ]{.mord}]{.mord.text}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[ inside ]{.mord}]{.mord.text}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[⟺]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8991em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The same coefficients solve the moment equations [[[]{.katex-mathml}[[[]{.strut style="height:2.5237em;vertical-align:-1.7737em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[Γ]{.mord.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.1645em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.4237em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.102em;"}[[]{.pstrut style="height:3em;"}[[[Toeplitz]{.mord.mathrm}]{.mop}[{]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)}]{.mclose}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.898em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.7737em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[[[ϕ]{.mord.boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5915em;vertical-align:-1.6924em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[[[γ]{.mord.boldsymbol.mtight style="margin-right:0.0639em;"}]{.mord.mtight}]{.mord.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.2341em;margin-right:0.0714em;"}]{.vlist style="height:0.0417em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4048em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.5909em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.102em;"}[[]{.pstrut style="height:3em;"}[[(]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.898em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.6924em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### R: verify all three representations ::web-r --- code64: cGhpIDwtIGMoMC43NSwgLTAuMTI1KQpGIDwtIHJiaW5kKHBoaSwgYygxLCAwKSkKCnJvb3RzIDwtIHBvbHlyb290KGMoMSwgLXBoaSkpCmVpZ2VudmFsdWVzIDwtIGVpZ2VuKEYsIG9ubHkudmFsdWVzID0gVFJVRSkkdmFsdWVzCnJobyA8LSBhcy5udW1lcmljKEFSTUFhY2YoYXIgPSBwaGksIGxhZy5tYXggPSA4KSkKR2FtbWFfcCA8LSB0b2VwbGl0eihyaG9bMToyXSkKcGhpX2Zyb21fbW9tZW50cyA8LSBzb2x2ZShHYW1tYV9wLCByaG9bMjozXSkKCkZfcG93ZXIgPC0gZGlhZygyKQppbXB1bHNlIDwtIG51bWVyaWMoOSkKZm9yIChoIGluIDA6OCkgewogIGltcHVsc2VbaCArIDFdIDwtIGRyb3AoYygxLCAwKSAlKiUgRl9wb3dlciAlKiUgYygxLCAwKSkKICBGX3Bvd2VyIDwtIEZfcG93ZXIgJSolIEYKfQoKY2F0KCJBUiByb290IG1vZHVsaToiLCByb3VuZChNb2Qocm9vdHMpLCA0KSwgIlxuIikKY2F0KCJDb21wYW5pb24gZWlnZW52YWx1ZSBtb2R1bGk6Iiwgcm91bmQoTW9kKGVpZ2VudmFsdWVzKSwgNCksICJcbiIpCmNhdCgiT3JpZ2luYWwgYW5kIFl1bGUtV2Fsa2VyIGNvZWZmaWNpZW50czpcbiIpCnByaW50KHJvdW5kKHJiaW5kKG9yaWdpbmFsID0gcGhpLCByZWNvdmVyZWQgPSBwaGlfZnJvbV9tb21lbnRzKSwgOCkpCmNhdCgiSW1wdWxzZSBjb2VmZmljaWVudHMgcHNpXzAsLi4uLHBzaV84OlxuIikKcHJpbnQocm91bmQoaW1wdWxzZSwgNikp layout: vertical locale: en title: "AR(2): roots, companion eigenvalues, and Yule-Walker solve" --- :: The polynomial roots are reciprocals of the companion eigenvalues. The Toeplitz solve returns the original coefficients because it uses population autocorrelations. ## 4. MA means finite shock memory For MA(1), [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1408em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]{.mspace style="margin-right:1em;"}[(]{.mopen}[∣]{.mord}[h]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A shock affects two observations, so the theoretical ACF cuts off after lag 1. ### Why invertibility is needed [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} generate the same autocorrelation because [[[]{.katex-mathml}[[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[2]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[(]{.mopen}[1/2]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1/2]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.4.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Invertibility selects the representation whose MA roots lie outside the unit circle—here [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} under this sign convention—so innovations are recoverable from current and past observations and parameters are identified. ## 5. ACF and PACF are signatures, not verdicts | Population pattern | AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) | MA( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) | ARMA( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) | | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ACF | tails off | cuts off after [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | tails off | | PACF | cuts off after [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | tails off | tails off | “Cuts off” is a population result. A sample ACF has noise of roughly order [[]{.katex-mathml}[[[]{.strut style="height:1.0503em;vertical-align:-0.25em;"}[1/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[n]{.mord.mathnormal style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.7603em;"}]{.vlist style="height:0.8003em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2397em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} under simple white-noise conditions, and inspecting many lags creates multiple-comparison ambiguity. Use ACF/PACF to propose a small candidate set, then estimate, diagnose, and backtest it. ## 6. Differencing changes the model First and seasonal differences are [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Δ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Symptom | Candidate operation | Boundary | | --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- | | stochastic level drift | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | do not use merely because a deterministic trend exists | | stochastic annual drift in monthly data | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Δ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | month indicators may suit stable seasonal means better | | variance proportional to level | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | requires positive data and changes interpretation to relative change | Over-differencing stationary white noise gives [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, an MA(1) boundary case with [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A strong negative lag-1 ACF after transformation is a warning. ## 7. See the signatures, then disturb them Edit `phi`, `theta`, and `n`. Small samples show why clean textbook cutoffs often look ambiguous. ::web-r --- code64: c2V0LnNlZWQoNykKbiA8LSAyNDAKcGhpIDwtIDAuNzAKdGhldGEgPC0gMC42MAoKYXJfc2VyaWVzIDwtIGFzLm51bWVyaWMoYXJpbWEuc2ltKGxpc3QoYXIgPSBwaGkpLCBuID0gbikpCm1hX3NlcmllcyA8LSBhcy5udW1lcmljKGFyaW1hLnNpbShsaXN0KG1hID0gdGhldGEpLCBuID0gbikpCgpvbGRfcGFyIDwtIHBhcihtZnJvdyA9IGMoMiwgMiksIG1hciA9IGMoMywgMywgMiwgMSkpCmFjZihhcl9zZXJpZXMsIGxhZy5tYXggPSAxMiwgbWFpbiA9ICJBUigxKSBzYW1wbGUgQUNGIikKcGFjZihhcl9zZXJpZXMsIGxhZy5tYXggPSAxMiwgbWFpbiA9ICJBUigxKSBzYW1wbGUgUEFDRiIpCmFjZihtYV9zZXJpZXMsIGxhZy5tYXggPSAxMiwgbWFpbiA9ICJNQSgxKSBzYW1wbGUgQUNGIikKcGFjZihtYV9zZXJpZXMsIGxhZy5tYXggPSAxMiwgbWFpbiA9ICJNQSgxKSBzYW1wbGUgUEFDRiIpCnBhcihvbGRfcGFyKQoKY2F0KCJBUigxKSB0aGVvcmV0aWNhbCBBQ0Y6XG4iKQpwcmludChyb3VuZChBUk1BYWNmKGFyID0gcGhpLCBsYWcubWF4ID0gNiksIDMpKQpjYXQoIk1BKDEpIHRoZW9yZXRpY2FsIEFDRjpcbiIpCnByaW50KHJvdW5kKEFSTUFhY2YobWEgPSB0aGV0YSwgbGFnLm1heCA9IDYpLCAzKSk= layout: vertical locale: en title: "AR(1) and MA(1): sample ACF/PACF versus theory" --- :: ## 8. Identification workflow 1. Define target, frequency, origin, and horizon. 2. Plot levels; mark trend, seasonality, breaks, and missing values. 3. Choose transformations for stated reasons. 4. Inspect ACF/PACF and propose at most a few parsimonious orders. 5. Check estimated roots and near-cancellation between AR and MA factors. 6. Audit residual dependence and parameter stability. 7. Compare against naive and seasonal-naive forecasts on rolling origins. 8. Prefer the smallest model whose remaining errors are not predictably useful. ::warning{title="Near cancellation"} An ARMA model with nearly identical AR and MA factors can mimic a simpler process while producing unstable estimates. A high-order fit is not evidence of rich dynamics when factors almost cancel. :: ## Practice 1. For [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.6]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, calculate [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} through [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[4]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. For MA(1) with [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, calculate [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and describe the visual pattern. 3. Factor [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.9]{.mord}[z]{.mord.mathnormal style="margin-right:0.044em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8141em;"}[0.2]{.mord}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and check stationarity. 4. Explain why an MA coefficient outside the invertible region is not necessarily an impossible data-generating process but is a non-unique parameterisation. 5. Write the companion matrix for the AR(2) in the worked root check and verify that its eigenvalues are [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.25]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ::legacy-details{title="Answers"} 1. `0.6, 0.36, 0.216, 0.1296`. 2. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[−]{.mord}[0.5/1.25]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}; adjacent observations tend to alternate around the mean. 3. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.4]{.mord}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} has roots 2 and 2.5, so it is stationary. 4. Its autocovariance can be reproduced by an invertible representation after rescaling the innovation variance; invertibility chooses the unique recoverable-shock representation. 5. [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[0.75]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[−]{.mord}[0.125]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[0]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex} has characteristic polynomial [[]{.katex-mathml}[[[]{.strut style="height:0.8974em;vertical-align:-0.0833em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[0.75]{.mord}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.125]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and eigenvalues [[]{.katex-mathml}[[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0.5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.25]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. :: ## Takeaway ARMA is a disciplined approximation to stable linear dependence. The next module asks what that approximation implies for future values and uncertainty: [Prediction](https://www.pengjiaxin.com/../03-prediction/). # Module 3 — Linear Prediction and State-Space Recursions []{#module-3-linear-prediction-and-state-space-recursions} ## Core question Given a covariance structure and a vector of observations, which linear combination predicts an unobserved value with minimum mean-squared error? ## Learning outcomes You will be able to: - derive the normal equations for a best linear predictor; - compute prediction-error variance from a Schur complement; - explain when a linear predictor equals a conditional expectation; - obtain multi-step AR predictions from powers of a companion matrix; - derive the Kalman prediction and correction equations; - distinguish filtering, prediction, and smoothing. ## 1. Prediction is a projection problem Let [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} be a centred target and let [[[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[X]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[Γ]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathbf}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[X]{.mord.mathbf}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a linear predictor [[]{.katex-mathml}[[[]{.strut style="height:0.9233em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8491em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathbf}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[2]{.mord}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[g]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8991em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[Γ]{.mord}[a]{.mord.mathbf}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Differentiation gives the normal equations [[[]{.katex-mathml}[[[]{.strut style="height:1.5578em;vertical-align:-0.5344em;"}[[[[[[]{.pstrut style="height:3.5578em;"}[[[[Γ]{.mord}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}]{.mord}]{.mord}]{.boxpad}]{style="top:-3.5578em;"}[[]{.pstrut style="height:3.5578em;"}[]{.stretchy.fbox style="height:1.5578em;border-style:solid;border-width:0.04em;"}]{style="top:-3.0233em;"}]{.vlist style="height:1.0233em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.5344em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} When [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is positive definite, [[[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0585em;vertical-align:-0.1944em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[g]{.mord.mathbf style="margin-right:0.016em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[MSPE]{.mord.mathrm}]{.mop}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[g]{.mord.mathbf style="margin-right:0.016em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} In computation, use `solve(Gamma, g)`. The inverse notation explains the mathematics; explicitly forming an inverse is usually unnecessary. ## 2. Orthogonality is the defining check At the optimum, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[X]{.mord.mathbf}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1733em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Γ]{.mord}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord.mathbf}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The error is therefore orthogonal to every predictor. This statement needs finite second moments, not Gaussianity. If [[]{.katex-mathml}[[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is jointly Gaussian, the conditional mean is linear: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathbf}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathbf}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Without joint Gaussianity, this remains the **best linear** predictor but need not be the best among all nonlinear functions. ## 3. Worked AR(1) projection For a stationary AR(1) with variance [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and correlation [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0824em;vertical-align:-0.1944em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[∣]{.mord.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.888em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, predict [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} from [[[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[X]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[ϕ]{.mord.mathnormal}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[ϕ]{.mord.mathnormal}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[ϕ]{.mord.mathnormal}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Solving gives [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[ϕ]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Once [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is known, [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} receives zero extra weight. The matrix calculation recovers the Markov property rather than assuming it. The error variance is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[g]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## 4. Partitioned covariance and the Schur complement The joint covariance is [[[]{.katex-mathml}[[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[[Var]{.mord.mathrm}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[X]{.mord.mathbf}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4091em;vertical-align:-0.9546em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[Γ]{.mord}]{.mord}]{style="top:-3.6146em;"}[[]{.pstrut style="height:3em;"}[[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.4054em;"}]{.vlist style="height:1.4546em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9546em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}]{.mord}]{style="top:-3.6146em;"}[[]{.pstrut style="height:3em;"}[[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[Y]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.4054em;"}]{.vlist style="height:1.4546em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9546em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Conditioning removes the part of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} explained linearly by [[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[X]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The remaining variance, [[[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[Y]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[g]{.mord.mathbf style="margin-right:0.016em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} is the Schur complement of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. It is non-negative because the joint covariance matrix is positive semidefinite. ### R: solve the projection and verify orthogonality The following cell uses an AR(2). Because the true process uses only two lags, the coefficient on [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} should be numerically zero when predicting from [[]{.katex-mathml}[[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ::web-r --- code64: cGhpIDwtIGMoMC42NSwgLTAuMjApCmlubm92YXRpb25fdmFyaWFuY2UgPC0gMS41CnAgPC0gbGVuZ3RoKHBoaSkKCiMgQVJNQWFjZiByZXR1cm5zIGNvcnJlbGF0aW9ucy4gUmVjb3ZlciBnYW1tYSgwKSBmcm9tCiMgc2lnbWFeMiA9IGdhbW1hKDApIC0gcGhpJyBnYW1tYSgxOnApLgpyaG8gPC0gYXMubnVtZXJpYyhBUk1BYWNmKGFyID0gcGhpLCBsYWcubWF4ID0gOCkpCmdhbW1hMCA8LSBpbm5vdmF0aW9uX3ZhcmlhbmNlIC8gKDEgLSBzdW0ocGhpICogcmhvWzI6KHAgKyAxKV0pKQpnYW1tYSA8LSBnYW1tYTAgKiByaG8KCiMgUHJlZGljdCBYW3QrMV0gZnJvbSAoWFt0XSwgWFt0LTFdLCBYW3QtMl0pLgpHYW1tYSA8LSB0b2VwbGl0eihnYW1tYVsxOjNdKQpnIDwtIGdhbW1hWzI6NF0KYSA8LSBzb2x2ZShHYW1tYSwgZykKbXNwZSA8LSBnYW1tYTAgLSBkcm9wKGNyb3NzcHJvZChnLCBhKSkKb3J0aG9nb25hbGl0eV9lcnJvciA8LSBtYXgoYWJzKGcgLSBHYW1tYSAlKiUgYSkpCgpjYXQoIlByZWRpY3RvciB3ZWlnaHRzIGZvciBYW3RdLCBYW3QtMV0sIFhbdC0yXTpcbiIpCnByaW50KHJvdW5kKGEsIDgpKQpjYXQoIlByZWRpY3Rpb24tZXJyb3IgdmFyaWFuY2U6Iiwgcm91bmQobXNwZSwgOCksICJcbiIpCmNhdCgiSW5ub3ZhdGlvbiB2YXJpYW5jZToiLCBpbm5vdmF0aW9uX3ZhcmlhbmNlLCAiXG4iKQpjYXQoIk1heGltdW0gbm9ybWFsLWVxdWF0aW9uIGVycm9yOiIsIGZvcm1hdChvcnRob2dvbmFsaXR5X2Vycm9yLCBzY2llbnRpZmljID0gVFJVRSksICJcbiIp layout: vertical locale: en title: Best linear prediction from an AR(2) covariance matrix --- :: The first two weights reproduce [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and the third is zero up to rounding. The MSPE reproduces the innovation variance. ## 5. Multi-step prediction uses matrix powers Write an AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) in state form: [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[G]{.mord.mathnormal}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} With [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[e]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.2785em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[e]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8141em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8491em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[G]{.mord.mathnormal}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1052em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[s]{.mord.mathbf}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4444em;"}]{.vlist style="height:0.6844em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2499em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[h]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8747em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[Q]{.mord.mathnormal}[(]{.mopen}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8747em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The point prediction propagates the state; the uncertainty accumulates every future innovation. ## 6. Innovations reveal information one observation at a time Suppose [[]{.katex-mathml}[[[]{.strut style="height:1.2785em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is the projection on the past. Define the innovation [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.2785em;vertical-align:-0.3552em;"}[[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Innovations are mutually orthogonal. For Gaussian processes they are independent. A joint Gaussian likelihood can therefore be written as a sum of one-step terms: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[ℓ]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9185em;vertical-align:-1.2671em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is the sequential counterpart of the covariance-matrix likelihood in Module 4. ## 7. State space avoids a growing covariance inverse Use the linear Gaussian model [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9275em;vertical-align:-0.2441em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[η]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[[[η]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Q]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} summarises the filtered state, prediction is [[[]{.katex-mathml}[[[]{.strut style="height:0.7996em;vertical-align:-0.3552em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1074em;vertical-align:-0.2083em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[Q]{.mord.mathnormal}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The observation innovation and its covariance are [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[v]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2543em;vertical-align:-0.3552em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Correction is [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2543em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9385em;vertical-align:-0.3552em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[v]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Task | Information used | | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | prediction | observations through [[]{.katex-mathml}[[[]{.strut style="height:0.6984em;vertical-align:-0.0833em;"}[t]{.mord,mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | filtering | observations through [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | smoothing | the complete sample, including observations after [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | When [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is missing, keep the prediction and skip correction. No ad hoc imputation is required. ## Practice 1. For AR(1) with [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, construct [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} above and solve for [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[a]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Show that adding a predictor cannot increase the minimum MSPE. 3. For an AR(2), write [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} explicitly. 4. Explain why the innovations likelihood and joint covariance likelihood agree for a Gaussian model. 5. In a local-level model, what happens to [[]{.katex-mathml}[[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} during several consecutive missing observations? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[4]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[0.6]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[0.6]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[4]{.mord}[(]{.mopen}[0.36]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.6]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.6]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. The old predictor remains available in the larger span, so minimisation over the larger set cannot be worse. 3. The first row of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the second is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8491em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[G]{.mord.mathnormal}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 4. Orthogonal sequential innovations factor the same multivariate normal density into conditional normal densities. 5. Prediction uncertainty accumulates process noise because no measurement correction reduces it. :: ## Takeaway Linear prediction is a covariance problem: solve normal equations, verify orthogonality, and read uncertainty from a Schur complement. State-space recursions perform the same conditioning sequentially. Continue to [Estimation and Inference](https://www.pengjiaxin.com/../04-estimation/). # Module 4 — Estimation, Likelihood, and Inference []{#module-4-estimation-likelihood-and-inference} ## Core question How does a finite dependent vector identify model parameters, and how should its covariance structure enter estimation and uncertainty? ## Learning outcomes You will be able to: - express conditional AR estimation as matrix least squares; - derive Yule–Walker estimators from autocovariance equations; - evaluate an exact Gaussian likelihood with Cholesky factors; - connect the joint likelihood to the innovations likelihood; - obtain curvature-based standard errors and state their limitations; - diagnose a fitted model with residual covariance, not one scalar score. ## 1. Conditional AR estimation is regression For an AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ), [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} stack observations [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord.mathcal style="margin-right:0.1464em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:5.46em;vertical-align:-2.48em;"}[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-5.64em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-4.44em;"}[[]{.pstrut style="height:3.5em;"}[]{.mord}]{style="top:-2.58em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-1.38em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2583em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[X]{.mord.mathcal style="margin-right:0.1464em;"}[[[ϕ]{.mord.boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1786em;vertical-align:-0.2441em;"}[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[[[ϕ]{.mord.boldsymbol}]{.mord}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}[L]{.mord.mathnormal.mtight}[S]{.mord.mathnormal.mtight style="margin-right:0.0576em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.2342em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathcal style="margin-right:0.1464em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathcal style="margin-right:0.1464em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord.mathcal style="margin-right:0.1464em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[y]{.mord.mathbf style="margin-right:0.016em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This is conditional least squares because the first [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} observations are treated as fixed initial conditions. In R, `qr.solve(X, y)` or `lm.fit(X, y)` is preferable to forming [[]{.katex-mathml}[[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 2. Yule–Walker estimates second-order equations For a stationary AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ), multiply the model by [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and take expectations. For [[]{.katex-mathml}[[[]{.strut style="height:0.8304em;vertical-align:-0.136em;"}[h]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The first [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} equations are [[[]{.katex-mathml}[[[]{.strut style="height:6.9837em;vertical-align:-4.0037em;"}[[[[[[]{.pstrut style="height:4.98em;"}[[[[Γ]{.mord.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.1645em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.1737em;"}[[]{.pstrut style="height:4.98em;"}[[[[[[]{.pstrut style="height:4.98em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-1.852em;"}[[]{.pstrut style="height:4.98em;"}[[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-5.64em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-4.44em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-2.58em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-1.38em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}]{.mord}]{style="top:-4.98em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:3.128em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-4.98em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:4.0037em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[[[ϕ]{.mord.boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:6.9024em;vertical-align:-3.9224em;"}[[[[[[]{.pstrut style="height:4.98em;"}[[[[[[γ]{.mord.boldsymbol.mtight style="margin-right:0.0639em;"}]{.mord.mtight}]{.mord.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.2341em;margin-right:0.0714em;"}]{.vlist style="height:0.0417em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4048em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.3409em;"}[[]{.pstrut style="height:4.98em;"}[[[[[[]{.pstrut style="height:4.98em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-1.852em;"}[[]{.pstrut style="height:4.98em;"}[[[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-5.8275em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[2]{.mord}[)]{.mclose}]{.mord}]{style="top:-4.6275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-2.7675em;"}[[]{.pstrut style="height:3.6875em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-1.5675em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.48em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:7.4em;"}[]{style="width:0.667em;height:5.4em;"}]{style="top:-4.95em;"}]{.vlist style="height:2.95em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.45em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}]{.mord}]{style="top:-4.98em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:3.128em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-4.98em;"}]{.vlist style="height:2.98em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:3.9224em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Replacing population autocovariances by sample autocovariances gives [[[]{.katex-mathml}[[[]{.strut style="height:1.1786em;vertical-align:-0.2441em;"}[[[[[[[]{.pstrut style="height:3em;"}[[[ϕ]{.mord.boldsymbol}]{.mord}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[Y]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}[W]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.2342em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.3064em;vertical-align:-0.3831em;"}[[[[[[[]{.pstrut style="height:3em;"}[Γ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[[[[]{.pstrut style="height:3em;"}[[[γ]{.mord.boldsymbol style="margin-right:0.0639em;"}]{.mord}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4444em;"}]{.vlist style="height:0.6844em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.0573em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Moment and conditional estimators need not agree in a short sample. Their difference is evidence about finite-sample conventions, not automatically an error. ## 3. Exact Gaussian likelihood uses the whole covariance matrix Suppose [[[]{.katex-mathml}[[[]{.strut style="height:0.8361em;vertical-align:-0.15em;"}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.242em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The log likelihood is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[∣]{.mord}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[∣]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[(]{.mopen}[x]{.mord.mathbf}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.242em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4086em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2914em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathbf}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.242em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[]]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Every term has a role: | Term | Statistical meaning | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------- | | [[]{.katex-mathml}[[[]{.strut style="height:0.6886em;vertical-align:-0.2441em;"}[[[[μ]{.mord,boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord,mathnormal,mtight style="margin-right:0.0278em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.242em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | fitted deterministic mean | | $\log | \Sigma\_\theta | | quadratic form | distance measured in covariance-adjusted units | | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[n]{.mord,mathnormal}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[2]{.mord}[π]{.mord,mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | normalising constant | For an AR(1) with zero mean, [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3715em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[Toeplitz]{.mord.mathrm}]{.mop}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[ϕ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Near [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ϕ]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, this matrix becomes increasingly ill-conditioned. That is both a statistical boundary and a numerical warning. ## 4. Cholesky evaluation is the stable route If [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Σ]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8491em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with upper-triangular [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[chol]{.mord.mathrm}]{.mop}[(]{.mopen}[Σ]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, then [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[∣Σ∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3277em;vertical-align:-1.2777em;"}[2]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ii]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and [[[]{.katex-mathml}[[[]{.strut style="height:0.8991em;"}[[x]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[x]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[∥]{.mord}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[⊤]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[x]{.mord.mathbf}[[∥]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The computation uses triangular solves and never forms [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ### R: exact AR(1) matrix likelihood This cell simulates a centred AR(1), optimises the exact finite-sample likelihood, and compares it with R's `arima(..., method = "ML")`. Small differences arise from parameterisation and numerical optimisation, but both use the initial-state information that conditional least squares omits. ::web-r --- code64: c2V0LnNlZWQoMjcpCm4gPC0gMTIwCnBoaV90cnVlIDwtIDAuNzIKc2lnbWEyX3RydWUgPC0gMS40CnggPC0gYXMubnVtZXJpYyhhcmltYS5zaW0oCiAgbW9kZWwgPSBsaXN0KGFyID0gcGhpX3RydWUpLCBuID0gbiwKICBzZCA9IHNxcnQoc2lnbWEyX3RydWUpCikpCgpuZWdhdGl2ZV9sb2dfbGlrZWxpaG9vZCA8LSBmdW5jdGlvbihldGEpIHsKICBwaGkgPC0gdGFuaChldGFbMV0pICAgICAgICMgY29uc3RyYWlucyB8cGhpfCA8IDEKICBzaWdtYTIgPC0gZXhwKGV0YVsyXSkgICAgICMgY29uc3RyYWlucyBzaWdtYTIgPiAwCiAgU2lnbWEgPC0gc2lnbWEyIC8gKDEgLSBwaGleMikgKiB0b2VwbGl0eihwaGleKDA6KG4gLSAxKSkpCiAgVSA8LSB0cnlDYXRjaChjaG9sKFNpZ21hKSwgZXJyb3IgPSBmdW5jdGlvbihlKSBOVUxMKQogIGlmIChpcy5udWxsKFUpKSByZXR1cm4oMWU1MCkKICBsb2dfZGV0ZXJtaW5hbnQgPC0gMiAqIHN1bShsb2coZGlhZyhVKSkpCiAgd2hpdGVuZWQgPC0gYmFja3NvbHZlKFUsIHgsIHRyYW5zcG9zZSA9IFRSVUUpCiAgcXVhZHJhdGljIDwtIHN1bSh3aGl0ZW5lZF4yKQogIDAuNSAqIChuICogbG9nKDIgKiBwaSkgKyBsb2dfZGV0ZXJtaW5hbnQgKyBxdWFkcmF0aWMpCn0KCm9wdCA8LSBvcHRpbSgKICBwYXIgPSBjKGF0YW5oKDAuNCksIGxvZyh2YXIoeCkgKiAwLjUpKSwKICBmbiA9IG5lZ2F0aXZlX2xvZ19saWtlbGlob29kLAogIG1ldGhvZCA9ICJMLUJGR1MtQiIsCiAgbG93ZXIgPSBjKGF0YW5oKC0wLjk5KSwgbG9nKDFlLTYpKSwKICB1cHBlciA9IGMoYXRhbmgoMC45OSksIGxvZygxZTMpKSwKICBoZXNzaWFuID0gVFJVRQopCm1hdHJpeF9lc3RpbWF0ZSA8LSBjKAogIHBoaSA9IHRhbmgob3B0JHBhclsxXSksCiAgaW5ub3ZhdGlvbl92YXJpYW5jZSA9IGV4cChvcHQkcGFyWzJdKQopCgpyX2ZpdCA8LSBhcmltYSgKICB4LCBvcmRlciA9IGMoMSwgMCwgMCksIGluY2x1ZGUubWVhbiA9IEZBTFNFLAogIG1ldGhvZCA9ICJNTCIsIHRyYW5zZm9ybS5wYXJzID0gRkFMU0UKKQpyX2VzdGltYXRlIDwtIGMoCiAgcGhpID0gdW5uYW1lKHJfZml0JGNvZWZbImFyMSJdKSwKICBpbm5vdmF0aW9uX3ZhcmlhbmNlID0gcl9maXQkc2lnbWEyCikKCmNvbXBhcmlzb24gPC0gcmJpbmQoCiAgdHJ1dGggPSBjKHBoaV90cnVlLCBzaWdtYTJfdHJ1ZSksCiAgbWF0cml4X01MID0gbWF0cml4X2VzdGltYXRlLAogIGFyaW1hX01MID0gcl9lc3RpbWF0ZQopCmNvbG5hbWVzKGNvbXBhcmlzb24pIDwtIGMoInBoaSIsICJpbm5vdmF0aW9uIHZhcmlhbmNlIikKcHJpbnQocm91bmQoY29tcGFyaXNvbiwgNCkpCmNhdCgiQ29udmVyZ2VuY2UgY29kZToiLCBvcHQkY29udmVyZ2VuY2UsICJcbiIpCmNhdCgiQ292YXJpYW5jZSBjb25kaXRpb24gbnVtYmVyIGF0IG1hdHJpeCBlc3RpbWF0ZToiLAogICAgcm91bmQoa2FwcGEoCiAgICAgIG1hdHJpeF9lc3RpbWF0ZVsyXSAvICgxIC0gbWF0cml4X2VzdGltYXRlWzFdXjIpICoKICAgICAgICB0b2VwbGl0eihtYXRyaXhfZXN0aW1hdGVbMV1eKDA6KG4gLSAxKSkpCiAgICApLCAxKSwgIlxuIik= layout: vertical locale: en title: Optimise an exact Gaussian covariance-matrix likelihood --- :: ## 5. Joint and innovations likelihoods are two factorizations The joint density factors as [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9185em;vertical-align:-1.2671em;"}[p]{.mord.mathnormal}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∏]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[p]{.mord.mathnormal}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} For a Gaussian process, each conditional density is determined by an innovation [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and variance [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9185em;vertical-align:-1.2671em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[n]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | Form | Computational profile | | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | covariance matrix | transparent for derivation; dense factorisation is roughly [[]{.katex-mathml}[[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[O]{.mord,mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[[n]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | innovations/Kalman | processes observations sequentially; exploits fixed state dimension | They are mathematically equivalent under the same initialisation. R's exact `arima` likelihood uses a state-space representation and Kalman innovations. ## 6. Curvature gives local uncertainty Let [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[I]{.mord.mathcal style="margin-right:0.0738em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0738em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4411em;vertical-align:-0.95em;"}[−]{.mord}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[∂]{.mord style="margin-right:0.0556em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7751em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∂]{.mord style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[ℓ]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} be Fisher information. Under regularity conditions, [[[]{.katex-mathml}[[[]{.strut style="height:1.1844em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[n]{.mord.mathnormal style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8092em;"}]{.vlist style="height:0.8492em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1908em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[(]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.5471em;vertical-align:-0.25em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[[[[[[[]{.pstrut style="height:3em;"}[[⟶]{.mop}]]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[[d]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.711em;margin-left:0em;"}]{.vlist style="height:1.2971em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.011em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2141em;vertical-align:-0.35em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:-0.1667em;"}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[I]{.mord.mathcal style="margin-right:0.0738em;"}[(]{.mopen}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[)]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The inverse observed Hessian estimates local parameter covariance. Do not interpret it mechanically near unit roots, non-invertible boundaries, unidentified cancellations, or structural breaks: regular asymptotics can fail exactly where the likelihood is flat or irregular. ## 7. Residuals estimate innovations, not truth For residual vector [[]{.katex-mathml}[[[]{.strut style="height:0.6844em;"}[[[[[[]{.pstrut style="height:3em;"}[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4444em;"}]{.vlist style="height:0.6844em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, inspect [[[]{.katex-mathml}[[[]{.strut style="height:1.0733em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Γ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[\[]{.mopen.delimcenter style="top:0em;"}[[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[i]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}[)]{.mclose}[]]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A well-specified linear mean model should leave off-diagonal entries small relative to sampling variation. Also check: - changing variance over time; - outliers and heavy tails; - parameter sensitivity to endpoints; - roots close to the unit circle; - near cancellation of AR and MA polynomials. The Ljung–Box statistic compresses several sample residual correlations: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Q]{.mord.mathnormal}[(]{.mopen}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[n]{.mord.mathnormal}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.9535em;vertical-align:-1.3021em;"}[2]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[h]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3021em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[h]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[[]{.pstrut style="height:3em;"}[ρ]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[h]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A large p-value says that this test did not detect residual autocorrelation at the chosen lags. It does not establish independence, normality, or parameter constancy. ## 8. Model comparison remains conditional For maximised log likelihood [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[ℓ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} estimated parameters, [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[AIC]{.mord.mathrm}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[−]{.mord}[2]{.mord}[ℓ]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[2]{.mord}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[BIC]{.mord.mathrm}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.0833em;"}[−]{.mord}[2]{.mord}[ℓ]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[n]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Compare values only when models use the same response, likelihood convention, and effective sample. Before reading the smaller number, check admissible roots, identifiability, and residual covariance. ## Practice 1. Write [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathcal style="margin-right:0.1464em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} for an AR(2) observed at [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Derive the AR(1) Yule–Walker estimator. 3. Explain why [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[∣Σ∣]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} cannot be dropped when comparing covariance parameters. 4. Show how the Cholesky factor computes [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[x]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[x]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 5. Why can Hessian standard errors be misleading when [[]{.katex-mathml}[[[]{.strut style="height:1.1289em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[ϕ]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is close to one? ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[y]{.mord.mathbf style="margin-right:0.016em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[4]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[5]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and the rows of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathcal style="margin-right:0.1464em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} are [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} through [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[5]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[4]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. [[]{.katex-mathml}[[[]{.strut style="height:1.1289em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[ϕ]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[1]{.mord}[)]{.mclose}[/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. It penalises covariance matrices that assign broad volume; the quadratic form alone could favour inflated variance. 4. Solve [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[z]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4444em;"}[x]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and compute [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[z]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[z]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 5. The parameter lies near a non-regular boundary, the likelihood may be asymmetric, and the normal quadratic approximation can be poor. :: ## Takeaway Least squares, moments, and likelihood are different matrix summaries of the same dependent vector. Their assumptions, initial conditions, and numerical factorizations must be visible. Continue to [Multivariate Systems](https://www.pengjiaxin.com/../05-multi-ar/). # Module 5 — Systems, Seasonality, and Cointegration []{#module-5-systems-seasonality-and-cointegration} ## Core question What changes when variables forecast one another, seasonal positions have their own dynamics, or non-stationary levels remain tied by a stable long-run relation? ## Learning outcomes You will be able to: - formulate and check the stability of a VAR; - solve a stationary VAR covariance with a Kronecker-product equation; - distinguish Granger predictability from causal effect; - compute and qualify an impulse response; - choose among seasonal indicators, seasonal differencing, and SARIMA terms; - recognise cointegration and interpret an error-correction model; - explain why forecasts across products or time aggregates must be reconciled. ## 1. VAR: every variable can use every lag For a [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -variable VAR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ), [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[c]{.mord.mathbf}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A VAR(1) is stationary when every eigenvalue of [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} has modulus below one. For VAR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ), use the equivalent companion matrix. ### Parameter growth is the first constraint With an intercept, a VAR has [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[(]{.mopen}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} regression coefficients. For [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, that is 105 coefficients before the 15 distinct innovation-covariance terms. A rich system estimated from 80 quarters is not automatically informative; shrinkage, fewer variables/lags, or theory-based restrictions may be necessary. ### Stacked regression form For VAR(1), collect rows [[]{.katex-mathml}[[[]{.strut style="height:1.0972em;vertical-align:-0.2481em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:-0.016em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2481em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.016em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} in [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and rows [[]{.katex-mathml}[[[]{.strut style="height:1.1555em;vertical-align:-0.3064em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:-0.016em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3064em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} in [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathcal style="margin-right:0.1464em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Then [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[X]{.mord.mathcal style="margin-right:0.1464em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⊗]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathcal style="margin-right:0.1464em;"}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Equation-by-equation OLS and multivariate least squares give the same coefficient estimates when every equation has the same regressors. The innovation covariance still matters for joint inference. ## 2. A two-variable shock calculation Let demeaned electricity demand and price follow [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[0.6]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[0.1]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[0.2]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[0.5]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Starting from a one-unit shock to the first innovation, [[]{.katex-mathml}[[[]{.strut style="height:0.9386em;vertical-align:-0.2441em;"}[[[[ψ]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.207em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, propagation is [[]{.katex-mathml}[[[]{.strut style="height:0.9386em;vertical-align:-0.2441em;"}[[[[ψ]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.242em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0932em;vertical-align:-0.2441em;"}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[[[ψ]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.207em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : | [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | first response | second response | | ----------------------------------------------------------------------------------------------------------------------------: | -------------: | --------------: | | 0 | 1.000 | 0.000 | | 1 | 0.600 | 0.100 | | 2 | 0.380 | 0.110 | | 3 | 0.250 | 0.093 | | 4 | 0.169 | 0.072 | :model-curve-chart{props64="eyJ0aXRsZSI6IlByb3BhZ2F0aW9uIG9mIG9uZSBpZGVudGlmaWVkIHNob2NrIiwic3VidGl0bGUiOiJUaGUgZmlyc3QgdmFyaWFibGUgcmVhY3RzIGltbWVkaWF0ZWx5OyB0aGUgc2Vjb25kIHJlY2VpdmVzIGEgZGVsYXllZCBzcGlsbG92ZXIuIiwieExhYmVsIjoiSG9yaXpvbiBoIiwieUxhYmVsIjoiUmVzcG9uc2UiLCJoZWlnaHQiOjM4MCwibWluWCI6MCwibWF4WCI6NiwibWluWSI6MCwibWF4WSI6MS4wNSwic2VyaWVzIjpbeyJuYW1lIjoiRmlyc3QgdmFyaWFibGUiLCJjb2xvciI6IiMyNTYzZWIiLCJwb2ludHMiOlt7IngiOjAsInkiOjEsImxhYmVsIjoiaW1wYWN0In0seyJ4IjoxLCJ5IjowLjZ9LHsieCI6MiwieSI6MC4zOH0seyJ4IjozLCJ5IjowLjI1fSx7IngiOjQsInkiOjAuMTY5fSx7IngiOjUsInkiOjAuMTE1fSx7IngiOjYsInkiOjAuMDh9XX0seyJuYW1lIjoiU2Vjb25kIHZhcmlhYmxlIiwiY29sb3IiOiIjMGY3NjZlIiwicG9pbnRzIjpbeyJ4IjowLCJ5IjowfSx7IngiOjEsInkiOjAuMX0seyJ4IjoyLCJ5IjowLjExLCJsYWJlbCI6InBlYWsgc3BpbGxvdmVyIn0seyJ4IjozLCJ5IjowLjA5M30seyJ4Ijo0LCJ5IjowLjA3Mn0seyJ4Ijo1LCJ5IjowLjA1M30seyJ4Ijo2LCJ5IjowLjAzOH1dfV0sIm1hcmtlcnMiOlt7InkiOjAsImxhYmVsIjoiYmFzZWxpbmUiLCJjb2xvciI6IiM2NDc0OGIifV0sImNhcHRpb24iOiJBbiBpbXB1bHNlIHJlc3BvbnNlIGlzIGEgcGF0aCBjb25kaXRpb25hbCBvbiBhIG1vZGVsIGFuZCBzaG9jay1pZGVudGlmaWNhdGlvbiBydWxlLCBub3QgYSBzdGF0aWMgY29ycmVsYXRpb24uIn0="} If contemporaneous innovations are correlated, “a shock to variable 1 while variable 2 is unchanged” is not identified by the reduced-form covariance alone. Cholesky ordering, long-run restrictions, sign restrictions, external instruments, or a structural model add different assumptions and may produce different paths. ## 3. Stationary covariance is a Lyapunov equation For VAR(1), [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[A]{.mord.mathnormal}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[[[ε]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Σ]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the unconditional covariance [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} satisfies [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0491em;vertical-align:-0.15em;"}[A]{.mord.mathnormal}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Σ.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Using [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[A]{.mord.mathnormal}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⊗]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.7941em;vertical-align:-0.59em;"}[[[[[[]{.pstrut style="height:3.7941em;"}[[[[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[(]{.mopen}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.786em;margin-right:0.0714em;"}]{.vlist style="height:0.7463em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5224em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1776em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[A]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⊗]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[A]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[Σ]{.mord}[)]{.mclose}]{.mord}]{.mord}]{.boxpad}]{style="top:-3.7941em;"}[[]{.pstrut style="height:3.7941em;"}[]{.stretchy.fbox style="height:1.7941em;border-style:solid;border-width:0.04em;"}]{style="top:-3.2041em;"}]{.vlist style="height:1.2041em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.59em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::web-r --- code64: QSA8LSBtYXRyaXgoYygwLjYwLCAwLjIwLAogICAgICAgICAgICAgIDAuMTAsIDAuNTApLCBucm93ID0gMiwgYnlyb3cgPSBUUlVFKQpTaWdtYSA8LSBtYXRyaXgoYygxLjAwLCAwLjMwLAogICAgICAgICAgICAgICAgICAwLjMwLCAwLjgwKSwgbnJvdyA9IDIsIGJ5cm93ID0gVFJVRSkKayA8LSBucm93KEEpCgp2ZWNfR2FtbWEwIDwtIHNvbHZlKAogIGRpYWcoayAqIGspIC0ga3JvbmVja2VyKEEsIEEpLAogIGFzLnZlY3RvcihTaWdtYSkKKQpHYW1tYTAgPC0gbWF0cml4KHZlY19HYW1tYTAsIG5yb3cgPSBrKQplcXVhdGlvbl9lcnJvciA8LSBtYXgoYWJzKEdhbW1hMCAtIEEgJSolIEdhbW1hMCAlKiUgdChBKSAtIFNpZ21hKSkKCnNob2NrIDwtIGMoMSwgMCkKcmVzcG9uc2VzIDwtIG1hdHJpeChOQV9yZWFsXywgbnJvdyA9IDcsIG5jb2wgPSBrKQpBX3Bvd2VyIDwtIGRpYWcoaykKZm9yIChoIGluIDA6NikgewogIHJlc3BvbnNlc1toICsgMSwgXSA8LSBBX3Bvd2VyICUqJSBzaG9jawogIEFfcG93ZXIgPC0gQV9wb3dlciAlKiUgQQp9CgpjYXQoIkNvbXBhbmlvbiBlaWdlbnZhbHVlczpcbiIpCnByaW50KHJvdW5kKGVpZ2VuKEEpJHZhbHVlcywgNikpCmNhdCgiXG5TdGF0aW9uYXJ5IGNvdmFyaWFuY2UgR2FtbWFfMDpcbiIpCnByaW50KHJvdW5kKEdhbW1hMCwgNikpCmNhdCgiU21hbGxlc3QgY292YXJpYW5jZSBlaWdlbnZhbHVlOiIsCiAgICByb3VuZChtaW4oZWlnZW4oR2FtbWEwLCBzeW1tZXRyaWMgPSBUUlVFKSR2YWx1ZXMpLCA2KSwgIlxuIikKY2F0KCJMeWFwdW5vdi1lcXVhdGlvbiBlcnJvcjoiLAogICAgZm9ybWF0KGVxdWF0aW9uX2Vycm9yLCBzY2llbnRpZmljID0gVFJVRSksICJcbiIpCmNhdCgiXG5SZXNwb25zZXMgQV5oIGVfMTpcbiIpCnByaW50KHJvdW5kKGNiaW5kKGggPSAwOjYsIHJlc3BvbnNlcyksIDUpKQ== layout: vertical locale: en title: Solve and verify a stationary VAR(1) covariance --- :: The eigenvalues check stability, the covariance eigenvalues check validity, and the residual norm checks the Lyapunov equation. These are separate claims. ## 4. Granger predictability is deliberately modest [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} Granger-causes [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} when lags of [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} improve forecasts of [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} after conditioning on the included history. Operationally, compare [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.6em;vertical-align:-0.55em;"}[∑]{.mop.op-symbol.large-op style="position:relative;top:0em;"}[]{.mspace style="margin-right:0.1667em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.6em;vertical-align:-0.55em;"}[∑]{.mop.op-symbol.large-op style="position:relative;top:0em;"}[]{.mspace style="margin-right:0.1667em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.6em;vertical-align:-0.55em;"}[∑]{.mop.op-symbol.large-op style="position:relative;top:0em;"}[]{.mspace style="margin-right:0.1667em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and test [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.3669em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. | Result | Supported claim | Not supported without more design | | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | reject restrictions | [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} has incremental lagged predictive content in this specification | intervention on [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} changes [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | fail to reject | sample does not show incremental linear content | [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is irrelevant in all horizons/regimes | Omitted common causes, measurement timing, anticipation, aggregation, and regime changes can all alter the result. ## 5. Seasonality is not one phenomenon For monthly data, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[s]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[12]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Choose the smallest assumption that matches the mechanism: | Mechanism | Model device | Interpretation | | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------- | | stable January effect | 11 month indicators | deterministic seasonal mean | | smoothly changing recurring pattern | Fourier sine/cosine terms | parsimonious deterministic cycle | | seasonal shocks accumulate | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[B]{.mord,mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | seasonal stochastic trend | | dependence remains at seasonal lags | seasonal AR/MA terms | shocks propagate across years | A multiplicative SARIMA model is written [[[]{.katex-mathml}[[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[ϕ]{.mord.mathnormal}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[Φ]{.mord}[(]{.mopen}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1413em;vertical-align:-0.25em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[Θ]{.mord}[(]{.mopen}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Reading the notation SARIMA [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[)]{.mclose}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} means: - one ordinary difference and one annual seasonal difference; - one non-seasonal AR and MA term; - one seasonal MA term linking shocks 12 months apart. It does not mean the order is appropriate. Compare it with seasonal naive and inspect whether double differencing created strong negative autocorrelation. ## 6. Cointegration preserves a long-run relation Suppose [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is a random walk and [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is stationary. Both levels are non-stationary, but [[[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} is stationary. The pair is cointegrated. Differencing both series independently would hide the equilibrium error [[]{.katex-mathml}[[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8528em;vertical-align:-0.2083em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. A two-variable error-correction equation may be [[[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[ΓΔ]{.mord}[[y]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} If [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and the previous equilibrium error is 10, the correction contributes [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to the next change in [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The sign tells how deviations are repaired; cointegration alone does not tell which variable adjusts or identify a causal mechanism. ## 7. Hierarchical forecasts must add up Campus demand may be forecast for buildings, faculties, and the whole university; monthly forecasts must also aggregate to quarters and years. Independently fitted forecasts are usually incoherent: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[[total]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[[[[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[]{.mrel}]{.mord}]{.inner}[]{.fix}]{.rlap}]{.thinbox}]{.mord.vbox}]{.mrel}[]{.mspace.nobreak}[=]{.mrel}]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.865em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.865em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Reconciliation projects or conditions base forecasts so aggregation constraints hold. Recent work on [mixed-type probabilistic reconciliation](https://proceedings.mlr.press/v244/zambon24a.html){rel=""nofollow""} extends this idea when a hierarchy combines counts and continuous quantities. Coherence is a logical requirement; accuracy gains remain empirical and must be backtested at every level. ## 8. Model-choice map | Data question | First model | Add only if needed | | ---------------------------------------- | ---------------------------------- | -------------------------------------- | | one stationary series | ARMA | nonlinear/volatility structure | | one seasonal series | seasonal naive + regression/SARIMA | multiple seasonalities or state space | | several stationary series | VAR | structural identification or shrinkage | | non-stationary levels with stable spread | VECM | breaks or time-varying relation | | many aggregation levels | local models + reconciliation | joint probabilistic hierarchy | ## Practice 1. Multiply the worked VAR matrix by [[]{.katex-mathml}[[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[(]{.mopen}[0.38]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.11]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to verify the horizon-3 response. 2. For [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[8]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, count VAR regression coefficients with intercepts. 3. Give a predictive but non-causal explanation for why temperature lags improve electricity-demand forecasts. 4. Explain why seasonal indicators and seasonal differencing encode different counterfactuals. 5. If [[]{.katex-mathml}[[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8528em;vertical-align:-0.2083em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, what is the error-correction contribution to [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? 6. For the R example, substitute the printed [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} into [[]{.katex-mathml}[[[]{.strut style="height:0.9991em;vertical-align:-0.15em;"}[A]{.mord.mathnormal}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[A]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Σ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and verify one matrix entry by hand. ::legacy-details{title="Answers"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.6]{.mord}[)]{.mclose}[(]{.mopen}[0.38]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.2]{.mord}[)]{.mclose}[(]{.mopen}[0.11]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.25]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.1]{.mord}[)]{.mclose}[(]{.mopen}[0.38]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.5]{.mord}[)]{.mclose}[(]{.mopen}[0.11]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.093]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[(]{.mopen}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[8]{.mord}[(]{.mopen}[25]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[200]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, before 36 innovation-covariance parameters. 3. Temperature may proxy a common seasonal/calendar process; predictive timing alone does not identify an intervention effect. 4. Indicators assume repeating mean levels; seasonal differencing assumes shocks can accumulate across the same season. 5. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[0.2]{.mord}[)]{.mclose}[(]{.mopen}[−]{.mord}[5]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[+]{.mord}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, moving [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} upward toward the relation. 6. Any entry should agree up to printed rounding; the executable residual uses full precision. :: ## Takeaway Multivariate and seasonal models are block-matrix extensions of the univariate theory, but identification becomes harder as dimension grows. The [2024/25 VARMA review](https://pmc.ncbi.nlm.nih.gov/articles/PMC11729849/){rel=""nofollow""} is a graduate bridge from these classical equations to current identification and estimation research. Continue to [Spectral Analysis](https://www.pengjiaxin.com/../06-spectral-analysis/) to study covariance by frequency rather than lag. # Module 6 — Spectral Analysis, Cycles, and Filters []{#module-6-spectral-analysis-cycles-and-filters} ## Core question Which frequencies account for variation in a stationary series, and can we separate persistent, seasonal, and high-frequency movements without inventing cycles? ## Learning outcomes You will be able to: - convert among period, frequency, and angular frequency; - explain the Fourier relation between autocovariance and spectral density; - construct a finite Fourier matrix and interpret the periodogram as squared transformed coordinates; - calculate and interpret a periodogram; - explain smoothing, leakage, tapering, and aliasing; - interpret cross-spectrum, coherence, and phase without causal overreach; - distinguish a descriptive two-sided filter from a real-time forecasting filter. ## 1. Period and frequency are reciprocals For a component [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[]{.mspace style="margin-right:0.1667em;"}[cos]{.mop}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[φ]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the angular frequency is [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} radians per observation, frequency is [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[/]{.mord}[(]{.mopen}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} cycles per observation, and period is [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[/]{.mord}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} observations. | Pattern | Frequency [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[f]{.mord,mathnormal style="margin-right:0.1076em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Angular frequency [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[ω]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | Period | | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -------------: | | annual cycle in monthly data | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/12]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[π]{.mord,mathnormal style="margin-right:0.0359em;"}[/6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 12 months | | weekly cycle in daily data | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/7]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[π]{.mord,mathnormal style="margin-right:0.0359em;"}[/7]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 7 days | | alternating observations | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[π]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 2 observations | Always state the sampling interval. “Frequency 0.1” means ten observations per cycle, not automatically ten days or years. ## 2. Spectrum and autocovariance contain the same second-order information For a weakly stationary process with suitable regularity, [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0118em;vertical-align:-1.3604em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[h]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[−]{.mord.mtight}[∞]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[∞]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3604em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[iω]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3846em;vertical-align:-0.9703em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[π]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[π]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.4143em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9703em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[iω]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The time domain asks how observations [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} lags apart co-move. The frequency domain asks how variance is distributed across slow and fast oscillations. The total area is variance: [[[]{.katex-mathml}[[[]{.strut style="height:2.3846em;vertical-align:-0.9703em;"}[[∫]{.mop.op-symbol.large-op style="margin-right:0.4445em;position:relative;top:-0.0011em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[π]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7881em;margin-left:-0.4445em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[π]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.8129em;margin-right:0.05em;"}]{.vlist style="height:1.4143em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9703em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### Finite Fourier matrix For [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[x]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, define [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[(]{.mopen}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.188em;vertical-align:-0.25em;"}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1/2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[exp]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[(]{.mopen.delimcenter style="top:0em;"}[−]{.mord}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[ij]{.mord.mathnormal style="margin-right:0.0572em;"}[t]{.mord.mathnormal}[/]{.mord}[n]{.mord.mathnormal}[)]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[d]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[x]{.mord.mathbf}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[x]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[1]{.mord.mathbf}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} contains discrete Fourier coefficients. The matrix is unitary, [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so it rotates the centred data into orthogonal frequency coordinates without changing total squared length. At Fourier frequency [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}[/]{.mord}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1771em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∣]{.mord}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[∣]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## 3. Familiar models have readable spectra | Process | Spectral shape | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | white noise | flat: no frequency dominates | | AR(1), [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | high power near zero: persistent slow movement | | AR(1), [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord,mathnormal}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | high power near [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[π]{.mord,mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : alternating movement | | seasonal process | peak near seasonal frequency and possibly harmonics | For AR(1), [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3715em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.1667em;"}[cos]{.mop}[]{.mspace style="margin-right:0.1667em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} As [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} approaches one, power concentrates near zero. That resemblance to trend is why low-frequency peaks should not be interpreted before stationarity and breaks are considered. ## 4. The periodogram is informative and noisy At Fourier frequencies [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}[/]{.mord}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the periodogram is [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2211em;vertical-align:-1.2671em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}[n]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[[[]{.pstrut style="height:5em;"}[]{style="width:0.333em;height:3em;"}]{style="top:-3.75em;"}]{.vlist style="height:1.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.25em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[n]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3em;"}[x]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}[[ω]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.0359em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8747em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[[[[[[]{.pstrut style="height:5em;"}[]{style="width:0.333em;height:3em;"}]{style="top:-3.75em;"}]{.vlist style="height:1.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.25em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.2029em;margin-right:0.05em;"}]{.vlist style="height:1.954em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} A high ordinate indicates that a sinusoid at that frequency explains substantial sample variation. But the raw periodogram is not a consistent pointwise estimator: as [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} grows, its variance does not vanish. Smoothing trades resolution for stability. | Choice | Gain | Cost | | ----------------------- | -------------------------------------- | --------------------------------------- | | narrow smoothing window | resolves close peaks | noisy estimate | | wide smoothing window | stable broad shape | merges nearby cycles | | taper endpoints | reduces leakage from boundary mismatch | widens peaks and loses some information | ## 5. Recover two known cycles The cell generates periods 12 and 4. Change `n` from 120 to 118: incomplete cycles spread power across neighbouring frequencies, demonstrating spectral leakage. ::web-r --- code64: c2V0LnNlZWQoMTEpCm4gPC0gMTIwCnQgPC0gMDoobiAtIDEpCnggPC0gMi41ICogY29zKDIgKiBwaSAqIHQgLyAxMikgKwogICAgIDEuMiAqIHNpbigyICogcGkgKiB0IC8gNCkgKwogICAgIHJub3JtKG4sIHNkID0gMC44KQoKaiA8LSAwOihuIC0gMSkKRm1hdCA8LSBvdXRlcihqLCB0LCBmdW5jdGlvbihqaiwgdHQpIHsKICBleHAoLTJpICogcGkgKiBqaiAqIHR0IC8gbikKfSkgLyBzcXJ0KG4pCmQgPC0gRm1hdCAlKiUgKHggLSBtZWFuKHgpKQpwZXJpb2RvZ3JhbSA8LSBNb2QoZCleMiAvICgyICogcGkpCmZyZXF1ZW5jeSA8LSBqIC8gbgoKdW5pdGFyaXR5X2Vycm9yIDwtIG1heChNb2QoRm1hdCAlKiUgQ29uaih0KEZtYXQpKSAtIGRpYWcobikpKQpwb3NpdGl2ZV9pbmRpY2VzIDwtIDI6KG4gLyAyICsgMSkKdG9wIDwtIHBvc2l0aXZlX2luZGljZXNbCiAgb3JkZXIocGVyaW9kb2dyYW1bcG9zaXRpdmVfaW5kaWNlc10sIGRlY3JlYXNpbmcgPSBUUlVFKVsxOjRdCl0KCnBlYWtfdGFibGUgPC0gZGF0YS5mcmFtZSgKICBmcmVxdWVuY3kgPSBmcmVxdWVuY3lbdG9wXSwKICBwZXJpb2QgPSAxIC8gZnJlcXVlbmN5W3RvcF0sCiAgcGVyaW9kb2dyYW0gPSBwZXJpb2RvZ3JhbVt0b3BdCikKcHJpbnQocm91bmQocGVha190YWJsZSwgNCksIHJvdy5uYW1lcyA9IEZBTFNFKQpjYXQoIk1heGltdW0gdW5pdGFyaXR5IGVycm9yOiIsCiAgICBmb3JtYXQodW5pdGFyaXR5X2Vycm9yLCBzY2llbnRpZmljID0gVFJVRSksICJcbiIpCmNhdCgiRW5lcmd5IGNoZWNrIHxzdW0oeC1jZW50cmVkKV4yIC0gc3VtKHxkfF4yKXw6IiwKICAgIGZvcm1hdChhYnMoc3VtKCh4IC0gbWVhbih4KSleMikgLSBzdW0oTW9kKGQpXjIpKSwKICAgICAgICAgICBzY2llbnRpZmljID0gVFJVRSksICJcbiIpCgpvbGRfcGFyIDwtIHBhcihtZnJvdyA9IGMoMSwgMiksIG1hciA9IGMoMy4yLCAzLjUsIDIuMiwgMSkpCnBsb3QodCwgeCwgdHlwZSA9ICJsIiwgbWFpbiA9ICJUd28tY3ljbGUgc2lnbmFsIiwKICAgICB4bGFiID0gInRpbWUiLCB5bGFiID0gInZhbHVlIikKcGxvdChmcmVxdWVuY3lbcG9zaXRpdmVfaW5kaWNlc10sIHBlcmlvZG9ncmFtW3Bvc2l0aXZlX2luZGljZXNdLAogICAgIHR5cGUgPSAibCIsIG1haW4gPSAiTWF0cml4IHBlcmlvZG9ncmFtIiwKICAgICB4bGFiID0gImN5Y2xlcyBwZXIgb2JzZXJ2YXRpb24iLCB5bGFiID0gIkkob21lZ2EpIikKYWJsaW5lKHYgPSBjKDEgLyAxMiwgMSAvIDQpLCBjb2wgPSBjKCJmaXJlYnJpY2siLCAibmF2eSIpLCBsdHkgPSAyKQpwYXIob2xkX3Bhcik= layout: vertical locale: en title: Build a Fourier matrix and recover two periods --- :: The periodogram detects repetitive structure; it does not tell whether the cycle is stable, caused by a calendar mechanism, or useful for future prediction. ## 6. Aliasing: sampling can create the wrong frequency With one observation per hour, the Nyquist frequency is 0.5 cycles/hour. A true signal at 0.6 cycles/hour is indistinguishable from an alias at [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣0.6]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.4]{.mord}[ ]{.mspace}[[cycles/hour]{.mord}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} No post-processing can recover frequencies that the sampling design made indistinguishable. Sample faster, use an anti-alias filter before sampling, or restrict claims to the observable band. ## 7. Cross-spectra describe frequency-specific association For two stationary series, the cross-spectrum is the Fourier transform of cross-covariances. Squared coherence, [[[]{.katex-mathml}[[[]{.strut style="height:1.2472em;vertical-align:-0.3831em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[x]{.mord.mathnormal.mtight}[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4632em;vertical-align:-0.9721em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∣]{.mord}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[x]{.mord.mathnormal.mtight}[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[[∣]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} lies between 0 and 1 and measures linear association at frequency [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Phase describes a frequency-specific lead or lag. High coherence at the annual frequency may simply reflect a shared calendar. It is not proof that one series causes the other; common forcing and filtering can create the same pattern. For a [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} -variate process, collect all auto- and cross-spectra in [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:4.26em;vertical-align:-1.88em;"}[[[[[[[[]{.pstrut style="height:6.2em;"}[]{style="width:0.667em;height:4.2em;"}]{style="top:-4.35em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[11]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-5.2275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-3.3675em;"}[[]{.pstrut style="height:3.6875em;"}[[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-2.1675em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-5.04em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-3.18em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-1.98em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-5.2275em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-3.3675em;"}[[]{.pstrut style="height:3.6875em;"}[[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-2.1675em;"}]{.vlist style="height:2.38em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.88em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:6.2em;"}[]{style="width:0.667em;height:4.2em;"}]{style="top:-4.35em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} At every frequency, [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is Hermitian and positive semidefinite. This is the frequency-domain analogue of a covariance matrix: for any complex vector [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[a]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the scalar spectrum of [[]{.katex-mathml}[[[]{.strut style="height:0.8387em;vertical-align:-0.15em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## 8. Filters can leak the future A centred moving average [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.9463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.2603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} uses [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. It is legitimate for retrospective description but unavailable for a real-time forecast made at [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Every filter should be labelled: | Filter use | Allowed data | | --------------------------- | ---------------------------------------------------- | | retrospective decomposition | past and future observations, if stated | | real-time monitoring | current and past only | | forecasting backtest | exactly what was available at each historical origin | Frequency response describes what a filter attenuates or passes; it does not excuse information leakage. ## 9. Spectral audit 1. State sampling interval, units, and missing-data treatment. 2. Remove or model mean, trend, seasonality, and breaks deliberately. 3. Name candidate periods before interpreting peaks when domain knowledge exists. 4. Report taper and smoothing choices. 5. Check peak stability across windows and subsamples. 6. Compare the frequency-domain story with ACF and a time-domain model. 7. For cross-spectra, state alignment, common seasonal drivers, and phase uncertainty. 8. For forecasts, ensure all filters are one-sided at each origin. ## Practice 1. Convert a frequency of 0.2 cycles/day to period and angular frequency. 2. Where does an hourly signal at 0.75 cycles/hour alias when sampled hourly? 3. Explain why a periodogram peak near zero may reflect a break rather than a genuine long cycle. 4. Why does smoothing reduce variance but blur nearby frequencies? ::legacy-details{title="Answers"} 1. Period 5 days; angular frequency [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.4]{.mord}[π]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} radians/day. 2. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣0.75]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.25]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} cycles/hour. 3. A sudden level shift contributes strong low-frequency variation; stationarity is violated. 4. Averaging neighbouring ordinates stabilises random variation but combines signals that are close in frequency. :: ## Takeaway Spectral analysis is a unitary change of coordinates for second-order structure. Sampling, stationarity, smoothing, and phase assumptions determine whether that change of coordinates is meaningful. Consolidate the matrix computations in the [R laboratory](https://www.pengjiaxin.com/../07-r-implementation/); the [Python laboratory](https://www.pengjiaxin.com/../08-python-implementation/) is an optional implementation contrast. # R Matrix Lab 1 — Covariance Geometry []{#r-matrix-lab-1-covariance-geometry} ## Question How can a proposed autocovariance sequence become a valid finite-dimensional distribution? For a weakly stationary process, [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[i]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1331em;vertical-align:-0.3831em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}[)]{.mclose}[[]]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The matrix must be symmetric and positive semidefinite because, for every [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[a]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[[]{.katex-mathml}[[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0491em;vertical-align:-0.15em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Example 1 — AR(1) Toeplitz structure For [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[ϕ]{.mord.mathnormal}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} stationarity requires [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ϕ]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3715em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[∣]{.mord.mtight}[h]{.mord.mathnormal.mtight}[∣]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The first column of [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[6]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is therefore [[[]{.katex-mathml}[[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[ϕ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[5]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::web-r --- code64: cGhpIDwtIDAuNjAKaW5ub3ZhdGlvbl92YXJpYW5jZSA8LSAyCm4gPC0gNgoKZ2FtbWEgPC0gaW5ub3ZhdGlvbl92YXJpYW5jZSAvICgxIC0gcGhpXjIpICogcGhpXigwOihuIC0gMSkpCkdhbW1hIDwtIHRvZXBsaXR6KGdhbW1hKQplaWdlbnZhbHVlcyA8LSBlaWdlbihHYW1tYSwgc3ltbWV0cmljID0gVFJVRSwgb25seS52YWx1ZXMgPSBUUlVFKSR2YWx1ZXMKVSA8LSBjaG9sKEdhbW1hKSAgIyB0KFUpICUqJSBVID0gR2FtbWEKCmNhdCgiR2FtbWFfNjpcbiIpCnByaW50KHJvdW5kKEdhbW1hLCA0KSkKY2F0KCJcbkVpZ2VudmFsdWVzOlxuIikKcHJpbnQocm91bmQoZWlnZW52YWx1ZXMsIDYpKQpjYXQoIlxuU3ltbWV0cnkgZXJyb3I6IiwKICAgIGZvcm1hdChtYXgoYWJzKEdhbW1hIC0gdChHYW1tYSkpKSwgc2NpZW50aWZpYyA9IFRSVUUpLCAiXG4iKQpjYXQoIkNob2xlc2t5IHJlY29uc3RydWN0aW9uIGVycm9yOiIsCiAgICBmb3JtYXQobWF4KGFicyh0KFUpICUqJSBVIC0gR2FtbWEpKSwgc2NpZW50aWZpYyA9IFRSVUUpLCAiXG4iKQpjYXQoIkNvbmRpdGlvbiBudW1iZXI6Iiwgcm91bmQoa2FwcGEoR2FtbWEpLCAyKSwgIlxuIikKCiMgVmFyaWFuY2Ugb2YgWFsxXSAtIFhbMl0gYXMgYSBxdWFkcmF0aWMgZm9ybQphIDwtIGMoMSwgLTEsIHJlcCgwLCBuIC0gMikpCmNhdCgiVmFyKFhbMV0gLSBYWzJdKToiLCBkcm9wKHQoYSkgJSolIEdhbW1hICUqJSBhKSwgIlxuIikKY2F0KCJTYW1lIHZhbHVlIGZyb20gMntnYW1tYSgwKS1nYW1tYSgxKX06IiwKICAgIDIgKiAoZ2FtbWFbMV0gLSBnYW1tYVsyXSksICJcbiIp layout: vertical locale: en title: Build and audit an AR(1) covariance matrix --- :: ### Read the output - Equal diagonals confirm Toeplitz structure. - Positive eigenvalues establish positive definiteness for this finite block. - The Cholesky error checks the factorisation numerically. - The quadratic-form check connects a matrix calculation to a familiar variance. Change [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. The first off-diagonal changes sign, but the matrix remains positive definite. Change it to [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.95]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : the process is still stationary, but the condition number rises because neighbouring variables become nearly redundant. ## Example 2 — Gaussian simulation by a matrix square root Let [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[z]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[∼]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[0]{.mord.mathbf}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and choose [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[L]{.mord.mathnormal}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Then [[[]{.katex-mathml}[[[]{.strut style="height:0.8361em;vertical-align:-0.15em;"}[[X]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[z]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} has mean [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[[[μ]{.mord.boldsymbol}]{.mord}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and covariance [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. R returns [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[chol]{.mord.mathrm}]{.mop}[(]{.mopen}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, so use [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8491em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ::web-r --- code64: c2V0LnNlZWQoMTA0KQpwaGkgPC0gMC43NQppbm5vdmF0aW9uX3ZhcmlhbmNlIDwtIDEKbiA8LSA1CnJlcGxpY2F0aW9ucyA8LSAyMDAwMAoKZ2FtbWEgPC0gaW5ub3ZhdGlvbl92YXJpYW5jZSAvICgxIC0gcGhpXjIpICogcGhpXigwOihuIC0gMSkpCkdhbW1hIDwtIHRvZXBsaXR6KGdhbW1hKQptdSA8LSBzZXEoMTAsIDEyLCBsZW5ndGgub3V0ID0gbikKClUgPC0gY2hvbChHYW1tYSkKWiA8LSBtYXRyaXgocm5vcm0obiAqIHJlcGxpY2F0aW9ucyksIG5yb3cgPSBuKQpYIDwtIG11ICsgdChVKSAlKiUgWgoKZW1waXJpY2FsX21lYW4gPC0gcm93TWVhbnMoWCkKY2VudGVyZWQgPC0gWCAtIGVtcGlyaWNhbF9tZWFuCmVtcGlyaWNhbF9jb3ZhcmlhbmNlIDwtIHRjcm9zc3Byb2QoY2VudGVyZWQpIC8gcmVwbGljYXRpb25zCgpjYXQoIlRhcmdldCBhbmQgZW1waXJpY2FsIG1lYW5zOlxuIikKcHJpbnQocm91bmQoY2JpbmQodGFyZ2V0ID0gbXUsIGVtcGlyaWNhbCA9IGVtcGlyaWNhbF9tZWFuKSwgMykpCmNhdCgiXG5NYXhpbXVtIGNvdmFyaWFuY2UgZXJyb3I6IiwKICAgIHJvdW5kKG1heChhYnMoZW1waXJpY2FsX2NvdmFyaWFuY2UgLSBHYW1tYSkpLCA0KSwgIlxuIikKY2F0KCJcblRhcmdldCBjb3ZhcmlhbmNlOlxuIikKcHJpbnQocm91bmQoR2FtbWEsIDMpKQpjYXQoIlxuRW1waXJpY2FsIGNvdmFyaWFuY2U6XG4iKQpwcmludChyb3VuZChlbXBpcmljYWxfY292YXJpYW5jZSwgMykp layout: vertical locale: en title: Simulate Gaussian blocks with a Cholesky factor --- :: The empirical error will not be exactly zero because only finitely many blocks were simulated. Increase `replications` by a factor of four: Monte Carlo error should shrink by roughly a factor of two. ## Why pairwise correlations are not enough Values satisfying [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} do not automatically form a valid autocorrelation sequence. All finite Toeplitz blocks must be positive semidefinite. A proposed sequence can pass every pairwise bound and still produce a negative eigenvalue. This is the matrix reason that an ACF cannot be invented one lag at a time. ## Exercises 1. With [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and innovation variance 2, calculate [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} by hand. 2. Replace `gamma` by `c(1, 0.9, -0.9)` and inspect the eigenvalues of `toeplitz(gamma)`. Is it a valid three-lag covariance block? 3. Show algebraically that [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[\[]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 4. Compare the condition numbers for [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.9]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.99]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Explain the statistical meaning. 5. Graduate extension: prove that every principal submatrix of a positive semidefinite matrix is positive semidefinite. ::legacy-details{title="Checkpoints"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2/]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.36]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[3.125]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.875]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. It has a negative eigenvalue, so satisfying the individual bounds [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ρ]{.mord.mathnormal}[(]{.mopen}[h]{.mord.mathnormal}[)]{.mclose}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} was insufficient. 3. Expand [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 4. Near one, adjacent coordinates are almost collinear; separating long-run level variation from persistence becomes numerically and statistically difficult. :: ## Completion standard You should be able to build [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} from [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, justify positive semidefiniteness with quadratic forms, and use Cholesky reconstruction as a reproducible numerical check. Continue to [Lab 2 — AR Recursions](https://www.pengjiaxin.com/02-ar-recursions). # R Matrix Lab 2 — AR Recursions and Yule–Walker Equations []{#r-matrix-lab-2-ar-recursions-and-yulewalker-equations} ## Question How do one scalar difference equation, one companion matrix, and one Toeplitz linear system describe the same AR process? Consider [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Define the state [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1852em;vertical-align:-0.2861em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[p]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[s]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[G]{.mord.mathnormal}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:6.12em;vertical-align:-2.81em;"}[[[[[[[[]{.pstrut style="height:8em;"}[]{style="width:0.667em;height:6em;"}]{style="top:-5.25em;"}]{.vlist style="height:3.25em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.75em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[[[[[[[]{.pstrut style="height:3.6875em;"}[[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-6.1575em;"}[[]{.pstrut style="height:3.6875em;"}[[1]{.mord}]{.mord}]{style="top:-4.9575em;"}[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-3.0975em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-1.2375em;"}]{.vlist style="height:3.31em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.81em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.97em;"}[[]{.pstrut style="height:3.5em;"}[[0]{.mord}]{.mord}]{style="top:-4.77em;"}[[]{.pstrut style="height:3.5em;"}[[1]{.mord}]{.mord}]{style="top:-2.91em;"}[[]{.pstrut style="height:3.5em;"}[]{.mord}]{style="top:-1.05em;"}]{.vlist style="height:3.31em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.81em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-5.97em;"}[[]{.pstrut style="height:3.5em;"}[[⋯]{.minner}]{.mord}]{style="top:-4.77em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-2.91em;"}[[]{.pstrut style="height:3.5em;"}[[⋱]{.minner}]{.mord}]{style="top:-1.05em;"}]{.vlist style="height:3.31em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.81em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3.6875em;"}[[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-6.1575em;"}[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-4.9575em;"}[[]{.pstrut style="height:3.6875em;"}[[[⋮]{.mord}[]{.mord.rule style="border-right-width:0em;border-top-width:1.5em;bottom:0em;"}]{.mord}]{.mord}]{style="top:-3.0975em;"}[[]{.pstrut style="height:3.6875em;"}[[0]{.mord}]{.mord}]{style="top:-1.2375em;"}]{.vlist style="height:3.31em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.81em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[[[[[[]{.pstrut style="height:8em;"}[]{style="width:0.667em;height:6em;"}]{style="top:-5.25em;"}]{.vlist style="height:3.25em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.75em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Example 1 — Roots, eigenvalues, and shock propagation For [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.75]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.125]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} the AR polynomial is [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord.mathnormal}[(]{.mopen}[z]{.mord.mathnormal style="margin-right:0.044em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.75]{.mord}[z]{.mord.mathnormal style="margin-right:0.044em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8641em;"}[0.125]{.mord}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Its roots must lie outside the unit circle. The companion eigenvalues are their reciprocals and must lie inside. ::web-r --- code64: cGhpIDwtIGMoMC43NSwgLTAuMTI1KQpwIDwtIGxlbmd0aChwaGkpCgpGIDwtIHJiaW5kKHBoaSwgY2JpbmQoZGlhZyhwIC0gMSksIG1hdHJpeCgwLCBwIC0gMSwgMSkpKQpHIDwtIGMoMSwgcmVwKDAsIHAgLSAxKSkKYXJfcm9vdHMgPC0gcG9seXJvb3QoYygxLCAtcGhpKSkKY29tcGFuaW9uX2VpZ2VudmFsdWVzIDwtIGVpZ2VuKEYsIG9ubHkudmFsdWVzID0gVFJVRSkkdmFsdWVzCgpob3Jpem9uIDwtIDEwCnJlc3BvbnNlIDwtIG51bWVyaWMoaG9yaXpvbiArIDEpCkZfcG93ZXIgPC0gZGlhZyhwKQpmb3IgKGggaW4gMDpob3Jpem9uKSB7CiAgcmVzcG9uc2VbaCArIDFdIDwtIGRyb3AoYygxLCByZXAoMCwgcCAtIDEpKSAlKiUgRl9wb3dlciAlKiUgRykKICBGX3Bvd2VyIDwtIEZfcG93ZXIgJSolIEYKfQoKY2F0KCJDb21wYW5pb24gbWF0cml4IEY6XG4iKQpwcmludChGKQpjYXQoIlxuQVIgcG9seW5vbWlhbCByb290czpcbiIpCnByaW50KHJvdW5kKGFyX3Jvb3RzLCA2KSkKY2F0KCJSb290IG1vZHVsaTpcbiIpCnByaW50KHJvdW5kKE1vZChhcl9yb290cyksIDYpKQpjYXQoIlxuQ29tcGFuaW9uIGVpZ2VudmFsdWVzOlxuIikKcHJpbnQocm91bmQoY29tcGFuaW9uX2VpZ2VudmFsdWVzLCA2KSkKY2F0KCJTcGVjdHJhbCByYWRpdXM6Iiwgcm91bmQobWF4KE1vZChjb21wYW5pb25fZWlnZW52YWx1ZXMpKSwgNiksICJcbiIpCmNhdCgiXG5JbXB1bHNlLXJlc3BvbnNlIGNvZWZmaWNpZW50cyBwc2lfMCwuLi4scHNpXzEwOlxuIikKcHJpbnQocm91bmQocmVzcG9uc2UsIDYpKQoKcmVjdXJzaW9uX2Vycm9yIDwtIG1heChhYnMoCiAgcmVzcG9uc2VbMzpsZW5ndGgocmVzcG9uc2UpXSAtCiAgICBwaGlbMV0gKiByZXNwb25zZVsyOihsZW5ndGgocmVzcG9uc2UpIC0gMSldIC0KICAgIHBoaVsyXSAqIHJlc3BvbnNlWzE6KGxlbmd0aChyZXNwb25zZSkgLSAyKV0KKSkKY2F0KCJNYXhpbXVtIGltcHVsc2UtcmVjdXJzaW9uIGVycm9yOiIsCiAgICBmb3JtYXQocmVjdXJzaW9uX2Vycm9yLCBzY2llbnRpZmljID0gVFJVRSksICJcbiIp layout: vertical locale: en title: Compare AR roots, companion eigenvalues, and impulse responses --- :: The first output checks admissibility. The second shows dynamics: [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[G]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is the state response to one innovation, and its first component is [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} in the MA( [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[∞]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) representation. ## Example 2 — Yule–Walker as a Toeplitz solve For a stationary AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ), [[[]{.katex-mathml}[[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[ϕ]{.mord.boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8247em;vertical-align:-0.3802em;"}[[[[γ]{.mord.boldsymbol style="margin-right:0.0639em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.0573em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} with [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Toeplitz]{.mord.mathrm}]{.mop}[{]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1302em;vertical-align:-0.3802em;"}[1]{.mord}[)}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[γ]{.mord.boldsymbol style="margin-right:0.0639em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.0573em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[p]{.mord.mathnormal}[)]{.mclose}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The innovation variance follows from the lag-zero equation: [[[]{.katex-mathml}[[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.3137em;vertical-align:-0.3802em;"}[[[[ϕ]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1473em;margin-right:0.05em;"}]{.vlist style="height:0.9334em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[[[γ]{.mord.boldsymbol style="margin-right:0.0639em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.0573em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::web-r --- code64: cGhpIDwtIGMoMC43NSwgLTAuMTI1KQppbm5vdmF0aW9uX3ZhcmlhbmNlIDwtIDIKcCA8LSBsZW5ndGgocGhpKQoKIyBUaGVvcmV0aWNhbCBhdXRvY29ycmVsYXRpb25zIHJobygwKSwuLi4scmhvKDEwKQpyaG8gPC0gYXMubnVtZXJpYyhBUk1BYWNmKGFyID0gcGhpLCBsYWcubWF4ID0gMTApKQoKIyBSZWNvdmVyIGdhbW1hKDApIGZyb20gdGhlIGxhZy16ZXJvIFl1bGUtV2Fsa2VyIGVxdWF0aW9uCmdhbW1hMCA8LSBpbm5vdmF0aW9uX3ZhcmlhbmNlIC8KICAoMSAtIHN1bShwaGkgKiByaG9bMjoocCArIDEpXSkpCmdhbW1hIDwtIGdhbW1hMCAqIHJobwoKR2FtbWFfcCA8LSB0b2VwbGl0eihnYW1tYVsxOnBdKQpnYW1tYV9wIDwtIGdhbW1hWzI6KHAgKyAxKV0KcGhpX3JlY292ZXJlZCA8LSBzb2x2ZShHYW1tYV9wLCBnYW1tYV9wKQpzaWdtYTJfcmVjb3ZlcmVkIDwtIGdhbW1hMCAtIGRyb3AoY3Jvc3Nwcm9kKHBoaV9yZWNvdmVyZWQsIGdhbW1hX3ApKQoKIyBDaGVjayBnYW1tYShoKSA9IHN1bV9qIHBoaV9qIGdhbW1hKGgtaikgZm9yIGggPSAxLC4uLiw4CmdhbW1hX2F0IDwtIGZ1bmN0aW9uKGgpIGdhbW1hW2FicyhoKSArIDFdCmVxdWF0aW9uX2Vycm9ycyA8LSBzYXBwbHkoMTo4LCBmdW5jdGlvbihoKSB7CiAgZ2FtbWFfYXQoaCkgLSBzdW0ocGhpX3JlY292ZXJlZCAqIHNhcHBseSgxOnAsIGZ1bmN0aW9uKGopIGdhbW1hX2F0KGggLSBqKSkpCn0pCgpjYXQoIkdhbW1hX3A6XG4iKQpwcmludChyb3VuZChHYW1tYV9wLCA2KSkKY2F0KCJcbmdhbW1hX3A6XG4iKQpwcmludChyb3VuZChnYW1tYV9wLCA2KSkKY2F0KCJcbk9yaWdpbmFsIGFuZCByZWNvdmVyZWQgY29lZmZpY2llbnRzOlxuIikKcHJpbnQocm91bmQocmJpbmQob3JpZ2luYWwgPSBwaGksIHJlY292ZXJlZCA9IHBoaV9yZWNvdmVyZWQpLCA4KSkKY2F0KCJPcmlnaW5hbCBhbmQgcmVjb3ZlcmVkIGlubm92YXRpb24gdmFyaWFuY2U6IiwKICAgIGlubm92YXRpb25fdmFyaWFuY2UsIHJvdW5kKHNpZ21hMl9yZWNvdmVyZWQsIDgpLCAiXG4iKQpjYXQoIk1heGltdW0gWXVsZS1XYWxrZXIgZXF1YXRpb24gZXJyb3I6IiwKICAgIGZvcm1hdChtYXgoYWJzKGVxdWF0aW9uX2Vycm9ycykpLCBzY2llbnRpZmljID0gVFJVRSksICJcbiIp layout: vertical locale: en title: Recover AR coefficients from theoretical autocovariances --- :: This cell deliberately starts from population autocovariances. In estimation, replacing them by sample autocovariances introduces sampling error; the linear algebra remains the same. ## One model, four equivalent views | View | Object | Stability or identification check | | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | difference equation | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord,mathnormal}[(]{.mopen}[B]{.mord,mathnormal style="margin-right:0.0502em;"}[)]{.mclose}[[X]{.mord,mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | coefficients define recursion | | polynomial | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ϕ]{.mord,mathnormal}[(]{.mopen}[z]{.mord,mathnormal style="margin-right:0.044em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | roots outside unit circle | | state equation | [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[[s]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[−]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[G]{.mord,mathnormal}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | eigenvalues of [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} inside unit circle | | moment equations | [[]{.katex-mathml}[[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[[[ϕ]{.mord,boldsymbol}]{.mord}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8247em;vertical-align:-0.3802em;"}[[[[γ]{.mord,boldsymbol style="margin-right:0.0639em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.0573em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3802em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} invertible | The views are equivalent under the model, but each makes a different task easier. ## Exercises 1. Build the companion matrix for AR(3) coefficients [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[0.2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 2. Verify numerically that each companion eigenvalue is the reciprocal of one AR-polynomial root. 3. Set [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[1.2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[0.32]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Check roots and eigenvalues before simulating. 4. For AR(1), reduce the matrix Yule–Walker equation to [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[/]{.mord}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 5. Set [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[0.9]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.09]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Inspect the spectral radius and the decay of [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[ψ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Explain why “coefficients sum to less than one” is not the general AR( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ) stability test. 6. Graduate extension: solve [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[⊗]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[G]{.mord.mathnormal}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and compare [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[11]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} with [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ::legacy-details{title="Checkpoints"} 1. The first row is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.5]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[0.2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; rows two and three shift the state with ones on the first subdiagonal. 2. Match the two unordered sets after taking reciprocals; allow floating-point tolerance. 3. A coefficient larger than one does not decide stability by itself; the polynomial roots or companion eigenvalues do. 4. [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:0.6886em;vertical-align:-0.2441em;"}[[[[γ]{.mord.boldsymbol style="margin-right:0.0639em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.207em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[1]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 5. Stability depends on all roots jointly, not on one coefficient or one sum. :: ## Completion standard You should be able to move without ambiguity among lag-polynomial, companion-matrix, impulse-response, and Yule–Walker representations. Continue to [Lab 3 — Prediction and Likelihood](https://www.pengjiaxin.com/03-prediction-likelihood). # R Matrix Lab 3 — Prediction and Gaussian Likelihood []{#r-matrix-lab-3-prediction-and-gaussian-likelihood} ## Question How can one covariance matrix produce both a predictor and a likelihood? Let the observed vector be [[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[X]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and target be [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Partition their joint covariance: [[[]{.katex-mathml}[[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[[Var]{.mord.mathrm}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[X]{.mord.mathbf}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4091em;vertical-align:-0.9546em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[Γ]{.mord}]{.mord}]{style="top:-3.6146em;"}[[]{.pstrut style="height:3em;"}[[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.4054em;"}]{.vlist style="height:1.4546em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9546em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}]{.mord}]{style="top:-3.6146em;"}[[]{.pstrut style="height:3em;"}[[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[Y]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.4054em;"}]{.vlist style="height:1.4546em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9546em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Then [[[]{.katex-mathml}[[[]{.strut style="height:0.9233em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathbf}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[Γ]{.mord}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1733em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[Y]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[[g]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[g]{.mord.mathbf style="margin-right:0.016em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Example 1 — Predictor weights and Schur complement Use an AR(2) with [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[0.65]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[0.20]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and innovation variance 1.5. Predict [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} from [[[]{.katex-mathml}[[[]{.strut style="height:0.6861em;"}[X]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The model says that only the first two coordinates should retain non-zero weights. ::web-r --- code64: cGhpIDwtIGMoMC42NSwgLTAuMjApCmlubm92YXRpb25fdmFyaWFuY2UgPC0gMS41CnAgPC0gbGVuZ3RoKHBoaSkKCnJobyA8LSBhcy5udW1lcmljKEFSTUFhY2YoYXIgPSBwaGksIGxhZy5tYXggPSA4KSkKZ2FtbWEwIDwtIGlubm92YXRpb25fdmFyaWFuY2UgLwogICgxIC0gc3VtKHBoaSAqIHJob1syOihwICsgMSldKSkKZ2FtbWEgPC0gZ2FtbWEwICogcmhvCgpHYW1tYSA8LSB0b2VwbGl0eihnYW1tYVsxOjNdKQpnIDwtIGdhbW1hWzI6NF0KZ2FtbWFfWSA8LSBnYW1tYTAKCndlaWdodHMgPC0gc29sdmUoR2FtbWEsIGcpCnByZWRpY3Rpb25fdmFyaWFuY2UgPC0gZ2FtbWFfWSAtIGRyb3AoY3Jvc3Nwcm9kKGcsIHdlaWdodHMpKQpqb2ludF9jb3ZhcmlhbmNlIDwtIHJiaW5kKAogIGNiaW5kKEdhbW1hLCBnKSwKICBjKGcsIGdhbW1hX1kpCikKCmNhdCgiUHJlZGljdG9yIGNvdmFyaWFuY2UgR2FtbWE6XG4iKQpwcmludChyb3VuZChHYW1tYSwgNikpCmNhdCgiXG5UYXJnZXQgY3Jvc3MtY292YXJpYW5jZSBnOlxuIikKcHJpbnQocm91bmQoZywgNikpCmNhdCgiXG5XZWlnaHRzIG9uIFhbdF0sIFhbdC0xXSwgWFt0LTJdOlxuIikKcHJpbnQocm91bmQod2VpZ2h0cywgOCkpCmNhdCgiXG5QcmVkaWN0aW9uLWVycm9yIHZhcmlhbmNlOiIsIHJvdW5kKHByZWRpY3Rpb25fdmFyaWFuY2UsIDgpLCAiXG4iKQpjYXQoIklubm92YXRpb24gdmFyaWFuY2U6IiwgaW5ub3ZhdGlvbl92YXJpYW5jZSwgIlxuIikKY2F0KCJOb3JtYWwtZXF1YXRpb24gZXJyb3I6IiwKICAgIGZvcm1hdChtYXgoYWJzKEdhbW1hICUqJSB3ZWlnaHRzIC0gZykpLCBzY2llbnRpZmljID0gVFJVRSksICJcbiIpCmNhdCgiU21hbGxlc3Qgam9pbnQtY292YXJpYW5jZSBlaWdlbnZhbHVlOiIsCiAgICByb3VuZChtaW4oZWlnZW4oam9pbnRfY292YXJpYW5jZSwgc3ltbWV0cmljID0gVFJVRSkkdmFsdWVzKSwgOCksICJcbiIpCgojIE9uZSBudW1lcmljYWwgcHJlZGljdGlvbgpvYnNlcnZlZF9zdGF0ZSA8LSBjKDEuMiwgMC40LCAtMC41KQpjYXQoIlByZWRpY3Rpb24gZm9yIHN0YXRlICgxLjIsIDAuNCwgLTAuNSk6IiwKICAgIHJvdW5kKGRyb3AoY3Jvc3Nwcm9kKHdlaWdodHMsIG9ic2VydmVkX3N0YXRlKSksIDQpLCAiXG4iKQ== layout: vertical locale: en title: Solve and audit the best linear predictor --- :: The third weight should be zero up to numerical precision, and the Schur complement should reproduce the innovation variance. Both are model-implied identities. ## Example 2 — Three estimators answer three finite-sample problems For a centred AR(1): [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[ϕ]{.mord.mathnormal}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Compare: [[[]{.katex-mathml}[[[]{.strut style="height:1.1289em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[ϕ]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}[L]{.mord.mathnormal.mtight}[S]{.mord.mathnormal.mtight style="margin-right:0.0576em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5129em;vertical-align:-1.0189em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.8043em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.0448em;margin-right:0.05em;"}]{.vlist style="height:0.7959em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3246em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.3057em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.8043em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.6897em;"}]{.vlist style="height:1.494em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.0189em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[ϕ]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[Y]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}[W]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} and the exact Gaussian maximum-likelihood estimate based on [[[]{.katex-mathml}[[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[Σ]{.mord}[(]{.mopen}[ϕ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3715em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[Toeplitz]{.mord.mathrm}]{.mop}[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[ϕ]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::web-r --- code64: c2V0LnNlZWQoMzA4KQpuIDwtIDkwCnBoaV90cnVlIDwtIDAuNzgKc2lnbWEyX3RydWUgPC0gMS4yCnggPC0gYXMubnVtZXJpYyhhcmltYS5zaW0oCiAgbW9kZWwgPSBsaXN0KGFyID0gcGhpX3RydWUpLCBuID0gbiwKICBzZCA9IHNxcnQoc2lnbWEyX3RydWUpCikpCgojIENvbmRpdGlvbmFsIGxlYXN0IHNxdWFyZXMKcGhpX2NscyA8LSBzdW0oeFstMV0gKiB4Wy1uXSkgLyBzdW0oeFstbl1eMikKcmVzaWR1YWxfY2xzIDwtIHhbLTFdIC0gcGhpX2NscyAqIHhbLW5dCnNpZ21hMl9jbHMgPC0gbWVhbihyZXNpZHVhbF9jbHNeMikKCiMgWXVsZS1XYWxrZXIgd2l0aCBkaXZpc29yIG4gYW5kIGtub3duIHplcm8gbWVhbgpnYW1tYTBfaGF0IDwtIG1lYW4oeF4yKQpnYW1tYTFfaGF0IDwtIHN1bSh4Wy0xXSAqIHhbLW5dKSAvIG4KcGhpX3l3IDwtIGdhbW1hMV9oYXQgLyBnYW1tYTBfaGF0CnNpZ21hMl95dyA8LSBnYW1tYTBfaGF0IC0gcGhpX3l3ICogZ2FtbWExX2hhdAoKIyBFeGFjdCBzdGF0aW9uYXJ5IEdhdXNzaWFuIGxpa2VsaWhvb2QKbmxsIDwtIGZ1bmN0aW9uKGV0YSkgewogIHBoaSA8LSB0YW5oKGV0YVsxXSkKICBzaWdtYTIgPC0gZXhwKGV0YVsyXSkKICBTaWdtYSA8LSBzaWdtYTIgLyAoMSAtIHBoaV4yKSAqIHRvZXBsaXR6KHBoaV4oMDoobiAtIDEpKSkKICBVIDwtIHRyeUNhdGNoKGNob2woU2lnbWEpLCBlcnJvciA9IGZ1bmN0aW9uKGUpIE5VTEwpCiAgaWYgKGlzLm51bGwoVSkpIHJldHVybigxZTUwKQogIHogPC0gYmFja3NvbHZlKFUsIHgsIHRyYW5zcG9zZSA9IFRSVUUpCiAgMC41ICogKG4gKiBsb2coMiAqIHBpKSArIDIgKiBzdW0obG9nKGRpYWcoVSkpKSArIHN1bSh6XjIpKQp9CmZpdF9leGFjdCA8LSBvcHRpbSgKICBjKGF0YW5oKDAuNSksIGxvZyh2YXIoeCkgKiAwLjUpKSwKICBubGwsIG1ldGhvZCA9ICJMLUJGR1MtQiIsCiAgbG93ZXIgPSBjKGF0YW5oKC0wLjk5KSwgbG9nKDFlLTYpKSwKICB1cHBlciA9IGMoYXRhbmgoMC45OSksIGxvZygxZTMpKSwKICBoZXNzaWFuID0gVFJVRQopCnBoaV9leGFjdCA8LSB0YW5oKGZpdF9leGFjdCRwYXJbMV0pCnNpZ21hMl9leGFjdCA8LSBleHAoZml0X2V4YWN0JHBhclsyXSkKCmVzdGltYXRlcyA8LSByYmluZCgKICB0cnV0aCA9IGMocGhpX3RydWUsIHNpZ21hMl90cnVlKSwKICBjb25kaXRpb25hbF9MUyA9IGMocGhpX2Nscywgc2lnbWEyX2NscyksCiAgWXVsZV9XYWxrZXIgPSBjKHBoaV95dywgc2lnbWEyX3l3KSwKICBleGFjdF9HYXVzc2lhbiA9IGMocGhpX2V4YWN0LCBzaWdtYTJfZXhhY3QpCikKY29sbmFtZXMoZXN0aW1hdGVzKSA8LSBjKCJwaGkiLCAiaW5ub3ZhdGlvbiB2YXJpYW5jZSIpCnByaW50KHJvdW5kKGVzdGltYXRlcywgNCkpCmNhdCgiRXhhY3QtbGlrZWxpaG9vZCBjb252ZXJnZW5jZSBjb2RlOiIsIGZpdF9leGFjdCRjb252ZXJnZW5jZSwgIlxuIikKCiMgTG9jYWwgY3VydmF0dXJlIGluIHRoZSB1bmNvbnN0cmFpbmVkIGV0YSBwYXJhbWV0ZXJpc2F0aW9uCmV0YV9jb3ZhcmlhbmNlIDwtIHNvbHZlKGZpdF9leGFjdCRoZXNzaWFuKQpjYXQoIlxuQXBwcm94aW1hdGUgZXRhLXNjYWxlIHN0YW5kYXJkIGVycm9yczpcbiIpCnByaW50KHJvdW5kKHNxcnQoZGlhZyhldGFfY292YXJpYW5jZSkpLCA0KSk= layout: vertical locale: en title: Compare conditional, Yule-Walker, and exact Gaussian estimates --- :: The estimates are not expected to match exactly: | Estimator | Initial-condition treatment | Main sample summary | | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------- | | conditional LS | conditions on [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | transition residual sum of squares | | Yule–Walker | replaces population moments | sample autocovariances | | exact Gaussian ML | models stationary distribution of the full vector | determinant and quadratic form | Repeat with `n <- 500`. Differences usually shrink, illustrating asymptotic agreement without pretending finite-sample identity. ## Numerical discipline Do not write code that evaluates ```r det(Sigma) solve(Sigma) ``` inside an optimiser. Determinants can underflow or overflow, and a full inverse performs unnecessary work. Use ```r U <- chol(Sigma) logdet <- 2 * sum(log(diag(U))) z <- backsolve(U, x, transpose = TRUE) quadratic <- sum(z^2) ``` The code then mirrors the mathematics and exposes failure when [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Σ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} is not positive definite. ## Exercises 1. Predict [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} for state [[]{.katex-mathml}[[[]{.strut style="height:1.0991em;vertical-align:-0.25em;"}[(]{.mopen}[1.2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0.4]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[−]{.mord}[0.5]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} by the AR(2) recursion and compare with the cell. 2. Remove [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} from the predictor vector. Why does the MSPE remain unchanged under the true AR(2)? 3. Set [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[[true]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.95]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and repeat the estimator comparison. Record convergence, condition number, and estimate dispersion across seeds. 4. Add an unknown mean [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to the likelihood and replace [[]{.katex-mathml}[[[]{.strut style="height:0.4444em;"}[x]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex} by [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[x]{.mord.mathbf}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}[1]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. Which parameter correlations do you expect? 5. Graduate extension: use the delta method to transform the Hessian covariance from [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[η]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[atanh]{.mord.mathrm}]{.mop}[(]{.mopen}[ϕ]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[ϕ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ::legacy-details{title="Checkpoints"} 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.65]{.mord}[(]{.mopen}[1.2]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.20]{.mord}[(]{.mopen}[0.4]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.70]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}; the third coordinate has no direct coefficient. 2. The Markov state already consists of [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; the older value adds no linear information conditional on that state. 3. Near the boundary, covariance matrices become ill-conditioned and normal approximations become less reliable. 4. The mean and persistence can be strongly confounded in short, persistent series. 5. Multiply the eta-scale variance by [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0641em;vertical-align:-0.25em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} at the estimate. :: ## Completion standard You should be able to identify the covariance block used for prediction, verify its normal equations, and explain why conditional, moment, and exact likelihood estimates differ in finite samples. Continue to [Lab 4 — State Space](https://www.pengjiaxin.com/04-state-space). # R Matrix Lab 4 — State Space and Kalman Filtering []{#r-matrix-lab-4-state-space-and-kalman-filtering} ## Question How can a fixed-dimensional state summarise all past information needed for sequential prediction? Use the linear Gaussian system [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9275em;vertical-align:-0.2441em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[η]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[α]{.mord.boldsymbol}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} where [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[[[η]{.mord.boldsymbol style="margin-right:0.037em;"}]{.mord}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Q]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The filter carries only a state mean [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and covariance [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. ## The two-stage recursion Prediction: [[[]{.katex-mathml}[[[]{.strut style="height:0.7996em;vertical-align:-0.3552em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1074em;vertical-align:-0.2083em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0935em;vertical-align:-0.1944em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[Q]{.mord.mathnormal}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Correction: [[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[v]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2543em;vertical-align:-0.3552em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2543em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9385em;vertical-align:-0.3552em;"}[[a]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[v]{.mord.mathbf style="margin-right:0.016em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.016em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0715em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Example 1 — Local level with a missing observation The local-level model is [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[η]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} so all matrices are scalar: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[Q]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::web-r --- code64: eSA8LSBjKDAuNCwgMC45LCAxLjEsIE5BLCAxLjgsIDEuNywgMi4yLCAyLjApCnEgPC0gMC4yMCAgIyBzdGF0ZSBpbm5vdmF0aW9uIHZhcmlhbmNlCmggPC0gMC41MCAgIyBvYnNlcnZhdGlvbiBlcnJvciB2YXJpYW5jZQoKYV9maWx0ZXJlZCA8LSAwClBfZmlsdGVyZWQgPC0gMTAKcm93cyA8LSB2ZWN0b3IoImxpc3QiLCBsZW5ndGgoeSkpCgpmb3IgKHQgaW4gc2VxX2Fsb25nKHkpKSB7CiAgIyBQcmVkaWN0aW9uOiBUID0gUiA9IFogPSAxCiAgYV9wcmVkaWN0ZWQgPC0gYV9maWx0ZXJlZAogIFBfcHJlZGljdGVkIDwtIFBfZmlsdGVyZWQgKyBxCgogIGlmIChpcy5uYSh5W3RdKSkgewogICAgaW5ub3ZhdGlvbiA8LSBOQV9yZWFsXwogICAgaW5ub3ZhdGlvbl92YXJpYW5jZSA8LSBOQV9yZWFsXwogICAgZ2FpbiA8LSAwCiAgICBhX2ZpbHRlcmVkIDwtIGFfcHJlZGljdGVkCiAgICBQX2ZpbHRlcmVkIDwtIFBfcHJlZGljdGVkCiAgfSBlbHNlIHsKICAgIGlubm92YXRpb24gPC0geVt0XSAtIGFfcHJlZGljdGVkCiAgICBpbm5vdmF0aW9uX3ZhcmlhbmNlIDwtIFBfcHJlZGljdGVkICsgaAogICAgZ2FpbiA8LSBQX3ByZWRpY3RlZCAvIGlubm92YXRpb25fdmFyaWFuY2UKICAgIGFfZmlsdGVyZWQgPC0gYV9wcmVkaWN0ZWQgKyBnYWluICogaW5ub3ZhdGlvbgogICAgUF9maWx0ZXJlZCA8LSBQX3ByZWRpY3RlZCAtIGdhaW5eMiAqIGlubm92YXRpb25fdmFyaWFuY2UKICB9CgogIHJvd3NbW3RdXSA8LSBkYXRhLmZyYW1lKAogICAgdCA9IHQsCiAgICB5ID0geVt0XSwKICAgIHByZWRpY3RlZF9zdGF0ZSA9IGFfcHJlZGljdGVkLAogICAgcHJlZGljdGVkX3ZhcmlhbmNlID0gUF9wcmVkaWN0ZWQsCiAgICBpbm5vdmF0aW9uID0gaW5ub3ZhdGlvbiwKICAgIGdhaW4gPSBnYWluLAogICAgZmlsdGVyZWRfc3RhdGUgPSBhX2ZpbHRlcmVkLAogICAgZmlsdGVyZWRfdmFyaWFuY2UgPSBQX2ZpbHRlcmVkCiAgKQp9CgpmaWx0ZXJfdGFibGUgPC0gZG8uY2FsbChyYmluZCwgcm93cykKcHJpbnQocm91bmQoZmlsdGVyX3RhYmxlLCA0KSwgcm93Lm5hbWVzID0gRkFMU0UpCgptaXNzaW5nX3JvdyA8LSB3aGljaChpcy5uYSh5KSkKY2F0KCJcbkF0IHRoZSBtaXNzaW5nIG9ic2VydmF0aW9uLCBjb3JyZWN0aW9uIGlzIHNraXBwZWQ6IiwKICAgIGZpbHRlcl90YWJsZSRwcmVkaWN0ZWRfc3RhdGVbbWlzc2luZ19yb3ddID09CiAgICAgIGZpbHRlcl90YWJsZSRmaWx0ZXJlZF9zdGF0ZVttaXNzaW5nX3Jvd10sICJcbiIpCmNhdCgiQWxsIG5vbi1taXNzaW5nIGdhaW5zIGxpZSBiZXR3ZWVuIHplcm8gYW5kIG9uZToiLAogICAgYWxsKGZpbHRlcl90YWJsZSRnYWluWy1taXNzaW5nX3Jvd10gPiAwICYKICAgICAgICBmaWx0ZXJfdGFibGUkZ2FpblstbWlzc2luZ19yb3ddIDwgMSksICJcbiIp layout: vertical locale: en title: Implement a local-level Kalman filter by hand --- :: At [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, uncertainty grows by [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} but no observation reduces it. At [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, the larger prior variance gives the new measurement more weight. ## Example 2 — AR(2) as a state-space forecast For [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.65]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[0.20]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} use [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[0.65]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[−]{.mord}[0.20]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[0]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[[[\[]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.61em;"}[[]{.pstrut style="height:3em;"}[[0]{.mord}]{.mord}]{style="top:-2.41em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2em;vertical-align:-0.35em;"}[[[\[]{.delimsizing.size1}]{.mopen.delimcenter style="top:0em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}[]{.arraycolsep style="width:0.5em;"}[]{.arraycolsep style="width:0.5em;"}[[[[[[]{.pstrut style="height:3em;"}[[0]{.mord}]{.mord}]{style="top:-3.01em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}[[]]{.delimsizing.size1}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} The stationary state covariance solves the discrete Lyapunov equation [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9824em;vertical-align:-0.0833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Vectorisation turns it into one linear solve: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.204em;vertical-align:-0.25em;"}[[[(]{.mopen.delimcenter style="top:0em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[⊗]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.954em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[[vec]{.mord.mathrm}]{.mop}[(]{.mopen}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[ε]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::web-r --- code64: cGhpIDwtIGMoMC42NSwgLTAuMjApCmlubm92YXRpb25fdmFyaWFuY2UgPC0gMS41ClRtYXQgPC0gcmJpbmQocGhpLCBjKDEsIDApKQpSbWF0IDwtIG1hdHJpeChjKDEsIDApLCBuY29sID0gMSkKWm1hdCA8LSBtYXRyaXgoYygxLCAwKSwgbnJvdyA9IDEpClFzdGF0ZSA8LSBpbm5vdmF0aW9uX3ZhcmlhbmNlICogUm1hdCAlKiUgdChSbWF0KQoKIyBTdGF0aW9uYXJ5IHN0YXRlIGNvdmFyaWFuY2UgZnJvbSB0aGUgTHlhcHVub3YgZXF1YXRpb24KayA8LSBucm93KFRtYXQpCnZlY1AgPC0gc29sdmUoCiAgZGlhZyhrICogaykgLSBrcm9uZWNrZXIoVG1hdCwgVG1hdCksCiAgYXMudmVjdG9yKFFzdGF0ZSkKKQpQX3N0YXRpb25hcnkgPC0gbWF0cml4KHZlY1AsIG5yb3cgPSBrKQpseWFwdW5vdl9lcnJvciA8LSBtYXgoYWJzKAogIFBfc3RhdGlvbmFyeSAtIFRtYXQgJSolIFBfc3RhdGlvbmFyeSAlKiUgdChUbWF0KSAtIFFzdGF0ZQopKQoKIyBDb21wYXJlIHdpdGggdGhlIGNvdmFyaWFuY2UgaW1wbGllZCBieSBBUiBhdXRvY292YXJpYW5jZXMKcmhvIDwtIGFzLm51bWVyaWMoQVJNQWFjZihhciA9IHBoaSwgbGFnLm1heCA9IDIpKQpnYW1tYTAgPC0gaW5ub3ZhdGlvbl92YXJpYW5jZSAvCiAgKDEgLSBzdW0ocGhpICogcmhvWzI6M10pKQpQX2Zyb21fYWNmIDwtIHRvZXBsaXR6KGdhbW1hMCAqIHJob1sxOjJdKQoKIyBGb3JlY2FzdCBmcm9tIGFuIGV4YWN0bHkgb2JzZXJ2ZWQgY3VycmVudCBzdGF0ZQphIDwtIG1hdHJpeChjKDEuMiwgMC40KSwgbmNvbCA9IDEpClAgPC0gbWF0cml4KDAsIGssIGspCmhvcml6b24gPC0gOApmb3JlY2FzdCA8LSBkYXRhLmZyYW1lKGggPSAxOmhvcml6b24sIG1lYW4gPSBOQV9yZWFsXywgdmFyaWFuY2UgPSBOQV9yZWFsXykKCmZvciAoaF9zdGVwIGluIDE6aG9yaXpvbikgewogIGEgPC0gVG1hdCAlKiUgYQogIFAgPC0gVG1hdCAlKiUgUCAlKiUgdChUbWF0KSArIFFzdGF0ZQogIGZvcmVjYXN0JG1lYW5baF9zdGVwXSA8LSBkcm9wKFptYXQgJSolIGEpCiAgZm9yZWNhc3QkdmFyaWFuY2VbaF9zdGVwXSA8LSBkcm9wKFptYXQgJSolIFAgJSolIHQoWm1hdCkpCn0KCmNhdCgiU3RhdGlvbmFyeSBzdGF0ZSBjb3ZhcmlhbmNlOlxuIikKcHJpbnQocm91bmQoUF9zdGF0aW9uYXJ5LCA2KSkKY2F0KCJcbk1heGltdW0gTHlhcHVub3YtZXF1YXRpb24gZXJyb3I6IiwKICAgIGZvcm1hdChseWFwdW5vdl9lcnJvciwgc2NpZW50aWZpYyA9IFRSVUUpLCAiXG4iKQpjYXQoIkRpZmZlcmVuY2UgZnJvbSBBQ0YgY292YXJpYW5jZToiLAogICAgZm9ybWF0KG1heChhYnMoUF9zdGF0aW9uYXJ5IC0gUF9mcm9tX2FjZikpLCBzY2llbnRpZmljID0gVFJVRSksICJcbiIpCmNhdCgiQ29tcGFuaW9uIHNwZWN0cmFsIHJhZGl1czoiLAogICAgcm91bmQobWF4KE1vZChlaWdlbihUbWF0KSR2YWx1ZXMpKSwgNiksICJcbiIpCmNhdCgiXG5Gb3JlY2FzdCBwYXRoIGZyb20gc3RhdGUgKDEuMiwgMC40KTpcbiIpCnByaW50KHJvdW5kKGZvcmVjYXN0LCA2KSwgcm93Lm5hbWVzID0gRkFMU0Up layout: vertical locale: en title: Propagate an AR(2) state mean and forecast covariance --- :: The mean decays toward zero because the companion eigenvalues lie inside the unit circle. Forecast variance rises toward [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[11]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} because future innovations accumulate until the initial state is no longer informative. ## From hand recursion to R's implementation Base R exposes lower-level functions `KalmanRun`, `KalmanForecast`, `KalmanSmooth`, and `KalmanLike`. R's exact `arima` likelihood builds a state-space representation and evaluates innovations with a Kalman filter. The hand implementation remains important: software output is interpretable only when you can identify [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:1.0435em;vertical-align:-0.1944em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[Q]{.mord.mathnormal}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, and the initial covariance. ## Exercises 1. In Example 1, set [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. What happens to the gain over time, and why? 2. Increase [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} from 0.5 to 5. Predict the direction of change in the gain. 3. Replace the missing [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} observation with three consecutive missing values. Track [[]{.katex-mathml}[[[]{.strut style="height:1.0385em;vertical-align:-0.3552em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[∣]{.mrel.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 4. Verify the first two AR(2) point forecasts by scalar recursion. 5. Change the AR coefficients so the companion spectral radius exceeds one. Which step of the stationary covariance solve fails conceptually, even if a numerical answer is returned? 6. Graduate extension: add measurement error [[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to the AR(2) observation equation and implement filtering rather than forecasting from an exactly observed state. ::legacy-details{title="Checkpoints"} 1. With no state noise, repeated observations make state uncertainty and gain decline toward zero. 2. Noisier measurements receive less weight, so the gain decreases. 3. Each missing time adds process uncertainty without correction. 4. The first forecast is [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.65]{.mord}[(]{.mopen}[1.2]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.20]{.mord}[(]{.mopen}[0.4]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.70]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; insert that value and 1.2 for the second. 5. A finite stationary solution to [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9324em;vertical-align:-0.0833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Q]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} requires a stable transition matrix. :: ## Completion standard You should be able to derive every line of a Kalman recursion, explain missing-data handling, and connect AR companion propagation with state-space prediction. Return to the [course guide](https://www.pengjiaxin.com/../00-intro/) or use the [optional Python appendix](https://www.pengjiaxin.com/../08-python-implementation/) only after the matrix derivations are secure. # R Matrix Laboratory — Theory You Can Execute ## Laboratory purpose These laboratories translate classical time-series derivations into base R. They do not begin with a large empirical dataset or automated model selection. Each starts from a mathematical object whose answer is known well enough to check. Every code cell is: - self-contained and runnable in the browser with webR; - written with base R and the recommended `stats` package; - explicit about dimensions and parameter conventions; - followed by a numerical identity or error check. ## Lab map | Lab | Central equation | Main R tools | Output | | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ | ---------------------------------------------- | | [1. Covariance geometry](https://www.pengjiaxin.com/01-covariance-matrices) | [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[γ]{.mord,mathnormal style="margin-right:0.0556em;"}[(]{.mopen}[i]{.mord,mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[j]{.mord,mathnormal style="margin-right:0.0572em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `toeplitz`, `eigen`, `chol` | valid finite covariance block | | [2. AR recursions](https://www.pengjiaxin.com/02-ar-recursions) | [[]{.katex-mathml}[[[]{.strut style="height:0.5944em;vertical-align:-0.15em;"}[[s]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[F]{.mord,mathnormal style="margin-right:0.1389em;"}[[s]{.mord,mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord,mathnormal,mtight}[−]{.mbin,mtight}[1]{.mord,mtight}]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[G]{.mord,mathnormal}[[ε]{.mord,mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `polyroot`, `eigen`, `ARMAacf` | roots, impulse responses, Yule–Walker solution | | [3. Prediction and likelihood](https://www.pengjiaxin.com/03-prediction-likelihood) | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Γ]{.mord}[a]{.mord,mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[g]{.mord,mathbf style="margin-right:0.016em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} and [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[θ]{.mord,mathnormal style="margin-right:0.0278em;"}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord,mathnormal,mtight style="margin-right:0.0278em;"}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | `solve`, `chol`, `optim` | predictor plus exact Gaussian estimate | | [4. State space](https://www.pengjiaxin.com/04-state-space) | Kalman prediction and correction | `%*%`, `kronecker`, loops | filtered states and forecast covariance | ## Working conventions 1. Vectors in the notes are columns. R vectors acquire column meaning when used with `%*%`. 2. `chol(Sigma)` returns an upper-triangular [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} satisfying [[]{.katex-mathml}[[[]{.strut style="height:0.8491em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Σ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 3. `ARMAacf` follows R's model convention [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.313em;"}[⋯]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 4. `matrix(v, nrow=k)` fills by columns, matching the usual [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[[vec]{.mord.mathrm}]{.mop}]{.base}]{.katex-html ariaHidden="true"}]{.katex} operator. 5. Use `solve(A, b)` for [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}[x]{.mord.mathbf}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[b]{.mord.mathbf}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; reserve `solve(A)` for occasions when the full inverse is genuinely needed. ## How to submit a lab For each cell, report four items: ```text Equation: Dimensions: Numerical check: One-parameter perturbation and predicted effect: ``` “The output looks right” is not a check. Examples of checks are [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∥Γ]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1491em;vertical-align:-0.25em;"}[[Γ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[⊤]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[∥]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[∞]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[1]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[12]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[min]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[Γ]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[∥Γ]{.mord}[a]{.mord.mathbf}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathbf style="margin-right:0.016em;"}[[∥]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[∞]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8641em;"}[1]{.mord}[[0]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[10]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## Workload Each lab is designed for 45–60 minutes: - 10 minutes: reproduce one derivation by hand; - 15 minutes: run and annotate the original cells; - 15 minutes: make one controlled parameter change; - 10–20 minutes: answer the exercises and write the mathematical conclusion. ## Start Open [Lab 1](https://www.pengjiaxin.com/01-covariance-matrices). Before running code, predict what happens to the smallest eigenvalue and condition number when an AR(1) coefficient moves from [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.6]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} to [[]{.katex-mathml}[[[]{.strut style="height:0.6444em;"}[0.95]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. # Optional Python Lab 1 — Explore Before Modeling []{#optional-python-lab-1-explore-before-modeling} ## Question Which structures are visible, and which apparent autocorrelation may disappear after they are modeled? ## Predict before running The mechanism contains trend, fixed seasonality, a step at observation 49, and AR(1) errors. Sketch the expected time plot and ACF first. Then compare your sketch with the output. ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBwYW5kYXMgYXMgcGQKaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdApmcm9tIHN0YXRzbW9kZWxzLmdyYXBoaWNzLnRzYXBsb3RzIGltcG9ydCBwbG90X2FjZgoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDQyKQpuID0gNzIKdCA9IG5wLmFyYW5nZSgxLCBuICsgMSkKbW9udGhfZWZmZWN0ID0gbnAudGlsZShbMTQsIDEwLCA2LCAxLCAtNCwgLTcsIC04LCAtNywgLTMsIDIsIDcsIDEyXSwgNikKaW5ub3ZhdGlvbiA9IHJuZy5ub3JtYWwoMCwgMiwgbikKYXJfZXJyb3IgPSBucC56ZXJvcyhuKQpmb3IgaSBpbiByYW5nZSgxLCBuKToKICAgIGFyX2Vycm9yW2ldID0gMC41NSAqIGFyX2Vycm9yW2kgLSAxXSArIGlubm92YXRpb25baV0KCmluZGV4ID0gcGQuZGF0ZV9yYW5nZSgiMjAxOS0wMS0wMSIsIHBlcmlvZHM9biwgZnJlcT0iTVMiKQpkZW1hbmQgPSBwZC5TZXJpZXMoCiAgICBucC5yb3VuZCgxMDAgKyAwLjQ1ICogdCArIG1vbnRoX2VmZmVjdCArIDggKiAodCA+PSA0OSkgKyBhcl9lcnJvciwgMSksCiAgICBpbmRleD1pbmRleCwgbmFtZT0iTVdoIgopCgpmaWcsIGF4ZXMgPSBwbHQuc3VicGxvdHMoMiwgMiwgZmlnc2l6ZT0oMTAsIDYpKQpkZW1hbmQucGxvdChheD1heGVzWzAsIDBdLCBtYXJrZXI9Im8iLCBtYXJrZXJzaXplPTIsCiAgICAgICAgICAgIHRpdGxlPSJMZXZlbDogdHJlbmQsIHNlYXNvbmFsaXR5LCBpbnRlcnZlbnRpb24iKQpheGVzWzAsIDBdLmF4dmxpbmUocGQuVGltZXN0YW1wKCIyMDIzLTAxLTAxIiksIGNvbG9yPSJ0YWI6cmVkIiwgbGluZXN0eWxlPSItLSIpCgptb250aGx5ID0gW2RlbWFuZFtkZW1hbmQuaW5kZXgubW9udGggPT0gbV0udmFsdWVzIGZvciBtIGluIHJhbmdlKDEsIDEzKV0KYXhlc1swLCAxXS5ib3hwbG90KG1vbnRobHksIGxhYmVscz1yYW5nZSgxLCAxMykpCmF4ZXNbMCwgMV0uc2V0KHRpdGxlPSJEaXN0cmlidXRpb24gYnkgbW9udGgiLCB4bGFiZWw9Im1vbnRoIiwgeWxhYmVsPSJNV2giKQoKYXhlc1sxLCAwXS5zY2F0dGVyKGRlbWFuZC5pbG9jWzotMV0sIGRlbWFuZC5pbG9jWzE6XSwgcz0xNCkKYXhlc1sxLCAwXS5zZXQodGl0bGU9IkxhZy0xIHBsb3QiLCB4bGFiZWw9InByZXZpb3VzIG1vbnRoIiwgeWxhYmVsPSJjdXJyZW50IG1vbnRoIikKCnBsb3RfYWNmKGRlbWFuZCwgbGFncz0yNCwgYXg9YXhlc1sxLCAxXSwgemVybz1GYWxzZSkKYXhlc1sxLCAxXS5zZXRfdGl0bGUoIkFDRiBvZiBsZXZlbHMiKQpwbHQudGlnaHRfbGF5b3V0KCkKcGx0LnNob3coKQoKcHJpbnQoIkZpcnN0IHNpeCBvYnNlcnZhdGlvbnM6IikKcHJpbnQoZGVtYW5kLmhlYWQoNikudG9fc3RyaW5nKCkpCnByaW50KCJcbkFubnVhbCBtZWFuczoiKQpwcmludChkZW1hbmQucmVzYW1wbGUoIllTIikubWVhbigpLnJvdW5kKDEpLnRvX3N0cmluZygpKQ== layout: vertical locale: en packages: numpy,pandas,matplotlib,statsmodels title: Generate and explore monthly demand --- :: ## Read the evidence | Panel | What it shows | What it cannot decide alone | | ----------- | ----------------------------------------- | --------------------------------------- | | time plot | timing of trend, month pattern, and break | deterministic versus stochastic trend | | month boxes | stable seasonal position differences | seasonal ARIMA order | | lag plot | strong adjacent association in levels | whether association survives adjustment | | level ACF | mixed persistence and seasonal peaks | residual AR order | The raw ACF is deliberately confounded. Choosing AR lags from it before addressing trend, seasonality, and the intervention would attribute mean structure to stochastic feedback. ## Evidence log ```text Index frequency and missing timestamps: Mean structure: Variance structure: Seasonal evidence: Intervention/break evidence: Dependence to inspect after adjustment: Benchmark for 12-month forecasts: ``` ## Perturbations 1. Set the AR coefficient to `0`: trend and seasonality still produce a persistent raw ACF. 2. Set the intervention size to `0`: the 2023 step disappears. 3. Set the random seed to `9`: the mechanism is unchanged, but finite-sample details move. 4. Use only the first 36 observations: explain why stable diagnosis becomes harder. Continue to [Python Lab 2](https://www.pengjiaxin.com/02-stationarity). # Optional Python Lab 2 — Diagnose Stationarity []{#optional-python-lab-2-diagnose-stationarity} ## Question Do the data support first differencing, seasonal differencing, or explicit trend, month, and intervention terms with a stationary error? ADF and KPSS provide evidence under specified deterministic terms; they do not choose the scientific mechanism. This lab uses both because their null hypotheses point in opposite directions. ## Run the diagnostic table ::pyodide --- code64: aW1wb3J0IHdhcm5pbmdzCmltcG9ydCBudW1weSBhcyBucAppbXBvcnQgcGFuZGFzIGFzIHBkCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKZnJvbSBzdGF0c21vZGVscy50c2Euc3RhdHRvb2xzIGltcG9ydCBhZGZ1bGxlciwga3Bzcwpmcm9tIHN0YXRzbW9kZWxzLnRvb2xzLnNtX2V4Y2VwdGlvbnMgaW1wb3J0IEludGVycG9sYXRpb25XYXJuaW5nCgp3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIEludGVycG9sYXRpb25XYXJuaW5nKQpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoNDIpCm4gPSA3Mgp0ID0gbnAuYXJhbmdlKDEsIG4gKyAxKQptb250aF9lZmZlY3QgPSBucC50aWxlKFsxNCwgMTAsIDYsIDEsIC00LCAtNywgLTgsIC03LCAtMywgMiwgNywgMTJdLCA2KQppbm5vdmF0aW9uID0gcm5nLm5vcm1hbCgwLCAyLCBuKQphcl9lcnJvciA9IG5wLnplcm9zKG4pCmZvciBpIGluIHJhbmdlKDEsIG4pOgogICAgYXJfZXJyb3JbaV0gPSAwLjU1ICogYXJfZXJyb3JbaSAtIDFdICsgaW5ub3ZhdGlvbltpXQppbmRleCA9IHBkLmRhdGVfcmFuZ2UoIjIwMTktMDEtMDEiLCBwZXJpb2RzPW4sIGZyZXE9Ik1TIikKZGVtYW5kID0gcGQuU2VyaWVzKAogICAgMTAwICsgMC40NSAqIHQgKyBtb250aF9lZmZlY3QgKyA4ICogKHQgPj0gNDkpICsgYXJfZXJyb3IsCiAgICBpbmRleD1pbmRleCwgbmFtZT0iTVdoIgopCgptb250aF9kdW1taWVzID0gcGQuZ2V0X2R1bW1pZXMoaW5kZXgubW9udGgsIGRyb3BfZmlyc3Q9VHJ1ZSwgZHR5cGU9ZmxvYXQpLnRvX251bXB5KCkKWCA9IG5wLmNvbHVtbl9zdGFjayhbbnAub25lcyhuKSwgdCwgKHQgPj0gNDkpLmFzdHlwZShmbG9hdCksIG1vbnRoX2R1bW1pZXNdKQpiZXRhID0gbnAubGluYWxnLmxzdHNxKFgsIGRlbWFuZC50b19udW1weSgpLCByY29uZD1Ob25lKVswXQphZGp1c3RlZCA9IHBkLlNlcmllcyhkZW1hbmQudG9fbnVtcHkoKSAtIFggQCBiZXRhLCBpbmRleD1pbmRleCwgbmFtZT0iYWRqdXN0ZWQiKQoKc2VyaWVzX3NldCA9IHsKICAgICJsZXZlbCI6IChkZW1hbmQsICJjdCIpLAogICAgImZpcnN0IGRpZmZlcmVuY2UiOiAoZGVtYW5kLmRpZmYoKS5kcm9wbmEoKSwgImMiKSwKICAgICJzZWFzb25hbCBkaWZmZXJlbmNlIjogKGRlbWFuZC5kaWZmKDEyKS5kcm9wbmEoKSwgImMiKSwKICAgICJmaXJzdCArIHNlYXNvbmFsIjogKGRlbWFuZC5kaWZmKDEyKS5kaWZmKCkuZHJvcG5hKCksICJjIiksCiAgICAicmVncmVzc2lvbiBhZGp1c3RlZCI6IChhZGp1c3RlZCwgImMiKSwKfQoKcm93cyA9IFtdCmZvciBsYWJlbCwgKHNlcmllcywgZGV0ZXJtaW5pc3RpYykgaW4gc2VyaWVzX3NldC5pdGVtcygpOgogICAgdmFsdWVzID0gc2VyaWVzLnRvX251bXB5KCkKICAgIGFkZiA9IGFkZnVsbGVyKHZhbHVlcywgcmVncmVzc2lvbj1kZXRlcm1pbmlzdGljLCBhdXRvbGFnPSJBSUMiKQogICAga3Bzc19yZWcgPSAiY3QiIGlmIGRldGVybWluaXN0aWMgPT0gImN0IiBlbHNlICJjIgogICAga3Bzc19yZXN1bHQgPSBrcHNzKHZhbHVlcywgcmVncmVzc2lvbj1rcHNzX3JlZywgbmxhZ3M9ImF1dG8iKQogICAgcm93cy5hcHBlbmQoewogICAgICAgICJzZXJpZXMiOiBsYWJlbCwKICAgICAgICAiQURGIHAgKHVuaXQtcm9vdCBudWxsKSI6IGFkZlsxXSwKICAgICAgICAiS1BTUyBwIChzdGF0aW9uYXJ5IG51bGwpIjoga3Bzc19yZXN1bHRbMV0sCiAgICAgICAgImxhZy0xIGNvcnJlbGF0aW9uIjogbnAuY29ycmNvZWYodmFsdWVzWzE6XSwgdmFsdWVzWzotMV0pWzAsIDFdLAogICAgfSkKCnRhYmxlID0gcGQuRGF0YUZyYW1lKHJvd3MpLnNldF9pbmRleCgic2VyaWVzIikKcHJpbnQodGFibGUucm91bmQoMykudG9fc3RyaW5nKCkpCgpmaWcsIGF4ZXMgPSBwbHQuc3VicGxvdHMoMiwgMiwgZmlnc2l6ZT0oMTAsIDUuNSkpCmZvciBheCwgKGxhYmVsLCBzZXJpZXMpIGluIHppcChheGVzLnJhdmVsKCksIFsKICAgICgibGV2ZWwiLCBkZW1hbmQpLAogICAgKCJmaXJzdCBkaWZmZXJlbmNlIiwgZGVtYW5kLmRpZmYoKS5kcm9wbmEoKSksCiAgICAoInNlYXNvbmFsIGRpZmZlcmVuY2UiLCBkZW1hbmQuZGlmZigxMikuZHJvcG5hKCkpLAogICAgKCJyZWdyZXNzaW9uIGFkanVzdGVkIiwgYWRqdXN0ZWQpLApdKToKICAgIHNlcmllcy5wbG90KGF4PWF4LCB0aXRsZT1sYWJlbCkKICAgIGF4LmF4aGxpbmUoMCwgY29sb3I9ImdyZXkiLCBsaW5ld2lkdGg9MC43KQpwbHQudGlnaHRfbGF5b3V0KCkKcGx0LnNob3coKQoKcHJpbnQoIlxuRXN0aW1hdGVkIHRyZW5kIHBlciBtb250aDoiLCByb3VuZChiZXRhWzFdLCAzKSkKcHJpbnQoIkVzdGltYXRlZCBpbnRlcnZlbnRpb24gc3RlcDoiLCByb3VuZChiZXRhWzJdLCAzKSk= layout: vertical locale: en packages: numpy,pandas,matplotlib,statsmodels title: Compare transformations with ADF and KPSS --- :: ## Read the nulls correctly | ADF result | KPSS result | Interpretation to investigate | | ---------- | ---------------------------------------------------------------------- | -------------------------------------------------------------- | | small p | large p | stationarity is plausible under the stated deterministic terms | | large p | small p | unit-root/differencing route is plausible | | both small | both reject their nulls; inspect breaks, variance, or misspecification | | | both large | sample may be weakly informative | | P-values can be reported at tabulated bounds such as 0.01 or 0.10; software warnings about interpolation are not extra precision. The known 2023 step and the short sample make sensitivity analysis essential. ## Why the adjusted route fits this simulation The data-generating mechanism has fixed month effects and a deterministic step, not seasonal or ordinary unit roots. Regression adjustment therefore preserves interpretable level information while leaving the AR error for the next lab. In real data, the mechanism is not revealed. Compare forecasts from both plausible routes rather than selecting by one p-value. ## Transformation memo In 120 words or fewer, state: 1. deterministic terms used in each test; 2. whether ADF and KPSS agree; 3. which route matches the substantive mechanism; 4. one alternative retained for backtesting; 5. how a future intervention would be known at forecast origin. Continue to [Python Lab 3](https://www.pengjiaxin.com/03-arma-fitting). # Optional Python Lab 3 — Fit and Audit ARMA Errors []{#optional-python-lab-3-fit-and-audit-arma-errors} ## Question After deterministic structure is removed, which small ARMA model explains the remaining linear dependence without spending unsupported parameters? The lab deliberately compares only five candidates. Exhaustive order searches can optimise noise and make the analyst's search process invisible. ## Fit and audit ::pyodide --- code64: aW1wb3J0IHdhcm5pbmdzCmltcG9ydCBudW1weSBhcyBucAppbXBvcnQgcGFuZGFzIGFzIHBkCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKZnJvbSBzdGF0c21vZGVscy50c2EuYXJpbWEubW9kZWwgaW1wb3J0IEFSSU1BCmZyb20gc3RhdHNtb2RlbHMuZ3JhcGhpY3MudHNhcGxvdHMgaW1wb3J0IHBsb3RfYWNmCmZyb20gc3RhdHNtb2RlbHMuc3RhdHMuZGlhZ25vc3RpYyBpbXBvcnQgYWNvcnJfbGp1bmdib3gKZnJvbSBzdGF0c21vZGVscy50b29scy5zbV9leGNlcHRpb25zIGltcG9ydCBDb252ZXJnZW5jZVdhcm5pbmcKCndhcm5pbmdzLnNpbXBsZWZpbHRlcigiaWdub3JlIiwgQ29udmVyZ2VuY2VXYXJuaW5nKQpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoNDIpCm4gPSA3Mgp0ID0gbnAuYXJhbmdlKDEsIG4gKyAxKQptb250aF9lZmZlY3QgPSBucC50aWxlKFsxNCwgMTAsIDYsIDEsIC00LCAtNywgLTgsIC03LCAtMywgMiwgNywgMTJdLCA2KQppbm5vdmF0aW9uID0gcm5nLm5vcm1hbCgwLCAyLCBuKQphcl9lcnJvciA9IG5wLnplcm9zKG4pCmZvciBpIGluIHJhbmdlKDEsIG4pOgogICAgYXJfZXJyb3JbaV0gPSAwLjU1ICogYXJfZXJyb3JbaSAtIDFdICsgaW5ub3ZhdGlvbltpXQppbmRleCA9IHBkLmRhdGVfcmFuZ2UoIjIwMTktMDEtMDEiLCBwZXJpb2RzPW4sIGZyZXE9Ik1TIikKZGVtYW5kID0gcGQuU2VyaWVzKDEwMCArIDAuNDUgKiB0ICsgbW9udGhfZWZmZWN0ICsgOCAqICh0ID49IDQ5KSArIGFyX2Vycm9yLAogICAgICAgICAgICAgICAgICAgaW5kZXg9aW5kZXgsIG5hbWU9Ik1XaCIpCgptb250aF9kdW1taWVzID0gcGQuZ2V0X2R1bW1pZXMoaW5kZXgubW9udGgsIGRyb3BfZmlyc3Q9VHJ1ZSwgZHR5cGU9ZmxvYXQpLnRvX251bXB5KCkKWCA9IG5wLmNvbHVtbl9zdGFjayhbbnAub25lcyhuKSwgdCwgKHQgPj0gNDkpLmFzdHlwZShmbG9hdCksIG1vbnRoX2R1bW1pZXNdKQpiZXRhID0gbnAubGluYWxnLmxzdHNxKFgsIGRlbWFuZC50b19udW1weSgpLCByY29uZD1Ob25lKVswXQphZGp1c3RlZCA9IHBkLlNlcmllcyhkZW1hbmQudG9fbnVtcHkoKSAtIFggQCBiZXRhLCBpbmRleD1pbmRleCwgbmFtZT0iYWRqdXN0ZWQiKQoKc3BlY3MgPSB7CiAgICAiV04iOiAoMCwgMCwgMCksICJBUjEiOiAoMSwgMCwgMCksICJNQTEiOiAoMCwgMCwgMSksCiAgICAiQVJNQTExIjogKDEsIDAsIDEpLCAiQVIyIjogKDIsIDAsIDApLAp9CmZpdHMgPSB7CiAgICBuYW1lOiBBUklNQShhZGp1c3RlZCwgb3JkZXI9b3JkZXIsIHRyZW5kPSJuIiwKICAgICAgICAgICAgICAgIGVuZm9yY2Vfc3RhdGlvbmFyaXR5PVRydWUsIGVuZm9yY2VfaW52ZXJ0aWJpbGl0eT1UcnVlKS5maXQoKQogICAgZm9yIG5hbWUsIG9yZGVyIGluIHNwZWNzLml0ZW1zKCkKfQoKcm93cyA9IFtdCmZvciBuYW1lLCBmaXQgaW4gZml0cy5pdGVtcygpOgogICAgayA9IGZpdC5wYXJhbXMuc2l6ZQogICAgYWljYyA9IGZpdC5haWMgKyAyICogayAqIChrICsgMSkgLyAobiAtIGsgLSAxKQogICAgYXJfbWluID0gbnAubWluKG5wLmFicyhmaXQuYXJyb290cykpIGlmIGZpdC5hcnJvb3RzLnNpemUgZWxzZSBucC5uYW4KICAgIG1hX21pbiA9IG5wLm1pbihucC5hYnMoZml0Lm1hcm9vdHMpKSBpZiBmaXQubWFyb290cy5zaXplIGVsc2UgbnAubmFuCiAgICByb3dzLmFwcGVuZCh7Im1vZGVsIjogbmFtZSwgIkFJQ2MiOiBhaWNjLCAiQklDIjogZml0LmJpYywKICAgICAgICAgICAgICAgICAibWluIEFSIHJvb3QiOiBhcl9taW4sICJtaW4gTUEgcm9vdCI6IG1hX21pbn0pCgpjb21wYXJpc29uID0gcGQuRGF0YUZyYW1lKHJvd3MpLnNvcnRfdmFsdWVzKCJBSUNjIikuc2V0X2luZGV4KCJtb2RlbCIpCnByaW50KGNvbXBhcmlzb24ucm91bmQoMykudG9fc3RyaW5nKCkpCgpiZXN0X25hbWUgPSBjb21wYXJpc29uLmluZGV4WzBdCmJlc3QgPSBmaXRzW2Jlc3RfbmFtZV0KcCwgXywgcSA9IHNwZWNzW2Jlc3RfbmFtZV0KbGIgPSBhY29ycl9sanVuZ2JveChiZXN0LnJlc2lkLCBsYWdzPVsxMl0sIG1vZGVsX2RmPXAgKyBxLCByZXR1cm5fZGY9VHJ1ZSkKcHJpbnQoZiJcblNlbGVjdGVkIGJ5IEFJQ2M6IHtiZXN0X25hbWV9IikKcHJpbnQoYmVzdC5wYXJhbXMucm91bmQoMykudG9fc3RyaW5nKCkpCnByaW50KCJcbkxqdW5nLUJveCgxMiksIGFkanVzdGVkIGZvciBBUi9NQSB0ZXJtczoiKQpwcmludChsYi5yb3VuZCgzKS50b19zdHJpbmcoKSkKCmZpZywgYXhlcyA9IHBsdC5zdWJwbG90cygxLCAyLCBmaWdzaXplPSgxMCwgMy41KSkKYXhlc1swXS5wbG90KGluZGV4LCBiZXN0LnJlc2lkLCBtYXJrZXI9Im8iLCBtYXJrZXJzaXplPTIpCmF4ZXNbMF0uYXhobGluZSgwLCBjb2xvcj0iZ3JleSIsIGxpbmV3aWR0aD0wLjcpCmF4ZXNbMF0uc2V0KHRpdGxlPWYiUmVzaWR1YWxzOiB7YmVzdF9uYW1lfSIsIHhsYWJlbD0iZGF0ZSIsIHlsYWJlbD0icmVzaWR1YWwiKQpwbG90X2FjZihiZXN0LnJlc2lkLCBsYWdzPTE4LCBheD1heGVzWzFdLCB6ZXJvPUZhbHNlKQpheGVzWzFdLnNldF90aXRsZSgiUmVzaWR1YWwgQUNGIikKcGx0LnRpZ2h0X2xheW91dCgpCnBsdC5zaG93KCk= layout: vertical locale: en packages: numpy,pandas,matplotlib,statsmodels title: Compare ARMA candidates --- :: ## Audit sequence 1. Root moduli above one support the enforced stationary/invertible representation; values near one signal fragile persistence. 2. AICc is the main small-sample ranking here; BIC shows whether a stronger complexity penalty changes the decision. 3. Residual plots ask about breaks, runs, and variance—not only average size. 4. Ljung–Box tests remaining linear correlation up to a declared lag; a large p-value is not proof of iid Gaussian errors. 5. The model remains provisional until rolling-origin forecast performance is compared with seasonal naive. The true error is AR(1), but the finite sample may choose another small model. Change the seed and count selection frequencies. If the selected order changes often while forecast accuracy barely moves, report model-selection uncertainty instead of a single “correct” order. ## Candidate ledger ```text Candidate set and why it was bounded: AICc/BIC result: Root boundary: Residual pattern: Ljung–Box lag and result: Distribution/variance concern not tested: Forecast comparison still required: ``` ## Two-stage boundary The deterministic regression was estimated before ARMA fitting. This is transparent for teaching but understates joint uncertainty. The next lab estimates deterministic terms and AR errors together with `SARIMAX`. Continue to [Python Lab 4](https://www.pengjiaxin.com/04-forecasting). # Optional Python Lab 4 — Forecast, Backtest, and Monitor []{#optional-python-lab-4-forecast-backtest-and-monitor} ## Question Does the fitted model improve repeated future decisions, or only describe the historical sample elegantly? The model uses trend, month indicators, and the scheduled intervention as exogenous regressors, with AR(1) residual dynamics. Every rolling origin refits the complete model. ## Run the backtest ::pyodide --- code64: aW1wb3J0IHdhcm5pbmdzCmltcG9ydCBudW1weSBhcyBucAppbXBvcnQgcGFuZGFzIGFzIHBkCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKZnJvbSBzdGF0c21vZGVscy50c2Euc3RhdGVzcGFjZS5zYXJpbWF4IGltcG9ydCBTQVJJTUFYCmZyb20gc3RhdHNtb2RlbHMudG9vbHMuc21fZXhjZXB0aW9ucyBpbXBvcnQgQ29udmVyZ2VuY2VXYXJuaW5nCgp3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIENvbnZlcmdlbmNlV2FybmluZykKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDQyKQpuID0gNzIKdCA9IG5wLmFyYW5nZSgxLCBuICsgMSkKbW9udGhfbnVtYmVyID0gbnAudGlsZShucC5hcmFuZ2UoMSwgMTMpLCA2KQptb250aF9lZmZlY3QgPSBucC50aWxlKFsxNCwgMTAsIDYsIDEsIC00LCAtNywgLTgsIC03LCAtMywgMiwgNywgMTJdLCA2KQppbm5vdmF0aW9uID0gcm5nLm5vcm1hbCgwLCAyLCBuKQphcl9lcnJvciA9IG5wLnplcm9zKG4pCmZvciBpIGluIHJhbmdlKDEsIG4pOgogICAgYXJfZXJyb3JbaV0gPSAwLjU1ICogYXJfZXJyb3JbaSAtIDFdICsgaW5ub3ZhdGlvbltpXQoKaW5kZXggPSBwZC5kYXRlX3JhbmdlKCIyMDE5LTAxLTAxIiwgcGVyaW9kcz1uLCBmcmVxPSJNUyIpCnkgPSAxMDAgKyAwLjQ1ICogdCArIG1vbnRoX2VmZmVjdCArIDggKiAodCA+PSA0OSkgKyBhcl9lcnJvcgptb250aF9kdW1taWVzID0gcGQuZ2V0X2R1bW1pZXMobW9udGhfbnVtYmVyLCBkcm9wX2ZpcnN0PVRydWUsIGR0eXBlPWZsb2F0KS50b19udW1weSgpClggPSBucC5jb2x1bW5fc3RhY2soW25wLm9uZXMobiksIHQsICh0ID49IDQ5KS5hc3R5cGUoZmxvYXQpLCBtb250aF9kdW1taWVzXSkKCmRlZiBmaXRfYXQob3JpZ2luKToKICAgIHJldHVybiBTQVJJTUFYKAogICAgICAgIHlbOm9yaWdpbl0sIGV4b2c9WFs6b3JpZ2luXSwgb3JkZXI9KDEsIDAsIDApLCB0cmVuZD0ibiIsCiAgICAgICAgZW5mb3JjZV9zdGF0aW9uYXJpdHk9VHJ1ZSwgZW5mb3JjZV9pbnZlcnRpYmlsaXR5PVRydWUKICAgICkuZml0KGRpc3A9RmFsc2UsIG1heGl0ZXI9MjAwKQoKZGVmIGV2YWx1YXRlKG9yaWdpbiwgaG9yaXpvbj02KToKICAgIGZ1dHVyZSA9IG5wLmFyYW5nZShvcmlnaW4sIG9yaWdpbiArIGhvcml6b24pCiAgICBmaXQgPSBmaXRfYXQob3JpZ2luKQogICAgZm9yZWNhc3QgPSBucC5hc2FycmF5KGZpdC5nZXRfZm9yZWNhc3QoaG9yaXpvbiwgZXhvZz1YW2Z1dHVyZV0pLnByZWRpY3RlZF9tZWFuKQogICAgc2Vhc29uYWxfbmFpdmUgPSB5W2Z1dHVyZSAtIDEyXQogICAgc2NhbGUgPSBucC5tZWFuKG5wLmFicyh5WzEyOm9yaWdpbl0gLSB5WzpvcmlnaW4gLSAxMl0pKQogICAgcmV0dXJuIHsKICAgICAgICAib3JpZ2luIjogaW5kZXhbb3JpZ2luIC0gMV0uc3RyZnRpbWUoIiVZLSVtIiksCiAgICAgICAgIm1vZGVsIE1BRSI6IG5wLm1lYW4obnAuYWJzKHlbZnV0dXJlXSAtIGZvcmVjYXN0KSksCiAgICAgICAgInNlYXNvbmFsLW5haXZlIE1BRSI6IG5wLm1lYW4obnAuYWJzKHlbZnV0dXJlXSAtIHNlYXNvbmFsX25haXZlKSksCiAgICAgICAgIm1vZGVsIE1BU0UiOiBucC5tZWFuKG5wLmFicyh5W2Z1dHVyZV0gLSBmb3JlY2FzdCkpIC8gc2NhbGUsCiAgICB9Cgpyb2xsaW5nID0gcGQuRGF0YUZyYW1lKFtldmFsdWF0ZShvcmlnaW4pIGZvciBvcmlnaW4gaW4gKDU0LCA2MCwgNjYpXSkKcHJpbnQoIlNpeC1tb250aCByb2xsaW5nLW9yaWdpbiByZXN1bHRzOiIpCnByaW50KHJvbGxpbmcucm91bmQoMykudG9fc3RyaW5nKGluZGV4PUZhbHNlKSkKCm9yaWdpbiA9IDYwCmZ1dHVyZSA9IG5wLmFyYW5nZShvcmlnaW4sIDcyKQpmaXQgPSBmaXRfYXQob3JpZ2luKQpyZXN1bHQgPSBmaXQuZ2V0X2ZvcmVjYXN0KDEyLCBleG9nPVhbZnV0dXJlXSkKZm9yZWNhc3QgPSBucC5hc2FycmF5KHJlc3VsdC5wcmVkaWN0ZWRfbWVhbikKaW50ZXJ2YWwgPSBucC5hc2FycmF5KHJlc3VsdC5jb25mX2ludChhbHBoYT0wLjEwKSkKbG93ZXIsIHVwcGVyID0gaW50ZXJ2YWxbOiwgMF0sIGludGVydmFsWzosIDFdCnNlYXNvbmFsX25haXZlID0geVtmdXR1cmUgLSAxMl0Kc2NhbGUgPSBucC5tZWFuKG5wLmFicyh5WzEyOm9yaWdpbl0gLSB5WzpvcmlnaW4gLSAxMl0pKQpjb3ZlcmFnZSA9IG5wLm1lYW4oKHlbZnV0dXJlXSA+PSBsb3dlcikgJiAoeVtmdXR1cmVdIDw9IHVwcGVyKSkKCmhvbGRvdXQgPSBwZC5EYXRhRnJhbWUoewogICAgIk1BRSI6IFtucC5tZWFuKG5wLmFicyh5W2Z1dHVyZV0gLSBmb3JlY2FzdCkpLAogICAgICAgICAgICBucC5tZWFuKG5wLmFicyh5W2Z1dHVyZV0gLSBzZWFzb25hbF9uYWl2ZSkpXSwKICAgICJNQVNFIjogW25wLm1lYW4obnAuYWJzKHlbZnV0dXJlXSAtIGZvcmVjYXN0KSkgLyBzY2FsZSwKICAgICAgICAgICAgIG5wLm1lYW4obnAuYWJzKHlbZnV0dXJlXSAtIHNlYXNvbmFsX25haXZlKSkgLyBzY2FsZV0sCn0sIGluZGV4PVsicmVncmVzc2lvbiArIEFSKDEpIiwgInNlYXNvbmFsIG5haXZlIl0pCnByaW50KCJcblR3ZWx2ZS1tb250aCBob2xkb3V0IGZyb20gMjAyMy0xMjoiKQpwcmludChob2xkb3V0LnJvdW5kKDMpLnRvX3N0cmluZygpKQpwcmludChmIk5vbWluYWwgOTAlIG1vZGVsLWludGVydmFsIGNvdmVyYWdlOiB7Y292ZXJhZ2U6LjNmfSIpCgpmaWcsIGF4ID0gcGx0LnN1YnBsb3RzKGZpZ3NpemU9KDEwLCA0KSkKYXgucGxvdChpbmRleFs6b3JpZ2luXSwgeVs6b3JpZ2luXSwgbGFiZWw9Imhpc3RvcnkiLCBjb2xvcj0iYmxhY2siKQpheC5wbG90KGluZGV4W2Z1dHVyZV0sIHlbZnV0dXJlXSwgIm8tIiwgbGFiZWw9ImFjdHVhbCIsIGNvbG9yPSJibGFjayIsIG1hcmtlcnNpemU9MykKYXgucGxvdChpbmRleFtmdXR1cmVdLCBmb3JlY2FzdCwgIm8tIiwgbGFiZWw9Im1vZGVsIiwgY29sb3I9InRhYjpibHVlIiwgbWFya2Vyc2l6ZT0zKQpheC5wbG90KGluZGV4W2Z1dHVyZV0sIHNlYXNvbmFsX25haXZlLCAiLS0iLCBsYWJlbD0ic2Vhc29uYWwgbmFpdmUiLCBjb2xvcj0idGFiOm9yYW5nZSIpCmF4LmZpbGxfYmV0d2VlbihpbmRleFtmdXR1cmVdLCBsb3dlciwgdXBwZXIsIGNvbG9yPSJ0YWI6Ymx1ZSIsIGFscGhhPTAuMTgsCiAgICAgICAgICAgICAgICBsYWJlbD0iOTAlIGludGVydmFsIikKYXguYXh2bGluZShpbmRleFtvcmlnaW4gLSAxXSwgY29sb3I9ImdyZXkiLCBsaW5lc3R5bGU9IjoiKQpheC5zZXQodGl0bGU9IkZvcmVjYXN0IGZyb20gMjAyMy0xMiIsIHhsYWJlbD0iZGF0ZSIsIHlsYWJlbD0iTVdoIikKYXgubGVnZW5kKG5jb2w9MikKcGx0LnRpZ2h0X2xheW91dCgpCnBsdC5zaG93KCk= layout: vertical locale: en packages: numpy,pandas,matplotlib,statsmodels title: Rolling-origin forecast audit --- :: ## Interpret with restraint - Compare the model with seasonal naive at **each** origin; a single average can hide instability. - `MASE < 1` uses the training sample's seasonal-naive scale. Also inspect direct holdout MAE. - Twelve observations provide a noisy coverage estimate. Combine many origins and inspect whether misses cluster above or below. - Model intervals condition on the specified dynamics and exogenous path. They do not include unknown interventions or complete model-selection uncertainty. ## Forecast report ```text Target, origin, and horizons: Information available at each origin: Why the intervention path is known: Benchmark: Rolling-origin result: Holdout MAE/MASE: Nominal interval and empirical coverage: Regime or month with the largest miss: Decision supported: Monitoring/refit trigger: ``` ## Stress tests 1. Remove the intervention column from `X`. 2. Forecast from origin 48, before any post-intervention observations; explain why an all-zero training column cannot estimate the step size. 3. Change the AR coefficient from 0.55 to 0.9 and compare interval growth. 4. Replace month indicators with one sine/cosine pair and measure the parsimony–fit trade-off. ## Completion standard The lab is complete when another student can reproduce the exact origins and explain why no post-origin value entered fitting, transformation, selection, or scaling. Return to the [course guide](https://www.pengjiaxin.com/../00-intro/) to plan a project or compare the [R implementation](https://www.pengjiaxin.com/../07-r-implementation/). # Optional Python Appendix — Empirical Forecasting Contrast ## Status in this course This appendix is **not part of the matrix-first core**. Use it only after completing the R matrix laboratory. It shows how classical assumptions are compressed inside a familiar empirical forecasting workflow and provides a software comparison, not a second conceptual spine. The cells use Pyodide with `numpy`, `pandas`, `matplotlib`, and `statsmodels`. Each lab has one self-contained cell so it can be run independently and verified locally. ## Shared teaching series The labs simulate 72 monthly observations from January 2019 through December 2024: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.45]{.mord}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9385em;vertical-align:-0.3552em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[m]{.mord.mathnormal.mtight}[(]{.mopen.mtight}[t]{.mord.mathnormal.mtight}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.5198em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3552em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[8]{.mord}[1]{.mord.mathbf}[(]{.mopen}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[49]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8528em;vertical-align:-0.2083em;"}[0.55]{.mord}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} This intentionally combines trend, fixed month effects, a scheduled January 2023 intervention, and stationary AR(1) errors. It is a transparent teaching series, not an empirical dataset. The data-generating mechanism is transparent, but these pages emphasise plots, tests, fitted objects, and backtests. Return to the core modules whenever a software call hides the corresponding covariance, projection, or state-space equation. ## Lab map | Lab | Question | Output | | ---------------------------------------------------------------------- | --------------------------------------------------------- | ------------------- | | [1. Explore](https://www.pengjiaxin.com/01-exploration) | what must be explained before fitting? | evidence log | | [2. Diagnose stationarity](https://www.pengjiaxin.com/02-stationarity) | which transformation matches the mechanism? | transformation memo | | [3. Fit ARMA errors](https://www.pengjiaxin.com/03-arma-fitting) | which parsimonious dependence model survives diagnostics? | candidate ledger | | [4. Forecast and backtest](https://www.pengjiaxin.com/04-forecasting) | does it beat seasonal naive and cover uncertainty? | forecast report | ## Supplementary outcomes You will be able to: - preserve frequency and chronology with a `DatetimeIndex`; - inspect seasonality, lag structure, and interventions; - compare ADF/KPSS evidence across transformations; - fit ARMA candidates with `statsmodels`, inspect roots, and test residual autocorrelation; - evaluate a regression-with-AR-errors model at rolling origins; - report MAE, MASE, interval coverage, and a monitoring trigger. ## Working rule After every run, record: ```text Observation: Mechanism: Competing explanation: Next diagnostic or backtest: ``` Begin with [Python Lab 1](https://www.pengjiaxin.com/01-exploration), or return to the required [R matrix laboratory](https://www.pengjiaxin.com/../07-r-implementation/). # 4. 文献综述的构建与写作 []{#_4-文献综述的构建与写作} 这一篇讨论的是 **academic paper 里的 literature review section**,不是独立发表的 review article。它的任务更具体:帮助读者理解你的研究问题、相信你的研究定位,并看到为什么这篇论文值得做。 对大多数 business、management、marketing、education 或 social science 学生来说,最常见的问题不是“文献找得不够多”,而是 **文献综述没有主线**。 ## 学习目标 学完这一讲,你应该能够做到: - 说清楚 academic paper 里的 literature review 和普通背景介绍有什么不同 - 从 `paper question` 推导出 `literature review job` - 给文献综述设定清楚的 scope 和边界 - 把主题词改写成有推进关系的问题链 - 写出能够自然引出 gap 的文献综述结构 ## 核心原则 - 文献综述的中心不是“我读了什么”,而是“读者必须先理解什么”。 - `paper question` 决定文献综述的取舍,不能让文献牵着论文走。 - 关系型题目不能简单拆成 X、Y、Z 三块平铺介绍。 - `context` 如果会改变关系,就不是背景装饰,而是解释逻辑的一部分。 - 好的 gap 要具体、可信,并且和你的研究能做的事情相匹配。 ## 文献综述到底要完成什么 一篇有效的文献综述,至少要回答五个问题: - 这篇论文在和哪一块文献对话? - 这一块文献已经知道了什么? - 现有研究在哪些地方一致,在哪些地方分歧? - 这些分歧为什么会出现? - 哪一个具体的 gap 引出了我的研究? 如果文献综述读完之后,读者仍然不知道你的研究问题是怎么被“推出来”的,那它通常就太宽、太散,或者太描述性。 ## 论文精读示范:如何把 AI 写作研究写成文献综述 这一节用生成式 AI 写作研究做示范,不是为了介绍 AI 工具,而是为了演示如何把新论文纳入 literature review 的主线。假设你的 paper question 是: ```text How does generative AI use affect students' academic writing development in higher education? ``` 很多学生会把文献综述写成三块:AI 的优点、AI 的风险、学校应该监管。这种结构太像背景介绍,不像研究综述。更好的做法是先把问题拆成机制链: ```text AI use -> writing process -> metacognition / effort / feedback use -> writing development ``` 然后问每一组文献到底回答链条中的哪一段。 | 文献层次 | 代表论文 | 它回答的问题 | 不应该怎样引用 | | ---- | ----------------------------------------------------------------------------------------------------------- | ------------------------------------- | ----------------------------------- | | 问题定义 | Cotton et al. (2023, DOI: 10.1080/14703297.2023.2190148); Lo (2023, DOI: 10.3390/educsci13040410) | ChatGPT 进入教育后,评价、诚信和写作支持出现了哪些新问题 | 不能只写“AI has benefits and risks”。 | | 证据整理 | Coman et al. (2026, DOI: 10.3389/frai.2026.1750978); Ganguly et al. (2025, DOI: 10.1007/s43681-025-00916-0) | 现有研究在哪些学习场景中发现支持作用或风险 | 不能把综述当成某个单一结论的证明。 | | 学习机制 | Kumar et al. (2026, DOI: 10.3390/info17030299) | 流畅输出是否造成 fluency illusion,让学生误判自己理解程度 | 不能只说“AI may reduce learning”,要说明机制。 | | 科研责任 | Binz et al. (2025, DOI: 10.1073/pnas.2401227121) | 如果 LLM 参与假设、证据和写作,研究者责任边界如何变化 | 不能把它写成普通写作工具文献。 | 注意这里的关键:同一批论文不是按年份堆放,而是按论证功能分工。早期论文帮助你定义问题,系统综述帮助你说明证据版图,机制论文帮助你解释为什么会影响学习,科研责任论文帮助你把问题从课堂写作推进到学术实践。 如果要写成一段成熟的 literature review,可以按照下面的节奏: 1. **先建立研究场景**:生成式 AI 降低了起草、改写、总结和语言润色的成本,因此学生写作过程不再只是“个人阅读 -> 独立起草 -> 教师反馈”。 2. **再说明现有文献的第一轮反应**:Cotton et al. 和 Lo 主要把问题界定为 academic integrity、assessment design 和 learning support。 3. **接着推进到机制**:后来的综述和实证研究开始区分不同用法。AI 作为反馈伙伴、语言支架或检索助手,和 AI 直接代写结论,对学习的含义不同。 4. **再指出关键风险**:Kumar et al. 讨论的 fluency illusion 说明,流畅文本可能让学生高估理解,进而减少深度加工和自我监控。 5. **最后推出 gap**:现有研究仍需要更细地解释哪些 AI 使用方式能提升写作发展,哪些使用方式只是提高表面流畅度。 这样写出来的 gap 就会具体很多。例如: ```text Prior studies have established that generative AI changes writing support, assessment integrity, and students' interaction with feedback. However, less is known about whether AI-assisted drafting improves students' metacognitive monitoring of their own argument quality, or merely increases surface fluency. This distinction matters because fluent AI-generated text may create an illusion of understanding without improving students' ability to evaluate evidence, structure claims, or revise arguments. ``` 中文论文也可以照这个逻辑写: > 现有研究已经较充分地讨论了生成式 AI 对学术诚信、评价方式和写作支持的影响,但对于 AI 如何改变学生的自我监控和论证能力,仍然缺少更细的机制解释。尤其是,当 AI 生成的文本具有较高流畅度时,学生可能误以为自己已经理解了材料,从而减少证据核查、反例搜索和结构性修改。由此可见,AI 写作研究不能只比较“是否使用 AI”,而应进一步区分 AI 在构思、起草、反馈和修改各环节中的作用。 这个例子说明,引用前沿论文的目的不是显得资料新,而是让文献综述从“主题介绍”变成“问题如何被一步步推出来”。当你读任何新论文时,都要问它在你的 review job 中承担什么功能:定义概念、总结证据、解释机制、指出矛盾,还是帮助推出 gap。 ## 一条更稳的设计路径 很多学生会直接从 broad topic 跳到一堆文献摘要。更好的路径通常是: 1. 从 **topic** 出发 2. 收窄成 **paper question** 3. 把 question 翻译成 **literature review job** 4. 明确 review 的边界与 scope 5. 从阅读中形成 **candidate themes** 6. 把 themes 串成 **logic line** 7. 再把 logic line 变成 section order 关键不是 theme 数量,而是 theme 之间的因果顺序和提问顺序。 ## 操作步骤:从题目到综述主线 你可以按下面这个顺序做一轮规划: 1. **写出 paper question**:先不要追求语言漂亮,先保证问题具体。 2. **写出 review job**:说明读者在相信你的研究之前,需要先理解哪些文献。 3. **限定 scope**:明确研究对象、时间、情境、文献类型,以及不写什么。 4. **从 matrix 中找 theme**:不要凭感觉列主题,要看文献里反复出现的概念、机制、分歧和限制。 5. **把 theme 改成问题或 claim**:例如把 `trust` 改成“为什么信任会改变消费者对 influencer marketing 的反应?” 6. **写 logic line**:说明为什么先讲 A,再讲 B,最后才能推出 C。 7. **再写 section order**:只有主线清楚之后,目录才会有意义。 ## 简短模板 ```text Paper question: Literature review job: Review scope: Theme 1 answers: Theme 2 answers: Theme 3 answers: Logic line: Gap: ``` ## 先分清 Paper Question 和 Literature Review Job - **Paper question** 是论文要解释什么。 - **Literature review job** 是在回答这个问题之前,读者必须先理解什么。 例如: - Paper question: `How does ESG disclosure influence firm valuation in emerging markets?` - Literature review job: 解释文献如何界定 ESG disclosure 和 firm valuation、什么时候 ESG disclosure 会产生 valuation effect、为什么这个效果会因为 credibility 或 ownership context 而不同。 所以 review job 不是另一个 research question,而是 **由 research question 生成出来的阅读与综合任务**。 ## 用一套更系统的结构处理“关系型题目” 很多商科题目都在问一种关系: - 一个因素、实践、管理动作或条件 - 如何影响某个结果 - 并且这个关系发生在某个情境、市场、组织或人群中 题目表面上常常写成类似 `the impact of X on Y in the context of Z` 的形式,但文献综述不应该直接照着题目名词顺序展开。更稳的做法,是把它翻译成一套 **关系型文献综述结构**。 ### 关系型 LR 结构 1. **研究问题与核心关系** - 论文到底要解释什么关系 - 为什么这个关系值得研究 2. **核心概念澄清** - 关键概念如何定义、测量,并与相近概念区分 3. **关系证据的现状** - 文献目前对这个关系已经发现了什么 - 哪些地方一致,哪些地方分歧 4. **机制或理论解释** - 这个关系为什么会发生 - 通过什么机制、路径或理论过程发生 5. **情境与边界条件** - 为什么这个关系会因为行业、制度、组织、市场或人群而不同 6. **Gap 与研究定位** - 在前面几层都考虑之后,仍然缺少什么解释或证据 但这并不意味着 **context 只会在第 5 步才出现**。 在更强的 literature review 里,context 往往会进入两次: - **前面就进入**:它会影响研究问题为什么重要、核心概念在这里怎么理解、以及已有证据能不能直接迁移 - **后面再集中展开**:把它系统化地写成 boundary condition,说明这个关系在该情境中会如何变化 所以更稳的一版 question chain 往往会更像: 1. 为什么这个关系在这个情境里值得研究? 2. 核心概念在这里到底是什么意思,它们在这个情境中有没有特殊性? 3. 现有文献如何看待这个关系,而这些证据在多大程度上适用于这个情境? 4. 这个关系为什么会发生,而这个情境又会如何强化、削弱或改变它? 5. 在前面这些都考虑之后,关于这个情境中的这个关系,还缺什么解释或证据? 这通常比下面这种平铺式顺序更强: 1. X 是什么 2. Y 是什么 3. X 如何影响 Y 4. Z 里有没有人研究 5. gap 因为平铺式顺序经常会: - 把概念写成两个孤立 glossary section - 让“关系”本身出现得太晚 - 把 Z 写成最后才补充的背景,而不是解释的一部分 更系统的主线通常是: - **research problem -> constructs -> relationship evidence -> mechanism -> context or boundary -> gap** 这其实仍然是在执行前面那条总主线,只是把“关系型题目”的 LR 结构表达得更系统、更可复用。 ## 先用分块结构收材料,再把它改造成问题链 在教学上,先让学生用一个临时的 **block structure** 往往是有效的。比如先按 `constructs / relationship evidence / mechanism / context / gap` 这样的块去整理文献。这样做的价值在于,它能帮助学生先收材料、发现哪一块文献不足,也能避免一开始就被“主线要怎么写”卡住。 但最终版的 literature review,通常不应该停留在这种分块状态。 可以把两者的区别理解得更明确一点: - **block structure** 主要回答的是:`我手上有哪些材料?` - **question chain** 主要回答的是:`读者接下来必须理解什么?` 所以更稳的做法通常不是二选一,而是两阶段: 1. 先用 block structure 做前期阅读、整理和 coding 2. 再问每一个 block 实际上在回答什么问题 3. 把那些不直接帮助解释核心关系的 block 合并、缩短或移出主线 4. 再按照“前一节留下的问题如何引出下一节”的顺序重排 5. 最终把文献综述写成 question chain,而不是 categories 的堆放 换句话说: - **block structure** 是前期的 scaffold - **question chain** 才是最终写作的 logic 如果只停留在 block structure,文献综述很容易变平、变散、变成“资料分类”。如果一开始就强迫学生直接写成熟的 question chain,他们又常常会写出一个看似有逻辑、但其实没有文献支撑的空提纲。 > 具体示例可参考:[10. 从分块结构到问题链:文献综述示例](https://www.pengjiaxin.com/10) ## 不要把 X 和 Y 写成平行介绍 只有在 X 和 Y 都非常复杂、且都容易被误解时,它们才值得分别占一整节。 更常见的情况是: - X 需要重点澄清 - Y 只需要在 relationship section 里简要界定 或者: - Y 是关键 outcome,需要单独说明其定义与测量 - X 只需要在开头简短交代 判断标准不是“题目里出现了几个变量”,而是: - 这一节是否直接帮助解释 `X -> Y in Z` - 如果删掉这一节,文献综述会不会更清楚 ## Theme 不应该只是并列标签 很多学生会列出几个 theme: - authenticity - trust - impulse buying - TikTok 这些还不是文献综述结构,它们只是 topic words。 文献综述真正需要的是: - 每个 theme 都变成一个 **问题** - 或者变成一个 **可论证的 claim** ### 例子:TikTok 题目 如果题目是: - `The impact of TikTok advertising and influencer marketing on impulse buying behaviour among UK consumers aged 18-25` 比起写成: 1. TikTok 2. influencer marketing 3. impulse buying 4. UK consumers aged 18-25 更好的 question chain 可能是: 1. 在这个研究里,`TikTok advertising` 和 `influencer marketing` 是否是同一种说服机制? 2. 现有文献认为它们如何影响 `impulse buying`? 3. 这种影响通过哪些机制发生,例如 authenticity、social proof、FOMO 或 low-friction purchase cues? 4. 为什么这些机制在 `UK consumers aged 18-25` 这一人群里可能更强或不同? 5. 关于这个关系,现有研究还缺少什么? 这样的顺序更强,因为每一节都自然引出下一节。 ## 在 Business Management 题目里,这套结构常常表现为更“应用化”的顺序 对于很多 business management 题目,前面这套关系型 LR 结构还会进一步表现成一个更“应用化”的展开顺序。它不是另一套体系,而是把同样的逻辑写成更适合商管实证题目的版本。 ### Applied Management 版本 1. **研究问题与 review job** - 论文究竟在问什么 - 文献综述必须先解释什么 2. **宏观场域与现实痛点** - 过去几年行业、技术、组织或市场发生了什么关键变化 - 为什么这个问题现在值得研究 3. **核心概念澄清** - 关键概念在文献中如何定义 - 它们和相近概念有什么区别 4. **机制或理论黑箱** - 为什么 X 会影响 Y - 哪个机制、理论路径或解释逻辑最关键 5. **结果、情境与边界条件** - 在什么人群、组织、市场、制度环境下结果会不同 - Z 为什么重要 6. **Gap 与研究定位** - 文献已经走到哪里 - 恰好漏掉了哪一块 - 你的研究补哪一块 ### 为什么这种应用化顺序常常有用 它能把文献综述写成一条向下收束的逻辑: - 从 broad field problem - 到 core constructs - 到 explanatory mechanism - 到 contextual boundary - 再到 precise gap ### 但它仍然要服从原来的 LR 逻辑 这种应用化顺序适合很多商科实证题目,但不是唯一合法结构。它特别适合: - 管理实践或营销机制的研究 - 组织变革、实施、采纳、消费者反应类题目 - 需要同时讲 concept、mechanism 和 context 的题目 它不一定适合: - 纯理论比较 - 纯方法论综述 - 完全以学术争论为中心、而不是以现实语境收束的题目 最重要的是,这种应用化顺序里的每一层都仍然必须是 **literature review layer**,不是背景介绍层。也就是说,每一层都仍然要回答: - 文献主要说了什么? - 文献在哪些地方一致或分歧? - 这些分歧为什么重要? ## 如何判断一条主线是否成立 可以用下面几个问题检查: - 每一节是否都直接服务于 paper question? - 这一节结束后,是否自然产生下一节的问题? - 这一节是“解释关系”,还是只是“补背景”? - 如果删掉这一节,整个综述会不会更清楚? 如果一节删掉之后文章反而更清楚,那它通常不属于主线。 ## 不要只做 Section Order,还要做 Internal Logic 文献综述常常在两个层面上出问题: - **sections 之间没有主线** - **单个 section 内部仍然只是文献堆放** 所以你要同时规划两层: - **Main line across sections**:各 section 如何串联成一条主线 - **Internal logic within each section**:单个 section 内部如何组织文献 常见的内部组织方式包括: - agreement -> disagreement -> explanation - definition -> evidence -> limitation - broad pattern -> boundary condition -> transition - method difference -> result difference -> interpretation ## 一个简化判断 如果你的文献综述读起来像: - “这个也重要,那个也重要,这个背景也相关,那个因素也值得一提” 那它大概率还没有主线。 如果你的文献综述读起来像: - “先得解释 A,不然读者无法理解 B;解释了 B,才会自然追问 C;而 C 的局限正好引出 gap” 那它通常已经接近一条可用的 LR logic line 了。 ## 常见问题 **文献综述是不是一定要按概念、理论、实证研究、gap 这个顺序写?** 不一定。这个顺序有时能用,但不是万能模板。你真正要问的是:这个顺序能不能把读者一步步带到你的 research question 和 gap。 **如果我的题目里有三个变量,是不是三个变量都要单独写一节?** 不一定。只有当某个变量本身复杂、容易混淆、而且会影响后面论证时,才值得单独展开。否则可以把它放进关系、机制或情境讨论中。 **文献很少怎么办?** 要诚实区分 direct literature 和 adjacent literature。相邻文献可以提供支持,但不能假装它已经直接回答了你的题目。 **gap 能不能写成“研究较少”?** 可以作为起点,但不能只停在那里。更好的 gap 要说明:少在哪里、为什么重要、你的研究能补哪一块。 ## 练习 请用自己的题目完成下面练习: 1. 写出一个 `X -> Y in Z` 类型的 paper question。 2. 不要直接列 X、Y、Z,而是写出五个读者必须依次理解的问题。 3. 选其中一个问题,把它改写成 section claim。 4. 写一句 section transition,说明为什么这一节会引出下一节。 5. 写一句 gap,检查它是不是依赖前面几个问题,而不是一开始就能写出来。 ## 小结 对于大多数关系型题目,文献综述最稳的写法通常不是简单的: - X - Y - X affects Y - Z - gap 而是: - **core constructs -> relationship -> mechanism -> context or boundary -> gap** 而对于很多 business management 题目,把这条链条进一步写成更“应用化”的顺序,通常会让整篇文献综述更像 academic argument,而不是背景信息的拼接。 > 配套模板请见:[8. 文献综述清单与模板](https://www.pengjiaxin.com/08-literature-review-checklist-and-template) # 8. 文献综述清单与模板 []{#_8-文献综述清单与模板} 这一页是第 4 篇的配套 worksheet。第 4 篇负责解释逻辑,这一页负责把逻辑变成可以填写的表格。 ## 学习目标 用完这一页,你应该能够: - 把 topic 收窄成可写的 paper question - 写出 literature review job,而不是只列文献主题 - 判断一个关系型题目应该怎样安排 LR 结构 - 把 theme 改写成 question chain 或 analytical claim - 用自查问题发现自己的文献综述是否太散、太宽或太背景化 ## 核心原则 - 这是一张工作纸,不是最终答案。先写粗一点,再逐步改细。 - 每一个空格都在逼你做一个写作决定。 - 填不出来的地方,往往就是你还没想清楚或文献还没读够的地方。 - `theme` 不是关键词堆放,要能回答问题或支持判断。 - 最后的 gap 必须和前面的逻辑有关,不能凭空出现。 ## 使用步骤 建议这样使用: 1. 写作前先完成 Part 1 和 Part 2,明确题目和 review job。 2. 读文献时同步更新 Part 3 到 Part 5,不要等读完才整理。 3. 能看出重复 theme 后,再完成 Part 6。 4. 写正式提纲前,用 Part 7 检查每一节是否真的有用。 5. 初稿完成后,再回到“最后自查”部分逐条核对。 ## Part 1. 从 Topic 到 Paper Question ```text Broad topic: Focal relationship / process / outcome: Context / case / boundary: Paper question in one sentence: Why this question is feasible: ``` 快速检查: - 这个问题是否足够窄? - 它是否明确了关系、过程或结果? - 它是否有明确的 context 或 boundary? ## Part 2. 从 Paper Question 推导 Literature Review Job ```text Paper question: Main relationship / process / outcome: Concepts that need clarification: Likely mechanisms or explanations: Important context or boundary: Therefore, my literature review job is to: ``` 句型: - `Because my paper asks about ___, my literature review needs to explain how the literature defines ___, what it shows about ___, where findings differ, and why ___ matters for my study.` ## Part 3. 把关系型题目翻译成 LR 结构 这一部分不是一套额外方法,而是把 Part 1 和 Part 2 的结果继续展开成更系统的 LR 结构。很多商科题目表面上像 `X -> Y in Z`,但这里我们不直接照抄题目格式,而是把它翻译成更适合写作的主线。 不要默认直接写成: 1. X 2. Y 3. X 影响 Y 4. Z 5. gap 更稳的默认结构通常是: 1. 研究问题与核心关系 2. 核心概念澄清 3. 关系证据的现状 4. 机制或理论解释 5. 情境或边界条件 6. gap ```text Focal factor / practice / condition: Outcome: Context / setting / boundary: Which concept needs the most clarification: Why this relationship matters: What does the literature already say about the X-Y relationship: What mechanism may explain how X influences Y: Why might Z change, qualify, or narrow that relationship: Therefore, my default LR order is: 1. 2. 3. 4. 5. 6. ``` 快速检查: - 我是不是把概念写成了孤立 glossary section? - “关系”本身是否出现得足够早? - context 是否真正进入了解释逻辑,而不是最后才补充? ## Part 4. Theme 不是标签,而是问题链 弱的写法: - authenticity - trust - impulse buying - TikTok 更强的写法: - TikTok advertising 和 influencer marketing 是否应被视为同一种说服机制? - 文献认为它们如何影响 impulse buying? - 这种影响通过哪些机制发生? - 为什么这一机制在特定人群中更强或不同? ```text Theme 1 answers this question: Theme 2 answers this next question: Why Theme 2 comes after Theme 1: Theme 3 answers this next question: Why Theme 3 comes after Theme 2: What unresolved issue remains after these themes: This becomes my gap: ``` ## Part 5. 把同一条主线写成更适合商管题目的应用化顺序 当题目更像 business management empirical question 时,可以把同一条 LR 主线写成一个更适合商管题目的应用化版本: ```text Paper question: Review job: 1. Macro field and practical relevance - What recent shift, pressure, or business problem makes this question important now? 2. Core constructs - Which concepts need clarification? - What are they often confused with? 3. Mechanism or theory - Why should X influence Y? - Which theory or mechanism helps explain the process? 4. Outcome, context, and boundary conditions - What result is the literature trying to explain? - Why might the effect differ in Z? 5. Gap and study positioning - What remains underexplained? - What exactly will my paper add? ``` 提醒: - 宏观背景要短,它的作用是建立 relevance,不是写成长篇行业介绍。 - 每一层都必须 review literature,而不是只介绍 topic。 - gap 应该从前面的结构自然收束出来,而不是最后突然加一句。 ## Part 6. Section Order Planning ```text Section 1: - What question does this section answer? - Main claim: - Key studies: - Internal logic: Section 2: - What question does this section answer? - Main claim: - Key studies: - Internal logic: Section 3: - What question does this section answer? - Main claim: - Key studies: - Internal logic: Gap: - What is missing, weak, inconsistent, or underexplained? - Why does that matter? Transition to my study: - What exactly does my paper examine? - How does it respond to the gap? ``` ## Part 7. 最后自查 - 我的文献综述是否真的在服务于 paper question? - 每一节是否都自然引出下一节? - 我的 themes 是标签,还是 question chain / analytical claims? - Z 是真正的 boundary condition,还是只是最后才补充的背景? - 我的 gap 是否来自前文推演,而不是空泛地说“研究不够”? ## 常见问题 **这张表需要一次填完吗?** 不需要。建议至少填三次:选题初期填一次,读完一批文献后改一次,写初稿前再改一次。 **如果老师已经给了题目,还需要 Part 1 吗?** 需要。老师给的题目通常还要被你转化成可操作的 paper question,否则后面仍然容易写散。 **Theme 和 section title 是一回事吗?** 不完全是。Theme 是你从文献中看到的分析重点;section title 是最终呈现给读者的标题。写作前要先弄清 theme 的 claim 或 question。 **如果 gap 写不出来怎么办?** 先回到 Part 4 和 Part 6。很多时候不是 gap 不存在,而是前面的 theme 还没有形成递进关系。 ## 练习 请用 45 分钟完成一个小练习: 1. 填写 Part 1 和 Part 2。 2. 选三篇文献,写出它们分别支持哪个 theme。 3. 把一个 theme 从关键词改成问题句。 4. 写出 Theme 1 为什么必须放在 Theme 2 前面。 5. 用一句话写出目前最可能的 gap。 ## 小结 真正有逻辑的文献综述,通常不是把 X、Y、Z 分别介绍一遍,而是把它们组织成一条可以不断追问下去的链条。 > 主讲义请见:[4. 文献综述的构建与写作](https://www.pengjiaxin.com/04-writing-the-literature-review) # 10. 从分块结构到问题链:文献综述示例 []{#_10-从分块结构到问题链文献综述示例} 这一篇是给已经理解了文献综述基本逻辑、但在真正动手写提纲时仍然容易卡住的学生准备的。 他们常见的状态是: - 我知道我的 topic 是什么 - 我也知道几个主要变量 - 但一写提纲,就还是像几个部分并排摆着 为了让这个问题更具体,这一篇用一个**相对冷门的 business management 题目**,一步步演示那五个关键问题到底怎么工作。 ## 学习目标 学完这个示例,你应该能够: - 解释为什么分块结构适合前期整理,但不适合作为最终 LR 主线 - 找出一个关系型题目里的核心关系 - 把平铺式 section title 改写成有递进关系的问题 - 判断 context 是背景信息,还是会改变关系本身的 boundary condition - 把一个普通提纲改成能推出 gap 的 question chain ## 核心原则 - 分块结构帮你收材料,问题链帮你写论证。 - 最终文献综述不能只回答“我有哪些材料”,还要回答“读者为什么要按这个顺序读”。 - 核心关系出现得太晚,文献综述就容易散。 - 如果 context 会改变机制、证据或结果,它就必须进入主线。 - gap 如果第一页就能写出来,说明前面的综述还没有真正发挥作用。 ## 例子题目 我们用这个题目: - **Paper question**: How does reverse mentoring influence digital transformation readiness in family-owned manufacturing SMEs? 这个例子适合教学,因为它: - 比 ESG、TikTok、leadership-performance 这些热门题目冷门一些 - 但又足够清楚,学生容易理解 - 同时很适合展示“关系型文献综述结构” ## 应该先从分块结构开始,还是直接从问题链开始? 对于大多数课程作业学生来说,更稳的答案通常是: - **先用 block structure 做前期整理** - **再用 question chain 完成最终写作** 这不是折中,而是两种结构各自负责不同的任务。 ### 两种结构分别适合做什么 | 结构 | 主要用途 | 它帮助学生完成什么 | 如果直接拿来做最终版 LR,最大的风险是什么 | | ------------------- | ----------- | -------------------------------- | -------------------------------------- | | **block structure** | 前期 planning | 整理阅读、发现缺口、降低起步难度、先看清有哪些材料 | 各部分容易并排摆放,没有真正推进主线 | | **question chain** | 最终结构与写作 | 建立 section 之间的推进关系,让 gap 被一步步推出来 | 如果学生对文献还不够熟,容易写出“很像有逻辑、但其实很空”的 outline | 也可以把两者的区别记成一句更简单的话: - **block structure** 回答的是:`我手上有哪些材料?` - **question chain** 回答的是:`读者接下来必须理解什么?` ### 什么情况下适合先用分块结构 分块结构特别适合下面这些情况: - 学生还在 reading 和 note-taking 阶段 - 只有 broad topic,还没有很清楚的 argument - 刚开始学 literature review 写作 - 能列出几个 theme,但还说不清它们之间为什么是这个顺序 ### 什么情况下可以更早进入问题链 有些学生可以更早进入 question chain,但通常要满足几个条件: - paper question 已经比较明确 - 已经读到足够多的文献,能看出 relationship、mechanism 和 context - 能分清 direct evidence 和 adjacent literature - 不只是会写 section title,而是已经能写出 transition 即使如此,大多数写作者在笔记阶段也还是会先经历一个**隐性的分块阶段**,只是速度更快。 ### 一个更适合教学的操作顺序 如果你是在教学生写 literature review,更稳的顺序通常是: 1. 先让学生根据初步阅读列出 block outline 2. 再问每一个 block 实际上在 paper question 中承担什么任务 3. 把每一个有效的 block 改写成问题或 claim 4. 删掉或合并那些不直接推动核心关系的 block 5. 再按“前一个问题如何自然引出后一个问题”的顺序重排 6. 最终按 question chain 写出正式的 LR 这样可以避免两种常见失败: - **只停留在分块结构**:写出来像文献分类总结 - **太早要求问题链**:提纲听起来很高级,但没有文献支撑 ## 五个关键问题 一个更稳的文献综述,不应该只是: 1. X 2. Y 3. X 影响 Y 4. Z 5. gap 它更应该被理解成五个连续的问题。 更重要的是,**context 不应该只在后面才第一次出现**。在更强的 literature review 里,context 会更早介入:它会影响为什么这个问题值得研究、概念在这里怎么理解、已有证据能不能直接搬过来,最后才再被集中展开成一个 boundary condition 的分析。 所以更稳的一版 question chain 往往会更像: 1. 为什么这个关系在这个情境里值得研究? 2. 核心概念在这里到底是什么意思,它们在这个情境中有没有特殊性? 3. 现有文献如何看待这个关系,而这些证据在多大程度上适用于这个情境? 4. 这个关系为什么会发生,而这个情境又会如何强化、削弱或改变它? 5. 在前面这些都考虑之后,关于这个情境中的这个关系,还缺什么解释或证据? 这通常会比下面这种更简化的链条更强: 1. 在这篇研究里,关键概念到底是什么意思? 2. 现有文献对这个核心关系已经说了什么? 3. 这个关系为什么会发生? 4. 为什么这个关系在这个情境里可能不同? 5. 在考虑完前面这些之后,还缺什么解释或证据? 下面每一个问题都分别展开。 ## 问题 1:关键概念在这篇研究里到底是什么意思? 在这个例子里,它变成: - `reverse mentoring` 和 `digital transformation readiness` 在这篇研究里分别指什么? ### 为什么这一部分必须写 学生常常很快进入“影响”“效果”“机制”,但读者此时还不清楚核心概念到底怎么定义。这样后面一旦开始比较文献,很容易出现“看起来都在研究同一个东西,实际上不是”的问题。 这一部分的作用是让读者先明白: - 关键概念怎么定义 - 文献通常怎么测量它们 - 它们与相近概念有什么区别 ### 这一部分容易出现什么问题 常见问题: - 写成词典式定义 - 其中一个概念讲很多,另一个概念几乎不解释 - 把相近概念混用 - 这一节写得太长,导致文献综述迟迟进不到关系本身 ### 如果要写,可能会是什么样子 ```text Reverse mentoring 通常指的是一种发展性关系,在其中,较年轻或更具数字经验的员工反过来支持资深员工的学习。它与传统 mentoring 的关键区别在于知识和经验流动的方向被反转。Digital transformation readiness 则不只是“企业有没有上数字系统”,而更强调组织是否具备接受、协调和落实数字转型所需的能力、意愿与一致性。 ``` ### 写这一部分时要考虑什么 - 哪个概念最容易被误解? - 哪个概念最需要 measurement clarification? - 哪些相近概念必须先分开? - 解释到什么程度就够了,不能拖太长? ### 在这一部分,context 其实已经开始进入 即使是在概念部分,context 也可能已经重要起来。对这个例子来说,学生应该继续追问: - reverse mentoring 在 family-owned firms 中,是否和在大型企业中的表现方式不同? - digital transformation readiness 在 manufacturing SMEs 中,是否和在大型服务企业里是同一个意思? 这也是为什么 context 不能被理解成最后才补上的一节。它可能从概念定义开始,就已经影响整条主线。 ## 问题 2:现有文献对这个核心关系已经说了什么? 在这个例子里,它变成: - 文献目前如何看待 reverse mentoring 和 digital transformation readiness 之间的关系? ### 为什么这一部分必须写 这一步是文献综述真正开始像文献综述的地方。你不是在分别介绍两个概念,而是在回答:文献是否已经表明它们之间存在某种关系。 这一部分应该开始回答: - 文献总体上支持这个关系吗? - 支持到什么程度? - 哪些地方一致,哪些地方分歧? - 证据是直接的还是间接的? ### 这一部分容易出现什么问题 常见问题: - 写成 digital transformation 的大背景综述 - 讲了很多 mentoring 文献,但和 outcome 无关 - 把间接证据写得像直接证据 - 为了让结构显得整齐,故意不写分歧 ### 如果要写,可能会是什么样子 ```text 直接研究 reverse mentoring 与 digital transformation readiness 之间关系的文献仍然较少。不过,相邻文献表明,reverse mentoring 可能增强数字信心、跨代学习以及对新工作方式的开放性,而这些都与组织的数字转型准备程度有关。与此同时,这一证据并不均衡,因为很多研究集中在大型企业或领导力发展,而不是中小制造企业中的组织 readiness。 ``` ### 写这一部分时要考虑什么 - 现有文献是直接研究这个关系,还是只提供间接支持? - 我能下多强的判断? - 哪些发现是比较稳定的? - 哪些地方其实证据比题目看起来要弱? ### 在这一部分,context 也已经进入“证据判断” 关系证据这一部分,不只是回顾结果,也要开始判断证据能不能迁移。学生要继续问: - 现有证据是不是主要来自大型企业、西方企业,或非家族企业? - 如果是,这些发现到底能在多大程度上被带入 family-owned manufacturing SMEs? 这说明 context 并不是等到后面的 section 才进入。它已经开始影响你如何判断 relationship evidence。 ## 问题 3:这个关系为什么会发生? 在这个例子里,它变成: - 为什么 reverse mentoring 可能会提升 digital transformation readiness? ### 为什么这一部分必须写 如果没有机制,文献综述就很容易变成一串结果摘要。机制部分的作用,是给关系本身增加解释深度。 理论常常会在这里进入,但重点不是“套一个理论名字”,而是把过程讲清楚。 ### 这一部分容易出现什么问题 常见问题: - 提了理论名词,但没有真正使用 - 一口气列出很多机制,却没有决定哪个最重要 - 把机制写得像常识,不真正解释 - 在证据还不够强时,把关系写成确定因果 ### 如果要写,可能会是什么样子 ```text 一个合理的解释是,reverse mentoring 降低了不同代际之间的知识不对称,并增强了资深决策者面对数字变革时的理解与信心。它也可能通过把数字学习重塑为一种合作过程,而不是威胁性的能力比较,来提高组织对新技术的开放性。通过这些机制,reverse mentoring 可能不仅促进数字技能积累,也可能提升更广义的组织转型 readiness。 ``` ### 写这一部分时要考虑什么 - 哪一条 explanatory path 最有说服力? - 哪个机制是主机制,哪些只是补充? - 文献是否直接支持这个机制? - 我是需要一个理论、几个机制,还是更轻一点的解释? ## 问题 4:为什么这个关系在这个情境里可能不同? 在这个例子里,它变成: - 为什么 reverse mentoring 对 digital transformation readiness 的影响,在 family-owned manufacturing SMEs 中可能不同? ### 为什么这一部分必须写 这一部分可以防止文献综述变成“一个普遍理论 + 最后随手加一个案例”。 在很多论文里,context 不是装饰,而是会改变关系本身。 这一部分帮助文献综述回答: - 为什么这个 setting 重要 - 哪些 boundary condition 会改变效果 - 为什么别的情境里的证据不能直接搬过来 ### 这一部分容易出现什么问题 常见问题: - context 放到最后才提 - 写成行业背景介绍,而不是 context-specific literature review - 口头上说 context 重要,但没有说明“到底怎么重要” - 描述了 case,却没有把它和 mechanism 连起来 ### 如果要写,可能会是什么样子 ```text 在 family-owned manufacturing SMEs 中,这个关系可能更复杂,因为权威结构、代际继承关系以及非正式决策方式都会影响年轻员工对资深管理者的影响力。在这类企业中,如果跨代学习被视为有助于家族控制与组织延续,reverse mentoring 可能促进数字 readiness;但如果角色反转被理解为对既有等级秩序的挑战,它也可能受到抵制。 ``` ### 写这一部分时要考虑什么 - context 改变的是机制、结果,还是两者都改变? - 这个 setting 和主流研究 setting 相比,真正不同的地方在哪里? - 哪些 contextual features 和 paper question 真正相关? - 我是在 review context literature,还是只是在描述背景? ## 问题 5:在前面这些都考虑之后,还缺什么? 在这个例子里,它变成: - 在定义了概念、回顾了关系、解释了机制、考虑了情境之后,文献还缺什么? ### 为什么这一部分必须写 gap 不应该像一个突然加上的结尾句。它应该像前面几部分一步步推出来的结果。 好的 gap 至少会告诉读者: - 文献已经做到了什么 - 哪一块仍然弱、碎、间接或缺失 - 为什么这正好引出这篇论文 ### 这一部分容易出现什么问题 常见问题: - 只会写 `there is limited research` - 用 `no one has studied this`,但其实并不准确 - gap 太大 - gap 和论文实际能做的事不匹配 ### 如果要写,可能会是什么样子 ```text 综合来看,现有文献表明 reverse mentoring 可能支持数字学习与变革开放性,但这些作用在多大程度上能转化为 family-owned manufacturing SMEs 中的数字转型 readiness,仍然不够清楚。现有证据分散在 mentoring、digital change 与 family-firm 文献之间,而跨代学习与家族权威结构之间的相互作用仍缺少直接解释。 ``` ### 写这一部分时要考虑什么 - gap 是否足够具体? - 它是否是从前文推出来的? - 我的研究真的能回答它吗? - 这个 gap 是缺 context、缺 explanation,还是 evidence base 太弱? ## 从“分块结构”到“问题链” 很多学生一开始会列出这样的分块提纲: 1. reverse mentoring 2. digital transformation readiness 3. reverse mentoring and digital transformation 4. family-owned manufacturing SMEs 5. gap 这种提纲不是完全没用,但它还不是一个强的 literature review structure。 ### 为什么分块结构会显得平 因为这些部分只是并排摆着,而没有真的推动论证。 在这种平铺式结构里: - Section 1 不会自然引出 Section 2 - Section 2 不会自然引出 Section 3 - context 往往来得太晚 - gap 看起来像最后硬加上去 ### 把分块结构改成问题链 如果 context 很重要,就不要把分块结构改写成一种“context 只在最后出现一次”的链条。 同一个题目,更强的 outline 可以变成: 1. 为什么 reverse mentoring 和 digital transformation readiness 这个关系,值得放在 family-owned manufacturing SMEs 中研究? 2. reverse mentoring 和 digital transformation readiness 在这里分别指什么,它们在这个 setting 中有没有特殊性? 3. 文献目前如何看待它们之间的关系,而这些证据在多大程度上适用于这个 setting? 4. 为什么这种关系可能存在,而 family ownership 和 manufacturing conditions 又会如何改变这个过程? 5. 在考虑这些之后,关于 family-owned manufacturing SMEs 中的这个关系,还缺少什么解释或证据? 这会更强,因为每一个问题都在为下一个问题铺路,而且 context 是贯穿整条链的,而不是最后才被提出来。 ### 分块结构仍然有什么价值 分块结构并不是没用。它常常能帮助学生更早发现: - 哪个概念其实还没有定义清楚 - relationship evidence 到底是 direct 还是 indirect - mechanism 和 context 有没有被混在一起 - 自己写出来的 gap 是不是太早、太大,或者还没有根据 所以目标不是禁止分块,而是不要让分块结构直接变成最后的写作结构。 ## 如何一步步把分块结构改造成问题链 ### 第一步:先找出核心关系 先问: - 这篇论文真正要解释的关系是什么? 凡是不帮助解释这个关系的部分,都应该缩短、合并,或者移出主线。 ### 第二步:问读者必须先知道什么 在讨论关系之前,读者必须先理解什么? 这通常就会生成你的 **construct clarification** 部分。 ### 第三步:尽快把“关系本身”拉到前面 不要拖太久才开始讲关系。如果读者读了三页,还没看到核心关系,文献综述通常就会显得发散。 ### 第四步:把“有趣的因素”改写成解释性问题 如果学生手上有一串主题词: - hierarchy - learning climate - authority - family control 就继续问: - 哪些因素是在解释这个关系为什么成立? - 哪些因素是在解释这个关系为什么会变化? 这一步常常会把松散的 themes 重新整理成 mechanism 和 context 两部分。 ### 第五步:让 context 负责“限定”,而不是“装饰” context 不应该只是“现在我来讲讲我的案例”。 它真正应该回答的是: - 为什么这个关系在这里可能不同? 这才会让 context 成为 boundary condition。 ### 第六步:让 gap 成为前文推演的结果 如果 gap 在文献综述开始前就已经能直接写出来,那说明前面的结构可能还没有真正完成它的工作。 更强的文献综述,会让 gap 看起来像是不可避免地被推出来的。 ## 可套用模板 把自己的题目放进下面这张表里: ```text 我现在的分块提纲: 1. 2. 3. 4. 5. 这篇论文真正要解释的核心关系: 最重要的 context / boundary: 问题 1:为什么这个关系值得在这个情境中研究? 问题 2:关键概念在这个研究里分别是什么意思? 问题 3:现有文献对这个关系已经说了什么,这些证据能否迁移到这个情境? 问题 4:这个关系为什么会发生,而这个情境会如何改变它? 问题 5:考虑完前面这些以后,还缺什么解释或证据? 更具体的 gap 句子: ``` ## 如果学生已经写出了一个分块版初稿,应该怎么改? 如果学生已经写出了一个按块分开的初稿,不需要推倒重来。更有效的做法通常是 **带着功能意识去重读和重组**。 ### 先不要问“这段在写什么主题”,而要问“这段在做什么工作” 对每一个现有 section,都继续问: - 它是在定义概念吗? - 它是在 review focal relationship 吗? - 它是在解释 mechanism 吗? - 它是在说明 context 为什么重要吗? - 还是它其实只是在提供背景? 这一步常常会暴露出两个问题: - 有些 section 看起来不同,实际上在做同一种工作 - 有些关键工作根本没人做,比如 relationship evidence 很少,背景却很多 ### 把 section title 改写成问题 比如一个标题如果只是: - `Family-owned manufacturing SMEs` 它通常还太像一个 topic。更强的改写通常是: - `Why might the relationship work differently in family-owned manufacturing SMEs?` 这一改,就会让这一节从“介绍对象”转成“解释为什么这个情境会改变关系”。 ### 检查“关系本身”是不是出现得太晚 很多 block-based draft 的问题是,前面花了很长篇幅分别介绍几个概念,但读者迟迟看不到 paper 真正要解释的关系。 一个实用判断是: - 读者应该在较早的位置就看到 focal relationship - definitions 的任务是为 relationship 做准备,不是把 relationship 一直往后拖 ### 把 context 拉进解释里,而不是放在最后当背景 不要只在最后单开一节“我的案例背景”。继续追问: - 这个 contextual feature 会不会改变 mechanism? - 它会不会改变 outcome? - 它会不会解释为什么别的 setting 中的结论不能直接搬过来? 如果答案是会,那么 context 就应该进入 reasoning,而不只是留在最后一节。 ### 重写 gap,让它依赖前文 弱的分块式初稿,最后常常会落到这种 gap: - `There is limited research on family-owned manufacturing SMEs.` 这种 gap 的问题是,它在第一页就能写出来,前文并没有真正把它“推”出来。 更强的改写会更像: - `Although adjacent studies suggest that reverse mentoring may support digital learning and openness to change, it remains unclear how these mechanisms translate into digital transformation readiness in family-owned manufacturing SMEs, where authority structures may shape both adoption and resistance.` 第二种写法更强,因为它依赖前文已经完成的几步:定义、关系、机制、context。它不是 topic-level gap,而是 review-driven gap。 ## 调整过程中最容易出的问题 当学生从分块结构调整到 question chain 时,最容易出现这些问题: - 还保留太多分开的概念介绍 - 直接从定义跳到 gap,中间没有真正 review relationship - 把 mechanism 和 context 当成可有可无的补充 - 把 context section 写成背景介绍 - 前面很具体,最后 gap 却很空 还有一种常见问题是“过度纠正”。有些学生会把每个标题都硬改成问句,但并没有检查这些问句之间是否真的构成递进关系。 真正的问题链,不是简单地把几个 section title 后面都加上问号,而是: - Question 1 不解决,Question 2 就站不住 - Question 2 不解决,Question 3 就没有必要 - Question 3 会自然引出为什么要讨论 Question 4 - Question 4 的限制或变化,才会让 Question 5 的 gap 成立 如果这些问题的顺序可以随便交换,那这条链通常还是弱的。 ## 一个直接对比 平的分块结构: - reverse mentoring - digital transformation readiness - reverse mentoring and digital transformation - family-owned manufacturing SMEs - gap 更强的问题链结构: - 关键概念是什么? - 文献对这个关系已经说了什么? - 这个关系为什么会发生? - 为什么它会在这个情境中不同? - 还缺什么解释? 第二种更强,因为它不是在列 topic,而是在引导读者穿过一连串必要的问题。 ## 常见问题 **分块结构是不是就不能用了?** 不是。分块结构很适合前期整理文献,尤其适合刚开始读文献的学生。问题在于,不要把它原封不动当作最终文献综述。 **是不是所有标题都要写成问句?** 不一定。问句是规划工具。正式写作时,标题可以是简洁的短语或判断句,但背后的逻辑必须能回答连续的问题。 **如果我的题目不是 business management,还能用吗?** 可以。只要你的题目是在解释某种关系、机制或过程,就可以借用这套方法。不同学科只是在证据类型和表达习惯上会有差异。 **怎么判断 context 是否值得单独写?** 如果 context 会改变 X 如何影响 Y,或者会影响已有证据能不能迁移,它就值得写;如果只是泛泛背景,就应该缩短。 ## 练习 请拿自己的文献综述提纲做一次改写: 1. 写出目前的五个 section title。 2. 标出每一节的功能:概念、关系、机制、情境、方法、gap 或背景。 3. 删除或合并只提供背景、但不推动核心关系的部分。 4. 把剩下的部分改成五个连续问题。 5. 写一句新的 gap,要求它必须依赖前面至少两个问题。 ## 最后的教学提醒 如果你已经先让学生按分块结构列提纲,这并不是问题。 分块结构仍然有用,但它更适合做 **第一阶段的材料整理**,不适合作为最终版 LR 结构。 可以让学生明白: - **block structure** 帮他们先收材料 - **question chain** 帮他们把材料变成论证 - 从前者走到后者,本来就是更强 LR 写作的一部分,不代表第一版 outline 完全错了 所以真正的目标不是禁止分块,而是不要让分块结构直接变成最终版 literature review。 ## 小结 强的 literature review 不是从“我可以分几个部分来写”开始的,而是从“读者必须先穿过哪几个问题,我的 gap 才会成立”开始的。 这就是从分块结构走向问题链结构的关键转换。 # 学术写作与文献综述 []{#学术写作与文献综述} 这一组中文笔记目前先聚焦 **academic paper 里的 literature review**。重点不是泛泛介绍“怎么查文献”,而是帮助学生解决更具体的问题: - 如何从 `topic` 走到 `paper question` - 如何从 `research question` 推导出 `literature review job` - 如何把 `theme` 串成一条真正有逻辑的主线 - 如何判断文献综述是否只是背景堆砌,而不是为论文服务 ## 学习目标 学完这一组讲义,你应该能够做到: - 把一个宽泛题目收窄成可以写作的论文问题 - 说清楚文献综述在论文中到底要完成什么任务 - 把文献从“按主题分类”推进到“按问题链组织” - 写出能够引出 gap 的综述主线 - 用模板检查自己的文献综述是否真的服务于论文问题 ## 核心原则 - 文献综述不是资料汇编,而是为你的研究问题铺路。 - 先弄清 `paper question`,再决定哪些文献值得进入主线。 - `theme` 不能只停留在标签层面,要变成问题或判断。 - `gap` 不能最后硬加,要从前面的综述一步步推出来。 - 中文写作时也要保留学术逻辑,不要只追求“句子看起来高级”。 ## 近年前沿:生成式 AI 时代的文献综述 生成式 AI 改变了学生查资料、做提纲和润色句子的方式,但它没有改变学术写作的核心任务。Cotton et al. (2023) 讨论了 ChatGPT、作弊和课堂评价;Dwivedi et al. (2023) 从管理和信息系统角度梳理生成式 AI 的机会与风险;Lo (2023) 的快速综述也提醒教师和学生关注引用准确性、学习过程和学术诚信。 对文献综述来说,AI 最适合做辅助:帮你把一个宽泛 topic 拆成关键词,提醒可能的概念关系,或者检查段落是否顺畅。但它不能替你完成最关键的判断:这篇论文到底在问什么问题,某篇文献为什么必须被引用,证据之间是否真的能推出 gap。AI 生成的引用和摘要尤其要回到原文核对,不能因为句子流畅就默认可靠。 | AI 可以帮忙的地方 | 仍然必须由你负责的地方 | | ------------ | ----------------------- | | 生成检索关键词和初步提纲 | 决定 paper question 和综述任务 | | 改写句子、压缩段落 | 判断是否忠实于原文和证据 | | 提醒可能的 theme | 把 theme 改写成有推进关系的问题链 | | 检查语言流畅度 | 核对引用、页码、DOI 和学术诚信要求 | 所以,本课程不把 AI 当成“禁止触碰的捷径”,也不把它当成“自动写论文的工具”。更合适的态度是:把 AI 当作一个需要监督的助教。它可以提高准备效率,但最终的研究问题、文献选择、逻辑推进和责任都在作者自己身上。 ## 写作流程图 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgVG9waWNbIuWuveazm+mimOebriJdIC0tPiBRdWVzdGlvblsi6K665paH6Zeu6aKYIl0KICBRdWVzdGlvbiAtLT4gSm9iWyLnu7zov7Dku7vliqEiXQogIEpvYiAtLT4gTWF0cml4WyLmlofnjK7nn6npmLUiXQogIE1hdHJpeCAtLT4gVGhlbWVzWyLpl67popjljJYgdGhlbWUiXQogIFRoZW1lcyAtLT4gR2FwWyLmjqjlh7ogZ2FwIl0KICBHYXAgLS0+IE91dGxpbmVbIue7vOi/sOaPkOe6siJdCiAgT3V0bGluZSAtLT4gRHJhZnRbIuauteiQveWIneeovyJd" locale="zh"} 看自己的文献综述时,可以沿着这张图倒查:如果 gap 写不出来,通常不是最后一句话的问题,而是前面的 `paper question`、综述任务或 theme 之间的推进关系还没理顺。 ## 自学步骤 建议按下面顺序学习: 1. 先读第 4 篇,弄清文献综述的基本任务和主线设计。 2. 再用第 8 篇,把自己的题目填成 worksheet。 3. 如果已经有一个平铺式提纲,再读第 10 篇,练习把分块结构改成问题链。 4. 每读完一篇,都把自己的题目套进去写几行,不要只看示例。 5. 最后回到第 8 篇做自查,看自己的 gap 是否足够具体。 ## 迷你模板 ```text 我的 topic: 我的 paper question: 我的 literature review job: 三个可能的 theme: 这三个 theme 之间为什么是这个顺序: 最后能够推出的 gap: ``` ## 当前内容 - [4. 文献综述的构建与写作](https://www.pengjiaxin.com/04-writing-the-literature-review) - [8. 文献综述清单与模板](https://www.pengjiaxin.com/08-literature-review-checklist-and-template) - [10. 从分块结构到问题链:文献综述示例](https://www.pengjiaxin.com/10) ## 使用建议 1. 先看第 4 篇,理解文献综述的逻辑结构。 2. 再用第 8 篇把自己的题目做成 worksheet。 3. 不要一开始就堆文献,先把 `paper question -> review job -> logic line` 说清楚。 ## 常见问题 **我还没有完整读完文献,可以开始列主线吗?** 可以,但要把它当成临时主线。早期主线的作用是帮助你有方向地读文献,不是一次性定稿。 **中文论文或中文作业也需要这种结构吗?** 需要。语言可以不同,但学术写作的基本任务一样:问题要清楚,文献要服务于问题,gap 要从前文推出来。 **如果老师给了固定目录,还能用问题链吗?** 可以。固定目录是外在格式,你仍然可以在每一节内部用问题链组织材料,让段落之间有推进关系。 ## 练习 请拿一个自己的题目完成下面五步: 1. 用一句话写出 topic。 2. 把 topic 改成一个 paper question。 3. 写出这篇文献综述必须先解释什么。 4. 列出三个 theme,并把它们改写成问题。 5. 写一句 gap,检查它是不是从这三个问题自然推出来的。 # 会计学学习路线图 []{#会计学学习路线图} 这套会计学笔记围绕知识之间的联系展开:业务活动怎样进入账户,账户余额怎样形成报表,报表和成本信息又怎样支持经营决策。你可以顺着主线系统学习,也可以带着一个具体问题,回到相关专题查阅总结、推导和例题,再沿着延伸阅读深入理解。 整条主线可以概括为: `业务发生 -> 记录 -> 调整 -> 报表 -> 分析 -> 决策` 这样安排有两个好处。第一,财务会计部分不会只停留在“背分录”,而是从会计信息目标一路走到报表阅读。第二,管理会计部分不是孤立出现,而是接在报表和成本信息之后,说明管理者怎样用同一类经济信息做预算、控制和取舍。 - **财务会计**负责把业务活动变成对外报表。 - **管理会计**负责在报表和成本信息基础上做内部计划、控制和决策。 - **附录**单独放在主线之外,避免例题和术语打断主学习路径。 ## 从哪里开始 - 初次系统学习时,可先读[财务与管理会计基础路径](https://www.pengjiaxin.com/foundation/):用概念总结串起完整报表、跨月现金预算和决策比较,再按需要进入各专题查看推导、例题与延伸。 - 如果你想先看整体框架,先读本页的“会计信息流”和“课程主线”。 - 如果你第一次学会计,先从财务会计的基础模块开始。 - 把对外报告逻辑搞清楚后,再进入管理会计。 - 复习或做题时,再回到附录查术语、看综合例题和常见陷阱。 ::tip{title="学习顺序"} 不要急着跳到比率分析或资本预算。前面的会计等式、借贷规则和权责发生制看起来基础,却会决定后面每一个专题能否读懂。 :: ## 会计信息流 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRXZlbnRbIuS4muWKoeWPkeeUnyJdIC0tPiBFbnRyeVsi57yW5Yi25YiG5b2VIl0KICBFbnRyeSAtLT4gTGVkZ2VyWyLov4fotKbkuI7kvZnpop0iXQogIExlZGdlciAtLT4gQWRqdXN0WyLmnJ/mnKvosIPmlbQiXQogIEFkanVzdCAtLT4gU3RhdGVtZW50c1si6LSi5Yqh5oql6KGoIl0KICBTdGF0ZW1lbnRzIC0tPiBBbmFseXNpc1si5q+U546H5LiO546w6YeR5YiG5p6QIl0KICBBbmFseXNpcyAtLT4gRGVjaXNpb25bIue7j+iQpeWGs+etliJd" locale="zh"} 做题时可以先把题目放进这张图:它到底在问记录、调整、报表、分析,还是决策?位置判断清楚以后,公式和分录才不会乱用。 ## 近年前沿:AI、ESG 与可审计数据 近几年会计领域的一个明显变化,是企业报告不再只围绕利润、资产和现金流展开。ISSB、CSRD 和 ESRS 等规则推动企业提供更可比、可验证的可持续发展数据。[Mustafa、Smolarski 与 Elamer(2025)](https://doi.org/10.1002/bse.70090){rel=""nofollow""}系统梳理了 AI 与可持续报告研究;[Vilchez Olivares 与 Astorga De La Cruz(2026)](https://doi.org/10.3390/su18115393){rel=""nofollow""}进一步讨论 AI 和数据分析在可持续财务报告及 ESG 披露中的应用与风险。 这并不意味着入门会计的借贷记账、权责发生制和报表分析变得不重要。恰恰相反,越是使用 AI 和自动化系统,越要问三个基础问题:数据从哪里来,计量口径是否一致,谁能追溯和验证。AI 可以帮助抽取发票、识别异常、汇总碳排放或供应链信息,但“可审计”仍然要求清楚的凭证链、控制流程和责任边界。 | 新问题 | 会计基础中的对应能力 | 对学生的意义 | | ---------- | ---------- | ------------------------ | | ESG 数据要可比 | 会计原则、计量口径 | 不同公司披露的数据必须能放在同一把尺子下比较。 | | AI 自动处理凭证 | 分录、过账、内部控制 | 自动化减少手工录入,但不能替代对业务实质的判断。 | | 可持续性报告要被审验 | 审计线索、证据、披露 | 报告不是宣传材料,要能被第三方检查。 | | 管理层用数据做决策 | 成本、预算、绩效评价 | ESG 目标最终会进入预算、投资和绩效考核。 | ## 课程主线 | 阶段 | 主要问题 | 入口 | | -- | -------------------- | -------------------------------------------------------------------------------------- | | 基础 | 会计为什么存在,什么逻辑保证平衡? | [基础模块](https://www.pengjiaxin.com/financial-accounting/01-foundations/) | | 记录 | 业务如何变成分录、分类账和余额? | [交易记录模块](https://www.pengjiaxin.com/financial-accounting/02-recording-transactions/) | | 调整 | 为什么期末还要调整,哪些项目最容易出错? | [计量与调整模块](https://www.pengjiaxin.com/financial-accounting/03-measurement-adjustments/) | | 报表 | 调整后的数字如何进入财务报表和现金视角? | [报表与现金模块](https://www.pengjiaxin.com/financial-accounting/04-reporting-cash/) | | 分析 | 怎样解释盈利、流动性、风险和准则差异? | [分析与比较模块](https://www.pengjiaxin.com/financial-accounting/05-analysis-comparison/) | | 决策 | 管理者如何用会计信息做计划和决策? | [管理会计模块](https://www.pengjiaxin.com/management-accounting/) | ## 学完后应能做到 完成这条路径后,你应该能从一笔业务开始,判断它影响哪些账户,写出基本分录,解释期末为什么需要调整,并把调整后的余额放进财务报表。进一步地,你应该能用比率和准则差异解释报表数字,而不是只计算公式。 进入管理会计后,重点会转向内部使用:你需要能区分相关成本与无关成本,理解预算和差异分析的作用,并用现金流视角评价短期方案和长期投资项目。 ## 财务会计 []{#金融会计} 财务会计是整套笔记的前半部分,讲的是企业业务如何一步一步变成外部报告。 | 模块 | 核心内容 | 入口页 | | -------- | --------------------------------- | ----------------------------------------------------------------------------------- | | 1. 基础 | 会计目标、会计等式、权责发生制和会计原则 | [进入模块](https://www.pengjiaxin.com/financial-accounting/01-foundations/) | | 2. 交易记录 | 借贷规则、分录、过账、T 账户与会计循环 | [进入模块](https://www.pengjiaxin.com/financial-accounting/02-recording-transactions/) | | 3. 计量与调整 | 收入、存货、应收、固定资产、无形资产、租赁、所得税 | [进入模块](https://www.pengjiaxin.com/financial-accounting/03-measurement-adjustments/) | | 4. 报表与现金 | 财务报表、现金控制与流动性视角 | [进入模块](https://www.pengjiaxin.com/financial-accounting/04-reporting-cash/) | | 5. 分析与比较 | 比率分析、IFRS / US GAAP 比较与 2026 准则案例 | [进入模块](https://www.pengjiaxin.com/financial-accounting/05-analysis-comparison/) | ## 管理会计 管理会计是后半部分,重点不再是“如何对外报告”,而是“如何支持内部行动”。 | 模块 | 核心内容 | 入口页 | | -------- | --------------------- | --------------------------------------------------------------------------------- | | 1. 成本基础 | 成本分类、成本行为、成本归集、存货计价差异 | [进入模块](https://www.pengjiaxin.com/management-accounting/01-cost-foundations/) | | 2. 计划与控制 | 本量利、预算、差异分析、绩效评价 | [进入模块](https://www.pengjiaxin.com/management-accounting/02-planning-control/) | | 3. 决策与投资 | 短期经营选择与长期资本预算 | [进入模块](https://www.pengjiaxin.com/management-accounting/03-decisions-investment/) | ## 建议节奏 第一次阅读先抓住核心关系,遇到疑问再展开例题;复习时则可以先尝试推导或解释,再回看笔记。练习用于检验理解,阅读进度可以按自己的基础调整。 | 学习阶段 | 建议做法 | | ---- | --------------------------------------------- | | 第一遍 | 顺着目录读,不追求一次记住所有细节,先把“业务、账户、报表、决策”的关系连起来。 | | 第二遍 | 每学完一个模块,自己画一张小图:业务如何进入账户,账户如何进入报表,报表数字又如何被解释。 | | 做题前 | 先判断题目属于记录、调整、报表、分析还是决策,再选用对应工具。 | | 复习时 | 用附录检查术语、综合例题和常见陷阱,尤其留意现金与利润、成本与费用、相关与无关成本的区别。 | ## 附录与复习 附录建议在主线模块之后使用,不要一开始就跳进去。 - [附录首页](https://www.pengjiaxin.com/appendix/) - [综合示例与常见陷阱](https://www.pengjiaxin.com/appendix/24-examples-pitfalls) - [会计术语速查表](https://www.pengjiaxin.com/appendix/26-glossary) - [2026 准则更新与报告案例](https://www.pengjiaxin.com/financial-accounting/05-analysis-comparison/27-current-standards-2026) ## 推荐阅读顺序 1. [基础模块](https://www.pengjiaxin.com/financial-accounting/01-foundations/) 2. [交易记录模块](https://www.pengjiaxin.com/financial-accounting/02-recording-transactions/) 3. [计量与调整模块](https://www.pengjiaxin.com/financial-accounting/03-measurement-adjustments/) 4. [报表与现金模块](https://www.pengjiaxin.com/financial-accounting/04-reporting-cash/) 5. [分析与比较模块](https://www.pengjiaxin.com/financial-accounting/05-analysis-comparison/) 6. [管理会计模块](https://www.pengjiaxin.com/management-accounting/) 7. [附录与复习](https://www.pengjiaxin.com/appendix/) ## 学习习惯 当某一页看起来很技术化时,先退回去问四个问题: - 业务里到底发生了什么? - 这是记录问题、调整问题,还是解释问题? - 哪些账户真的变了? - 这是对外报告,还是内部决策? # 第四部分:综合示例与常见陷阱 ## 本章回答什么 - 在一道综合题里,不同会计主题是怎样连在一起的? - 学生在跨章节做题时最容易重复出现哪些错误? - 怎样通过综合练习判断问题到底出在记录、调整,还是解释阶段? ## 学习目标 读完这一页后,你应该能够: - 把交易识别、分录、调整、报表和管理分析串成一条完整解题链。 - 识别跨章节综合题中最常见的错误来源。 - 用检查清单定位自己错在概念、计算、分录还是解释。 ## 业务场景 期末综合题往往不会告诉你“本题考坏账”或“本题考 CVP”。它只给出一组业务事实:销售、赊账、采购、折旧、预算差异和现金收付。学生需要像会计人员一样先还原业务,再判断哪些属于记录、哪些属于调整、哪些属于分析。这个附录就是训练这种跨章节切换能力。 ## 在主线中的位置 - 这一章属于 **附录 -> 综合整理与复习**。 - 建议先读[资本预算](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/23-capital-budgeting)。 - 读完后可以接着进入[术语表](https://www.pengjiaxin.com/26-glossary)。 这一部分不是再讲新理论,而是把前面的知识连起来。 目标只有一个:看到一笔业务时,能把它一路追到分录、试算平衡表和财务报表,并且知道最容易出错的地方在哪里。 ## 4.1 一条完整链路 | 步骤 | 你要做什么 | | ---- | ----------------- | | 交易 | 看清业务到底发生了什么 | | 分录 | 判断借方和贷方 | | 过账 | 把分录放进分类账 | | 试算平衡 | 检查借贷是否相等 | | 调整 | 加上应计、预付、折旧、坏账等 | | 报表 | 生成利润表、权益变动表和资产负债表 | ### 这一步最重要的习惯 - 不要把章节当成零散知识点。 - 先讲清业务故事,再决定会计处理。 - 任何问题都先问:影响利润、现金、资产、负债,还是权益? ## 4.2 最常见的错误 | 章节 | 常见错误 | 更好的做法 | | ----- | -------------- | ----------------- | | 复式记账 | 只记一边 | 先找出两个账户,再决定借贷 | | 调整分录 | 忘记应计和预付 | 先判断属于本期还是未来期间 | | 存货 | 期末存货重复计算 | 要么作为资产,要么用于调整销售成本 | | 应收账款 | 把总额当成可收回现金 | 用坏账准备得到净额 | | 固定资产 | 忘记累计折旧 | 用成本减累计折旧列示 | | 本量利分析 | 把固定成本当变动成本 | 先分类再代入公式 | | 差异分析 | 把价格差异和效率差异混在一起 | 分开看“单价”和“用量” | ## 4.3 一个好用的检查清单 1. 先识别属于哪一章。 2. 用一句话复述业务故事。 3. 标记相关账户或成本项目。 4. 判断哪些项目变了,哪些没变。 5. 看答案会影响利润、现金,还是两者都影响。 6. 重新读题,找隐藏条件,比如闲置产能、存货变动、期末调整。 ## 4.4 快速检查 1. 为什么综合题比单独练习更重要? 2. 期末调整最容易漏掉哪一类项目? 3. 做 CVP 题时,第一步应该先分类什么? ::legacy-spoiler{title="参考答案"} 1. 因为综合题会把多个章节连在一起,最接近真实考试和实务。 2. 应计、预付、折旧、坏账这类期末项目。 3. 成本行为:固定、变动、混合。 :: ## 下一章 本章帮助你做跨章节复盘;下一章用术语表快速确认关键概念和英文缩写。继续读[术语表](https://www.pengjiaxin.com/26-glossary)。 # 会计术语速查表 []{#会计术语速查表} ## 本章回答什么 - 最常见的会计术语分别是什么意思? - 哪些概念在阅读和答题时最容易被混淆? - 怎样把术语表当作复习辅助,而不是拿它代替真正理解? ## 学习目标 读完这一页后,你应该能够: - 快速定位财务会计和管理会计核心术语的中文含义。 - 区分容易混淆的概念,如成本/费用、利润/现金、折旧/估值。 - 把术语回连到具体章节,而不是孤立背诵定义。 ## 业务场景 考试题或年报附注经常同时出现 AR、COGS、DTA、ROI、NPV 等缩写。若只背中文名而不知道它改变哪张表、哪个决策,就无法解题。术语表的作用是快速校准语言,然后回到相应章节理解计算和逻辑。 ## 在主线中的位置 - 这一章属于 **附录 -> 综合整理与复习**。 - 建议先读[综合示例与常见陷阱](https://www.pengjiaxin.com/24-examples-pitfalls)。 这个页面只做一件事:帮你快速确认术语,不要把它当成单独一章去背。 ## 基础财务会计术语 - **资产**:企业控制的、预期会带来未来经济利益的资源。 - **负债**:企业已经承担的、未来可能导致资源流出的义务。 - **所有者权益**:资产扣除负债后的剩余权益。 - **收入**:日常活动形成的流入。 - **费用**:本期内导致权益减少的消耗或流出。 - **利润**:收入减费用后的结果。 - **存货**:为出售而持有的商品,或生产过程中的在产品、材料。 - **销售成本**:与本期销售直接相关的成本。 - **固定资产**:长期使用的有形资产。 - **折旧**:固定资产成本在受益期内的分摊。 - **摊销**:无形资产成本在受益期内的分摊。 ## 调整与报表术语 - **应计**:费用或收入已经发生,但现金还没动。 - **预付**:现金先付了,但未来期间才受益。 - **坏账准备 / 备抵**:用来抵减总额资产的估计损失。 - **试算平衡表**:检查分类账借贷是否相等的表。 - **所有者权益变动表**:解释权益为什么变了。 - **现金流量表**:解释现金从哪里来、到哪里去。 ## 管理会计术语 - **贡献毛益**:销售收入减变动成本。 - **保本点**:利润等于零的销售水平。 - **相关成本**:决策中会变化的未来成本。 - **沉没成本**:已经发生、无法改变的成本。 - **机会成本**:选择一个方案时放弃的收益。 - **ROI**:营业利润除以平均经营资产。 - **RI**:营业利润减去资产最低报酬。 - **NPV**:项目现金流现值减初始投资。 - **IRR**:使 NPV 等于零的折现率。 - **差异**:实际结果和预算或标准之间的差额。 ## 怎么用 1. 先判断术语属于“报表、调整、分析、决策”哪一类。 2. 不要只背定义,要看它会改变什么数字。 3. 如果题目里出现缩写,先回到本页确认意思,再回到章节逻辑。 ## 快速检查 1. 费用和成本有什么区别? 2. 为什么沉没成本不该参与短期决策? 3. NPV 用一句话怎么理解? ::legacy-spoiler{title="参考答案"} 1. 成本是更广义的资源牺牲;费用是本期确认进损益的那部分成本。 2. 因为它已经发生,当前决策无法改变它。 3. 项目未来现金流折现后的净价值创造。 :: ## 下一章 用这一页做最后整理;如果某个术语仍然不熟,回到对应章节重做例题,然后回到[会计学习路线图](https://www.pengjiaxin.com/../00-index)。 # 附录 []{#附录} 附录用于综合整理和复习,建议在主线模块之后使用。它不是新的主线内容,而是帮助你把分散知识点重新放回题目、术语和易错场景里。 ## 内容 | 页面 | 用途 | | ------------------------------------------------------------ | -------------------- | | [综合示例与常见陷阱](https://www.pengjiaxin.com/24-examples-pitfalls) | 把多个知识点放到一起复习,并集中看易错点 | | [会计术语速查表](https://www.pengjiaxin.com/26-glossary) | 快速查术语和中英文对应 | ## 适合什么时候回来 | 场景 | 用法 | | ------ | ------------------------------ | | 学完一个模块 | 用术语表检查关键词是否能用自己的话解释。 | | 学完财务会计 | 用综合示例检查记录、调整、报表和分析是否能连起来。 | | 学完管理会计 | 回看常见陷阱,特别区分会计利润、现金流、相关成本和沉没成本。 | | 考前复习 | 先看易错点,再回到对应模块补概念和例题。 | ## 最适合怎么用 - 模块学完之后回来做整合。 - 写作业或复习前,用它快速找错点和概念定义。 - 不要只把术语表当翻译表;最好能同时说出中文含义、英文表达和一个典型应用场景。 ::tip{title="复习方法"} 遇到错题时,先判断错误属于概念、分类、期间归属、计量方法、报表连接还是决策相关性。把错因归类后,再回到主线模块补对应环节。 :: # 1.1 会计信息目标与质量特征(Objectives & Qualitative Characteristics) ## 本章回答什么 - 为什么“对决策有用”是财务会计信息的核心目标? - 哪些质量特征会让会计信息更可信、更可用? - 当相关性、如实反映、及时性和成本发生冲突时,应该如何理解这些权衡? ## 学习目标 读完这一页后,你应该能够: - 用“决策有用性”解释财务会计为什么存在。 - 区分基本质量特征和增强质量特征,并能把它们用于案例判断。 - 在重要性、及时性、成本效益发生冲突时,写出有理由的取舍。 ## 业务场景 一家成长型企业准备向银行申请贷款。管理层希望尽快提交报表,但审计师发现存货盘点资料不完整、坏账估计缺少支持。银行并不只关心“利润数字高不高”,更关心这些数字是否相关、完整、中立、可验证。这个场景说明:会计信息质量直接影响融资、授信和投资决策。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 基础**。 - 把这一章当作整条会计学习路径的起点。 - 读完后可以接着进入[会计等式与要素](https://www.pengjiaxin.com/02-equation-elements)。 这章回答一个最基础的问题:为什么要做会计,以及什么样的信息才算“好”。 ## 是什么 会计信息的核心目标是**为决策提供有用信息**(Decision Usefulness)。常见使用者包括投资者、债权人、管理层、供应商与监管者。 框架通常把“有用”拆成两层: | 分类 | 质量特征(中英) | 一句话理解 | | ------ | ------------------------------------------------------------------------------ | --------- | | 基本质量特征 | 相关性(Relevance) | 能影响决策 | | 基本质量特征 | 忠实表达(Faithful Representation) | 能真实反映经济实质 | | 增强质量特征 | 可比性、可验证性、及时性、可理解性(Comparability, Verifiability, Timeliness, Understandability) | 让信息更好用 | 并且存在现实约束: | 约束 | 含义 | | ------------------ | ----------------- | | 重要性(Materiality) | 不重大就不必过度精细披露或计量 | | 成本效益(Cost-benefit) | 信息质量提升的成本不能明显超过收益 | ## 为什么重要 后面所有“会计规则”(收入确认、折旧、减值、坏账准备、披露等)本质上都在服务这两个目标: - 让信息更相关:能帮助判断未来表现与风险。 - 让信息更忠实:避免“报表好看但不真实”。 考试里大量主观题,本质是在考你能否用这个框架解释“为什么这么做”。 ## 怎么做(用在题目里的方法) 遇到会计处理选择、披露充分性、估计是否合理等题目,用固定的四步判断: 1. 相关性:这条信息是否可能改变决策?是否重要(material)? 2. 忠实表达:是否完整、中立、无重大错报? 3. 增强质量:是否提高可比、可验证、及时、可理解? 4. 约束:成本是否显著超过收益? ### 1) 相关性(Relevance) 相关性通常写成三点: - 预测价值(Predictive Value):帮助预测未来。 - 反馈价值(Confirmatory Value):帮助验证或修正过去判断。 - 重要性(Materiality):错报或漏报是否会影响决策。 重要性没有统一阈值。常见写法是“相对于利润/总资产/收入比例很小,因此不重大”,再补一句“同时考虑事项性质(例如舞弊、合规风险)”。 ### 2) 忠实表达(Faithful Representation) 忠实表达强调“经济实质”,常用三词概括: - 完整性(Completeness):该记录、该披露的都到位。 - 中立性(Neutrality):不为美化报表而偏向某种结果。 - 无重大错报(Free from Material Error):计量过程合理、无重大漏记/错计。 关键提醒:忠实表达不等于“绝对精确”。折旧年限、坏账准备等都需要估计,重点在“合理方法 + 充分披露”。 ### 3) 增强质量特征(Enhancing Characteristics) - 可比性(Comparability):不同公司/不同期间能比较。与“一贯性(Consistency)”相关。 - 可验证性(Verifiability):独立第三方能通过证据验证(对账单、发票、盘点、合同)。 - 及时性(Timeliness):信息来得太晚就失去价值。 - 可理解性(Understandability):分类清晰、表达清楚、附注到位。 ## 课堂例题:坏账估计是否“忠实表达” **资料**:A 公司年末应收账款 500,000 元。历史坏账率约 3%,但本年两个大客户出现资金困难,财务经理仍按 1% 计提坏账,以免利润下降。 | 判断点 | 应该怎样分析 | | ---- | ------------------------ | | 相关性 | 坏账风险会影响债权人和投资者判断,金额也可能重大 | | 忠实表达 | 1% 缺少证据,可能不完整也不中立 | | 可验证性 | 应结合账龄、客户信用、期后收款和历史损失率 | | 结论 | 应重新估计坏账准备,并披露关键估计判断 | 答题时不要只写“应按 3%”。更好的写法是:管理层需要用可验证证据支持估计,并说明估计如何反映当前信用风险;否则报表可能高估资产和利润。 ## 常见错误 1. 把“借=好、贷=坏”当成质量判断。借贷只是记账方向。 2. 把重要性阈值当死标准。重要性必须结合企业规模与事项性质。 3. 把“无错误”理解为必须绝对精确。实际是无重大错报,允许合理估计。 4. 只写定义不写影响。答题时要写“这会导致什么决策偏差”。 ## 快速检查 1. 会计信息的核心目标是什么? 2. 基本质量特征是哪两类? 3. 为什么重要性(materiality)既是相关性的一部分,又是披露约束? 4. “free from error”是否意味着必须绝对精确? ::legacy-spoiler{title="参考答案(点击展开)"} 1. 为决策提供有用信息(decision usefulness)。 2. 相关性(relevance)与忠实表达(faithful representation)。 3. 因为不重大事项即使相关,也不值得以高成本披露和精确计量;重大事项则必须披露并保证质量。 4. 不是。它强调无重大错报与合理计量过程;允许合理估计并要求充分披露。 :: ## 下一章 本章建立“好会计信息”的判断框架;下一章把这些信息落到账户要素和会计等式中。继续读[会计等式与要素](https://www.pengjiaxin.com/02-equation-elements)。 # 1.2 会计等式与要素(Equation & Elements) ## 本章回答什么 - 会计等式到底在表达什么关系? - 资产、负债、权益、收入和费用如何在报表之间联动? - 在写借贷分录之前,怎样先用会计等式分析一笔业务? ## 学习目标 读完这一页后,你应该能够: - 解释 `资产 = 负债 + 权益` 代表的资金来源和资金去向。 - 判断常见业务会影响资产、负债、权益、收入或费用中的哪些要素。 - 在写分录前先用等式检查业务逻辑,避免“借贷平衡但分类错误”。 ## 业务场景 一名店主说:“这个月收了很多现金,所以一定赚钱。”会计需要追问:现金来自销售、客户还款、银行借款,还是所有者投入?同样是现金增加,背后的要素可能是收入、资产收回、负债或权益。会计等式帮助你把“钱进来了”拆成真正的经济含义。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 基础**。 - 建议先读[会计信息目标与质量特征](https://www.pengjiaxin.com/01-objectives-qualitative-characteristics)。 - 读完后可以接着进入[记账基础与原则](https://www.pengjiaxin.com/03-accounting-bases-principles)。 这一章是全科的“底盘”:你后面所有借贷、过账、报表,都是在维护同一个平衡关系。 ## 是什么 ### 1) 基本会计等式 核心等式(Accounting Equation): `资产(Assets) = 负债(Liabilities) + 所有者权益(Equity)` 它表达的是“资金来源”和“资金去向”的对应关系: - 资产:企业控制的资源(现金、存货、应收、设备等)。 - 负债:欠外部的义务(应付账款、借款、应计费用等)。 - 权益:所有者的剩余权益(投入资本 + 留存收益 - 提现/分配)。 ### 2) 会计要素(Elements) 财务会计常用要素可以理解为两张表的语言: - 资产负债表(Statement of Financial Position)要素:资产、负债、所有者权益。 - 利润表(Income Statement)要素:收入(Revenue)、费用(Expense)、利润(Profit)。 利润会通过留存收益进入权益,所以两张表是联动的。 ## 为什么重要 1. **检查交易是否合理**:每笔交易都必须让等式保持平衡。 2. **指导借贷方向**:后面的借贷规则本质是“等式如何保持平衡”的记账技术实现(见 [04 借贷规则](https://www.pengjiaxin.com/../02-recording-transactions/04-double-entry-dr-cr))。 3. **把业务故事翻译成会计语言**:做题时先用等式想清楚“发生了什么”,再进入分录。 ## 怎么做(用会计等式分析交易) 建议用一个固定流程分析每笔业务: 1. 写出涉及的账户(至少两个)。 2. 判断每个账户属于哪类要素(资产/负债/权益/收入/费用/提现)。 3. 判断每个账户是增加还是减少。 4. 检查:变化后等式仍能平衡。 ### 常见交易对等式的影响(模板) | 业务类型 | 资产 | 负债 | 权益 | 一句话理解 | | --------- | ----: | -------: | ----: | -------------- | | 所有者投入现金 | + | | + | 资产来源于权益 | | 现金购买设备 | 一增一减 | | | 资产内部结构变化 | | 赊购存货 | + | + | | 资产来源于负债 | | 偿还应付账款 | - | - | | 资产减少以减少负债 | | 赊销商品 | +(应收) | | +(利润) | 收入提高权益,但现金未必增加 | | 发生费用(未付款) | | +(应计/应付) | -(利润) | 费用降低权益,负债增加 | | 提现/分配 | - | | - | 所有者把价值取走 | ### 微型例子(把等式当作“资产负债表草稿”) 假设学生创业,初始为 0: 1. 投入现金 3,000: 资产 +3,000,权益 +3,000 2. 现金买设备 1,200: 现金 -1,200,设备 +1,200(资产内部转移) 3. 赊购存货 400: 存货 +400,负债(应付)+400 此时你可以直接写出“简化资产负债表”,检查是否平衡。 | 项目 | 金额 | | ------- | ----: | | 现金 | 1,800 | | 设备 | 1,200 | | 存货 | 400 | | 资产合计 | 3,400 | | 应付账款 | 400 | | 所有者权益 | 3,000 | | 负债和权益合计 | 3,400 | 这个表不是完整报表,但它训练你先检查“业务故事是否平衡”,再进入借贷分录。 ## 常见错误 1. 把“现金”当成唯一资产。应收账款、预付款、存货都是资产。 2. 把“付款”直接当费用。现金买设备是资产,不是费用。 3. 把“利润”当现金。利润影响权益,现金可能晚于利润发生。 4. 只看等式平衡就以为正确。错误分类也可能平衡,后面还要靠试算平衡与复核。 ## 快速检查 1. 赊购存货会影响会计等式的哪两边? 2. 现金支付租金会影响哪两边?为什么权益也会变化? 3. 赊销发生时,资产与权益分别如何变化? 4. 为什么“等式平衡”不能证明所有记录都正确? ::legacy-spoiler{title="参考答案(点击展开)"} 1. 资产增加(存货),负债增加(应付账款)。 2. 资产减少(现金),权益减少(费用导致利润下降,留存收益减少)。 3. 资产增加(应收账款),权益增加(收入提高利润)。 4. 因为把账户分类错了也可能同时做了借贷平衡,等式仍能成立,但经济含义错误。 :: ## 下一章 本章解决“记录什么要素”;下一章解决“属于哪个期间、按什么原则计量”。继续读[记账基础与原则](https://www.pengjiaxin.com/03-accounting-bases-principles)。 # 1.3 记账基础与原则(Bases & Principles) ## 本章回答什么 - 为什么权责发生制和现金基础会得出不同的结果? - 配比、审慎、一贯性和重要性怎样影响会计处理? - 为什么这些原则会成为期末调整分录的来源? ## 学习目标 读完这一页后,你应该能够: - 区分权责发生制和现金基础,并解释利润为什么不等于现金。 - 识别预付、预收、应计、递延、折旧、坏账等调整项目背后的原则。 - 用配比、审慎、一贯性和重要性解释常见会计处理。 ## 业务场景 一家培训机构 12 月一次性收取学员下一年 1-3 月课程费 30,000 元。老板想把 30,000 元全部记入 12 月收入,因为现金已经到账。会计必须判断:企业是否已经履约?如果课程尚未提供,现金增加并不等于收入已经赚取。这个场景是权责发生制和预收收入的典型应用。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 基础**。 - 建议先读[会计等式与要素](https://www.pengjiaxin.com/02-equation-elements)。 - 读完后可以接着进入[复式记账与借贷规则](https://www.pengjiaxin.com/../02-recording-transactions/04-double-entry-dr-cr)。 这一章解决两件事: - 会计“按什么时间逻辑”确认收入和费用(基础)。 - 会计“用什么判断准则”让报表更可信(原则)。 ## 是什么 ### 1) 记账基础(Accounting Basis) 最关键的对比:**权责发生制(Accrual Basis)** vs **现金基础(Cash Basis)**。 | 项目 | 权责发生制 | 现金基础 | | ---- | ------------------------- | ----------------------- | | 收入确认 | 赚取时确认(赚到了) | 收到现金时确认(收到了) | | 费用确认 | 发生时确认(用掉了) | 付出现金时确认(付了) | | 报表适配 | 通用财务报表的主要确认基础;现金流量表另列现金收付 | 可辅助现金管理;能否用于正式申报须另查适用规则 | | 关键风险 | 需要估计与调整,考验判断 | 容易把不同期间的业务混在一起 | 这里最容易混淆的一点是:**利润不等于现金**。 ### 2) 会计原则(Accounting Principles) 初学时,可以先了解这些原则怎样帮助报表更真实地反映业务: | 原则(中英) | 你应该抓住的关键词 | | ---------------- | ---------------------- | | 权责发生制(Accrual) | 属于哪个期间 | | 配比/匹配(Matching) | 先判断资产是否存在、是否消耗,再确认相关费用 | | 审慎/谨慎(Prudence) | 不确定条件下谨慎判断,仍须保持中立 | | 一贯性(Consistency) | 方法不能随便换 | | 重要性(Materiality) | 金额或性质是否可能影响使用者决策 | 计量属性(Measurement Attributes)也经常被提到: - 历史成本(Historical Cost) - 公允价值(Fair Value) - 可变现净值(NRV) ## 为什么重要 1. 这些原则说明了为什么需要调整分录。预付、应计、折旧、坏账、存货跌价等处理,都涉及权责发生制下的期间归属。 2. 它们也是回答解释题的依据,帮助你说明“为什么这么确认”“为什么要计提/摊销/减值”。 3. 确认与计量方法决定利润质量:即使现金流相同,采用不同方法,报告的利润也可能完全不同。 ## 怎么做(做题时的可操作方法) ### 1) 先判断:题目问的是利润还是现金? 如果题目关键词是: - “本期利润”“本期费用”“应计”“预付”“期末调整”,通常是权责发生制思路。 - “现金流”“收付实现”“本月收到/支付”,通常是现金流思路。 不要混用。 ### 2) 用一个“时间轴”处理预付与应计 把项目分成两类: | 类型 | 现金发生在 | 经济业务发生在 | 常见例子 | | ------------ | ----- | ------- | -------------- | | 递延(Deferral) | 现在 | 以后 | 预付租金、预付保险、预收收入 | | 应计(Accrual) | 以后 | 现在 | 应计工资、应计利息、应计水电 | 对应的会计处理可以这样理解: - 预付:先记资产,随着使用转费用。 - 预收:先记负债,随着履约转收入。 - 应计费用:先记费用 + 负债。 - 应计收入:先记资产 + 收入。 这些会在会计循环里以调整分录出现(见 [05 会计循环](https://www.pengjiaxin.com/../02-recording-transactions/05-accounting-cycle))。 ### 3) 配比原则的最常见应用 配比可以帮助理解会计处理的结果,但仍须先判断资产和负债是否满足确认条件。例如,广告可能带来未来销售,却不能仅为平滑利润就把广告支出留作资产。常见处理有以下三类: - 销售与销售成本:收入确认时,匹配结转成本。 - 折旧与摊销:按适用方法分配资产的可折旧或可摊销金额,与是否已付款分开判断。 - 坏账/减值:按适用计量要求反映收回风险,不是随意把损失与收入配平。 ### 4) 审慎原则的常见表现 面对不确定性,应依据证据谨慎估计,既不高估资产和收益,也不故意低估它们;同样不能有意高估负债和费用。[IFRS 概念框架第 2.16 段](https://www.ifrs.org/content/dam/ifrs/publications/pdf-standards/english/2021/issued/part-a/conceptual-framework-for-financial-reporting.pdf?bypass=on){rel=""nofollow""}把审慎与中立联系起来。以下处理还必须分别满足相关准则的要求: - 存货:成本与可变现净值孰低(LCNRV)。 - 应收:计提坏账准备或预期信用损失(ECL)。 - 资产:有减值迹象时做减值测试,必要时确认减值损失。 ## 课堂例题:预收课程费的调整 **资料**:12 月 1 日收到三个月课程费 30,000 元,课程服务覆盖 12 月、1 月、2 月,按月份均匀提供。 收到现金时: | 借方 | 金额 | 贷方 | 金额 | | -- | -----: | ---- | -----: | | 现金 | 30,000 | 预收收入 | 30,000 | 12 月末确认已履约的 1/3: | 借方 | 金额 | 贷方 | 金额 | | ---- | -----: | ---- | -----: | | 预收收入 | 10,000 | 服务收入 | 10,000 | 逻辑:现金已经收到,但只有 12 月已提供的课程属于本期收入;剩余 20,000 元仍是向学员提供未来服务的义务。 ### 把同一笔业务推到下个月 本例与开头“次年 1—3 月提供课程”的场景不同:这里已经在 12 月开始履约。判断应确认多少收入,要看**服务期间**,不能只看都收了 30,000 元。 假设 1 月继续均匀提供课程,又确认收入 10,000 元,并把预收收入从 20,000 元减至 10,000 元。1 月没有再次收款;收入增加来自履约,不是现金到账。到 2 月末,服务全部完成,预收收入余额归零。 ### 从目标余额倒推调整额 独立例子:10 月 1 日支付一年保险费 12,000 元,12 月末已使用三个月。无论最初怎样入账,最终都应是本期保险费用 3,000 元、预付保险资产 9,000 元。 | 原始入账方式 | 12 月末需要的调整 | 为什么 | | --------------- | ------------------------ | -------------- | | 全部借记预付保险 12,000 | 借:保险费 3,000;贷:预付保险 3,000 | 将已消耗部分从资产转为费用 | | 全部借记保险费 12,000 | 借:预付保险 9,000;贷:保险费 9,000 | 把尚未消耗部分从费用转回资产 | 两种写法虽然调整额不同,最终余额却相同。做题时按“读原余额 → 算应有余额 → 记差额”的顺序判断,不能一见到“预付”就套用同一条分录。接着阅读[会计循环](https://www.pengjiaxin.com/../02-recording-transactions/05-accounting-cycle),看这两个余额怎样进入报表。 ## 常见错误 1. 把收到现金当作收入确认依据。权责发生制下,关键是履约与赚取。 2. 把支付现金当作费用确认依据。预付可能是资产,不是费用。 3. 忘记“配比”:只记收入不结转成本,会虚增利润。 4. 把审慎理解为“故意少报”。审慎是合理估计与不高估,不是随意压低利润。 5. 任意变更方法却不披露。一贯性要求可比,变更必须有理由且披露影响。 ## 快速检查 1. 权责发生制下,本期提供服务但下期收款,收入属于哪一期? 2. 预付一年保险费,期末为什么要做调整?调整影响哪两个账户? 3. “配比原则”最经典的两个应用场景是什么? 4. 审慎原则为什么会导致坏账准备与存货跌价准备? ::legacy-spoiler{title="参考答案(点击展开)"} 1. 属于本期,因为服务在本期已经提供,收入也在本期赚取。 2. 因为只有已使用部分属于本期费用,未使用部分应保留为资产;通常影响“保险费(费用)”与“预付保险(资产)”。 3. 收入与销售成本的匹配;以及折旧/摊销把成本分配到受益期间。 4. 因为收回与变现存在不确定性,应按证据和相应计量要求反映风险;审慎不意味着刻意低估资产或利润。 :: ## 下一章 本章说明“何时确认”;下一章把确认结果转换成借贷分录。继续读[复式记账与借贷规则](https://www.pengjiaxin.com/../02-recording-transactions/04-double-entry-dr-cr)。 # 1. 基础 []{#_1-基础} 这个模块先搭底层逻辑,再进入记账技术。会计不是从借贷规则开始的,而是从“谁需要这些信息、这些信息应该具备什么质量、企业经济活动怎样被抽象成要素”开始。 学这一章时,不必急着背后面会用到的所有分录。更重要的是先建立判断框架:一项业务改变了什么资源、义务或所有者权益?它对利润的影响是否属于本期?这些问题会贯穿后面的每一个专题。 ## 这个模块回答什么 - 为什么会计信息要有用、可信、可比较? - 会计等式到底表达了什么? - 为什么权责发生制和会计原则会影响后面的所有调整? ## 讲义内容 | 讲义 | 重点 | | ----------------------------------------------------------------------------------- | ------------------ | | [会计信息目标与质量特征](https://www.pengjiaxin.com/01-objectives-qualitative-characteristics) | 为什么会计信息需要有决策价值 | | [会计等式与要素](https://www.pengjiaxin.com/02-equation-elements) | 资产、负债、权益、收入、费用如何联动 | | [记账基础与原则](https://www.pengjiaxin.com/03-accounting-bases-principles) | 权责发生制、配比、审慎和一贯性 | ## 学完应能做到 - 用自己的话说明会计信息为什么服务于决策,而不是只服务于记账。 - 根据简单业务判断资产、负债、权益、收入和费用哪个发生变化。 - 解释会计等式为什么必须平衡,以及平衡不等于分类正确。 - 区分现金收付和权责发生制下的收入、费用确认。 - 说明配比、审慎、一贯性等原则会怎样影响后续调整。 ## 常见误区 - 把借贷看成“好坏”而不是记录方向。 - 把利润和现金混为一谈。 - 以为等式平衡就代表分类一定正确。 ::tip{title="练习建议"} 找三笔日常业务练习分类:赊销、预收款、购买设备。先不写分录,只回答“哪些要素增加或减少”,再检查会计等式是否仍然平衡。 :: ## 下一步 进入 [2. 交易记录](https://www.pengjiaxin.com/../02-recording-transactions/) 后,这些概念会被转换成借贷方向、分录和账户余额。 # 1.4 复式记账与借贷规则(Double-Entry & Dr/Cr) ## 本章回答什么 - 怎样先识别一笔业务涉及的正确账户? - 为什么借贷方向取决于账户类型,而不是“好坏”或“正负”? - 过账之后,怎样检查一笔分录是否仍然表达了正确的业务含义? ## 学习目标 读完这一页后,你应该能够: - 按账户类型判断借贷方向,而不是背“现金进出”的模板。 - 为常见采购、销售、收款、付款业务写出规范分录。 - 用 T 账户和正常余额检查分录是否表达了正确的业务含义。 ## 业务场景 企业收到客户 8,000 元货款时,销售员可能说“又赚了 8,000”。但如果这笔钱是客户偿还上月赊销款,它只是资产内部从应收账款转为现金,并不是新收入。复式记账要求你先识别账户和业务性质,再决定借贷方向。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 交易记录**。 - 建议先读[记账基础与原则](https://www.pengjiaxin.com/../01-foundations/03-accounting-bases-principles)。 - 读完后可以接着进入[会计循环](https://www.pengjiaxin.com/05-accounting-cycle)。 本章练习如何根据一笔业务写出正确分录,再用 T 账户核对余额。 ## 是什么 **复式记账(Double-entry)**要求每一笔业务至少影响两个账户,并且**借方金额总和 = 贷方金额总和**。 “借(Debit, Dr)/贷(Credit, Cr)”不是好坏,也不是正负,它们是**记录方向**。 借贷方向由**账户类型**决定: | 账户类型 | 增加 | 减少 | 正常余额(Normal Balance) | | --------------------- | -- | -- | -------------------- | | 资产(Asset) | 借 | 贷 | 借 | | 负债(Liability) | 贷 | 借 | 贷 | | 所有者权益(Equity/Capital) | 贷 | 借 | 贷 | | 收入(Revenue/Income) | 贷 | 借 | 贷 | | 费用(Expense) | 借 | 贷 | 借 | | 提现/取款(Drawings) | 借 | 贷 | 借 | 如果某账户的期末余额与正常余额方向相反,例如现金出现贷方余额,应核对相关业务和记账是否正确。 ## 为什么重要 1. 复式记账把 [02 会计等式](https://www.pengjiaxin.com/../01-foundations/02-equation-elements)中的关系转化为具体的账户记录。 2. 这是会计循环中“分录”和“过账”的核心技能(见 [05 会计循环](https://www.pengjiaxin.com/05-accounting-cycle))。 3. 大多数初学者错误不是算术,而是“账户分类错”或“把现金当收入/费用”。 ## 怎么做(稳定写出分录) ### 安全的四步法 1. 写出涉及的账户(至少两个)。 2. 给每个账户分类:资产/负债/权益/收入/费用/提现。 3. 判断每个账户增加还是减少。 4. 按借贷规则编写分录,并检查借贷金额是否相等。 逐步判断账户和增减方向,比依赖“背模板口诀”更可靠。 ### 另一种识别账户的方法:去向与来源 当你不知道应该用哪个账户名时,先问两句话: - 价值去了哪里(destination)?通常是资产增加、费用发生、提现。 - 价值来自哪里(source)?通常是负债增加、权益增加、收入确认、资产减少。 先根据价值的去向与来源确定账户,再按账户类型确认借贷方向。 ### 分录的规范格式(Journal Entry) 1. 借方先写,贷方后写。 2. 借方合计 = 贷方合计。 3. 解释句写“发生了什么”,不要写“因为借贷规则所以……”。 ## T 账户与余额读取(Ledger / T-Account) T 账户是教学用的“分类账简化模型”: ```text 账户名称 -------------------- 借方(Dr) | 贷方(Cr) ``` 余额的计算就是两边相减: - 借大于贷:借方余额(debit balance) - 贷大于借:贷方余额(credit balance) 期末常用 `Bal c/d`(结转)与下期 `Bal b/d`(结转到期初)展示余额。 ## 常见交易的分录模板(高频) | 业务 | 分录(简写) | 易错点 | | ------- | -------------- | -------- | | 所有者投入现金 | 借:现金;贷:资本 | 把资本当收入 | | 现金买设备 | 借:固定资产;贷:现金 | 把设备当费用 | | 赊购存货 | 借:存货/购货;贷:应付账款 | 把应付当费用 | | 支付房租 | 借:租金费用;贷:现金 | 忘记预付的可能性 | | 现金销售 | 借:现金;贷:销售收入 | 把收入记借方 | | 赊销 | 借:应收账款;贷:销售收入 | 把应收当收入 | | 收到客户还款 | 借:现金;贷:应收账款 | 错记为收入 | | 支付供应商 | 借:应付账款;贷:现金 | 反向记成应付贷 | ### 先确定盘存制,再写购货和销售成本 | 环节 | 永续盘存制 | 定期盘存制 | | ---- | ------------------ | ---------------------- | | 购入商品 | 借记存货 | 借记购货 | | 发生销售 | 记录收入,同时结转销售成本并减少存货 | 先记录收入,销售成本在期末统一计算 | | 期末 | 根据盘点等证据核对并调整账面存货 | 用期初存货、净购货和期末盘点存货计算销售成本 | 不能一边逐笔结转销售成本,一边又把全部净购货作为当期成本,否则可能重复计入。下面的 5,000 元赊销例子采用永续盘存制;[完整基础案例](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements)采用定期盘存制。先写明口径,再比较分录。 ## 课堂例题:一笔业务从故事到分录 **资料**:公司赊销商品 5,000 元,商品成本 3,200 元,采用永续盘存制。 | 步骤 | 分析 | | -- | --------------------------- | | 账户 | 应收账款、销售收入、销售成本、存货 | | 要素 | 应收账款和存货是资产;销售收入增加权益;销售成本是费用 | | 增减 | 应收增加、收入增加、费用增加、存货减少 | | 借贷 | 资产增加借,应收借;收入增加贷;费用增加借;资产减少贷 | 分录: | 借方 | 金额 | 贷方 | 金额 | | ---- | ----: | ---- | ----: | | 应收账款 | 5,000 | 销售收入 | 5,000 | | 销售成本 | 3,200 | 存货 | 3,200 | 注意:如果只记录收入而不结转成本,利润会被高估,也违反配比原则。 ## 可运行例题:平衡检查能发现什么、不能发现什么 下面两组分录都借贷相等,但只有第一组忠实表达“客户偿还旧欠款”。运行后比较输出。 ::pyodide --- code64: Y29ycmVjdF9lbnRyeSA9IFsKICAgICgi546w6YeRIiwgIuWAnyIsIDgwMDApLAogICAgKCLlupTmlLbotKbmrL4iLCAi6LS3IiwgODAwMCksCl0KCndyb25nX2J1dF9iYWxhbmNlZCA9IFsKICAgICgi546w6YeRIiwgIuWAnyIsIDgwMDApLAogICAgKCLplIDllK7mlLblhaUiLCAi6LS3IiwgODAwMCksCl0KCmRlZiBjaGVja19lbnRyeShuYW1lLCBsaW5lcyk6CiAgICBkZWJpdCA9IHN1bShhbW91bnQgZm9yIF8sIHNpZGUsIGFtb3VudCBpbiBsaW5lcyBpZiBzaWRlID09ICLlgJ8iKQogICAgY3JlZGl0ID0gc3VtKGFtb3VudCBmb3IgXywgc2lkZSwgYW1vdW50IGluIGxpbmVzIGlmIHNpZGUgPT0gIui0tyIpCiAgICBwcmludChmIntuYW1lfTog5YCf5pa5PXtkZWJpdDosfe+8jOi0t+aWuT17Y3JlZGl0Oix977yM5bmz6KGhPXtkZWJpdCA9PSBjcmVkaXR9IikKICAgIGZvciBhY2NvdW50LCBzaWRlLCBhbW91bnQgaW4gbGluZXM6CiAgICAgICAgcHJpbnQoZiIgIHtzaWRlfe+8mnthY2NvdW50fSB7YW1vdW50Oix9IikKCmNoZWNrX2VudHJ5KCLmraPnoa7liIblvZUiLCBjb3JyZWN0X2VudHJ5KQpjaGVja19lbnRyeSgi6ZSZ6K+v5L2G5bmz6KGh55qE5YiG5b2VIiwgd3JvbmdfYnV0X2JhbGFuY2VkKQ== layout: vertical locale: zh title: Python:分录平衡与业务含义 --- :: 程序能检查“借方合计 = 贷方合计”,但无法仅凭金额判断这笔现金是否属于新收入。\*\*试算平衡是算术证据,不是业务实质证据。\*\*还需要结合合同、发票和原始交易进行人工复核。 ## 常见错误 1. 先找借贷方向,后找账户类型。正确顺序相反:先分类再借贷。 2. 把“现金”当成业务性质。现金只是结算方式,不能决定收入/费用。 3. 把应收、应付当成收入、费用。它们是资产/负债。 4. 同一笔业务把两边都过到一个账户。这样分类账失去意义。 5. 不复核正常余额。正常余额是很强的自检工具。 ## 快速检查 1. 为什么“借方=增加”不对? 2. 收到客户还款 700 元,为什么不是收入? 3. 赊购存货 900 元,等式哪两边增加? 4. 写分录时,最稳的四步法是什么? ::legacy-spoiler{title="参考答案(点击展开)"} 1. 借贷方向取决于账户类型。资产增加记借,负债增加记贷;所以“借方=增加”只对资产/费用/提现成立。 2. 因为这只是把“应收账款(资产)”转回“现金(资产)”,不产生新的收入。 3. 从经济实质看,存货资产与应付负债同时增加。永续盘存制借记存货;定期盘存制先借记购货,再在期末确定销售成本和期末存货,不能把“购货账户”直接当作期末资产余额。 4. 写账户名 -> 分类 -> 判断增减 -> 按借贷规则编写分录,并核对借贷金额。 :: ## 下一章 本章解决“怎样记一笔分录”;下一章把多笔分录串成从凭证到报表的完整流程。继续读[会计循环](https://www.pengjiaxin.com/05-accounting-cycle)。 # 1.5 会计循环(Accounting Cycle) ## 本章回答什么 - 一笔业务怎样从原始凭证一路走到日记账、分类账、试算平衡表和财务报表? - 调整分录在会计循环的哪一步出现,为什么必须出现? - 在正式报表之前,哪些检查点最有助于发现错误? ## 学习目标 读完这一页后,你应该能够: - 按顺序说明会计循环的主要步骤及每一步的输出。 - 区分日记账、分类账、试算平衡表、调整分录和结转分录的作用。 - 在综合题中判断哪些项目需要期末调整,并把调整后的余额用于报表。 ## 业务场景 一家咖啡店月底发现:银行流水、销售系统、供应商发票和工资表都在不同地方。老板只想知道“这个月赚了多少”,但会计必须先把交易入账、过账、试算、调整,再编报表。会计循环就是把零散证据变成可信报表的工作流程。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 交易记录**。 - 建议先读[复式记账与借贷规则](https://www.pengjiaxin.com/04-double-entry-dr-cr)。 - 读完后可以接着进入[收入确认](https://www.pengjiaxin.com/../03-measurement-adjustments/07-revenue-recognition)。 会计循环说明一笔业务如何经过记录、汇总和调整,最终进入财务报表。综合题虽然资料较多,也可以按这一流程逐步完成。 ## 是什么 会计循环(Accounting Cycle)通常包含以下步骤: 1. 识别交易(Identify transactions) 2. 收集原始凭证(Source documents) 3. 编制分录(Journalize) 4. 过账到分类账(Post to ledger) 5. 编制未调整试算平衡(Unadjusted trial balance) 6. 期末调整分录(Adjusting entries) 7. 编制调整后试算平衡表(Adjusted trial balance) 8. 编制财务报表(Financial statements) 9. 结转分录(Closing entries) 10. 反向分录(Reversing entries,可选) ## 为什么重要 1. **综合题的“导航”**:按步骤整理资料,能更清楚地判断下一步要做什么。 2. **解释调整分录的存在**:权责发生制要求在期末补记或调整“属于本期”的收入和费用。 3. **把临时账户清零**:收入和费用按期间统计,结转后下期才能重新累计。 ## 怎么做(按步骤做题的写法) ### 1) 分录与过账:先记发生,再按账户汇总 - 日记账(Journal)按时间记录发生了什么。 - 分类账(Ledger)按账户汇总记录,反映各账户的余额及变动。 建议习惯: - 每写完一条分录,就检查“借贷是否相等”。 - 过账后看“正常余额”是否合理(现金通常借方,收入通常贷方)。 ### 2) 试算平衡:只检查算术,不保证正确 未调整试算平衡表的作用是检查借贷总额是否相等。 注意:试算平衡表平衡,并不代表没有错(例如分类错、漏记、对记错账户等仍可能平衡)。 ### 3) 调整分录:把“属于本期”的补齐 期末调整(Adjusting Entries)通常来自以下类型: | 类型 | 典型例子 | 核心逻辑 | | ------------ | ------------- | -------- | | 应计(Accrual) | 应计工资、应计利息 | 先发生后收付 | | 递延(Deferral) | 预付租金、预收收入 | 先收付后发生 | | 折旧/摊销 | 固定资产折旧、无形资产摊销 | 成本按受益期分摊 | | 坏账与准备 | 坏账准备/预期信用损失 | 审慎反映收回风险 | | 存货与结转 | 期末存货、销售成本 | 配比与期间划分 | 编制报表时,应使用调整后的试算平衡(Adjusted trial balance)中的余额。 ### 4) 编制报表:先利润表,再权益,再资产负债表 常用顺序: 1. 利润表(Income Statement) 2. 所有者权益变动(SOCE 或资本/留存收益变动) 3. 资产负债表(Statement of Financial Position) 4. 现金流量表(Statement of Cash Flows) 理由:利润会更新权益,权益再出现在资产负债表里。 ### 5) 结转与反向:让下期干净开始 - 结转分录(Closing Entries):把收入、费用等临时账户结转到留存收益/资本,临时账户归零。 - 反向分录(Reversing Entries,可选):把部分期末调整反向,便于下期日常记账(常见于应计项目)。 ## 课堂例题:从未调整余额到调整分录 **资料**:12 月末,未调整试算平衡中“预付保险”余额为 12,000 元。保险覆盖 12 个月,自 10 月 1 日开始。到 12 月 31 日已有 3 个月受益。 | 项目 | 计算 | | ----------- | ------------------: | | 每月保险费 | 12,000 / 12 = 1,000 | | 已使用月份 | 3 | | 本期应确认保险费用 | 3,000 | | 期末仍为资产的预付保险 | 9,000 | 调整分录: | 借方 | 金额 | 贷方 | 金额 | | --- | ----: | ---- | ----: | | 保险费 | 3,000 | 预付保险 | 3,000 | 调整后的余额才进入报表:利润表列示保险费 3,000;资产负债表列示预付保险 9,000。 ### 一份工作底稿要留下什么 将这项调整编号为 W1,保留“保险合同期间 → 三个月计算 → 借贷分录 → 调整后余额”的记录。后续复核者应能从报表金额倒查到依据,而不是只看到答案。 | 账户 | 未调整余额 | W1 调整 | 调整后余额 | 报表去向 | | ---- | -------: | ------: | ------: | ---------- | | 预付保险 | 借 12,000 | 贷 3,000 | 借 9,000 | 资产负债表:流动资产 | | 保险费 | 0 | 借 3,000 | 借 3,000 | 利润表:费用 | 与调整前相比,资产减少 3,000,利润减少 3,000,期末权益因此也减少 3,000,现金则没有变化。调整有明确的业务依据,会计等式也仍然平衡,并非“为了平衡而补一个数字”。 还要区分**本期发生额**与**期末余额**:若累计折旧期初为贷方 4,000,本期计提 1,000,则本期折旧费用为 1,000,期末累计折旧为 5,000。不能把 5,000 全部列成本期费用,也不能只在资产负债表扣除本期的 1,000。 ### 从局部例题进入完整报表 完成全部调整后,重新汇总每个账户,而不是把“未调整试算平衡表”和“调整分录”分别当成两套报表数据。收入、费用进入利润计算;资产、负债和更新后的权益进入财务状况表。利润通过权益结转一次,不能另作为一项资产再加进去。 [调整分录到财务报表](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements)提供了一套完整的未调整余额和期末调整资料。请先独立完成 W1—W5,再核对调整后试算平衡、利润和期末资本。案例没有提供完整的历史现金变动资料,因此无法据此编制现金流量表。同样,只有部分交易记录时,也无法确定企业全部的期末余额。 ## 常见错误 1. 把“调整分录”当成普通交易。调整分录是为期末报表而做的期间校正。 2. 试算平衡平衡就停止检查。分类错也可能平衡。 3. 编报表顺序乱。利润不更新权益会导致后续报表不连贯。 4. 结转方向写反:收入结转通常是“借收入贷留存收益”,费用相反。 ## 快速检查 1. 为什么需要期末调整分录? 2. 未调整试算平衡表能证明“没有错误”吗? 3. 为什么报表编制通常先做利润表? 4. 结转分录的目的是什么? ::legacy-spoiler{title="参考答案(点击展开)"} 1. 因为权责发生制要求把属于本期的收入费用确认到本期,即使现金收付在其他期间。 2. 不能。它只检查借贷算术是否平衡,分类错、漏记、对记错账户等可能仍然平衡。 3. 因为利润先计算出来,才能更新留存收益/资本,再进入资产负债表。 4. 把临时账户(收入、费用、分配等)归零,并把本期经营成果累计到权益相关账户,便于下期重新统计。 :: ## 下一章 本章完成“交易到报表”的流程;下一章开始处理最核心的计量问题:收入何时、按多少确认。继续读[收入确认](https://www.pengjiaxin.com/../03-measurement-adjustments/07-revenue-recognition)。 # 2. 交易记录 []{#_2-交易记录} 这个模块把基础逻辑变成真正能落地的记账方法。前一模块回答“业务影响什么”,这里进一步回答“这种影响怎样进入账簿,并怎样被汇总成余额”。 交易记录是后续计量、报表和分析的入口。如果原始分类错了,后面即使试算平衡,也可能只是把错误整齐地带进报表。 ## 这个模块回答什么 - 借贷规则在实务上怎么用? - 日记账怎样进入分类账和 T 账户? - 会计循环怎样把原始业务串到试算平衡和报表准备阶段? ## 讲义内容 | 讲义 | 重点 | | -------------------------------------------------------------------------------------- | ------------------------ | | [复式记账与借贷规则](https://www.pengjiaxin.com/04-double-entry-dr-cr) | 稳定写出正确分录的方法 | | [会计循环](https://www.pengjiaxin.com/05-accounting-cycle) | 分录、过账、试算平衡、调整和报表之间的连接 | | [从期末调整到完整报表](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements) | 独立完成定期盘存案例,核对调整后试算平衡表与报表 | ## 学完应能做到 - 先判断账户性质,再决定借方或贷方,而不是机械套规则。 - 把简单业务写成日记账分录,并说明每一边为什么成立。 - 用 T 账户追踪分录如何影响账户余额。 - 解释从分录、过账、试算平衡到调整前余额的流程。 - 看出“借贷相等”只能说明记录形式平衡,不能自动说明经济分类正确。 ## 要特别注意 - T 账户属于这个模块,因为它是“分录”和“余额”之间的桥。 - 初学者最容易把现金流向误当成收入或费用性质。 ## 常见误区 - 还没分类账户就先找借贷方向。 - 把一笔业务两边都记进错误账户。 - 把收到现金直接当收入,把付出现金直接当费用。 ::tip{title="练习建议"} 做分录题时按三步写在纸上:业务事实、账户变化、借贷方向。不要直接从题目关键词跳到借贷分录。 :: ## 下一步 进入 [3. 计量与调整](https://www.pengjiaxin.com/../03-measurement-adjustments/) 后,你会看到很多期末问题:账已经记了,但金额和期间还需要进一步修正。 # 2.2 收入确认(Revenue Recognition, IFRS 15/ASC 606) ## 本章回答什么 - 企业在什么时点才算真正赚到了收入? - 履约义务和时间点判断会怎样影响收入确认? - 为什么提前确认收入是最常见的报表失真来源之一? ## 学习目标 读完这一页后,你应该能够: - 按 IFRS 15/ASC 606 的五步法拆解客户合同。 - 区分单项履约义务、交易价格、可变对价和收入确认时点。 - 为常见销售合同写出收入确认分录,并解释提前确认收入的风险。 ## 业务场景 一家软件公司一次性收取客户 120,000 元,合同包含软件许可、安装服务和 12 个月维护。销售团队希望签约当月全部确认为收入,但会计必须判断每项承诺是否已履行。收入确认不是“收到钱就入收入”,而是把合同对价分配给已经转移给客户的商品或服务。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 计量与调整**。 - 建议先读[会计循环](https://www.pengjiaxin.com/../02-recording-transactions/05-accounting-cycle)。 - 读完后可以接着进入[存货](https://www.pengjiaxin.com/08-inventory)。 收入确认是会计核算中的一个核心环节,它决定了企业何时以及如何将经济利益流入确认为收入。国际财务报告准则(IFRS)中的IFRS 15《客户合同收入》和美国公认会计原则(US GAAP)中的ASC 606《客户合同收入》提供了统一的五步法模型。 ## 2.2.1 收入确认五步法 该模型旨在确保企业在向客户转让承诺的商品或服务以换取企业预期有权获得的对价时确认收入。 1. **识别与客户订立的合同(Identify the contract(s) with a customer)** - **解释**:合同是企业与客户之间具有法律约束力的协议。识别合同是收入确认的第一步,需要满足特定条件,如合同各方已批准、各方权利可识别、付款条款可识别、合同具有商业实质、企业很可能收回因转让商品或服务而有权获得的对价。 - **例子**:一家软件公司与客户签订了一份为期三年的软件许可和维护服务协议。这份协议就是一份合同。 2. **识别合同中的单项履约义务(Identify the separate performance obligations in the contract)** - **解释**:履约义务是企业向客户转让可明确区分的商品或服务的承诺。如果商品或服务是可明确区分的(即客户可以单独受益,且商品或服务在合同背景下可与合同中的其他承诺区分开),则应作为单项履约义务。 - **例子**:上述软件协议中,软件许可和维护服务是两个可明确区分的履约义务,因为客户可以单独使用软件,也可以单独购买维护服务。 3. **确定交易价格(Determine the transaction price)** - **解释**:交易价格是企业预期因向客户转让承诺的商品或服务而有权获得的对价金额。交易价格可能包括固定金额、可变对价(如折扣、回扣、绩效奖金、退货权等)以及非现金对价。 - **例子**:软件许可费是固定的10,000元,但如果客户在一年内续约,可获得500元的折扣。这500元折扣就是可变对价。 4. **将交易价格分摊至各单项履约义务(Allocate the transaction price to the separate performance obligations)** - **解释**:如果合同包含多项履约义务,企业需要根据各项履约义务的单独售价(Stand-alone Selling Price)比例,将交易价格分摊到每一项履约义务。如果无法直接观察到单独售价,则需要进行估计。 - **例子**:软件许可的单独售价是8,000元,维护服务的单独售价是3,000元。总交易价格10,000元(假设无折扣)。则按比例分摊:软件许可分摊 (8000/(8000+3000)) \* 10000 = 7272.73元;维护服务分摊 (3000/(8000+3000)) \* 10000 = 2727.27元。 5. **在企业履行履约义务时确认收入(Recognize revenue when (or as) the entity satisfies a performance obligation)** - **解释**:企业在履行履约义务时(或随着履约义务的履行)确认收入。这可能是在某一时点(At a point in time)完成,例如商品销售;也可能是在一段时间内(Over time)完成,例如提供服务。 - **例子**:软件许可通常在交付时(某一时点)确认收入;维护服务则在服务期内(一段时间内)按直线法或其他合理方法确认收入。 ## 2.2.2 示例(带可变对价) **情境**:一家公司与客户签订了一份合同,销售一套设备,合同价为10,000元。合同中包含一项条款:如果客户在未来六个月内购买了公司的其他产品,将获得500元的销量折扣。公司根据历史经验和市场情况,预计客户有80%的可能性会满足折扣条件。 **分析**: 1. **识别合同**:存在一份有效的销售合同。 2. **识别履约义务**:销售设备是唯一的履约义务。 3. **确定交易价格**: - 合同价是10,000元。 - 存在可变对价:500元的销量折扣。 - 公司需要估计可变对价。根据80%的可能性获得折扣,公司预计将提供500元的折扣。 - **按概率加权法**:预计交易价格 = (10,000 - 500) \* 80% + 10,000 \* 20% = 9,500 \* 0.8 + 10,000 \* 0.2 = 7,600 + 2,000 = 9,600元。 - **约束可变对价(Constraint)**:在确认可变对价时,企业需要评估是否存在重大逆转的可能性。如果未来折扣条件不满足,导致已确认收入被冲回的可能性很高,则应限制确认收入。在本例中,如果公司对80%的估计非常有信心,且认为未来不会发生重大逆转,则可以按9,600元确认收入。 4. **分摊交易价格**:由于只有一个履约义务(销售设备),交易价格9,600元全部归属于销售设备。 5. **确认收入**:设备交付给客户时(某一时点),确认9,600元的收入。 **分录示例**: 假设设备已交付,公司预计客户将获得折扣: | 借方 | 金额 | 贷方 | 金额 | | ---- | ----: | ------ | ----: | | 应收账款 | 9,600 | 主营业务收入 | 9,600 | 如果期末重新评估,客户最终没有满足折扣条件,公司将调整收入: | 借方 | 金额 | 贷方 | 金额 | | ---- | --: | ------ | --: | | 应收账款 | 400 | 主营业务收入 | 400 | 这个例子说明了在存在可变对价时,企业需要进行估计和判断,并持续更新这些估计,以确保收入的准确确认。 ## 可运行例题:把捆绑合同分到三个履约义务 回到开头的软件合同。假设许可、安装和维护在本案例中都可明确区分,独立售价分别为 80,000、20,000 和 40,000 元,合同总价为 120,000 元。到第一个月末,许可已交付、安装已完成,维护完成了 1/12。 ::pyodide --- code64: dHJhbnNhY3Rpb25fcHJpY2UgPSAxMjBfMDAwCm9ibGlnYXRpb25zID0gWwogICAgeyJuYW1lIjogIui9r+S7tuiuuOWPryIsICJzc3AiOiA4MF8wMDAsICJwcm9ncmVzcyI6IDEuMH0sCiAgICB7Im5hbWUiOiAi5a6J6KOF5pyN5YqhIiwgInNzcCI6IDIwXzAwMCwgInByb2dyZXNzIjogMS4wfSwKICAgIHsibmFtZSI6ICIxMuS4quaciOe7tOaKpCIsICJzc3AiOiA0MF8wMDAsICJwcm9ncmVzcyI6IDEgLyAxMn0sCl0KCnRvdGFsX3NzcCA9IHN1bShpdGVtWyJzc3AiXSBmb3IgaXRlbSBpbiBvYmxpZ2F0aW9ucykKcmVjb2duaXplZCA9IDAuMApmb3IgaXRlbSBpbiBvYmxpZ2F0aW9uczoKICAgIGFsbG9jYXRpb24gPSB0cmFuc2FjdGlvbl9wcmljZSAqIGl0ZW1bInNzcCJdIC8gdG90YWxfc3NwCiAgICByZXZlbnVlID0gYWxsb2NhdGlvbiAqIGl0ZW1bInByb2dyZXNzIl0KICAgIHJlY29nbml6ZWQgKz0gcmV2ZW51ZQogICAgcHJpbnQoCiAgICAgICAgZiJ7aXRlbVsnbmFtZSddfTog5YiG5pGKIHthbGxvY2F0aW9uOiwuMmZ977yMIgogICAgICAgIGYi5pys5pyI57Sv6K6h56Gu6K6kIHtyZXZlbnVlOiwuMmZ9IgogICAgKQoKY29udHJhY3RfbGlhYmlsaXR5ID0gdHJhbnNhY3Rpb25fcHJpY2UgLSByZWNvZ25pemVkCnByaW50KGYi57Sv6K6h5pS25YWl77yae3JlY29nbml6ZWQ6LC4yZn0iKQpwcmludChmIuWwmuacquWxpee6pumDqOWIhu+8iOWQiOWQjOi0n+WAuu+8ie+8mntjb250cmFjdF9saWFiaWxpdHk6LC4yZn0iKQphc3NlcnQgYWJzKHN1bSh0cmFuc2FjdGlvbl9wcmljZSAqIHhbInNzcCJdIC8gdG90YWxfc3NwIGZvciB4IGluIG9ibGlnYXRpb25zKSAtIHRyYW5zYWN0aW9uX3ByaWNlKSA8IDAuMDE= layout: vertical locale: zh title: Python:IFRS 15 / ASC 606 相对独立售价分摊 --- :: 这里的比例分摊是机械步骤;“承诺是否可明确区分”和“进度怎样衡量”仍是合同判断。若安装服务会重大修改软件,履约义务划分可能不同,不能直接照搬这组数字。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 收入是利润表中最关键、最敏感的项目之一,也是舞弊和监管关注的高发领域。理解收入确认五步法,是现代会计准则的核心要求。 - **这一节的知识有什么用?** - 能够分析复杂合同(多元素捆绑销售、可变对价、退货权、主要-代理等),判断何时、按什么金额确认收入。 - 在考试中,经常会考案例题:给出合同条款,让你识别履约义务、分摊交易价格,并计算各期确认的收入。 - **在题目或工作中怎么用?** - 解题/实务的标准流程: 1. 识别合同和履约义务(一步步对应IFRS 15五步法); 2. 判断企业是主要责任人还是代理人; 3. 识别固定对价与可变对价,估计并约束可变部分; 4. 按独立售价分摊交易价格,确定每个履约义务的收入; 5. 根据“在某一时点”还是“在一段时间内”确认收入。 - **用好了会得到什么结果?** - 面对长篇合同题能有条不紊地拆解,不会被细节吓倒。 - 阅读公司年报时,能看懂其收入确认政策,判断收入质量和潜在盈余管理空间。 ## 常见错误 - 把收款日当作收入确认日,忽略企业是否已经履约。 - 把捆绑销售当作单一收入项目,漏分摊软件、服务、维护等履约义务。 - 对可变对价只算“期望值”,不考虑重大转回风险的约束。 - 忽略主要责任人/代理人判断,导致收入按总额或净额列报错误。 ## 快速检查 1. 五步法中,为什么要先识别单项履约义务? 2. 客户预付现金但企业尚未提供服务时,应确认收入还是负债? 3. 可变对价为什么需要“约束”? ::legacy-spoiler{title="参考答案"} 1. 因为交易价格要分摊到不同履约义务,收入也要按各义务履行进度确认。 2. 通常先确认合同负债/预收收入,等履约后再转为收入。 3. 为避免后续不确定事项导致已确认收入发生重大冲回。 :: ## 下一章 本章解决“何时确认收入”;下一章处理收入确认后与毛利直接相关的存货和销售成本。继续读[存货](https://www.pengjiaxin.com/08-inventory)。 # 2.3 存货(Inventory)与成本流转 ## 本章回答什么 - 存货是怎样进入销售成本和毛利计算的? - 先进先出法、加权平均法等成本流转假设有什么差别? - 在什么情况下,存货需要按低于成本的金额计量? ## 学习目标 读完这一页后,你应该能够: - 计算 FIFO 和加权平均法下的销售成本、期末存货和毛利。 - 区分永续盘存制和定期盘存制的记录逻辑。 - 判断存货是否需要按成本与可变现净值孰低计量,并写出跌价分录。 ## 业务场景 一家零售商在物价上涨期间进货三批,月底销售一部分商品。老板看到毛利下降,想知道是销售价格问题,还是成本流转方法和存货跌价造成的。存货会计把采购、销售成本、期末资产和毛利连接在一起,因此是分析零售和制造企业利润质量的核心。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 计量与调整**。 - 建议先读[收入确认](https://www.pengjiaxin.com/07-revenue-recognition)。 - 读完后可以接着进入[应收账款](https://www.pengjiaxin.com/09-receivables)。 存货是企业在日常活动中持有以备出售的商品、处于生产过程中的在产品、或在生产过程或提供劳务过程中耗用的材料和物料等。存货的成本流转方法和期末计量对企业的利润和资产价值有重要影响。 ## 2.3.1 存货成本流转方法 存货成本流转方法决定了销售成本(COGS)和期末存货的价值。 - **先进先出法(First-In, First-Out, FIFO)** - **解释**:假设最先购入的存货最先售出。期末存货的成本由最近购入的存货构成。在物价上涨时,FIFO法会导致较高的期末存货价值和较低的销售成本,从而产生较高的毛利和净利润。 - **适用性**:IFRS和US GAAP均允许使用。 - **后进先出法(Last-In, First-Out, LIFO)** - **解释**:假设最后购入的存货最先售出。期末存货的成本由最先购入的存货构成。在物价上涨时,LIFO法会导致较低的期末存货价值和较高的销售成本,从而产生较低的毛利和净利润,以及较低的税负。 - **适用性**:US GAAP允许使用,但**IFRS禁止使用LIFO法**。 - **加权平均法(Weighted-Average, WA)** - **解释**:假设所有可供销售的存货成本是平均的。销售成本和期末存货的价值都基于加权平均单位成本计算。 - **适用性**:IFRS和US GAAP均允许使用。 ## 2.3.2 存货盘存制度 - **永续盘存制(Perpetual Inventory System)** - **解释**:每次存货发生变动(购入或售出)时,都实时更新存货账户和销售成本账户。企业可以随时了解存货的实时数量和成本。 - **特点**:需要更详细的记录,通常通过条形码扫描和计算机系统实现。 - **定期盘存制(Periodic Inventory System)** - **解释**:在会计期末才进行实物盘点,确定期末存货数量,然后通过公式计算销售成本和期末存货。 - **公式**:期初存货 + 本期购货 - 期末存货 = 销售成本。 - **特点**:记录相对简单,但无法实时了解存货情况。 ## 2.3.3 期末计量:成本与可变现净值孰低(LCNRV) - **解释**:根据会计谨慎性原则,存货在期末应按成本与可变现净值(Net Realizable Value, NRV)孰低计量。如果存货的可变现净值低于其成本,则应计提存货跌价准备,将存货账面价值减记至可变现净值。 - **可变现净值(NRV)** = 预计售价 - 预计销售费用 - 预计完工成本。 - **US GAAP**:对于LIFO和加权平均法,使用“成本与重置成本孰低”(Lower of Cost or Market, LCM),其中“市场”通常指重置成本,但有上限(NRV)和下限(NRV减正常利润)。对于FIFO和特定识别法,使用LCNRV。 - **IFRS**:统一使用LCNRV。 ## 2.3.4 数值示例(FIFO vs. WA) 假设某公司存货数据如下: - **期初存货**:100件,每件成本10元,总成本1,000元。 - **本期购货**:100件,每件成本12元,总成本1,200元。 - **本期售出**:150件。 **1. 先进先出法(FIFO)** - **销售成本(COGS)**: - 先售出期初的100件 @ 10元 = 100 \* 10 = 1,000元 - 再售出本期购货的50件 @ 12元 = 50 \* 12 = 600元 - **总COGS = 1,000 + 600 = 1,600元** - **期末存货**: - 剩余的50件来自本期购货 @ 12元 = 50 \* 12 = 600元 - **期末存货 = 600元** **2. 加权平均法(Weighted-Average, WA)** - **可供销售存货总成本** = 期初存货成本 + 本期购货成本 = 1,000 + 1,200 = 2,200元 - **可供销售存货总数量** = 期初存货数量 + 本期购货数量 = 100 + 100 = 200件 - **加权平均单位成本** = 总成本 / 总数量 = 2,200 / 200 = 11元/件 - **销售成本(COGS)**: - 售出150件 @ 11元 = 150 \* 11 = 1,650元 - **总COGS = 1,650元** - **期末存货**: - 剩余50件 @ 11元 = 50 \* 11 = 550元 - **期末存货 = 550元** **对比总结**: | 项目 | FIFO法 | WA法 | | :--------------- | :----- | :----- | | 销售成本 | 1,600元 | 1,650元 | | 期末存货 | 600元 | 550元 | | 毛利(假设销售收入2,000元) | 400元 | 350元 | 从上述例子可以看出,在物价上涨(期初10元/件,购货12元/件)的情况下,FIFO法会产生较低的销售成本和较高的期末存货,从而导致较高的毛利。这对于分析企业盈利能力和资产价值具有重要意义。 ## 可运行例题:成本流转必须守恒 改变采购批次或销量,观察 FIFO 与定期加权平均的销售成本。最后两行检查同一条守恒关系:销售成本加期末存货必须等于可供销售商品成本。 ::pyodide --- code64: bGF5ZXJzID0gWygxMDAsIDEwLjApLCAoMTAwLCAxMi4wKV0gICMgKOaVsOmHjywg5Y2V5L2N5oiQ5pysKQp1bml0c19zb2xkID0gMTUwCnNhbGVzX3JldmVudWUgPSAyXzAwMC4wCgpkZWYgZmlmb19jb3N0KGxheWVycywgcXVhbnRpdHkpOgogICAgcmVtYWluaW5nX3RvX3NlbGwgPSBxdWFudGl0eQogICAgY29ncyA9IDAuMAogICAgZW5kaW5nX2xheWVycyA9IFtdCiAgICBmb3IgdW5pdHMsIHVuaXRfY29zdCBpbiBsYXllcnM6CiAgICAgICAgc29sZCA9IG1pbih1bml0cywgcmVtYWluaW5nX3RvX3NlbGwpCiAgICAgICAgY29ncyArPSBzb2xkICogdW5pdF9jb3N0CiAgICAgICAgcmVtYWluaW5nX3RvX3NlbGwgLT0gc29sZAogICAgICAgIGlmIHVuaXRzID4gc29sZDoKICAgICAgICAgICAgZW5kaW5nX2xheWVycy5hcHBlbmQoKHVuaXRzIC0gc29sZCwgdW5pdF9jb3N0KSkKICAgIGlmIHJlbWFpbmluZ190b19zZWxsOgogICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIumUgOmHj+i2hei/h+WPr+S+m+mUgOWUruaVsOmHjyIpCiAgICBlbmRpbmcgPSBzdW0odW5pdHMgKiBjb3N0IGZvciB1bml0cywgY29zdCBpbiBlbmRpbmdfbGF5ZXJzKQogICAgcmV0dXJuIGNvZ3MsIGVuZGluZwoKdG90YWxfdW5pdHMgPSBzdW0odW5pdHMgZm9yIHVuaXRzLCBfIGluIGxheWVycykKdG90YWxfY29zdCA9IHN1bSh1bml0cyAqIGNvc3QgZm9yIHVuaXRzLCBjb3N0IGluIGxheWVycykKZmlmb19jb2dzLCBmaWZvX2VuZGluZyA9IGZpZm9fY29zdChsYXllcnMsIHVuaXRzX3NvbGQpCmF2ZXJhZ2VfY29zdCA9IHRvdGFsX2Nvc3QgLyB0b3RhbF91bml0cwp3YV9jb2dzID0gdW5pdHNfc29sZCAqIGF2ZXJhZ2VfY29zdAp3YV9lbmRpbmcgPSAodG90YWxfdW5pdHMgLSB1bml0c19zb2xkKSAqIGF2ZXJhZ2VfY29zdAoKZm9yIG1ldGhvZCwgY29ncywgZW5kaW5nIGluIFsKICAgICgiRklGTyIsIGZpZm9fY29ncywgZmlmb19lbmRpbmcpLAogICAgKCLliqDmnYPlubPlnYciLCB3YV9jb2dzLCB3YV9lbmRpbmcpLApdOgogICAgcHJpbnQoZiJ7bWV0aG9kfTogQ09HUz17Y29nczosLjBmfe+8jOacn+acq+WtmOi0pz17ZW5kaW5nOiwuMGZ977yM5q+b5YipPXtzYWxlc19yZXZlbnVlLWNvZ3M6LC4wZn0iKQogICAgYXNzZXJ0IGFicyhjb2dzICsgZW5kaW5nIC0gdG90YWxfY29zdCkgPCAxZS05 layout: vertical locale: zh title: Python:FIFO 与加权平均成本流转 --- :: 方法改变的是**哪一层成本进入当期**,不是凭空创造利润。若程序中 `COGS + 期末存货` 对不上总成本,应先查数量流转,而不是继续算毛利率。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 存货是很多企业(尤其是制造业、零售业)的核心资产之一,其计价方法直接影响销售成本、毛利和资产负债表中的存货金额。 - **这一节的知识有什么用?** - 能够比较不同成本流转假设(FIFO、加权平均等)对利润和资产的影响,理解为什么同一企业在不同期间或不同企业之间利润水平可能不可简单比较。 - 掌握LCNRV等减值规则,有助于判断存货是否被高估,以及相关会计估计的稳健性。 - **在题目或工作中怎么用?** - 做题时: - 先画出数量和单价的“时间线”,再按所给方法计算期末存货和销售成本; - 注意区分“永续盘存制”和“定期盘存制”的计算差异。 - 实务中:分析企业毛利率变化时,结合存货计价方法、存货跌价准备、周转率等因素综合判断,而不是只看单一指标。 - **用好了会得到什么结果?** - 能够快速、准确地算出各种存货方法下的COGS和期末存货,避免在计算题上丢基础分。 - 读报表或做研究时,能识别存货计价选择对利润和资产的影响,避免被表面数字误导。 ## 常见错误 - 只算期末存货,忘记销售成本和毛利也会同步变化。 - 在 IFRS 题目中使用 LIFO。IFRS 不允许 LIFO。 - 把永续盘存制和定期盘存制的加权平均算法混在一起。 - 做 LCNRV 时只比较售价和成本,忘记扣除销售费用和完工成本。 ## 快速检查 1. 物价上涨时,FIFO 通常会让销售成本更高还是更低? 2. 定期盘存制下销售成本的基本公式是什么? 3. 可变现净值低于成本时,应如何处理? ::legacy-spoiler{title="参考答案"} 1. 更低,因为先售出较早、较低成本的存货。 2. 期初存货 + 本期购货 - 期末存货 = 销售成本。 3. 将存货减记至可变现净值,确认跌价损失或存货跌价准备。 :: ## 下一章 本章把收入连接到销售成本和存货;下一章继续看赊销后应收账款是否能够收回。继续读[应收账款](https://www.pengjiaxin.com/09-receivables)。 # 2.4 应收与坏账(Receivables & Bad Debts) ## 本章回答什么 - 为什么应收账款总额不等于最终能收回的金额? - 坏账准备法怎样把坏账费用与产生销售的期间对应起来? - 计提准备和核销具体账款之间有什么本质区别? ## 学习目标 读完这一页后,你应该能够: - 区分直接转销法和备抵法,并解释备抵法为什么更符合配比原则。 - 计算坏账准备目标余额、本期坏账费用和应收账款净额。 - 写出计提坏账、核销坏账和已核销款项收回的分录。 ## 业务场景 一家批发商本年赊销增长很快,利润表显示收入大幅上升,但现金回款滞后,应收账款账龄也变长。投资者需要判断这些收入能否转化成现金。坏账准备不是“悲观处理”,而是用会计估计把信用风险及时反映在资产和利润中。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 计量与调整**。 - 建议先读[存货](https://www.pengjiaxin.com/08-inventory)。 - 读完后可以接着进入[固定资产](https://www.pengjiaxin.com/10-ppe)。 应收账款(Accounts Receivable, AR)是企业因销售商品或提供服务而应向客户收取的款项。由于客户可能无法按时或全额支付,企业需要对应收账款的可收回性进行评估,并计提坏账准备。 ## 2.4.1 坏账核算方法 坏账的核算主要有两种方法:直接转销法(Direct Write-off Method)和备抵法(Allowance Method)。由于直接转销法不符合权责发生制和匹配原则,通常只在坏账金额不重大时使用。备抵法是主流的坏账核算方法。 - **备抵法(Allowance Method)** - **解释**:备抵法在应收账款可能无法收回的期间(通常是销售发生的期间)估计坏账损失,并计提坏账准备。这符合匹配原则,将坏账损失与相关收入在同一期间确认。 - **优点**:符合权责发生制和匹配原则,更准确地反映了企业的财务状况和经营成果。 - **两种主要估计方法**: 1. **应收账款余额百分比法(Percentage of Accounts Receivable Method)** - **解释**:根据期末应收账款余额的一定百分比来估计坏账准备的期末余额。这个百分比通常基于历史经验、行业惯例和对未来经济状况的预测。 - **步骤**: - 计算目标坏账准备余额 = 期末应收账款余额 × 估计坏账率。 - 计算本期应计提的坏账费用 = 目标坏账准备余额 - 坏账准备账户期初贷方余额(或 + 期初借方余额)。 - **例子**: - 期末应收账款余额:50,000元 - 预计坏账率:5% - 坏账准备账户期初贷方余额:1,000元 - **目标坏账准备余额** = 50,000元 × 5% = 2,500元 - **本期应计提坏账费用** = 目标坏账准备余额 (2,500元) - 坏账准备期初贷方余额 (1,000元) = 1,500元 - **分录**: | 借方 | 金额 | 贷方 | 金额 | | ---- | ----: | ---- | ----: | | 坏账费用 | 1,500 | 坏账准备 | 1,500 | - **解释**:这笔分录增加了坏账费用,减少了当期利润,同时增加了坏账准备(资产的备抵账户),使应收账款的净值更接近可收回金额。 2. **销售额百分比法(Percentage of Credit Sales Method)** - **解释**:根据本期赊销收入的一定百分比来估计本期应计提的坏账费用。这种方法侧重于利润表,直接估计当期坏账费用。 - **步骤**: - 计算本期应计提的坏账费用 = 本期赊销收入 × 估计坏账率。 - 坏账准备账户的期末余额将是期初余额加上本期计提的费用。 - **例子**: - 本期赊销收入:100,000元 - 预计坏账率:1% - **本期应计提坏账费用** = 100,000元 × 1% = 1,000元 - **分录**: | 借方 | 金额 | 贷方 | 金额 | | ---- | ----: | ---- | ----: | | 坏账费用 | 1,000 | 坏账准备 | 1,000 | - **解释**:与应收账款余额百分比法不同,销售额百分比法直接计算当期费用,不考虑坏账准备账户的期初余额。 ## 2.4.2 实际发生坏账时的处理 当确定某笔应收账款确实无法收回时,需要将其从应收账款中核销。 - **分录**: ```text 借:坏账准备 Allowance for Doubtful Accounts XXX 贷:应收账款 Accounts Receivable XXX ``` - **解释**:核销坏账时,减少坏账准备(借方),同时减少应收账款(贷方)。这笔分录不影响当期利润,因为坏账损失已在之前计提准备时确认。它只影响资产负债表中的应收账款净值(应收账款总额减坏账准备)。 ## 2.4.3 坏账的收回 如果已核销的坏账后来又收回了,需要做两笔分录: 1. **恢复已核销的应收账款**: ```text 借:应收账款 Accounts Receivable XXX 贷:坏账准备 Allowance for Doubtful Accounts XXX ``` 2. **记录现金收回**: ```text 借:现金 Cash XXX 贷:应收账款 Accounts Receivable XXX ``` - **解释**:第一笔分录恢复了应收账款和坏账准备,第二笔分录记录了现金的实际收回。这两笔分录同样不影响当期利润。 ## 2.4.4 IFRS 9下的预期信用损失模型(ECL) - **解释**:IFRS 9要求企业采用预期信用损失模型(ECL)来计量金融资产的减值。该模型要求企业在每个报告期末评估金融工具的信用风险,并根据信用风险的变化,确认12个月预期信用损失或全生命周期预期信用损失。 - **影响**:ECL模型比传统的“已发生损失模型”更具前瞻性,要求企业在信用风险增加时更早地确认减值损失。 理解应收账款和坏账的处理对于评估企业的资产质量和盈利能力至关重要。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 应收账款通常是资产负债表中的重要项目,其质量直接关系到企业的现金回收和坏账风险。 - **这一节的知识有什么用?** - 能够区分不同的坏账计提方法(备抵法、直接冲销法)及其对报表的影响。 - 理解预期信用损失模型,有助于分析企业是否充分反映了信用风险,避免资产和利润被系统性高估。 - **在题目或工作中怎么用?** - 做题时: - 先区分会计估计变更与会计政策变更; - 按题目给出的逾期情况或信用评级,计算ECL或坏账准备调整额,写出相应分录。 - 实务中:结合应收账款账龄分析、坏账准备覆盖率和ECL假设,评估企业收入质量和风险偏好。 - **用好了会得到什么结果?** - 能够系统地分析“账上有收入但没有现金”的情况,判断利润含金量。 - 在分析企业时,更关注资产质量而不仅仅是账面利润,提升风险识别能力。 ## 常见错误 - 把“坏账费用”和“坏账准备”混为一个账户。前者是费用,后者是资产的备抵账户。 - 用目标坏账准备余额直接当作本期费用,忘记扣除已有准备余额。 - 核销具体客户欠款时再次确认费用。备抵法下费用通常已在计提时确认。 - 只看应收账款总额,不看账龄、准备覆盖率和期后回款。 ## 快速检查 1. 为什么坏账准备是备抵账户而不是负债? 2. 目标坏账准备为 2,500,现有贷方余额为 1,000,本期费用是多少? 3. 核销一笔已计提准备的坏账是否影响当期利润? ::legacy-spoiler{title="参考答案"} 1. 因为它抵减应收账款的可收回金额,不代表企业欠外部的义务。 2. 1,500。 3. 通常不影响;核销借记坏账准备、贷记应收账款。 :: ## 下一章 本章关注赊销的收款风险;下一章进入长期资产的成本资本化、折旧和处置。继续读[固定资产](https://www.pengjiaxin.com/10-ppe)。 # 2.5 固定资产(PPE)与折旧(Depreciation) ## 本章回答什么 - 什么项目应当被确认为固定资产? - 折旧和处置会怎样影响账面价值和利润? - 为什么固定资产会计的核心是成本分配和计量,而不是随意估计市价? ## 学习目标 读完这一页后,你应该能够: - 判断哪些支出应资本化为固定资产成本,哪些应费用化。 - 计算直线法、加速法或产量法折旧,并解释累计折旧的作用。 - 计算资产处置损益,并写出清理固定资产的分录。 ## 业务场景 制造企业购买一台新机器,除购买价外还支付运输、安装、试运行和员工培训费用。管理层想把所有现金支出都计入资产,降低当期费用。会计需要判断哪些支出使机器达到预定可使用状态,哪些只是日常培训或维护。固定资产会计的关键是资本化边界和后续成本分配。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 计量与调整**。 - 建议先读[应收账款](https://www.pengjiaxin.com/09-receivables)。 - 读完后可以接着进入[无形资产](https://www.pengjiaxin.com/11-intangibles)。 不动产、厂房和设备(Property, Plant & Equipment, PPE)是企业为生产商品、提供劳务、出租或经营管理而持有的,使用寿命超过一个会计年度的有形资产。折旧是将PPE的成本在其使用寿命内分摊为费用的过程。 ## 2.5.1 初始成本(Initial Cost) - **解释**:PPE的初始成本包括为使资产达到预定可使用状态所发生的一切合理且必要的支出。 - **构成**: - **购买价款**:资产的购买价格。 - **运输安装费**:将资产运至使用地点并安装调试的费用。 - **直接归属费用**:使资产达到预定可使用状态所发生的其他直接费用,如专业服务费、测试费用等。 - **资本化(Capitalize)vs. 费用化(Expense)**:只有符合资本化条件的支出才能计入资产成本;不符合条件的应费用化计入当期损益。 - **例子**:公司购买一台机器,购买价款为50,000元,运输费2,000元,安装调试费3,000元。则该机器的初始成本为50,000 + 2,000 + 3,000 = 55,000元。 ## 2.5.2 折旧(Depreciation) 折旧是将PPE的成本(减去残值)在其预计使用寿命内系统地分摊为费用的过程。折旧是会计分摊,而非资产价值的实际下降。 - **折旧要素**: - **原值(Cost)**:资产的初始成本。 - **预计使用寿命(Useful Life)**:资产预计可为企业带来经济利益的期间或生产产品的数量。 - **预计净残值(Salvage Value/Residual Value)**:资产在预计使用寿命结束时,企业通过处置资产所能获得的净金额。 - **折旧方法(Depreciation Method)**:选择合适的折旧方法以反映资产经济利益的消耗模式。 - **常见折旧方法**: 1. **直线法(Straight-Line Method, SL)** - **公式**:每年折旧费 = (资产原值 - 预计净残值) / 预计使用寿命 - **解释**:在资产的整个使用寿命内,每年计提的折旧费用是相等的。这种方法假设资产的经济利益是均匀消耗的。 - **优点**:简单易行,广泛使用。 2. **双倍余额递减法(Double-Declining Balance Method, DDB)** - **公式**:每年折旧费 = (资产账面净值 - 累计折旧) × (2 / 预计使用寿命) - **解释**:一种加速折旧法,在资产使用寿命的早期计提较多的折旧,后期计提较少。在计算时,不考虑残值,但折旧总额不能超过(原值 - 残值)。 - **优点**:符合资产在早期使用效率较高或价值下降较快的特点。 3. **年数总和法(Sum-of-the-Years' Digits Method, SYD)** - **公式**:每年折旧费 = (资产原值 - 预计净残值) × (剩余使用寿命 / 年数总和) - **解释**:也是一种加速折旧法。年数总和 = n \* (n+1) / 2,其中n为预计使用寿命。 - **优点**:折旧额逐年递减,但比DDB法更平稳。 4. **产量法(Units-of-Production Method)** - **公式**:单位产量折旧额 = (资产原值 - 预计净残值) / 预计总产量 每年折旧费 = 单位产量折旧额 × 本年实际产量 - **解释**:根据资产实际提供的服务量(如生产的产品数量、机器运行小时数)来计提折旧。 - **优点**:折旧与资产的实际使用强度直接挂钩。 ## 2.5.3 示例(直线法) **情境**:公司购买一台设备,成本为50,000元,预计净残值为5,000元,预计使用寿命为5年。采用直线法计提折旧。 **计算**: - 每年折旧费 = (50,000 - 5,000) / 5 = 45,000 / 5 = 9,000元 **分录**: - 每年年末计提折旧时: ```text 借:管理费用-折旧 Depreciation Expense (or Manufacturing Overhead for production assets) 9,000 贷:累计折旧 Accumulated Depreciation 9,000 ``` - **解释**: - “管理费用-折旧”是利润表中的费用,减少当期净利润。 - “累计折旧”是资产负债表中的一个备抵资产账户,它减少了固定资产的账面价值。 - 经过5年折旧后,该设备的账面净值将为5,000元(即残值)。 ## 2.5.4 资产处置 当PPE被出售、报废或以其他方式处置时,需要将资产原值和累计折旧从账上核销,并确认处置利得或损失。 - **处置利得/损失** = 处置收入 - 资产账面净值(原值 - 累计折旧)。 - **分录示例**: - 假设一台原值50,000元,累计折旧40,000元的设备以15,000元现金出售。 - 账面净值 = 50,000 - 40,000 = 10,000元。 - 处置利得 = 15,000 - 10,000 = 5,000元。 ```text 借:现金 Cash 15,000 借:累计折旧 Accumulated Depreciation 40,000 贷:固定资产 Equipment 50,000 贷:处置利得 Gain on Disposal of Assets 5,000 ``` 理解PPE的核算和折旧方法对于评估企业的资产管理效率和盈利能力至关重要。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 固定资产通常金额大、使用寿命长,其折旧和减值会长期影响利润表和资产负债表,是分析资本密集型企业离不开的主题。 - **这一节的知识有什么用?** - 帮助你理解“购置→折旧→后续支出→减值→处置”这一整套资产生命周期内的会计处理。 - 能够评估企业折旧政策是否合理、是否存在通过改变折旧方法调节利润的动机。 - **在题目或工作中怎么用?** - 做题时: - 画出时间轴,标记购置成本、预计残值、使用年限,按不同折旧方法计算折旧额; - 遇到资本支出/收益支出、减值测试、资产处置时,分别计算账面价值和处置损益。 - 实务中:结合固定资产周转率、资本支出/折旧比、减值损失等指标,判断企业资产使用效率和未来追加投资压力。 - **用好了会得到什么结果?** - 能在计算题中自如处理各种折旧、减值和处置情形。 - 分析企业时,能透过折旧政策和资产结构,更准确地理解其真实盈利能力和资本需求。 ## 常见错误 - 把所有与资产有关的支出都资本化。日常维修、员工培训通常应费用化。 - 认为折旧代表资产市价下降。折旧是成本分配,不是估值报告。 - 处置资产时只记录收到现金,忘记冲销原值和累计折旧。 - 计算账面价值时忘记扣除累计折旧和减值。 ## 快速检查 1. 运输安装费通常资本化还是费用化? 2. 一台设备成本 50,000、累计折旧 40,000,卖价 15,000,处置损益是多少? 3. 累计折旧为什么不是负债? ::legacy-spoiler{title="参考答案"} 1. 如果为使资产达到预定可使用状态而发生,通常资本化。 2. 账面价值 10,000,处置利得 5,000。 3. 它是固定资产的备抵账户,抵减资产账面价值,不是对外义务。 :: ## 下一章 本章处理有形长期资产;下一章看没有实物形态但可能创造长期价值的无形资产。继续读[无形资产](https://www.pengjiaxin.com/11-intangibles)。 # 2.6 无形资产(Intangibles)与研发(R\&D) ## 本章回答什么 - 哪些无形项目可以确认为资产,哪些不能? - 使用寿命、摊销和减值会怎样改变会计处理? - 为什么内部形成的无形资产通常比外购无形资产更难确认? ## 学习目标 读完这一页后,你应该能够: - 区分可辨认无形资产、商誉、内部形成品牌和研发支出。 - 判断有限寿命与不定寿命无形资产的摊销和减值处理。 - 解释 IFRS 与 US GAAP 在开发支出资本化上的差异。 ## 业务场景 一家游戏公司投入大量资金开发新引擎,同时拥有热门品牌和用户社区。管理层认为这些投入都应确认为资产,因为“未来会赚钱”。会计必须判断这些资源是否可辨认、是否由企业控制、成本是否可靠计量,以及未来经济利益是否足够确定。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 计量与调整**。 - 建议先读[固定资产](https://www.pengjiaxin.com/10-ppe)。 - 读完后可以接着进入[租赁](https://www.pengjiaxin.com/12-leases)。 无形资产是企业拥有或控制的没有实物形态的可辨认非货币性资产。研发(Research & Development, R\&D)活动是企业创新和发展的重要组成部分,其会计处理对企业的财务报表有显著影响。 ## 2.6.1 无形资产的分类与核算 无形资产可以分为可辨认无形资产和不可辨认无形资产。 - **可辨认无形资产(Identifiable Intangibles)** - **解释**:指那些可以从企业中分离或单独出售、转让、许可、出租或交换,或者产生于合同权利或其他法定权利的无形资产。 - **例子**:专利权、版权、商标权、特许权、计算机软件、客户关系等。 - **摊销(Amortization)**: - **有限寿命无形资产**:具有确定的使用寿命,应在其预计使用寿命内系统地进行摊销。摊销方法通常与固定资产折旧类似(如直线法)。 - **分录示例**: - 假设一项专利权成本100,000元,预计使用寿命10年,无残值。每年摊销费用为10,000元。 ```text 借:管理费用-摊销 Amortization Expense 10,000 贷:累计摊销 Accumulated Amortization 10,000 ``` - **不定寿命无形资产**:没有可预见的限制其为企业带来经济利益的期限。这类资产不进行摊销,但需要每年至少进行一次减值测试(Impairment Test)。 - **例子**:永久性的商标权(如果预计其经济利益流入没有时间限制)。 - **不可辨认无形资产(Unidentifiable Intangibles)** - **解释**:最典型的例子是商誉(Goodwill)。商誉是企业合并中购买方支付的对价超过被购买方可辨认净资产公允价值的差额。它不能单独出售,也无法从企业中分离。 - **商誉(Goodwill)**: - **核算**:商誉不进行摊销。根据IFRS 3和US GAAP ASC 350,商誉需要每年至少进行一次减值测试。如果商誉的账面价值高于其可收回金额,则确认减值损失。商誉减值损失一经确认,不得转回。 ## 2.6.2 研发(Research & Development, R\&D)的会计处理 研发活动通常分为研究阶段和开发阶段。 - **研究阶段(Research Phase)** - **解释**:指为获取并理解新的科学或技术知识而进行的独创性的、有计划的调查。 - **会计处理**:研究阶段的支出通常具有高度不确定性,其未来经济利益是否能够流入企业具有不确定性。因此,**研究阶段的支出应全部费用化,计入当期损益**。 - **开发阶段(Development Phase)** - **解释**:指在商业性生产或使用前,将研究成果或其他知识应用于某项计划或设计,以生产出新的或具有实质性改进的材料、装置、产品等。 - **会计处理**: - **US GAAP**:**多数开发阶段的支出也费用化**,计入当期损益。只有少数特定类型的开发支出(如某些软件开发成本)在满足严格条件时才允许资本化。 - **IFRS**:**在满足特定条件时,开发阶段的支出可以资本化为无形资产**。这些条件包括: 1. 完成该无形资产以使其能够使用或出售的技术可行性。 2. 企业具有完成该无形资产并使用或出售的意图。 3. 企业具有使用或出售该无形资产的能力。 4. 该无形资产能够产生未来经济利益。 5. 企业有足够的技术、财务资源支持该无形资产的开发。 6. 归属于该无形资产开发阶段的支出能够可靠地计量。 - **例子**:一家制药公司在研发一种新药。前期探索性研究的费用(研究阶段)全部费用化。当新药进入临床试验后期,技术可行性高,且预计能获得监管批准并产生可观销售收入时(开发阶段),后续的临床试验费用和注册费用在满足IFRS资本化条件时,可以资本化为无形资产。 ## 2.6.3 总结与对比 | 特征/准则 | 无形资产摊销 | 商誉摊销 | 研发支出(研究阶段) | 研发支出(开发阶段) | | :---------- | :------------------ | :--------- | :--------- | :----------- | | **IFRS** | 有限寿命摊销,不定寿命不摊销但减值测试 | 不摊销,每年减值测试 | 费用化 | 满足条件可资本化 | | **US GAAP** | 有限寿命摊销,不定寿命不摊销但减值测试 | 不摊销,每年减值测试 | 费用化 | 多数费用化,少数可资本化 | 理解无形资产的核算和研发支出的处理,对于评估企业的创新能力、未来增长潜力和资产质量具有重要意义。特别是IFRS和US GAAP在开发支出资本化上的差异,可能导致采用不同准则的企业在利润和资产规模上存在显著差异。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 越来越多企业的价值来自品牌、技术、专利、软件等无形资源,而这些在财报上的呈现高度依赖会计政策和判断。 - **这一节的知识有什么用?** - 能够区分不同类型的无形资产(有限寿命、不定寿命、自创品牌、研发项目等)及其不同的计量方式(摊销、减值、费用化)。 - 理解IFRS与US GAAP在研发支出资本化上的差异,有助于跨市场比较企业时做出适当调整。 - **在题目或工作中怎么用?** - 做题时: - 先判断支出所在阶段是“研究”还是“开发”,再依据准则决定费用化还是资本化; - 对已确认的无形资产,区分有限/不定寿命,计算相应的摊销或减值。 - 实务中:分析企业时,结合研发费用率、资本化比例和无形资产减值情况,评估其创新投入质量和利润的“可持续性”。 - **用好了会得到什么结果?** - 面对“重研发、轻有形资产”的企业时,不会只看表面利润,而是能透过会计处理理解其真实经济表现。 - 在比较不同准则下的企业时,能识别和解释因无形资产处理差异带来的财报可比性问题。 ## 常见错误 - 把品牌知名度或员工能力直接确认为无形资产。内部形成且不可可靠计量的资源通常不能确认。 - 把研究阶段支出资本化。研究阶段未来经济利益高度不确定,通常费用化。 - 对不定寿命无形资产照常摊销。它们通常不摊销,但至少每年减值测试。 - 跨准则比较时忽略开发支出资本化差异,导致利润和资产不可比。 ## 快速检查 1. 商誉为什么通常只在企业合并中确认? 2. 有限寿命专利应摊销还是只做减值测试? 3. IFRS 下开发支出资本化需要满足什么核心条件? ::legacy-spoiler{title="参考答案"} 1. 因为商誉不可单独辨认,通常只能通过购买对价超过可辨认净资产公允价值来可靠计量。 2. 应在使用寿命内系统摊销,并在有减值迹象时测试。 3. 技术可行、意图和能力明确、能产生未来经济利益、资源充足且成本可可靠计量。 :: ## 下一章 本章强调“看不见的资产”也要满足确认条件;下一章看租赁如何把使用权和付款义务放进报表。继续读[租赁](https://www.pengjiaxin.com/12-leases)。 # 2.7 租赁(Leases) ## 本章回答什么 - 为什么一项租赁通常会同时形成资产和负债? - 租赁付款怎样在负债减少和财务费用之间分拆? - 租赁会计会怎样改变利润、资产规模和杠杆表现? ## 学习目标 读完这一页后,你应该能够: - 解释使用权资产和租赁负债的初始确认逻辑。 - 编制租赁负债摊销表,区分利息费用和本金偿还。 - 说明租赁会计对 EBITDA、资产负债率和现金流分类的影响。 ## 业务场景 航空公司、零售商和物流企业常常通过长期租赁使用飞机、门店或仓库。旧准则下部分租赁可能不在资产负债表上,投资者低估了企业实际负债。新租赁准则要求把多数租赁入表,帮助使用者看清“长期使用权”和“长期付款义务”。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 计量与调整**。 - 建议先读[无形资产](https://www.pengjiaxin.com/11-intangibles)。 - 读完后可以接着进入[所得税](https://www.pengjiaxin.com/13-income-tax)。 租赁是企业在日常经营中常见的一种交易形式。随着IFRS 16《租赁》和US GAAP ASC 842《租赁》的实施,租赁的会计处理发生了重大变革,要求承租人将绝大多数租赁确认为资产和负债。 ## 2.7.1 租赁会计的核心变化 - **承租人会计处理**: - **解释**:新租赁准则的核心是要求承租人将几乎所有租赁(除了短期租赁和低价值资产租赁)确认为资产负债表上的**使用权资产(Right-of-Use, ROU)**和**租赁负债(Lease Liabilities)**。这消除了以往经营租赁不入表的“表外融资”问题,更真实地反映了企业的财务状况。 - **使用权资产(ROU)**:指承租人有权在租赁期内使用租赁资产的权利。初始计量时,ROU资产通常等于租赁负债的初始计量金额,加上已支付的租赁付款、初始直接费用等。 - **租赁负债(Lease Liabilities)**:指承租人应支付的租赁付款额的现值。租赁付款额包括固定付款额、可变租赁付款额(取决于指数或费率)、行使购买选择权的款项(如果合理确定行使)、终止租赁的罚款(如果租赁期反映承租人将行使终止选择权)等。 - **折现率**:用于计算租赁负债现值的折现率通常是租赁内含利率。如果无法确定,则使用承租人的增量借款利率(Incremental Borrowing Rate)。 ## 2.7.2 租赁的后续计量 - **使用权资产的后续计量**: - **解释**:ROU资产通常采用类似固定资产的折旧方法进行摊销,计入利润表中的折旧费用。 - **租赁负债的后续计量**: - **解释**:租赁负债采用实际利率法进行后续计量。每期租赁付款额分为两部分:利息费用和本金偿还。利息费用计入利润表,本金偿还减少租赁负债。 ## 2.7.3 短期/低值豁免(Short-term / Low-value Exemptions) - **解释**:新租赁准则提供了两项豁免,允许承租人选择不对符合条件的短期租赁和低价值资产租赁确认ROU资产和租赁负债。 - **短期租赁(Short-term Lease)**:租赁期为12个月或更短,且不包含购买选择权。 - **低价值资产租赁(Low-value Asset Lease)**:租赁资产本身的价值较低(如笔记本电脑、办公家具等)。 - **会计处理**:对于选择豁免的租赁,租赁付款额在租赁期内按直线法或其他系统合理的方法计入利润表中的费用。 ## 2.7.4 IFRS与US GAAP的分类差异 - **IFRS 16**:承租人不再区分经营租赁和融资租赁,所有租赁(除豁免外)均按融资租赁模式处理,即确认ROU资产和租赁负债。 - **US GAAP ASC 842**:承租人仍然需要区分融资租赁(Finance Lease)和经营租赁(Operating Lease)。 - **融资租赁**:会计处理与IFRS 16类似,确认ROU资产和租赁负债,并在利润表中确认折旧费用和利息费用。 - **经营租赁**:会计处理也确认ROU资产和租赁负债,但在利润表中只确认一项单一的租赁费用(通常按直线法),以保持与旧准则下经营租赁费用模式的相似性。 ## 2.7.5 简单示例 **情境**:公司租赁一台设备,租赁期为3年,每年年末支付租金10,000元。假设增量借款利率为5%。 **初始确认(租赁开始日)**: 1. **计算租赁负债现值**: - 年金现值因子 (PVIFA, i=5%, n=3) ≈ 2.7232 - 租赁负债 = 10,000元 × 2.7232 = 27,232元 2. **确认使用权资产**: - 使用权资产 = 27,232元 (假设无其他初始直接费用等) **分录(租赁开始日)**: ```text 借:使用权资产 Right-of-Use Asset 27,232 贷:租赁负债 Lease Liability 27,232 ``` **后续计量(每年年末)**: - **摊销使用权资产**(假设直线法,无残值): - 每年摊销费用 = 27,232 / 3 ≈ 9,077元 ```text 借:折旧费用 Depreciation Expense 9,077 贷:累计折旧 Accumulated Depreciation 9,077 ``` - **确认利息费用和偿还租赁负债**: - **第一年**: - 期初租赁负债:27,232元 - 利息费用 = 27,232元 × 5% = 1,362元 - 本金偿还 = 10,000元(租金支付)- 1,362元(利息)= 8,638元 - 期末租赁负债 = 27,232 - 8,638 = 18,594元 ```text 借:利息费用 Interest Expense 1,362 借:租赁负债 Lease Liability 8,638 贷:现金 Cash 10,000 ``` - **第二年**: - 期初租赁负债:18,594元 - 利息费用 = 18,594元 × 5% = 930元 - 本金偿还 = 10,000元 - 930元 = 9,070元 - 期末租赁负债 = 18,594 - 9,070 = 9,524元 ```text 借:利息费用 Interest Expense 930 借:租赁负债 Lease Liability 9,070 贷:现金 Cash 10,000 ``` - **第三年**: - 期初租赁负债:9,524元 - 利息费用 = 9,524元 × 5% = 476元 (略有四舍五入误差) - 本金偿还 = 10,000元 - 476元 = 9,524元 - 期末租赁负债 = 0 ```text 借:利息费用 Interest Expense 476 借:租赁负债 Lease Liability 9,524 贷:现金 Cash 10,000 ``` 摊销表可以这样检查: | 年度 | 期初负债 | 利息 5% | 现金付款 | 偿还本金 | 期末负债 | | -- | -----: | ----: | -----: | ----: | -----: | | 1 | 27,232 | 1,362 | 10,000 | 8,638 | 18,594 | | 2 | 18,594 | 930 | 10,000 | 9,070 | 9,524 | | 3 | 9,524 | 476 | 10,000 | 9,524 | 0 | 这个例子展示了租赁交易如何影响资产负债表(ROU资产和租赁负债)和利润表(折旧费用和利息费用),以及现金流量表(租赁付款的本金部分作为融资活动现金流出,利息部分根据准则选择可能作为经营或融资活动现金流出)。理解租赁会计对于评估企业的负债水平和盈利能力至关重要。 ## 可运行例题:现值与实际利率摊销表 手算表通常因逐年四舍五入留下尾差。下面先用未四舍五入现值计算,再只在显示时保留两位小数。 ::pyodide --- code64: cGF5bWVudCA9IDEwXzAwMC4wCnJhdGUgPSAwLjA1CnllYXJzID0gMwoKbGVhc2VfbGlhYmlsaXR5ID0gc3VtKHBheW1lbnQgLyAoMSArIHJhdGUpICoqIHQgZm9yIHQgaW4gcmFuZ2UoMSwgeWVhcnMgKyAxKSkKYmFsYW5jZSA9IGxlYXNlX2xpYWJpbGl0eQpwcmludChmIuW8gOWni+aXpeenn+i1gei0n+WAuu+8mntsZWFzZV9saWFiaWxpdHk6LC4yZn0iKQpwcmludCgi5bm05bqmIHwg5pyf5Yid6LSf5YC6IHwg5Yip5oGvIHwg5LuY5qy+IHwg5pys6YeRIHwg5pyf5pyr6LSf5YC6IikKCmZvciB5ZWFyIGluIHJhbmdlKDEsIHllYXJzICsgMSk6CiAgICBvcGVuaW5nID0gYmFsYW5jZQogICAgaW50ZXJlc3QgPSBvcGVuaW5nICogcmF0ZQogICAgcHJpbmNpcGFsID0gcGF5bWVudCAtIGludGVyZXN0CiAgICBiYWxhbmNlID0gb3BlbmluZyArIGludGVyZXN0IC0gcGF5bWVudAogICAgaWYgYWJzKGJhbGFuY2UpIDwgMWUtODoKICAgICAgICBiYWxhbmNlID0gMC4wCiAgICBwcmludCgKICAgICAgICBmInt5ZWFyOj40fSB8IHtvcGVuaW5nOj45LC4yZn0gfCB7aW50ZXJlc3Q6PjcsLjJmfSB8ICIKICAgICAgICBmIntwYXltZW50Oj44LC4yZn0gfCB7cHJpbmNpcGFsOj44LC4yZn0gfCB7YmFsYW5jZTo+OSwuMmZ9IgogICAgKQoKYXNzZXJ0IGFicyhiYWxhbmNlKSA8IDFlLTY= layout: vertical locale: zh title: Python:租赁负债现值与摊销 --- :: 若付款发生在期初而不是期末,现值和利息表都会改变。租赁期限、付款时点和折现率必须先从合同中确定,程序不能替你猜。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 新租赁准则(如IFRS 16/ASC 842)几乎把所有长期租赁“搬上了表内”,显著改变了企业的资产、负债和利润结构。 - **这一节的知识有什么用?** - 理解使用权资产和租赁负债的确认与计量,能够正确解读资产负债表和关键比率(如资产负债率、ROA)。 - 在考试中,常见题型包括租赁分类判断、初始计量、后续计量以及对利润表和现金流量表的影响分析。 - **在题目或工作中怎么用?** - 解题/实务步骤: 1. 判断是否属于租赁以及租赁期限(考虑续租选择权等); 2. 以适当折现率计算租赁负债现值,并确认相同金额的使用权资产(如有预付租金等则作调整); 3. 在后续期间分别确认折旧费用和利息费用,并更新租赁负债账面价值; 4. 在分析报表时,注意租赁会计对EBITDA、杠杆比率和利息保障倍数等指标的影响。 - **用好了会得到什么结果?** - 面对长租赁案例题时能系统拆解,不容易遗漏关键步骤。 - 分析企业时,能看穿“表外融资”向“表内确认”的变化,理解其对资本结构和盈利指标的实质影响。 ## 常见错误 - 把租金付款全额当作当期租赁费用,忽略负债摊销和利息分拆。 - 折现时漏掉合理确定会行使的续租期或购买选择权。 - 把使用权资产和租赁负债后续计量混在一起。资产折旧,负债按实际利率法摊销。 - 比较 IFRS 与 US GAAP 企业时忽略经营租赁利润表列报差异。 ## 快速检查 1. 为什么租赁开始日通常同时确认资产和负债? 2. 第一年的现金付款 10,000 为什么不全是费用? 3. 租赁入表通常会怎样影响资产负债率? ::legacy-spoiler{title="参考答案"} 1. 承租人取得使用资产的权利,同时承担未来租赁付款义务。 2. 一部分是利息费用,一部分是偿还租赁负债本金。 3. 资产和负债同时增加,但负债增加会使杠杆相关指标更透明,常提高资产负债率。 :: ## 下一章 本章处理长期使用权和付款义务;下一章看会计利润与税法利润之间的差异如何进入递延所得税。继续读[所得税](https://www.pengjiaxin.com/13-income-tax)。 # 2.8 所得税(Income Taxes)与递延税(Deferred Taxes) ## 本章回答什么 - 为什么报表中的所得税费用不一定等于当期实际缴税现金? - 当期所得税和递延所得税有什么区别? - 暂时性差异是怎样形成未来税务影响的? ## 学习目标 读完这一页后,你应该能够: - 区分会计利润、应纳税所得额、当期所得税和递延所得税。 - 判断永久性差异与暂时性差异,并识别 DTA 或 DTL。 - 通过“账面价值 vs 计税基础”计算递延所得税分录。 ## 业务场景 企业本年购入设备,税法允许加速折旧以鼓励投资,而会计报表采用直线折旧。结果是:税务申报表中的利润低于会计利润,企业当期少缴税,但未来税法可扣除折旧变少时会多缴税。递延所得税把这种跨期税负影响放回报表。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 计量与调整**。 - 建议先读[租赁](https://www.pengjiaxin.com/12-leases)。 - 读完后可以接着进入[财务报表](https://www.pengjiaxin.com/../04-reporting-cash/06-financial-statements)。 所得税会计处理旨在协调会计利润(根据会计准则计算)与应纳税所得额(根据税法规定计算)之间的差异,从而确认当期所得税和递延所得税。 ## 2.8.1 会计利润与应纳税所得额 - **会计利润(Accounting Profit / Pre-tax Financial Income)**:根据企业会计准则计算的利润总额。 - **应纳税所得额(Taxable Profit / Taxable Income)**:根据税法规定计算的用于确定应交所得税的金额。 ## 2.8.2 差异的类型 会计利润与应纳税所得额之间的差异分为两类: 1. **永久性差异(Permanent Differences)** - **解释**:指会计利润与应纳税所得额之间,由于会计准则和税法规定不同,在当期及未来期间均不会转回的差异。永久性差异只影响当期所得税,不产生递延所得税资产或负债。 - **例子**: - **税法不允许扣除的费用**:如某些超标准的业务招待费、罚款等,会计上确认为费用,但税法不允许扣除。 - **税法免税收入**:如某些国债利息收入,会计上确认为收入,但税法规定免税。 2. **暂时性差异(Temporary Differences)** - **解释**:指会计利润与应纳税所得额之间,由于会计准则和税法规定确认收入、费用或资产、负债计量的时点不同,导致在当期发生,但在未来期间会转回的差异。暂时性差异会产生递延所得税资产(DTA)或递延所得税负债(DTL)。 - **产生原因**:通常是由于资产或负债的账面价值(Book Value)与计税基础(Tax Base)不同。 - **资产的计税基础**:资产在未来期间可税前扣除的金额。 - **负债的计税基础**:负债的账面价值减去未来期间可税前扣除的金额。 ## 2.8.3 递延所得税资产(DTA)与递延所得税负债(DTL) - **递延所得税负债(Deferred Tax Liabilities, DTL)** - **解释**:指未来期间应交所得税的金额。当资产的账面价值大于其计税基础,或负债的账面价值小于其计税基础时,会产生应纳税暂时性差异,从而形成DTL。这意味着未来期间,应纳税所得额会大于会计利润,导致多交税。 - **示意**: ```text 会计折旧 > 税法折旧 → 早期会计利润低/纳税少 → 未来纳税多 → 形成 DTL。 ``` - **例子**:一台设备,会计上采用直线法折旧,税法上采用加速折旧法。在设备使用初期,税法折旧大于会计折旧,导致应纳税所得额小于会计利润,当期少交税。但未来期间,会计折旧会大于税法折旧,导致应纳税所得额大于会计利润,未来需要多交税。因此,在初期形成DTL。 - **递延所得税资产(Deferred Tax Assets, DTA)** - **解释**:指未来期间可抵扣所得税的金额。当资产的账面价值小于其计税基础,或负债的账面价值大于其计税基础时,会产生可抵扣暂时性差异,从而形成DTA。这意味着未来期间,应纳税所得额会小于会计利润,导致少交税。 - **例子**: - **坏账准备**:会计上计提坏账准备时确认为费用,但税法通常要求在实际发生坏账时才允许扣除。因此,在计提坏账准备时,会计利润减少,但应纳税所得额不变,形成可抵扣暂时性差异,产生DTA。 - **未弥补亏损和税款抵减**:企业发生的亏损,在未来期间可以用于抵减应纳税所得额,从而形成DTA。 ## 2.8.4 估值备抵(Valuation Allowance, US GAAP) - **解释**:在US GAAP下,如果企业认为未来期间不太可能实现足够的应纳税所得额来利用递延所得税资产,则需要对递延所得税资产计提估值备抵。 - **影响**:估值备抵会减少递延所得税资产的账面价值,并增加当期所得税费用,从而减少净利润。IFRS没有估值备抵的概念,而是通过对DTA的确认条件(很可能获得未来应纳税所得额)进行限制。 ## 2.8.5 会计分录示例 假设公司本期会计利润为100,000元,适用所得税率为25%。 - **情况一**:无暂时性差异。 - 当期所得税费用 = 100,000 × 25% = 25,000元。 ```text 借:所得税费用 Income Tax Expense 25,000 贷:应交所得税 Income Tax Payable 25,000 ``` - **情况二**:因税法折旧大于会计折旧,当前少缴税但未来会反转,形成应纳税暂时性差异 5,000 元。 - 应纳税所得额 = 100,000 - 5,000 = 95,000元。 - 当期应交所得税 = 95,000 × 25% = 23,750元。 - 递延所得税负债增加 = 5,000 × 25% = 1,250元。 - 所得税费用 = 当期应交所得税 + 递延所得税负债增加 = 23,750 + 1,250 = 25,000元。 ```text 借:所得税费用 Income Tax Expense 25,000 贷:应交所得税 Income Tax Payable 23,750 贷:递延所得税负债 Deferred Tax Liability 1,250 ``` - **情况三**:因计提坏账准备,产生可抵扣暂时性差异,形成DTA 4,000元。 - 应纳税所得额 = 100,000 + 4,000 = 104,000元 (假设税法不允许扣除坏账准备,只允许扣除实际发生的坏账)。 - 当期应交所得税 = 104,000 × 25% = 26,000元。 - 递延所得税资产增加 = 4,000 × 25% = 1,000元。 - 所得税费用 = 当期应交所得税 - 递延所得税资产增加 = 26,000 - 1,000 = 25,000元。 ```text 借:所得税费用 Income Tax Expense 25,000 借:递延所得税资产 Deferred Tax Asset 1,000 贷:应交所得税 Income Tax Payable 26,000 ``` 理解所得税会计和递延所得税的核算对于评估企业的真实盈利能力和未来现金流具有重要意义。特别是暂时性差异的转回,会影响企业未来的税负。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 会计利润与应纳税所得额往往不同,递延所得税项目正是连接二者的桥梁。若忽略这一节,很难真正理解“名义税率”和“实际税率”之间的差异。 - **这一节的知识有什么用?** - 能够区分暂时性差异与永久性差异,解释为什么某些差异会在未来反转,另外一些则不会。 - 通过分析递延所得税资产/负债,可以判断企业未来税负压力与盈利的可持续性。 - **在题目或工作中怎么用?** - 做题时: - 列出“账面价值 vs 计税基础”,找出差额并判断其会在未来导致应纳税所得额增加还是减少; - 乘以适用税率,计算递延所得税资产或负债,并写出调整分录。 - 实务中:阅读年报时,结合所得税费用的“税率调节表”和递延所得税余额,理解公司税负波动的原因(税收优惠、暂时性差异反转等)。 - **用好了会得到什么结果?** - 能在综合题中自如处理所得税部分,不再把递延所得税看成“黑箱”。 - 分析企业时,可以更准确地评估“税后盈利”的稳定性和未来可得现金流。 ## 常见错误 - 把所得税费用等同于本期实际缴税现金。所得税费用包含当期和递延部分。 - 把永久性差异也确认递延所得税。永久性差异不会在未来转回。 - 判断 DTA/DTL 时只背公式,不看未来会让应纳税所得额增加还是减少。 - 忽略 DTA 可实现性评估,导致递延所得税资产被高估。 ## 快速检查 1. 罚款会产生递延所得税吗?为什么? 2. 税法折旧大于会计折旧,当前少缴税,通常形成 DTA 还是 DTL? 3. 坏账准备会计已确认、税法未来实际核销才扣除,通常形成什么? ::legacy-spoiler{title="参考答案"} 1. 通常不会,因为罚款多为永久性差异,未来不转回。 2. DTL,因为未来税法扣除减少,未来应纳税所得额会增加。 3. DTA,因为未来实际核销时可税前扣除,未来应纳税所得额会减少。 :: ## 下一章 本章完成主要计量和调整主题;下一章把调整后余额组织成对外财务报表。继续读[财务报表](https://www.pengjiaxin.com/../04-reporting-cash/06-financial-statements)。 # 3. 计量与调整 []{#_3-计量与调整} 账能平不代表数字就完整。这个模块关心的是:期末数字是否合理、是否属于本期、是否被正确计量。 这一部分是财务会计的核心难点。它把前面的记录技术推进到具体项目:收入什么时候算完成,存货成本怎样流转,应收款能不能收回,长期资产怎样分摊,租赁和所得税为什么会形成跨期影响。很多题目看似在考某个准则细节,实际都在考权责发生制和配比原则。 ## 这个模块回答什么 - 收入应该在什么时候确认? - 存货、应收、固定资产和无形资产应该怎样计量? - 为什么租赁和所得税会带来比现金收付更复杂的调整? ## 讲义内容 | 讲义 | 重点 | | --------------------------------------------------------- | ------------- | | [收入确认](https://www.pengjiaxin.com/07-revenue-recognition) | 收入时点与履约逻辑 | | [存货](https://www.pengjiaxin.com/08-inventory) | 成本流转、期末存货和跌价 | | [应收账款](https://www.pengjiaxin.com/09-receivables) | 坏账、准备和可收回性 | | [固定资产](https://www.pengjiaxin.com/10-ppe) | 成本、折旧、账面价值和处置 | | [无形资产](https://www.pengjiaxin.com/11-intangibles) | 确认、摊销和减值 | | [租赁](https://www.pengjiaxin.com/12-leases) | 使用权资产和租赁负债 | | [所得税](https://www.pengjiaxin.com/13-income-tax) | 当期税和递延税的基础逻辑 | ## 学完应能做到 - 区分确认时点、初始计量、后续计量和期末调整。 - 解释收入、存货、应收、固定资产和无形资产为什么不能只看现金收付。 - 判断一项支出更像当期费用、存货成本还是长期资产成本。 - 说明折旧、摊销、减值、坏账准备和递延税如何影响利润和资产负债表。 - 把单个资产或收入专题放回会计循环:原始记录、调整分录、调整后余额、报表列示。 ## 常见误区 - 用现金发生时点代替权责发生时点。 - 忘记很多资产专题本质上也是期末调整专题。 - 把整笔现金支出直接费用化,忽略未来期间受益。 ::tip{title="练习建议"} 每学一个项目,都用同一张小表整理:确认条件、初始金额、期末调整、利润影响、资产负债表影响。这样比按章节孤立背诵更容易迁移到综合题。 :: ## 下一步 进入 [4. 报表与现金](https://www.pengjiaxin.com/../04-reporting-cash/) 后,这些调整后的余额会被组织成正式报表,并与现金控制和流动性判断联系起来。 # 2.1 财务报表:从调整后试算平衡表到外部报告 ## 本章回答什么 - 每一张核心财务报表分别回答什么问题? - 利润、权益、资产、负债和现金怎样在报表之间串起来? - 哪些列报逻辑可以避免同一金额被重复计算或放错位置? ## 学习目标 读完这一页后,你应该能够: - 说明利润表、所有者权益变动表、资产负债表和现金流量表各自回答的问题。 - 从调整后试算平衡表提取余额,按正确顺序编制报表。 - 解释利润、权益、资产负债表和现金流量表之间的联动。 ## 业务场景 一家小企业完成年末结账后,账上列有收入、费用、资产、负债和所有者投入等余额。银行要求提交完整财务报表,只有账户余额表还不够。会计需要按使用者关心的问题组织这些金额:利润表说明经营成果,资产负债表说明财务状况,现金流量表则帮助判断现金流的质量。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 报表与现金**。 - 建议先读[所得税](https://www.pengjiaxin.com/../03-measurement-adjustments/13-income-tax)。 - 读完后可以接着进入[现金控制](https://www.pengjiaxin.com/14-cash-control)。 各张财务报表依据同一套账务记录编制,从不同方面反映企业的情况。它们之间的联系可以按以下顺序理解: `调整后试算平衡表 -> 利润表 -> 所有者权益变动表 -> 资产负债表 -> 现金流量表` 这一顺序说明编制时需要先确定哪些金额,并不意味着仅凭前一张表就能推算出后一张表。编制现金流量表还需要期初余额和交易明细。报表附注同样属于财务报表,用于解释政策、估计、风险和金额构成。 ### 先区分“一个期间”和“某一时点” | 报表 | 时间口径 | 应怎样读 | | ----- | -------- | ----------------- | | 利润表 | 本年度等一个期间 | 这一期间确认了多少收入与费用 | | 权益变动表 | 一个期间的变动 | 期初权益怎样变成期末权益 | | 资产负债表 | 期末某一天 | 截至这一天尚有多少资产、负债与权益 | | 现金流量表 | 一个期间的流量 | 收付款怎样改变期初现金余额 | 全年收入是期间流量,期末现金是时点存量,不能直接当作同一种金额比较。要说明两者之间的关系,还需查看赊销、收款和其他现金业务。 ## 2.1.1 利润表(Income Statement) 利润表回答的是一个问题:**本期赚了多少?** 它把收入和费用放在同一个期间里比较,得出净利润。 ### 常见结构 | 层级 | 内容 | 作用 | | ----------- | -------------- | --------- | | 收入 | 销售收入、服务收入等 | 经营活动带来的收入 | | 减:销售成本 | 为取得销售收入直接发生的成本 | 得出毛利 | | 减:营业费用 | 销售、管理、折旧、摊销等 | 得出营业利润 | | 减:其他费用 / 税费 | 利息、税费等 | 得出净利润 | ### 你要记住 - 收入不是现金收入。 - 费用不是现金支出。 - 期末存货会留在资产负债表,不应全部挤进当期费用。 ## 2.1.2 所有者权益变动表(SOCE) SOCE 回答的是:**所有者权益为什么变了?** 常见变化来源: - 期初资本 - 本期利润 - 所有者追加投入 - 所有者提取 / 提现 / 分红 简化公式: `期末权益 = 期初权益 + 本期利润 + 新投入 - 提现` ## 2.1.3 资产负债表(Statement of Financial Position) 资产负债表回答的是:**在某一天,企业拥有什么、欠什么、剩下多少属于所有者?** 核心等式: `资产 = 负债 + 所有者权益` ### 主要分类 | 类别 | 典型项目 | | ----- | --------------- | | 流动资产 | 现金、应收账款、存货、预付费用 | | 非流动资产 | 固定资产、无形资产 | | 流动负债 | 应付账款、应计费用、短期借款 | | 非流动负债 | 长期借款、租赁负债 | | 权益 | 股本、留存收益 | ### 你要记住 - 累计折旧要从固定资产中扣减。 - 坏账准备要从应收账款中扣减。 - 预付费用和应计费用是最常见的期末调整项目。 ## 2.1.4 现金流量表(SCF) 现金流量表回答的是:**现金从哪里来,到哪里去?** 三大部分: - 经营活动 - 投资活动 - 融资活动 ### 为什么它重要 利润高不等于现金多。 一家公司可以“有利润但缺现金”,也可以“有现金但利润不强”。 ## 2.1.5 一个最小例子 假设: - 销售收入:10,000 - 销售成本:6,000 - 营业费用:2,500 - 利息费用:200 - 所得税:260 利润计算: `10,000 - 6,000 - 2,500 - 200 - 260 = 1,040` 这个 1,040 就是本期净利润。 如果期初权益为 20,000,本期所有者追加投入 3,000,提现 500,则: | 项目 | 金额 | | ------- | -----: | | 期初权益 | 20,000 | | 加:本期净利润 | 1,040 | | 加:所有者投入 | 3,000 | | 减:提现 | 500 | | 期末权益 | 23,540 | 这个期末权益会进入资产负债表,因此利润表和权益表必须先于资产负债表完成。 ### 把利润、权益和现金分别核对 本例使用简化的所有者资本口径:投入 3,000 和提现 500 改变权益,不改变利润。公司制企业通常应区分股本、留存收益和股利,不能把独资企业的“提现”直接照搬为公司费用。 继续前面的例子,**另补充**当年销售全部为赊销,应收账款期初 1,000、期末 1,800,没有退货、核销或其他应收变动: [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[客户收款]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[期初应收]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[赊销]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[期末应收]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[800]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[9]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[200]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 收入为 10,000,客户收款为 9,200,差额 800 体现在应收账款的增加中。客户收款还不是经营现金流净额:需要再扣除向供应商、员工等支付的款项,并按适用口径处理其他项目。现有资料不足以编制完整现金流量表,需要补充信息,不能倒挤缺失金额。 ### 报表中的两个“减项”为什么不同 当期折旧费用在利润表中减少当期利润,累计折旧则在资产负债表中抵减固定资产成本。前者是本期费用,后者是截至期末的累计金额,因此并非对同一金额重复扣减。计提折旧只是分配成本,既没有支付现金,也没有把钱存入用于更新设备的账户。 准备报表时逐项核对:本期利润是否进入权益、期末权益是否与资产负债表一致、现金流量表期末现金是否与财务状况表一致、资产净额是否按正确的累计抵减项目计算。然后完成[完整报表案例](https://www.pengjiaxin.com/../../foundation/01-adjustments-to-statements),把这些核对用于同一套调整后余额。 ## 2.1.6 常见错误 1. 把提现放进利润表。 2. 把存货同时算进成本和资产,导致重复计算。 3. 忘记净额列示坏账准备和累计折旧。 4. 只看利润,不看现金流。 ## 2.1.7 快速检查 1. 为什么财务报表不是四张独立的表? 2. 利润和现金的区别是什么? 3. 资产负债表为什么要用净额列示部分项目? ::legacy-spoiler{title="参考答案"} 1. 它们共享同一套账务基础,利润会进入权益,权益又回到资产负债表。 2. 利润是权责发生制下的经营结果,现金是实际收付结果。 3. 因为某些资产项目需要扣减可收回性或使用损耗,才能更真实地反映价值。 :: ## 下一章 本章把账务余额组织成报表;下一章关注报表中最敏感资产之一:现金如何核对和控制。继续读[现金控制](https://www.pengjiaxin.com/14-cash-control)。 # 2.9 现金、现金等价物与内部控制(Cash & Internal Control) ## 本章回答什么 - 为什么有利润的企业仍然必须重视现金控制? - 对账、收付时点和内部控制怎样保护现金余额? - 哪些信号说明利润并没有转化成健康的流动性? ## 学习目标 读完这一页后,你应该能够: - 区分现金、现金等价物和非现金短期投资。 - 编制银行存款调节表,并判断哪些调节项需要企业入账。 - 识别现金收付流程中的控制缺陷,并提出改进建议。 ## 业务场景 一家门店账面现金余额与银行对账单长期不一致,出纳既收款又记账,还负责月底对账。即使利润表看起来不错,现金被挪用或记录错误也可能很久才被发现。现金控制的目标不是增加利润,而是保护资产、发现差错并提升财务报告可靠性。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 报表与现金**。 - 建议先读[财务报表](https://www.pengjiaxin.com/06-financial-statements)。 - 读完后可以接着进入[财务比率分析](https://www.pengjiaxin.com/../05-analysis-comparison/15-ratio-analysis)。 现金是企业流动性最强的资产,也是最容易被挪用或滥用的资产。因此,对现金的管理和内部控制至关重要。 ## 2.9.1 现金与现金等价物(Cash & Cash Equivalents) - **现金(Cash)**:指库存现金、银行存款和其他货币资金。 - **现金等价物(Cash Equivalents)**:指企业持有的期限短(一般指从购买日起3个月内到期)、流动性强、易于转换为已知金额现金、价值变动风险很小的投资。 - **例子**:3个月内到期的国库券、商业票据、货币市场基金等。 ## 2.9.2 银行存款调节(Bank Reconciliation) - **解释**:银行存款调节表是企业定期(通常每月)编制的一份报表,用于核对企业银行存款日记账余额与银行对账单余额之间的差异,并查明差异原因。由于时间性差异和一方已记录而另一方未记录的交易,这两个余额通常不一致。 - **常见调节项目(Reconciling Items)**: - **企业已记,银行未记**: - **在途存款(Deposits in Transit)**:企业已存入银行,但银行尚未入账的款项。 - **未兑现支票(Outstanding Checks)**:企业已开出支票,但持票人尚未到银行兑现的支票。 - **银行已记,企业未记**: - **银行服务费(Bank Service Charges)**:银行收取的服务费,企业通常在收到银行对账单后才知晓。 - **银行代收(Bank Collections)**:银行代企业收取的款项,如代收票据、利息收入等。 - **存款不足退票(Non-Sufficient Funds, NSF Checks)**:客户开给企业的支票,因客户账户余额不足而被银行退回。 - **利息收入(Interest Earned)**:银行支付给企业存款的利息。 - **双方均有错误**:企业或银行在记录时发生的错误。 - **调节流程**: 1. 将银行对账单余额调整为正确现金余额。 2. 将企业账面余额调整为正确现金余额。 3. 如果两个调整后的余额相等,则调节成功。 - **示例**: - 企业账面余额:12,950元 - 银行对账单余额:12,000元 - 调节项: - 在途存款:3,000元 - 未兑现支票:1,500元 - 银行服务费:50元(企业未记) - 银行代收票据:600元(企业未记) - **银行对账单调整**:12,000 + 3,000 (在途存款) - 1,500 (未兑现支票) = 13,500元 - **企业账面调整**:12,950 - 50 (银行服务费) + 600 (银行代收) = 13,500元 - **结论**:两个调整后的余额相等,13,500元就是企业资产负债表上应列示的正确现金余额。 :br企业还需要补记银行已记、企业未记的项目: | 借方 | 金额 | 贷方 | 金额 | | ----- | --: | ------- | --: | | 现金 | 600 | 票据/应收款项 | 600 | | 银行手续费 | 50 | 现金 | 50 | ## 2.9.3 内部控制(Internal Control) - **解释**:内部控制是企业为了合理保证财务报告的可靠性、经营活动的效率和效果以及对法律法规的遵循而实施的一系列政策和程序。 - **内部控制五要素(COSO框架)**: 1. **控制环境(Control Environment)**: - **解释**:企业内部的氛围,影响员工的控制意识。包括管理层的诚信和道德价值观、对胜任能力的承诺、董事会和审计委员会的参与、管理哲学和经营风格、组织结构、权责分配等。 - **例子**:公司高层领导强调诚信经营,并制定了严格的行为准则。 2. **风险评估(Risk Assessment)**: - **解释**:企业识别、分析和管理其经营目标实现过程中面临的风险。包括对外部和内部风险的识别、风险分析(可能性和影响)、风险应对策略的制定。 - **例子**:公司评估了市场竞争加剧、原材料价格波动、信息系统安全漏洞等可能影响其盈利能力的风险。 3. **控制活动(Control Activities)**: - **解释**:为确保管理层指令得以执行而采取的政策和程序。包括授权审批、职责分离、实物控制、业绩评价、信息处理控制等。 - **例子**: - **职责分离**:采购、验收、付款由不同部门或人员负责,防止舞弊。 - **授权审批**:所有超过一定金额的支出必须经过两级审批。 - **实物控制**:存货定期盘点,重要资产上锁保管。 4. **信息与沟通(Information & Communication)**: - **解释**:企业内部和外部信息的有效识别、获取和交流。包括内部报告系统、沟通渠道、信息质量等。 - **例子**:公司建立了内部举报机制,鼓励员工报告不当行为;定期向员工传达公司的政策和程序。 5. **监控活动(Monitoring Activities)**: - **解释**:对内部控制系统有效性进行持续评估的过程。包括持续监控、独立评估(如内部审计)、缺陷报告和纠正。 - **例子**:内部审计部门定期对各业务流程的内部控制进行检查,并向管理层报告发现的问题和改进建议。 有效的内部控制有助于保护企业资产、提高财务报告的可靠性,并促进企业经营目标的实现。 --- ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 现金最容易被侵占或管理不善,也是内部控制和审计关注的重点。理解现金管理与内部控制,是把“账面正确”延伸到“资产真的安全、流程真的可靠”。 - **这一节的知识有什么用?** - 能够识别常见的现金舞弊手法和控制薄弱环节(如岗位不分离、授权不严、缺乏盘点等)。 - 在审计或内控评估中,可以有框架地设计控制措施和测试程序。 - **在题目或工作中怎么用?** - 做题时: - 面对“识别控制缺陷/提出改进建议”的题目,可以从组织结构、授权审批、凭证流转、实物控制、监控与审计五个维度逐一检查; - 结合具体业务场景(出纳、银行对账、票据管理等)给出针对性措施。 - 实务中:参与流程梳理或内控设计时,可以用本节的思路搭框架,再结合企业具体情况细化。 - **用好了会得到什么结果?** - 不仅能做出“账面正确”的报表,还能帮助企业减少舞弊和操作风险。 - 为日后深入学习审计学、内部控制与风险管理打下基础。 ## 常见错误 - 把所有短期投资都列为现金等价物,忽略“三个月内到期、价值变动风险很小”等条件。 - 调节银行余额和企业账面余额时把项目方向写反:在途存款加到银行余额,未兑现支票从银行余额扣除。 - 认为银行调节表本身就是分录。只有银行已记、企业未记的项目通常需要企业补记。 - 让同一人负责收款、记账和对账,违反职责分离。 ## 快速检查 1. 在途存款应调整银行余额还是企业账面余额? 2. 银行服务费为什么需要企业补记分录? 3. 现金收款流程中,为什么职责分离特别重要? ::legacy-spoiler{title="参考答案"} 1. 调整银行余额,因为企业已记但银行尚未记。 2. 因为银行已扣款,企业账上还没有记录,需要减少现金并确认费用。 3. 防止同一人既接触现金又控制记录,从而掩盖舞弊或错误。 :: ## 下一章 本章把现金余额从“账上数字”变成“可核对、可控制的资产”;下一章用比率把报表信息转化为分析结论。继续读[财务比率分析](https://www.pengjiaxin.com/../05-analysis-comparison/15-ratio-analysis)。 # 4. 报表与现金 []{#_4-报表与现金} 这个模块说明:调整后的数字如何变成正式报表,以及为什么看利润时必须同时看现金。 到这里,学习重点会从“某个账户怎样调整”转向“整套报表怎样连起来”。利润表解释一段期间的经营结果,资产负债表展示某个时点的资源和义务,权益变动表说明所有者权益变化,现金控制则提醒我们利润和流动性不是同一件事。 ## 这个模块回答什么 - 调整后余额怎样进入正式财务报表? - 为什么利润不等于现金? - 流动性和现金控制应该怎样与报表一起阅读? ## 讲义内容 | 讲义 | 重点 | | ---------------------------------------------------------- | --------------------- | | [财务报表](https://www.pengjiaxin.com/06-financial-statements) | 利润表、权益变动表、资产负债表及其连接逻辑 | | [现金控制](https://www.pengjiaxin.com/14-cash-control) | 现金流动、流动性、对账与基本内部控制 | ## 学完应能做到 - 从调整后余额判断项目进入哪一张报表。 - 说明利润表、权益变动表和资产负债表之间的连接关系。 - 解释为什么盈利企业仍可能面临现金压力。 - 识别现金控制、银行对账和基本内部控制的作用。 - 在阅读报表时同时关注利润、资产结构、负债压力和现金安全。 ## 常见误区 - 把提现或分红放进利润表。 - 忘记期末存货从销售成本中退出并转为资产。 - 用利润代替现金指标。 ::tip{title="练习建议"} 拿一组调整后余额练习报表归类:先分收入费用、资产负债权益,再检查净利润如何进入权益,最后确认资产负债表是否平衡。 :: ## 下一步 进入 [5. 分析与比较](https://www.pengjiaxin.com/../05-analysis-comparison/) 后,你会从“编制报表”转向“解释报表”,重点是比率、趋势、背景和准则差异。 # 2.10 财务比率分析(Ratio Analysis) ## 本章回答什么 - 哪些比率最常用来分析盈利、流动性和风险? - 为什么比率必须和历史、目标或同行比较才有意义? - 怎样从“算出一个数字”走到“写出可信的业务解释”? ## 学习目标 读完这一页后,你应该能够: - 按盈利能力、流动性、杠杆、营运效率和市场指标分类计算常用比率。 - 用历史趋势、同行对比和会计政策附注解释比率变化。 - 把 ROE、现金转换周期和偿债指标串起来,写出有证据的财务分析结论。 ## 业务场景 银行正在评估一家零售商的授信申请。利润表显示净利润增长,但存货周转变慢、应收账款天数上升,经营现金流也偏弱。要判断这样的增长是否健康,需要结合利润、资产占用、现金回收和债务风险解读比率,而不能只看计算结果。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 分析与比较**。 - 建议先读[现金控制](https://www.pengjiaxin.com/../04-reporting-cash/14-cash-control)。 - 读完后可以接着进入[IFRS 与 US GAAP 对比](https://www.pengjiaxin.com/25-ifrs-gaap)。 ## 分析顺序:先比较,再归因 财务比率把报表中的金额联系起来,帮助我们比较企业的盈利能力、偿债能力、运营效率和现金流状况。计算之后,还要解释这些关系对经营和财务风险意味着什么。 ## 2.10.1 总体分析方法(Overall Approach) ### 计算前先统一口径 利润率比较两个期间流量;流动比率比较同一日期的两个余额;ROA、ROE 和周转率把期间流量与所使用的资源联系起来,因此通常用平均余额。最简平均数为“期初加期末,再除以二”,季节性强时应考虑月度平均数。不同年度都必须使用一致的口径。 先注明币种、金额单位、期间和公式定义。例如,“债务”指有息借款还是全部负债,会直接改变杠杆比率;速动资产是否包含可迅速变现的投资,也要说明。分母为零时比率无定义,权益为负或很小时不能把很高的 ROE 直接理解为高回报。 ### 小例子:毛利增加,毛利率为什么反而下降 以下为独立的两年比较,金额单位为元: | 项目 | 第一年 | 第二年 | | --- | ------: | ------: | | 收入 | 100,000 | 120,000 | | 毛利 | 40,000 | 42,000 | | 毛利率 | 40% | 35% | 收入增长 20%,毛利只增长 5%,因此毛利率下降 **5 个百分点**,不是“毛利减少了 5%”。若第二年仍保持 40% 的毛利率,毛利应为 48,000,比实际多 6,000。这个差额量化了需要解释的问题,不能单凭它就认定采购浪费。 分析答案可以写成:“毛利率下降 5 个百分点,但毛利额仍增长。可能是低毛利产品占比增加、售价降低或单位采购成本上涨。需要产品销量、售价、成本和存货计价资料来区分原因。”按这个顺序写:**变化 → 算法口径 → 原因假设 → 所需证据 → 结论边界**。接着用[综合决策练习](https://www.pengjiaxin.com/../../foundation/03-decision-workshop)检验流动比率相同是否代表现金风险相同。 分析时,可以依次选择比较对象、拆解变化原因,再用其他报表信息核对解释: - **分析维度**: - **时间序列(Time-Series Analysis)**:将企业当前的比率与自身过去几个会计期间(如同比YoY/环比趋势)的比率进行比较。 - **解释**:通过观察比率随时间的变化趋势,可以发现企业经营状况的改善或恶化。 - **例子**:如果一家公司的毛利率连续三年下降,这可能表明其产品竞争力下降或成本控制出现问题。 - **同行对比(Cross-Sectional Analysis)**:将企业当前的比率与同行业内其他竞争对手或行业平均水平进行比较。 - **解释**:有助于评估企业在行业中的相对地位和竞争力。 - **例子**:如果一家零售企业的存货周转天数远高于行业平均水平,可能意味着其存货管理效率低下或产品滞销。 - **目标水平(Target Level Analysis)**:将企业比率与预设的目标(如预算、历史最佳水平、管理层目标)进行比较。 - **解释**:评估企业是否达到了既定的经营目标。 - **例子**:公司设定的净利率目标是15%,如果实际净利率只有10%,则需要分析原因并采取改进措施。 - **归因框架(Attribution Framework)**: - **解释**:将财务比率的变化拆解为多个驱动因素,有助于更深入地理解变化背后的原因。 - **拆解维度**: - **规模(Sales/GMV)**:销售额或商品交易总额的增长。 - **结构(Product/Channel/Region)**:产品组合、销售渠道或区域市场的变化。 - **价格/成本(Price/Cost)**:产品定价策略或成本控制水平。 - **效率(Turnover/Utilization)**:资产周转率、资源利用率等。 - **杠杆(Capital Structure)**:资本结构(债务与权益的比例)的变化。 - **例子**:一家公司的ROE(净资产收益率)上升。通过杜邦分析(见下文),可以将其归因于净利率的提升、资产周转率的加快或财务杠杆的增加。进一步分析,净利率的提升可能是由于产品提价或成本控制得当。 - **交叉验证(Cross-Validation)**: - **解释**:不同财务报表和比率之间存在勾稽关系。分析时应将利润率的变化与现金流指标(如经营活动现金流量/净利润比率CFO/NI、现金转换周期CCC)以及营运资本(如应收账款、存货、应付账款)的变动同步验证。 - **目的**:防止“纸面利润”现象,即利润很高但现金流紧张的情况。 - **例子**:如果一家公司的净利润大幅增长,但经营活动现金流量却持续为负,这可能表明其收入确认过于激进(如大量赊销)或存货积压严重,利润质量不高。 - **注意事项(Caveats)**: - **行业差异显著**:不同行业的经营模式和风险特征差异巨大,因此在进行同行对比时,必须选择可比性强的企业。 - **季节性影响**:某些行业(如零售、旅游)存在明显的季节性,比率分析时需要考虑季节性因素,或使用滚动12个月数据。 - **会计政策选择**:企业在会计政策选择上(如存货计价方法FIFO/LIFO、折旧方法)可能存在差异,这会影响财务比率的可比性。分析时需要关注附注中的会计政策披露。 - **一次性项目**:非经常性或一次性利得/损失会扭曲当期比率,分析时应剔除其影响,以评估企业持续经营能力。 - **横向(Cross-sectional)与纵向(Time-series)对比更有意义**:单一时点的比率意义有限,结合历史趋势和行业对比才能得出有价值的结论。 ## 研究桥梁:ESG 文本是补充证据,不是装饰 比率仍是骨架,附注、可持续报告和外部数据用来检验解释。假设毛利率从 30% 升到 35%,公司同时宣称“绿色供应链显著降本”。分析师至少要追问:成本下降来自价格、产品结构还是采购?减排是否有基准年、边界、量化口径与审验?若没有,ESG 叙述不能单独证明毛利改善可持续。 | 数字信号 | 最小补充证据 | 不能直接推出 | | ----------- | ------------- | -------- | | 毛利率上升 | 价格、销量、采购和存货政策 | 经营质量必然提高 | | CFO / NI 下降 | 应收、存货、合同资产变动 | 收入一定舞弊 | | ROE 上升 | 杜邦三项与债务风险 | 股东价值一定改善 | | ESG 评分上升 | 指标边界、底层数据与审验 | 环境绩效一定改善 | [Liu、Yuan 与 Zhu(2026)](https://doi.org/10.3390/jrfm19010058){rel=""nofollow""}讨论 AI 对 ESG 披露可读性、可比性、信息含量与可信度的潜在帮助;[Janik 与 Ryszko(2026)](https://doi.org/10.3390/su18010017){rel=""nofollow""}系统梳理绿色漂洗的类型和文本测量方法;[Lehner 等(2022)](https://doi.org/10.1108/AAAJ-09-2020-4934){rel=""nofollow""}则强调 AI 会带来伦理、可解释性和责任边界问题。共同的课堂结论是:模型可以标记矛盾,最终会计结论仍要回到可追溯证据。 ## 2.10.2 盈利能力(Profitability) 盈利能力比率衡量企业赚取利润的效率。 ### 毛利率(Gross Margin) - **公式**:`Gross Margin = Gross Profit (GP) / Sales` - **解读要点**: - **上升原因**:可能来自产品提价、产品结构向高毛利产品倾斜、原材料采购成本回落、生产效率提升或存货计价方法的影响(如在通胀期,FIFO法通常会拉高毛利)。 - **会计影响**:存货计价方法(FIFO/LIFO/加权平均)会显著影响毛利、税负和存货账面价值。在通胀期,LIFO法会使销售成本更高,毛利和税负更低(US GAAP允许;IFRS禁止LIFO)。 - **例子**:一家服装公司毛利率从30%上升到35%,可能是因为推出了更多高端产品线,或者成功与供应商谈判降低了采购成本。 ### 营业利润率(Operating Margin) - **公式**:`Operating Margin = Operating Income (EBIT) / Sales` - **解读要点**: - **上升原因**:除了毛利改善外,还可能因为规模效应(如销售和管理费用SGA占销售额的比例下降)、研发效率提升或一次性营业费用减少。 - **质量验证**:分析时需剔除一次性或非经常性项目的影响,以评估企业核心经营活动的持续盈利能力。 - **例子**:一家科技公司营业利润率从15%上升到18%,可能是因为其新产品研发成功并实现规模化生产,摊薄了固定费用。 ### 净利率(Net Margin) - **公式**:`Net Margin = Net Income (NI) / Sales` - **解读要点**: - **综合性指标**:反映企业在扣除所有成本、费用和所得税后的最终盈利能力。 - **结合杜邦分析**:需结合杜邦分析(见下文)来判断净利率的变化是源于经营效率的改善,还是财务杠杆(如利息费用)或税率变化的影响。 - **例子**:一家公司净利率从8%上升到10%,可能是因为营业利润率提升,也可能是因为利息费用减少或有效税率下降。 ### 资产回报率(Return on Assets, ROA) - **公式**:`ROA = Net Income / Average Total Assets` (或 `NOPAT / Average Assets`,其中NOPAT为税后净营业利润) - **解读要点**: - **上升原因**:通常表示企业资产利用效率或利润率的提升。 - **杜邦分解**:可拆分为净利率 × 资产周转率(`ROA = Net Margin × Asset Turnover`),有助于分析ROA变化的驱动因素。 - **例子**:一家制造企业ROA从5%上升到7%,可能是因为其生产线升级提高了产能利用率(资产周转率提升),或者通过成本控制提高了净利率。 ### 权益回报率(Return on Equity, ROE) - **公式**:`ROE = Net Income / Average Equity` - **解读要点**: - **上升原因**:可能来自净利率、资产周转率或财务杠杆的提高。 - **风险提示**:若ROE主要依靠财务杠杆(Equity Multiplier)的提高而上升,需警惕企业可能承担了过高的债务风险。此时应检查利息保障倍数(Interest Coverage Ratio)和债务契约(Debt Covenants)条款。 - **例子**:一家房地产公司ROE很高,但其资产负债率也极高,这表明其高ROE可能主要依赖于高杠杆,而非经营效率。 ### 杜邦分析(DuPont Analysis) - **公式**:`ROE = Net Margin × Asset Turnover × Equity Multiplier` - `Net Margin = Net Income / Sales` (盈利能力) - `Asset Turnover = Sales / Average Total Assets` (资产周转率/运营效率) - `Equity Multiplier = Average Total Assets / Average Equity` (财务杠杆) - **诊断要点**: - **净利率上升而资产周转率下降**:可能发生在企业扩张期,大量资产沉淀尚未产生效益,或企业产品结构向高毛利、低周转(如奢侈品)方向转移。 - **资产周转率上升但净利率下降**:可能企业采取了“薄利多销”的策略,通过促销或降价来扩大销售量。 - **权益乘数上升**:表明企业增加了债务融资,提高了财务杠杆。此时需同步关注利息保障倍数(Interest Coverage Ratio)、固定费用覆盖倍数(Fixed Charge Coverage Ratio, FCCR)以及债务契约条款,以评估风险。 - **例子**:一家零售企业ROE下降。通过杜邦分析发现,其净利率和资产周转率都保持稳定,但权益乘数下降。这可能意味着公司偿还了部分债务,降低了财务风险,但也牺牲了部分ROE。 ### 每股收益(Earnings per Share, EPS) - **公式**:`EPS = Net Income / Weighted Average Number of Common Shares Outstanding` - **解读要点**: - **关注影响因素**:需留意股票回购(减少分母,提高EPS)和一次性收益(提高分子)对EPS的影响。 - **结合经营现金流**:结合经营活动现金流量(CFO)和自由现金流(FCF)来确认EPS的“含金量”,防止“纸面EPS”现象。 - **例子**:一家公司通过大量回购股票来提高EPS,但其核心业务盈利能力并未改善,甚至经营现金流恶化,这可能是一种短期操纵行为。 **示例计算**: 假设某公司数据如下: - 净利润(NI):1,040元 - 销售收入(Sales):10,000元 - 平均资产(Average Total Assets):8,000元 - 平均权益(Average Equity):4,000元 计算各项盈利能力比率: - **净利率** = 1,040 / 10,000 = 10.4% - **资产回报率(ROA)** = 1,040 / 8,000 ≈ 13.0% - **权益回报率(ROE)** = 1,040 / 4,000 ≈ 26.0% 通过杜邦分析验证ROE: - 资产周转率 = 10,000 / 8,000 = 1.25 - 权益乘数 = 8,000 / 4,000 = 2 - **ROE** = 10.4% × 1.25 × 2 = 26.0% 这个例子展示了如何计算和分解盈利能力比率,从而更全面地评估企业的盈利状况。 ## 2.10.3 偿债与资本结构(Solvency & Leverage) 偿债能力比率衡量企业偿还长期债务的能力,而资本结构比率则反映企业资产融资中债务和权益的相对比例。 ### 资产负债率(Debt-to-Assets) - **公式**:`Debt-to-Assets = Total Debt / Total Assets` - **解读要点**: - **解释**:衡量企业总资产中有多少比例是通过债务融资的。比率越高,说明企业对债务的依赖程度越高,财务风险越大。 - **例子**:一家公司的资产负债率为60%,意味着其60%的资产是由债务提供资金的。 ### 负债权益比(Debt-to-Equity) - **公式**:`Debt-to-Equity = Total Debt / Total Equity` - **解读要点**: - **解释**:衡量企业债务资本与权益资本的比例。比率越高,说明企业财务杠杆越高,债权人对企业的风险承担越大。 - **上升含义**:资本结构更激进。若伴随EBITDA/EBIT(息税折旧摊销前利润/息税前利润)改善且利息保障倍数稳定,则可能表明企业有效利用了财务杠杆。反之,若盈利能力未同步提升,则需警惕再融资风险和违约风险。 - **例子**:一家公司的负债权益比为2,意味着其债务是权益的两倍。如果其盈利能力下降,偿债压力将显著增加。 ### 利息保障倍数(Interest Coverage Ratio) - **公式**:`Interest Coverage = Earnings Before Interest and Taxes (EBIT) / Interest Expense` - **解读要点**: - **解释**:衡量企业经营所得利润支付利息费用的能力。比率越高,说明企业偿还利息的能力越强,财务风险越低。 - **下行风险**:比率下降意味着企业利润对利息的缓冲能力减弱。在经济周期下行或利率上行时,企业的偿债风险会放大。 - **例子**:一家公司EBIT为100万元,利息费用为20万元,则利息保障倍数为5倍。如果EBIT下降到30万元,利息保障倍数降至1.5倍,表明其偿债能力显著恶化。 ### 固定费用覆盖倍数(Fixed Charge Coverage Ratio, FCCR) - **口径**:FCCR 没有一条适用于所有企业与贷款契约的通用公式,应按所分析报告或契约定义计算。 - **解释**:先列出分母包含的利息、租赁付款等固定负担,再检查分子的收益指标是否已经扣除这些项目。不能在 EBITDA 中未扣租金的情况下又机械加回全部租赁付款,也要避免把租赁利息在分母重复计算。 - **解读要点**: - **用途**:综合评估企业覆盖所有固定财务负担的能力。对于租赁业务较多的企业,FCCR能更全面地反映其偿债能力。 - **例子**:一家航空公司除了利息费用外,还有大量的飞机租赁付款。FCCR能更好地评估其在考虑所有固定支出后的偿债能力。 理解这些偿债与资本结构比率,有助于评估企业的财务风险水平,特别是其长期偿债能力和资本结构的稳健性。高杠杆可能带来高回报,但也伴随着高风险。 ## 2.10.4 流动性(Liquidity) 流动性比率衡量企业偿还短期债务的能力,即企业将资产转换为现金以满足短期义务的效率。 ### 流动比率(Current Ratio) - **公式**:`Current Ratio = Current Assets / Current Liabilities` - **解读要点**: - **解释**:衡量期末流动资产对流动负债的账面覆盖程度。不存在普遍适用的 2:1 健康门槛;还要看应收账龄、存货可售性与债务到期日。 - **优点**:简单易算,是衡量短期偿债能力最常用的指标。 - **缺点**:流动资产中可能包含变现能力较差的存货,不能完全反映企业的即时偿债能力。 - **例子**:一家公司的流动资产为200万元,流动负债为100万元,则流动比率为2。这意味着公司每1元流动负债有2元流动资产作为保障。 ### 速动比率(Quick Ratio / Acid-Test Ratio) - **公式**:`Quick Ratio = (Cash + Cash Equivalents + Accounts Receivable) / Current Liabilities` - **解释**:速动比率是在流动比率的基础上,剔除了存货(通常是流动资产中变现能力最差且可能存在跌价风险的部分)和预付费用等流动性较差的资产。它衡量企业在不依赖销售存货的情况下偿还短期债务的能力。 - **解读要点**: - **更严格的资产范围**:排除存货等项目后观察覆盖程度,不能把 1:1 当作所有企业必须达到的安全线。 - **低比率**:并不必然“危险”。例如,对于快消品或零售行业,由于存货周转速度快,即使速动比率较低,也可能通过快速销售存货来产生现金。 - **风险提示**:若速动比率低,且伴随应收账款周转天数(DSO)上升、存货周转天数(DIO)上升、经营活动现金流量(CFO)/净利润(NI)比率走弱,则需关注企业可能面临的现金压力。 - **特殊情况**:速动比率低而DIO快速下降,可能表明企业正在通过清库存来换取现金。若同期毛利率也承压,则可能属于“以价换量”的策略,需要警惕其对盈利能力的长期影响。 - **例子**:一家公司的流动资产中,现金50万,应收账款50万,存货100万。流动负债100万。流动比率为2。但速动比率 = (50+50)/100 = 1。这表明公司在不销售存货的情况下,也能覆盖短期债务。 ### 现金比率(Cash Ratio) - **公式**:`Cash Ratio = (Cash + Cash Equivalents) / Current Liabilities` - **解读要点**: - **最保守的衡量**:仅考虑企业最即时的现金和现金等价物来覆盖短期债务的能力。 - **优点**:反映企业最强的即时偿债能力。 - **缺点**:比率通常较低,且可能无法完全反映企业的真实流动性,因为应收账款等资产通常也能在短期内变现。 - **例子**:一家公司的现金和现金等价物为30万元,流动负债为100万元,则现金比率为0.3。 理解这些流动性比率,有助于评估企业应对短期财务压力的能力,避免因现金短缺而陷入困境。分析时应结合企业的经营模式、行业特点和营运资本管理策略进行综合判断。 ## 2.10.5 运营效率(Efficiency / Activity) 运营效率比率衡量企业利用其资产和负债产生销售收入的效率。 ### 资产周转率(Asset Turnover) - **公式**:`Asset Turnover = Sales / Average Total Assets` - **解读要点**: - **解释**:衡量企业每单位资产能够产生多少销售收入。比率越高,说明资产利用效率越高。 - **杜邦联系**:资产周转率是杜邦分析的重要组成部分,与净利率、权益乘数共同决定ROE。 - **例子**:一家零售企业的资产周转率通常高于重资产的制造业企业,因为零售业的资产(如存货)周转速度快。 ### 存货周转率(Inventory Turnover)与存货周转天数(Days Inventory Outstanding, DIO) - **公式**: - `Inventory Turnover = Cost of Goods Sold (COGS) / Average Inventory` - `DIO = 365 / Inventory Turnover` - **解读要点**: - **解释**:存货周转率衡量企业销售存货的速度。DIO则表示存货从购入到销售平均需要多少天。比率越高(DIO越低),说明存货管理效率越高。 - **上升含义**:存货周转率下降(DIO上升)可能意味着市场需求放缓、企业备货过量、产品滞销或新品爬坡不顺。 - **风险提示**:若DIO上升,且同期应收账款周转天数(DSO)也上升,应付账款周转天数(DPO)持平或下降,则现金转换周期(CCC)会拉长,企业现金占用变重,可能面临流动性压力。 - **例子**:一家电子产品制造商的DIO从60天上升到90天,可能表明其新产品销售不如预期,导致库存积压。 ### 应收账款周转率(Accounts Receivable Turnover)与应收账款周转天数(Days Sales Outstanding, DSO) - **公式**: - `AR Turnover = Credit Sales / Average Trade Receivables` - `DSO = 365 / AR Turnover` - **解读要点**: - **解释**:应收账款周转率衡量企业收回应收账款的速度。DSO则表示企业从销售到收回现金平均需要多少天。比率越高(DSO越低),说明应收账款管理效率越高。 - **上升含义**:应收账款周转率下降(DSO上升)可能意味着企业信用政策放宽、客户议价能力加强、收款效率下降或坏账风险增加。 - **风险提示**:如坏账率抬头,需及时调整坏账备抵模型。 - **例子**:一家B2B软件公司的DSO从30天上升到45天,可能表明其为了争取客户而延长了信用期,或者客户的付款能力下降。 ### 应付账款周转天数(Days Payable Outstanding, DPO) - **公式**:`DPO = 365 × Average Trade Payables / Credit Purchases` - **口径说明**:赊销对应应收,赊购对应应付。资料不足时才用总销售额或销售成本作代理,并明确披露;采购与销售成本在存货增减时并不相等。参考 [ACCA 的营运资金分析](https://www.accaglobal.com/gb/en/student/exam-support-resources/fundamentals-exams-study-resources/f9/technical-articles/wcm.html){rel=""nofollow""}。 - **解读要点**: - **解释**:DPO衡量企业支付供应商款项的平均天数。 - **上升含义**:DPO上升意味着企业延长了支付供应商款项的时间,这可以改善企业的现金流。 - **风险提示**:过度延长DPO可能引发供应商关系紧张,甚至可能导致企业失去早付折扣,增加采购成本。 - **例子**:一家零售商将DPO从45天延长到60天,可以使其在不增加外部融资的情况下,获得更多的营运资金。 ### 现金转换周期(Cash Conversion Cycle, CCC) - **公式**:`CCC = DIO + DSO - DPO` - **解读要点**: - **解释**:CCC衡量企业从投入现金购买存货到最终收回现金所需要的时间。CCC越短,说明企业营运资金管理效率越高,对现金的占用越少。 - **缩短含义**:经营现金效率改善。 - **风险提示**:若CCC的缩短主要依赖于DPO的拉长,而非DIO或DSO的优化,则需要评估这种策略的可持续性,以及其对供应商关系的影响。 - **例子**:一家公司通过优化生产流程,将DIO从50天降至40天;通过改进收款政策,将DSO从40天降至35天;同时将DPO从30天延长至35天。则CCC从 (50+40-30)=60天 缩短到 (40+35-35)=40天,显著改善了现金流。 ## 可运行例题:一张诊断表同时看 ROE 与 CCC 高 ROE 和短 CCC 不一定都是“好消息”。需要先拆解它们的构成,再结合业务背景判断。 本例假设销售全部为赊销。由于没有单独的采购资料,暂用销售成本代理赊购额,因此计算出的 CCC 也受这一假设限制。取得采购额或发现存货明显变化后,应重新计算;估计天数不能直接当作客户或供应商的实际合同账期。 ::pyodide --- code64: Y29tcGFueSA9IHsKICAgICJzYWxlcyI6IDEwXzAwMC4wLAogICAgIm5ldF9pbmNvbWUiOiAxXzA0MC4wLAogICAgImF2Z19hc3NldHMiOiA4XzAwMC4wLAogICAgImF2Z19lcXVpdHkiOiA0XzAwMC4wLAogICAgImNvZ3MiOiA2XzAwMC4wLAogICAgImF2Z19pbnZlbnRvcnkiOiAxXzAwMC4wLAogICAgImF2Z19yZWNlaXZhYmxlcyI6IDkwMC4wLAogICAgImF2Z19wYXlhYmxlcyI6IDgwMC4wLAp9CgpuZXRfbWFyZ2luID0gY29tcGFueVsibmV0X2luY29tZSJdIC8gY29tcGFueVsic2FsZXMiXQphc3NldF90dXJub3ZlciA9IGNvbXBhbnlbInNhbGVzIl0gLyBjb21wYW55WyJhdmdfYXNzZXRzIl0KZXF1aXR5X211bHRpcGxpZXIgPSBjb21wYW55WyJhdmdfYXNzZXRzIl0gLyBjb21wYW55WyJhdmdfZXF1aXR5Il0Kcm9lID0gbmV0X21hcmdpbiAqIGFzc2V0X3R1cm5vdmVyICogZXF1aXR5X211bHRpcGxpZXIKCmRpbyA9IDM2NSAqIGNvbXBhbnlbImF2Z19pbnZlbnRvcnkiXSAvIGNvbXBhbnlbImNvZ3MiXQpkc28gPSAzNjUgKiBjb21wYW55WyJhdmdfcmVjZWl2YWJsZXMiXSAvIGNvbXBhbnlbInNhbGVzIl0KZHBvID0gMzY1ICogY29tcGFueVsiYXZnX3BheWFibGVzIl0gLyBjb21wYW55WyJjb2dzIl0KY2NjID0gZGlvICsgZHNvIC0gZHBvCgpwcmludChmIlJPRT17cm9lOi4xJX0gPSDlh4DliKnnjocge25ldF9tYXJnaW46LjElfSDDlyDotYTkuqflkajovawge2Fzc2V0X3R1cm5vdmVyOi4yZn0gw5cg5p2D55uK5LmY5pWwIHtlcXVpdHlfbXVsdGlwbGllcjouMmZ9IikKcHJpbnQoZiJDQ0M9e2NjYzouMWZ9IOWkqSA9IERJTyB7ZGlvOi4xZn0gKyBEU08ge2RzbzouMWZ9IC0gRFBPIHtkcG86LjFmfSIpCmFzc2VydCBhYnMocm9lIC0gY29tcGFueVsibmV0X2luY29tZSJdIC8gY29tcGFueVsiYXZnX2VxdWl0eSJdKSA8IDFlLTEy layout: vertical locale: zh title: Python:杜邦分解与现金转换周期 --- :: 得出结果后,先与去年和同行比较,再判断能否称得上“优秀”。尤其要检查:ROE 是否主要由权益乘数推高,CCC 是否主要靠推迟向供应商付款而缩短。 ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 要判断企业“好不好”“稳不稳”,需要联系各张报表中的金额;财务比率提供了具体的比较方法。 - **这一节的知识有什么用?** - 分别分析盈利能力、偿债能力、营运效率和成长性,再综合判断企业的表现。 - 在考试和实践中,财务比率是写分析题和投资建议的基本语言。 - **在题目或工作中怎么用?** - 做题时: - 先按类别整理指标(盈利性、流动性、杠杆、周转、市场价值等),逐类计算并与历史/同行比较; - 回到业务背景,解释指标变化背后的原因,而不是只描述“上升/下降”。 - 实务中: - 构建自己的“必算指标清单”(例如ROE拆解、杠杆水平、CCC、毛利率等); - 结合行业特性设定合理区间,发现异常值后再做深入分析。 - **用好了会得到什么结果?** - 用少量关键指标说明企业的财务状况,并解释数字之间的联系。 - 为估值、信用评级和投融资决策提供定量依据。 ## 常见错误 - 没有比较基准就解释数字。单个比率必须放到历史、同行、预算或契约要求中理解。 - 只看利润率,不看现金流、周转和坏账风险。 - 把 ROE 上升直接理解为经营改善,忽略杠杆提高也会推高 ROE。 - 比较 IFRS 与 US GAAP 企业时,忽略存货、租赁、研发和重估政策差异。 ## 快速检查 1. 为什么高 ROE 可能反而提示更高风险? 2. CCC 缩短一定是好事吗? 3. 毛利率上升时,至少应检查哪两类原因? ::legacy-spoiler{title="参考答案"} 1. 如果来自权益乘数上升,可能是债务杠杆提高,而不是经营效率改善。 2. 不一定。若主要靠拖延付款提高 DPO,可能损害供应商关系。 3. 价格/产品结构变化,以及成本、存货计价或一次性因素。 :: ## 下一章 本章把报表数字转成分析语言;下一章提醒你在跨企业比较前先检查准则差异。继续读[IFRS 与 US GAAP 对比](https://www.pengjiaxin.com/25-ifrs-gaap)。 # 25. IFRS 与 US GAAP 对比 ## 本章回答什么 - IFRS 和 US GAAP 在哪些领域最容易出现差异? - 准则差异会怎样改变利润、资产、负债或比率表现? - 为什么在比较企业之前,必须先确认它们使用的报告框架? ## 学习目标 读完这一页后,你应该能够: - 识别存货、研发、租赁、固定资产和递延税等高频准则差异。 - 判断准则差异会影响利润、资产负债表,还是主要影响列报。 - 在跨公司分析中说明哪些比率需要调整,哪些差异只是披露提醒。 ## 业务场景 投资者正在比较一家欧洲软件公司和一家美国软件公司。两家公司研发投入相近,但欧洲公司按 IFRS 将部分开发支出资本化,美国公司按 US GAAP 多数费用化。若不调整,欧洲公司的资产和当期利润可能看起来更高。这就是准则差异会被误读成经营差异的典型场景。 ## 在主线中的位置 - 这一章属于 **财务会计 -> 分析与比较**。 - 建议先读[财务比率分析](https://www.pengjiaxin.com/15-ratio-analysis)。 - 读完后进入[2026 准则更新与报告案例](https://www.pengjiaxin.com/27-current-standards-2026),再转入管理会计。 这不是完整准则手册,而是一个比较入口。 真正要回答的问题是:同一笔业务在不同框架下,利润、资产和列报会怎么变? ## 核心直觉 “IFRS 原则导向、US GAAP 规则导向”只能作为历史上的粗略提醒,不能拿来替代具体准则。两个体系都包含原则、定义、例外、实施指引和职业判断。比较时应定位到同一交易、同一报告期和同一会计问题,再检查确认、计量、列报与披露是否真的不同。 ## 高频差异点 | 项目 | IFRS | US GAAP | 为什么重要 | | ----- | -------------- | ------------------ | -------------- | | 存货 | 不允许 LIFO | 允许 LIFO | 影响销售成本、期末存货和税负 | | 研发 | 开发阶段可能资本化 | 多数研发费用化 | 影响资产和当期利润 | | 租赁 | 大多数租赁进表,但列报更统一 | 也进表,但经营租赁和融资租赁列报不同 | 影响费用模式和杠杆分析 | | 固定资产 | 允许重估模型 | 不允许重估模型 | 影响账面价值和 OCI | | 递延所得税 | 符合确认条件才确认 | 先确认,再看估值备抵 | 影响资产和所得税费用 | ## 分析时怎么用 1. 先看会计政策附注。 2. 判断差异影响的是利润、资产,还是只是列报。 3. 只对真正改变结论的项目做调整。 4. 比较两家公司时,不要把制度差异误认为经营差异。 ## 常见错误 - 不看存货方法就直接比毛利率。 - 把租赁当成只影响资产负债表。 - 忽略固定资产重估对资产和 OCI 的影响。 - 比较税项时不看递延所得税处理。 ## 快速检查 1. 为什么存货方法会影响跨公司比较? 2. 哪个框架更可能允许开发支出资本化? 3. 比较两家公司前,先看哪一项资料? ::legacy-spoiler{title="参考答案"} 1. 因为它会影响销售成本、期末存货和利润。 2. IFRS,在满足开发资本化条件时。 3. 会计政策附注。 :: ## 下一章 本章建立跨准则比较视角;下一页把方法用于有明确状态与生效日期的最新材料。继续读[2026 准则更新与报告案例](https://www.pengjiaxin.com/27-current-standards-2026),之后再进入[成本概念](https://www.pengjiaxin.com/../../management-accounting/01-cost-foundations/16-cost-concepts)。 # 2026 准则更新与报告案例:从 IFRS 18 到可审计管理指标 会计学习最危险的错误之一,是把“已经发布”“已经生效”和“仍在讨论”混成一件事。本章以 **2026 年 8 月 1 日** 为资料截止日,用四个短案例训练一种可迁移能力:先识别规则状态,再分析它改变了确认、计量、列报还是披露。 ::warning{title="时间边界"} 本页是课程案例,不替代企业适用法域的正式准则、监管规则与专业判断。未来阅读时,应先重新核对生效日期和后续修订。 :: ## 学习目标 完成本章后,你应该能够: 1. 区分“2026 年已生效”“已发布但 2027 年生效”和“暂定议程决定”; 2. 解释 IFRS 18 为什么同时改变利润表小计、管理层自定义业绩指标和费用分拆; 3. 判断子公司是否可能选择 IFRS 19 的简化披露; 4. 说明新披露为何不等于企业经济活动发生变化; 5. 为管理指标保留一条可以复算、复核和审计的调节链。 ## 先看状态,不先背编号 | 事项 | 截至资料日的状态 | 最早强制时间 | 学习重点 | | ------------------------------- | ------------ | -------------------- | -------------------------- | | IFRS 9 / IFRS 7 的若干修订 | 已生效 | 2026-01-01 | 金融工具分类、电子支付结算、自然依赖型电力合同及披露 | | IFRS 18 | 已发布,尚未强制 | 2027-01-01 | 利润表类别与小计、MPM、汇总与分拆 | | IFRS 19 | 已发布,尚未强制 | 2027-01-01 | 合资格子公司在保持 IFRS 确认计量的同时减少披露 | | FASB ASU 2024-03 | 已发布,尚未强制 | 年度期间始于 2026-12-15 之后 | 美国公众企业在附注中分拆指定费用 | | 2026 年 6 月 IFRIC 的若干 IFRS 18 事项 | 暂定议程决定,曾开放意见 | 不是新准则生效日 | 学会把解释讨论与正式要求分开 | 一句话判断法:**先问“它现在是什么状态”,再问“它改变四个层次中的哪一层”。** :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRXZlbnRbIue7j+a1juS6i+mhuSJdIC0tPiBSZWNvZ25pdGlvblsi56Gu6K6kIl0KICBSZWNvZ25pdGlvbiAtLT4gTWVhc3VyZW1lbnRbIuiuoemHjyJdCiAgTWVhc3VyZW1lbnQgLS0+IFByZXNlbnRhdGlvblsi5YiX5oqlIl0KICBQcmVzZW50YXRpb24gLS0+IERpc2Nsb3N1cmVbIuaKq+mcsiJd" locale="zh"} IFRS 18 的主要变化集中在列报和披露;它并不因为重新定义小计,就自动改变每笔收入和费用的确认金额。 ## 案例一:IFRS 18 下的经营利润与 MPM IFRS 18 将取代 IAS 1,要求利润表列示两个新的规定小计:**经营利润**,以及**融资和所得税前利润**。它还要求披露符合定义的管理层自定义业绩指标(management-defined performance measures, MPM),并强化汇总与分拆原则。 ### 最小案例 云岭科技本年数据如下,单位为万元: | 项目 | 金额 | | ------- | ----: | | 收入 | 1,000 | | 销售成本 | (600) | | 销售及管理费用 | (180) | | 重组费用 | (40) | | 财务费用 | (30) | | 所得税费用 | (38) | 在这个简化事实设定中,前三类费用均归入经营类别: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[经营利润]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[600]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[180]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[40]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[180.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 管理层在业绩公告中使用“调整后经营利润”,排除 40 万元重组费用,因此该指标为 220 万元。重点不是争论 220 是否“更真实”,而是让读者看见从 220 回到 IFRS 小计 180 的完整路径。 | 调节项目 | 金额 | 解释 | | ---------- | ---: | ------------- | | 调整后经营利润 | 220 | 管理层使用的 MPM | | 减:被排除的重组费用 | (40) | 已计入 IFRS 经营利润 | | IFRS 经营利润 | 180 | 准则规定小计 | MPM 不是“想写什么就写什么”。企业需要说明该指标表达的业绩视角、计算方式,并调节到最直接可比的 IFRS 小计或总计;对调节项目还要处理所得税与非控制性权益影响。并非所有 KPI 都属于 MPM,是否属于要按 IFRS 18 的定义逐项判断。 ### 可运行核对:让调节表自己证明能对上 把金额或税率改掉,再运行。程序故意把“管理口径”和“准则口径”分开保存,以免调整项被悄悄净额化。 ::pyodide --- code64: cmVwb3J0ZWRfb3BlcmF0aW5nX3Byb2ZpdCA9IDE4MC4wCmFkanVzdG1lbnRzID0gWwogICAgeyJuYW1lIjogIumHjee7hOi0ueeUqCIsICJwcmVfdGF4IjogNDAuMCwgInRheF9yYXRlIjogMC4yNSwgIm5jaV9lZmZlY3QiOiAwLjB9LApdCgphZGp1c3RlZF9vcGVyYXRpbmdfcHJvZml0ID0gcmVwb3J0ZWRfb3BlcmF0aW5nX3Byb2ZpdCArIHN1bSgKICAgIGl0ZW1bInByZV90YXgiXSBmb3IgaXRlbSBpbiBhZGp1c3RtZW50cwopCgpwcmludChmIueuoeeQhuWxguWPo+W+hO+8muiwg+aVtOWQjue7j+iQpeWIqea2piB7YWRqdXN0ZWRfb3BlcmF0aW5nX3Byb2ZpdDouMWZ9IikKZm9yIGl0ZW0gaW4gYWRqdXN0bWVudHM6CiAgICB0YXhfZWZmZWN0ID0gaXRlbVsicHJlX3RheCJdICogaXRlbVsidGF4X3JhdGUiXQogICAgb3duZXJzX2VmZmVjdCA9IGl0ZW1bInByZV90YXgiXSAtIHRheF9lZmZlY3QgLSBpdGVtWyJuY2lfZWZmZWN0Il0KICAgIHByaW50KAogICAgICAgIGYi6LCD6IqC6aG577yae2l0ZW1bJ25hbWUnXX0ge2l0ZW1bJ3ByZV90YXgnXTouMWZ977ybIgogICAgICAgIGYi56iO5Yqh5b2x5ZONIHt0YXhfZWZmZWN0Oi4xZn3vvJvlvZLlsZ7kuo7mr43lhazlj7jlvbHlk40ge293bmVyc19lZmZlY3Q6LjFmfSIKICAgICkKCnJlY29uY2lsZWQgPSBhZGp1c3RlZF9vcGVyYXRpbmdfcHJvZml0IC0gc3VtKAogICAgaXRlbVsicHJlX3RheCJdIGZvciBpdGVtIGluIGFkanVzdG1lbnRzCikKcHJpbnQoZiLosIPlm54gSUZSUyDnu4/okKXliKnmtqbvvJp7cmVjb25jaWxlZDouMWZ9IikKYXNzZXJ0IGFicyhyZWNvbmNpbGVkIC0gcmVwb3J0ZWRfb3BlcmF0aW5nX3Byb2ZpdCkgPCAxZS05 layout: vertical locale: zh title: Python:IFRS 18 MPM 调节与税务影响 --- :: ::tip{title="教学诊断"} 若“调整后利润”年年排除不同的正常经营费用,数字即使能调节,也可能缺乏跨期可比性。计算正确只是起点,政策是否一致、名称是否忠实仍需判断。 :: ## 案例二:IFRS 19 是少披露,不是换一套计量 甲集团公开发布符合 IFRS 的合并财务报表。其全资制造子公司乙公司没有公开交易的债券或股票,也不以受托方式为广泛外部群体持有资产。乙公司可能符合 IFRS 19 的资格条件。 判断只需两问: 1. 子公司是否**没有公共受托责任**? 2. 母公司是否公开提供符合 IFRS 的合并财务报表? 两问均为“是”,才进入可选择范围。乙公司仍按其他 IFRS 准则确认和计量收入、存货、租赁等,只把原本分散在其他准则中的披露要求替换为 IFRS 19 的较少披露。银行、保险公司等常因以受托方式持有广泛外部群体资产而具有公共受托责任,不能只凭“它是子公司”就认定合资格。 ## 案例三:2026 年已经生效的修订 IFRS Foundation 的 2026 年汇编说明列出三组自 2026 年 1 月 1 日起生效的内容:金融工具分类与计量修订、第 11 卷年度改进,以及自然依赖型电力合同修订。 设想一家数据中心签订长期风电合同。实际发电量由天气决定,企业的用电需求也随时段变化。旧式课堂题若只写“买电自用,所以不是金融工具问题”,会忽略合同数量、结算与风险管理安排。正确做法是先阅读合同: - 交付量如何由自然条件决定; - 企业是否仍以预期使用为目的承接电力; - 是否存在净额结算或差额结算; - 若指定套期关系,风险管理目标和数量如何匹配; - 报表使用者需要哪些合同、风险和现金流信息。 这个案例的教学重点不是在没有完整合同的情况下给出武断分类,而是识别“为什么 2026 年修订需要更贴近此类合同的经济效果”。 ## 案例四:US GAAP 下费用信息为什么要拆开 FASB 的 ASU 2024-03 面向公众企业,要求在财务报表附注中提供指定成本与费用的分拆信息。假设利润表只列示“销售成本 600 万元”,附注可能进一步帮助投资者看见: | 销售成本中的性质类别 | 金额 | | ---------- | --: | | 存货采购相关成本 | 320 | | 员工薪酬 | 150 | | 折旧 | 50 | | 其他 | 80 | | 合计 | 600 | 同样是 600 万元,采购价格上涨、员工投入增加与折旧上升代表完全不同的现金流前景。分拆披露没有改变总费用,却降低了“一个大数遮住多种驱动因素”的信息损失。该要求适用于公众企业,年度期间自 2026 年 12 月 15 日之后开始时生效;过渡期还要注意年度与中期的不同时间安排。 ## 如何阅读 2026 年 IFRIC 讨论 2026 年 6 月,IFRS Interpretations Committee 讨论了多个 IFRS 18 问题,包括含假设性收入或费用的 MPM、何为“公开沟通”,以及若干利润表分类问题。当时相关项目以暂定议程决定形式开放意见至 2026 年 9 月 9 日。 因此,课程里应写: > 委员会的暂定分析显示,现有 IFRS 18 原则可能已提供足够判断基础。 不应写: > IFRIC 已发布一项新的强制准则,统一规定所有相关交易。 研究生层面的准则阅读,首先是一种**文本状态识别能力**:标准、修订、议程决定、暂定议程决定、工作人员材料和新闻摘要的权威层级不同。 ## 文献桥梁:AI 能加速处理,不能替代可审计判断 Li 与 Vasarhelyi(2024)用会计任务比较多种大语言模型应用方式,说明模型可以帮助抽取与组织信息;Mustafa、Smolarski 与 Elamer(2025)对 135 篇研究作系统综述,指出 AI 与可持续报告结合仍面临准确性、透明度和治理问题。2026 年的一项进一步系统综述把讨论延伸到可持续财务报告与 ESG 披露。 把这些文献落到本章案例,AI 可以: - 从公告中定位管理层使用的指标; - 提取调节项目并生成初步调节表; - 比对年度间指标名称和口径是否改变; - 标记附注中缺少来源或无法复算的金额。 但最终仍要由人确认:某项指标是否满足 MPM 定义、调整是否忠实、税务影响是否合理、文本是否属于公开沟通。**自动抽取是流程能力,准则结论是有证据边界的专业判断。** ## 课堂任务:十分钟准则审计 任选一家企业最近一期年报或业绩公告,完成一页记录: 1. 写出报告框架、报告期间和资料发布日期; 2. 找到一个非准则业绩指标,抄录其名称而非整段原文; 3. 画出该指标到最近准则小计的调节链; 4. 标出每个调整项、税务影响与口径是否跨期一致; 5. 给结论加状态标签:事实、公司判断、你的推断,或待核实。 评价标准只有三项:**能复算、能追溯、不过度承诺。** ## 一手资料与延伸阅读 ### 准则与制定机构 - [IFRS Foundation:IFRS 18 概览与生效日期](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-18-presentation-and-disclosure-in-financial-statements/){rel=""nofollow""} - [IFRS Foundation:IFRS 19 概览与生效日期](https://www.ifrs.org/issued-standards/list-of-standards/ifrs-19-subsidiaries-without-public-accountability-disclosures/){rel=""nofollow""} - [IFRS Foundation:IFRS 19 合资格子公司的关键术语](https://www.ifrs.org/supporting-implementation/supporting-materials-by-ifrs-standards/ifrs-19/key-terms/){rel=""nofollow""} - [IFRS Foundation:2026 年必需准则版本的变动说明(PDF)](https://www.ifrs.org/content/dam/ifrs/shop/bb2026-changesinthisedition.pdf){rel=""nofollow""} - [FASB:费用分拆项目、范围与生效日期](https://fasb.org/page/PageContent?pageId=%2Fprojects%2Frecently-completed-projects%2Fdisaggregation-income-statement-expenses.html){rel=""nofollow""} - [IFRS Interpretations Committee:2026 年 6 月更新](https://www.ifrs.org/news-and-events/updates/ifric/2026/ifric-update-june-2026/){rel=""nofollow""} ### 近期研究 - Li, H., & Vasarhelyi, M. A. (2024). [Applying Large Language Models in Accounting](https://doi.org/10.2308/JETA-2023-065){rel=""nofollow""}. *Journal of Emerging Technologies in Accounting*, 21(2), 133–152. - Mustafa, F., Smolarski, J., & Elamer, A. A. (2025). [The Convergence of Artificial Intelligence and Sustainability Reporting](https://doi.org/10.1002/bse.70090){rel=""nofollow""}. *Business Strategy and the Environment*, 34(8), 9761–9784. - Al Amosh, H. (2025). [Exploring the Influence of Accounting Reporting Complexity on ESG Disclosure](https://doi.org/10.1002/csr.70000){rel=""nofollow""}. *Corporate Social Responsibility and Environmental Management*, 32(5), 5760–5778. 这是一项观察性研究,适合讨论关联与机制,不应仅凭回归结果断言因果。 - Vilchez Olivares, P. A., & Astorga De La Cruz, B. J. (2026). [AI and Data Analytics in Sustainable Financial Reporting and ESG Disclosure](https://doi.org/10.3390/su18115393){rel=""nofollow""}. *Sustainability*, 18(11), 5393. ## 带走一句话 新准则学习不是背一张“变化清单”,而是建立一条可靠链条:**状态 -> 适用范围 -> 会计层次 -> 数字案例 -> 披露证据 -> 结论边界**。 # 5. 分析与比较 []{#_5-分析与比较} 这个模块的重点不再是“怎么记”,而是“怎么读、怎么解释、怎么比较”。 报表分析不是把公式算完就结束。一个比率只有放进企业所在行业、历史趋势、竞争对手、资本结构和会计政策背景里,才有解释意义。准则比较也不是为了记差异清单,而是为了理解同一经济活动在不同报告规则下可能呈现出不同数字。 ## 这个模块回答什么 - 盈利能力、流动性和风险比率到底说明什么? - 为什么比率必须在比较中解读,而不是单独看数字? - IFRS 和 US GAAP 的差异会怎样影响我们看到的报表结果? ## 讲义内容 | 讲义 | 重点 | | ---------------------------------------------------------------------- | --------------------------------- | | [财务比率分析](https://www.pengjiaxin.com/15-ratio-analysis) | 盈利、流动性、资本结构和解释方法 | | [IFRS 与 US GAAP 对比](https://www.pengjiaxin.com/25-ifrs-gaap) | 会影响确认和计量的关键准则差异 | | [2026 准则更新与报告案例](https://www.pengjiaxin.com/27-current-standards-2026) | 区分已生效、已发布与暂定事项,并练习 IFRS 18 管理指标调节 | ## 学完应能做到 - 把比率分成盈利能力、流动性、营运效率和偿债风险等类别。 - 说明同一个比率在不同行业或不同商业模式下可能有不同含义。 - 用趋势和同业比较补充单期数字。 - 识别会计政策和 IFRS / US GAAP 差异对可比性的影响。 - 按状态、适用范围和生效日期阅读最新准则材料。 - 写出有背景、有边界的分析结论,而不是只给出“好”或“不好”的判断。 ## 常见误区 - 用一个比率代表整家企业。 - 看流动比率时不看营运资本质量。 - 忽视会计政策和准则差异对可比性的影响。 ::tip{title="练习建议"} 每算一个比率,都补一句解释:它衡量什么、可能受什么会计政策影响、还需要和什么对象比较。没有解释的比率通常不能单独支持结论。 :: ## 下一步 进入 [管理会计](https://www.pengjiaxin.com/../../management-accounting/) 后,学习重点会从外部报表解释转向内部计划、控制和决策。 # 财务会计 []{#财务会计} []{#金融会计} 财务会计讲的是:企业业务如何一步一步变成对外财务报告。它既包括记账技术,也包括确认、计量、列报和解释。真正学懂这一部分,不是只会写分录,而是能说明一笔业务为什么这样记录、为什么在这个期间确认,以及最后会怎样影响报表。 这一部分的主线是: `业务发生 -> 记录 -> 调整 -> 报表 -> 分析` 前两个模块解释记录的依据,中间两个模块讨论金额和期间的判断,最后一个模块说明怎样阅读和比较报表。后面的分析依赖前面的记录与计量,因此理解一个比率时,也要能回头说明它的分子和分母是怎样形成的。 ## 模块顺序 | 模块 | 主要问题 | 入口 | | -------- | ------------------ | -------------------------------------------------------------- | | 1. 基础 | 会计为什么存在,什么让系统保持平衡? | [进入模块](https://www.pengjiaxin.com/01-foundations/) | | 2. 交易记录 | 业务如何变成分录、分类账和余额? | [进入模块](https://www.pengjiaxin.com/02-recording-transactions/) | | 3. 计量与调整 | 期末哪些项目必须更新,为什么? | [进入模块](https://www.pengjiaxin.com/03-measurement-adjustments/) | | 4. 报表与现金 | 调整后数字如何进入报表和现金视角? | [进入模块](https://www.pengjiaxin.com/04-reporting-cash/) | | 5. 分析与比较 | 怎样解释报表并比较不同准则? | [进入模块](https://www.pengjiaxin.com/05-analysis-comparison/) | ## 学完这一部分应能做到 - 解释会计信息为什么强调相关性、可靠性和可比性。 - 根据业务判断资产、负债、权益、收入和费用的变化。 - 写出基础交易分录,并把分录和 T 账户、试算平衡联系起来。 - 说明收入确认、存货、应收、固定资产、无形资产、租赁和所得税为什么需要期末计量或调整。 - 从调整后余额理解利润表、权益变动表、资产负债表和现金控制之间的关系。 - 用比率和准则差异解释报表,而不是孤立地背公式。 ## 读这一部分时要记住 - 会计等式是底层逻辑。 - 借贷规则是记录机制。 - 调整分录把已记录的金额更新到恰当的期间和期末余额。 - 报表是同一套记录的不同展示。 - 比率必须放在比较和背景中解释。 ::tip{title="练习建议"} 每学完一个专题,试着用一句业务描述、一组分录、一个账户影响和一个报表影响来复述它。能把这四层连起来,比单独记公式更可靠。 :: ## 接到下一部分 学完财务会计后,你已经知道企业怎样对外报告。管理会计会把视角转到企业内部:同样是成本、收入和现金流,管理者更关心的是计划是否合理、偏差从哪里来、哪个方案更值得执行。 # 从期末调整到完整报表 []{#从期末调整到完整报表} 期末调整连接的是账簿目前记录的金额与期末应报告的金额。理解一项调整时,先分清已经记了多少、期末应该是多少,以及还需要补记或转回多少。这个区别同时决定分录怎样写、报表怎样变化。 下面以虚构独资商店 **Harbour Cycle Supplies** 为例,观察截至 **20X2 年 12 月 31 日**的年度记录,金额均为英镑。本原创案例独立于 Northstar 和其他练习数据。忽略增值税、所得税和利息,假设没有其他业务或调整。£20,000 银行借款在报告日后超过十二个月才到期。 顺着底稿往下读,可以看到调整怎样进入试算平衡表,再影响利润、资本和财务状况。如果还不熟悉借贷方向,可先查看[复式记账](https://www.pengjiaxin.com/../financial-accounting/02-recording-transactions/04-double-entry-dr-cr)。 ## 先理解分录背后的关系 预付保险费、存货和设备都能帮助我们理解:一项成本可以先保留在资产中,之后再确认为费用,但进入费用的方式并不相同。保险费按保障期间分配,存货在出售时结转为销售成本,设备则通过折旧在使用寿命内分配应折旧金额。具体路径取决于业务事实和适用的会计处理。 应付工资从另一个方向说明同样的时间问题:员工的劳动属于本期,即使以后才付款,本期也需要确认费用和负债。两者同时记录,才能把本期经营成果与期末财务状况联系起来。因此,一项调整或费用并不必然意味着当期有现金付款。 ## 1. 调整前试算平衡表 本题采用**定期盘存制**。存货账户目前记录的仍是期初存货,购货和购货退回分别记账,销售成本尚未结转。期末存货根据实物盘点确定。作答时请沿用这一口径,不要混入其他章节中永续盘存制的分录。 | 账户 | 借方 £ | 贷方 £ | | ------ | ----------: | ----------: | | 现金 | 12,000 | 0 | | 应收账款 | 18,000 | 0 | | 期初存货 | 10,000 | 0 | | 设备原价 | 40,000 | 0 | | 购货 | 36,000 | 0 | | 销售退回 | 2,000 | 0 | | 保险费用 | 6,000 | 0 | | 工资费用 | 14,000 | 0 | | 水电费用 | 3,000 | 0 | | 业主提款 | 4,000 | 0 | | 期初资本 | 0 | 40,000 | | 银行借款 | 0 | 20,000 | | 应付账款 | 0 | 15,000 | | 销售收入 | 0 | 64,000 | | 累计折旧 | 0 | 4,000 | | 购货退回 | 0 | 2,000 | | **合计** | **145,000** | **145,000** | 补充信息: 1. £6,000 保险费覆盖 20X2 年 9 月至 20X3 年 2 月,共六个月,按月均匀分配;付款时全部计入了费用。 2. 12 月员工已赚取但尚未记录的工资为 £1,000,将在 1 月支付。 3. 设备本年度全年可供使用,原价 £40,000、预计残值 £4,000、使用寿命六年,采用直线法。期初累计折旧已经列在表内。 4. 年末前又退回了本年赊购商品 £1,200;退货及对应未付账款的减少均未记账。 5. 退货完成后的盘点显示,期末存货成本为 £12,000,假设不需要减记。 ## 2. 怎样读这个例题 依次阅读 W1–W5,按需要展开底稿。每一项都先找出已记金额和应有余额,再看调整后的余额怎样进入报表。复习时可以关闭解答,尝试重新推导。如果合计不一致,应查明差额,不能添加没有依据的现金或资本来凑平衡。 ## 3. 工作底稿与分录 ::legacy-spoiler{title="W1–W4:跨期、折旧与退货"} | 底稿 | 计算 | 借方 | 贷方 | | ------- | ---------------------------------------------- | ------------ | ----------- | | W1 保险 | £6,000 × 2/6 = £2,000 属于下一年度,本年费用 £4,000 | 预付保险费 £2,000 | 保险费用 £2,000 | | W2 工资 | £14,000 + £1,000 = £15,000 费用 | 工资费用 £1,000 | 应付工资 £1,000 | | W3 折旧 | (£40,000 − £4,000) / 6 = £6,000;累计折旧变为 £10,000 | 折旧费用 £6,000 | 累计折旧 £6,000 | | W4 购货退回 | 退回合计变为 £3,200,应付账款变为 £13,800 | 应付账款 £1,200 | 购货退回 £1,200 | 这四项调整在入账时都不改变现金。保险费已经支付,工资将在以后支付;折旧是在分配设备成本,退货则减少了尚未支付的货款。 折旧用于分配应折旧金额,并不预测设备的市场价格。本题也没有提供判断税务扣除所需的信息。关于固定资产的确认与计量,可进一步阅读 [IAS 16 官方概览](https://www.ifrs.org/issued-standards/list-of-standards/ias-16-property-plant-and-equipment/){rel=""nofollow""}。 :: ::legacy-spoiler{title="W5:定期盘存与销售成本"} [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[销售成本]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[36]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[3]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[200]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[12]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[£30]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[800]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 本题可以用一笔合并调整,将净购货转入销售成本并更新存货余额: | 账户 | 借方 £ | 贷方 £ | | ------------------------ | ---------: | ---------: | | 销售成本 | 30,800 | 0 | | 存货:从 £10,000 增加到 £12,000 | 2,000 | 0 | | 购货退回:结清贷方余额 | 3,200 | 0 | | 购货:结清借方余额 | 0 | 36,000 | | **合计** | **36,000** | **36,000** | 调整后,存货账户记录的是**期末**余额,试算平衡表中已经有销售成本。编利润表时,不要再扣一次期末存货。 :: ## 4. 调整后试算平衡表 ::legacy-spoiler{title="核对 W1–W5 之后的全部余额"} | 账户 | 借方 £ | 贷方 £ | | ------ | ----------: | ----------: | | 现金 | 12,000 | 0 | | 应收账款 | 18,000 | 0 | | 期末存货 | 12,000 | 0 | | 设备原价 | 40,000 | 0 | | 预付保险费 | 2,000 | 0 | | 销售成本 | 30,800 | 0 | | 销售退回 | 2,000 | 0 | | 保险费用 | 4,000 | 0 | | 工资费用 | 15,000 | 0 | | 水电费用 | 3,000 | 0 | | 折旧费用 | 6,000 | 0 | | 业主提款 | 4,000 | 0 | | 期初资本 | 0 | 40,000 | | 银行借款 | 0 | 20,000 | | 应付账款 | 0 | 13,800 | | 销售收入 | 0 | 64,000 | | 累计折旧 | 0 | 10,000 | | 应付工资 | 0 | 1,000 | | **合计** | **148,800** | **148,800** | 购货和购货退回的余额现为零。收入、费用和业主提款尚未结转到资本。 :: ## 5. 利润、资本与财务状况 ::legacy-spoiler{title="相互勾稽的报表"} **截至 20X2 年 12 月 31 日的年度利润表** | 项目 | £ | | -------------------------- | ---------: | | 销售收入减销售退回:£64,000 − £2,000 | 62,000 | | 销售成本 | (30,800) | | **毛利** | **31,200** | | 保险费用 | (4,000) | | 工资费用 | (15,000) | | 水电费用 | (3,000) | | 折旧费用 | (6,000) | | **本年利润** | **3,200** | \*\*资本核对:\*\*期初资本 £40,000 + 本年利润 £3,200 − 业主提款 £4,000 = **期末资本 £39,200**。独资业主提款减少资本,不是工资或另一项经营费用。公司股利与权益列报需要分别处理。 **20X2 年 12 月 31 日财务状况表** | 项目 | £ | | ---------------------------- | ---------: | | 设备:原价 £40,000 − 累计折旧 £10,000 | 30,000 | | 存货 | 12,000 | | 应收账款 | 18,000 | | 预付保险费 | 2,000 | | 现金 | 12,000 | | **资产合计** | **74,000** | | 应付账款,流动负债 | 13,800 | | 应付工资,流动负债 | 1,000 | | 银行借款,非流动负债 | 20,000 | | **负债合计** | **34,800** | | 期末资本 | 39,200 | | **负债与资本合计** | **74,000** | £3,200 的利润、£12,000 的期末现金和 £4,000 的提款反映的是不同事项。编制历史现金流量表还需要期初现金和完整的现金变动资料,而本题没有提供这些信息,也无法仅凭利润推算出来。 :: ## 6. 独立检查 1. 漏记 £1,000 应付工资后,试算平衡表还会相等吗?利润、负债和资本分别错多少? 2. 假设保险的六个月中有三个月属于下一年度,而不是两个月。其他事实不变,重算保险费用、利润、资产和期末资本。 3. 另一个独立小例子中,设备原价 £18,000、残值 £3,000、寿命五年。计算直线法年折旧;再单独按 25% 余额递减法计算前两年折旧,假设尚未达到残值下限。 ::legacy-spoiler{title="参考反馈"} 1. 仍会相等。工资费用和负债各少计 £1,000,利润和期末资本各多计 £1,000,现金不变。 2. 预付和费用各 £3,000;利润变为 £4,200,资产 £75,000,期末资本 £40,200。负债仍为 £34,800,报表依然勾稽。 3. 直线法为 (£18,000 − £3,000) / 5 = 每年 £3,000。余额递减法第一年 £4,500,第二年 £13,500 × 25% = £3,375,第二年末账面价值 £10,125。两种方法是分别计算,不能对同一资产同时扣两遍折旧。 :: ## 要点回顾与延伸 试算平衡表检查借贷是否相等,财务报表则按用途组织这些余额。这两项核对都不能证明所有业务已经记入恰当的期间。漏记工资的例子之所以仍然平衡,正是因为调整分录的两边都没有记录。 把这个区别带入[财务报表分析](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis):比率的输入数字本身就受确认与计量方法影响。若想进一步理解资产账面金额为什么还会因成本分配以外的原因变化,可以继续阅读[计量与调整](https://www.pengjiaxin.com/../financial-accounting/03-measurement-adjustments/)。 [下一页:现金预算](https://www.pengjiaxin.com/02-cash-budget) · [返回基础路径](https://www.pengjiaxin.com/) # 现金预算与收付款时间 []{#现金预算与收付款时间} 现金预算预测未来何时收款和付款,历史现金流量表说明已经发生的现金变动,利润表则反映确认的收入和费用。阅读时,既要分清它们针对哪个期间,也要分清所列金额是现金收付还是收入费用。 下面通过例题,把收付款时间表、逐月现金余额和融资需求连起来。这一原创 **Harbour 预算情景**与[报表案例](https://www.pengjiaxin.com/01-adjustments-to-statements)相互独立,请只使用本页提供的期初余额。 ## 先理解时间表的作用 销售预测说明销售在哪个月发生,收款计划则把这些销售额放到实际预计收款的月份。信用期使两个时间点分开,购货与供应商付款也有同样的关系。这里还要区分购货额与销售成本:付款条款针对购入的货物,销售成本反映的则是已经出售的存货。 把收付款放入恰当的月份后,再将剩余现金结转到下个月。因此,某个月净流入为正,也可能还不够弥补以前的短缺。融资安排是在此基础上的下一步:它改变现金和借款,同时保留原有收付款计划,便于看清缺口来自哪里。 ## 1. 预测与假设 金额均为英镑。每月销售额的 40% 当月收现,60% 在下月收取;每月购货的 50% 当月支付,另 50% 下月支付。假设没有更早的应收应付、坏账、退货或其他收付款。 | 预测项目 | 12 月 | 1 月 | 2 月 | 3 月 | | -------- | -----: | -----: | -----: | -----: | | 销售额 | 20,000 | 30,000 | 36,000 | 40,000 | | 购货额 | 12,000 | 18,000 | 22,000 | 24,000 | | 其他经营现金付款 | — | 8,000 | 9,000 | 10,000 | | 支付设备款 | — | 0 | 18,000 | 0 | 1 月初现金为 **£5,000**。其他经营付款包括工资、租金等经营现金支出,不包括另行计算的供应商付款和设备款,也不包含非现金的折旧。忽略税款、利息和融资费用;这是练习假设,不代表真实借款没有这些成本。 阅读每张表时,把现金收付追溯到产生它的销售或购货月份。[OpenStax 的财务预算章节](https://openstax.org/books/principles-managerial-accounting/pages/7-3-prepare-financial-budgets){rel=""nofollow""}进一步解释收款、付款与融资计划之间的联系。 ## 2. 收款和付款 [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[[收款]{.mord.cjk_fallback}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0.40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[销售额]{.mord.cjk_fallback}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[+]{.mord}[0.60]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[销售额]{.mord.cjk_fallback}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[[供应商付款]{.mord.cjk_fallback}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0.50]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[购货额]{.mord.cjk_fallback}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[+]{.mord}[0.50]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[购货额]{.mord.cjk_fallback}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::legacy-spoiler{title="时间表答案"} | 现金项目 | 1 月 £ | 2 月 £ | 3 月 £ | | ----------- | ---------: | ---------: | ---------: | | 本月销售当月收现 | 12,000 | 14,400 | 16,000 | | 收回上月赊销款 | 12,000 | 18,000 | 21,600 | | **收款合计** | **24,000** | **32,400** | **37,600** | | 支付本月购货款 | 9,000 | 11,000 | 12,000 | | 支付上月购货款 | 6,000 | 9,000 | 11,000 | | **供应商付款合计** | **15,000** | **20,000** | **23,000** | | 其他经营付款 | 8,000 | 9,000 | 10,000 | | 设备款 | 0 | 18,000 | 0 | | **付款合计** | **23,000** | **47,000** | **33,000** | 1 月的收付款表包括 12 月形成的 £12,000 应收账款和 £6,000 应付账款。3 月末仍有 £24,000 的 3 月销售款未收,£12,000 的 3 月购货款未付。虽然销售或采购发生在 3 月,这些尚未收付的款项并不属于 3 月的现金流量。 :: ## 3. 未融资情况下的现金状况 [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[期末现金]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[期初现金]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[+]{.mord}[[收款]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[付款]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-c}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::legacy-spoiler{title="新增融资前的现金预算"} | 项目 | 1 月 £ | 2 月 £ | 3 月 £ | | -------------- | --------: | ----------: | ----------: | | 期初现金/未融资头寸 | 5,000 | 6,000 | (8,600) | | 收款减付款 | 1,000 | (14,600) | 4,600 | | **期末现金/未融资头寸** | **6,000** | **(8,600)** | **(4,000)** | 负数表示**尚待解决的资金缺口**,并不意味着银行已经批准透支。3 月净现金流为正,虽然缩小了缺口,却还不足以补足此前累计的短缺。 :: ## 4. 单独编制融资安排 本例假设企业可以按需借款,期初借款为零,管理层要求**每月末至少保留 £3,000 现金**。现金不足时,借款补足至该下限;超过下限的部分用于还款,还款额不超过尚欠本金。仍按前述假设忽略利息和费用。实际安排融资时,还要核实可用额度、契约条件和月内付款日期。 ::legacy-spoiler{title="融资计划"} | 项目 | 1 月 £ | 2 月 £ | 3 月 £ | | ------------ | --------: | ---------: | --------: | | 已考虑前月融资的期初现金 | 5,000 | 6,000 | 3,000 | | 收款减付款 | 1,000 | (14,600) | 4,600 | | 本月融资前现金 | 6,000 | (8,600) | 7,600 | | 新增借款 | 0 | 11,600 | 0 | | 偿还本金 | 0 | 0 | (4,600) | | **期末现金** | **6,000** | **3,000** | **3,000** | | **期末借款** | **0** | **11,600** | **7,000** | 为维持最低现金余额,2 月需要借入 £11,600,仅借 £8,600 还不够。3 月应以融资后的 £3,000 作为期初现金,不能再沿用未融资表中的 −£8,600。 :: ## 5. 自行重算未融资预算 下面的可选代码复算第 3 节。修改现金销售比例或设备付款,先解释收付款时间的变化,再重新安排融资。这是仅覆盖三个月、赊销赊购均延后一个月的教学模型。 ::pyodide --- code64: c2FsZXMgPSBbMjBfMDAwLCAzMF8wMDAsIDM2XzAwMCwgNDBfMDAwXSAgIyBEZWNlbWJlciB0byBNYXJjaApwdXJjaGFzZXMgPSBbMTJfMDAwLCAxOF8wMDAsIDIyXzAwMCwgMjRfMDAwXQpvcGVyYXRpbmcgPSBbOF8wMDAsIDlfMDAwLCAxMF8wMDBdCmVxdWlwbWVudCA9IFswLCAxOF8wMDAsIDBdCmNhc2hfc2hhcmUgPSAwLjQwCmNhc2ggPSA1XzAwMAphc3NlcnQgMCA8PSBjYXNoX3NoYXJlIDw9IDEsICJDYXNoLXNhbGVzIHNoYXJlIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAxIgoKcm93cyA9IFtdCmZvciBpLCBtb250aCBpbiBlbnVtZXJhdGUoWyJKYW4iLCAiRmViIiwgIk1hciJdLCBzdGFydD0xKToKICAgIHJlY2VpcHRzID0gY2FzaF9zaGFyZSAqIHNhbGVzW2ldICsgKDEgLSBjYXNoX3NoYXJlKSAqIHNhbGVzW2kgLSAxXQogICAgc3VwcGxpZXJzID0gMC41MCAqIHB1cmNoYXNlc1tpXSArIDAuNTAgKiBwdXJjaGFzZXNbaSAtIDFdCiAgICBwYXltZW50cyA9IHN1cHBsaWVycyArIG9wZXJhdGluZ1tpIC0gMV0gKyBlcXVpcG1lbnRbaSAtIDFdCiAgICBuZXQgPSByZWNlaXB0cyAtIHBheW1lbnRzCiAgICBjYXNoICs9IG5ldAogICAgcm93cy5hcHBlbmQoKHJlY2VpcHRzLCBwYXltZW50cywgbmV0LCBjYXNoKSkKICAgIHByaW50KGYie21vbnRofTogcmVjZWlwdHMgwqN7cmVjZWlwdHM6LC4wZn07IHBheW1lbnRzIMKje3BheW1lbnRzOiwuMGZ9OyAiCiAgICAgICAgICBmIm5ldCDCo3tuZXQ6LC4wZn07IHVuZnVuZGVkIGNsb3NpbmcgwqN7Y2FzaDosLjBmfSIp layout: vertical locale: zh title: 逐月现金收款与付款 --- :: 输出中 receipts 是收款,payments 是付款,net 是当月净流量,unfunded closing 是未融资的期末头寸。先预测结果,再运行核对。 ## 6. 延迟回款练习 **2 月原应收回的 £18,000 赊销款**中,有 20% 延至 3 月到账。其他收款、付款和融资假设不变。重算收款、2 月借款和 3 月还款。延迟是否改变 1–3 月收款总额? ::legacy-spoiler{title="参考反馈"} £3,600 从 2 月移到 3 月,两月收款分别变为 £28,800 和 £41,200。2 月净现金流为 −£18,200,融资前现金 −£12,200,要达到 £3,000 下限需借 **£15,200**。3 月净现金流为 £8,200,可还款 **£8,200**,期末现金仍为 £3,000,借款仍为 £7,000。 季度收款总额仍是 £94,000,但借款峰值增加了 £3,600。实际借款若涉及利息或费用,即使收款总额不变,总成本也可能变化。因此,只看季度合计会漏掉 2 月的融资需求。 :: ## 7. 从例题中归纳什么 企业期初有 £10,000,当期净流出 £3,000,期末仍有 £7,000:正的**余额**可以与负的**流量**同时存在。反过来,第 3 节的 3 月是正流量和负的未融资头寸。两者都不能直接说明利润。 延迟回款的变式单独展示了时间的影响:收款总额相同,部分现金晚到账,仍会提高借款峰值。总结现金预算时,应说明缺口何时出现、金额多大,以及由什么假设推动。如果建议推迟向供应商付款,应先考虑约定的付款条款;即使预计月末有现金结余,也仍需检查月内是否可能短缺。 ## 延伸:增长为什么可能占用现金 如果企业需要先支付购货款和工资,之后才能收回客户欠款,扩大销售就可能增加经营循环中占用的现金。销售额增长本身不足以证明企业有能力为增长提供资金,具体影响还取决于利润率、存货、付款条款和扩张时间。 可以用[营运资本比率](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis)检查收付款假设,再把这些假设放回月度计划。比率概括周转情况,时间表指出缺口位置。对于长期项目,[资本预算](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/23-capital-budgeting)还会进一步追问:按选定折现率计算,未来增量现金流在当前值多少? [下一页:会计决策练习](https://www.pengjiaxin.com/03-decision-workshop) · [返回基础路径](https://www.pengjiaxin.com/) # 会计决策综合练习 []{#会计决策综合练习} 选择指标,要从希望回答的问题开始。现金余额、利润率和 NPV 描述的是企业的不同方面,一个指标表现良好,不能代替对其他方面的判断。下面通过例题说明每项计算的用途,以及得出结论前还需要什么证据。 各例使用**相互独立的虚构数据**,金额均为英镑。余额分别计算,不要跨例结转,也不要与 Northstar 混用。可以对照数据阅读解答,也可以先关闭反馈,把问题当作自查。 ## 几种工具分别能告诉我们什么 - **现金流分类**解释现金变化来自哪里。借款能增加现金,却不会因此形成收入。 - **比率**把选定的数字联系起来。比率不变,内部构成仍然可能发生变化。 - **边际贡献分析**说明在给定假设下,销售怎样覆盖变动成本和固定成本;它本身并不预测降价会带来多少新增需求。 - **弹性预算**把实际成本与实际业务量下的预算成本进行比较。剩余差异指出需要调查的地方,还没有完整解释原因。 - **投资评价**比较未来增量现金流。NPV 按必要报酬率衡量价值,回收期关注收回投入的时间,两者都不保证预测能够实现。 带着这些区别阅读例题,重点理解计算为什么适合当前问题,以及它还留下了哪些问题。 ## 例 1:现金流分类 期初现金 £4,000。客户支付 £48,000,向供应商付款 £25,000、向员工付款 £12,000。企业以现金 £8,000 买设备,取得借款 £10,000,偿还借款本金 £3,000。这些是全部现金变动,本题没有利息或税款。 区分经营、投资和融资活动,核对期末现金。解释为什么新借款不是收入,设备付款也不直接等于同额的当期费用。 ::legacy-spoiler{title="参考反馈"} 经营现金流 = £48,000 − £25,000 − £12,000 = **£11,000**;投资现金流 = **−£8,000**;融资现金流 = £10,000 − £3,000 = **£7,000**。现金净增加 £10,000,期末现金 **£14,000**。 借款形成负债,购入的设备初始确认为资产。后续计提折旧是在分配设备成本,不会再支付一次设备款。由于缺少收入、费用和应计项目的信息,仅凭这些现金收付无法计算利润。可对照[财务报表章节](https://www.pengjiaxin.com/../financial-accounting/04-reporting-cash/06-financial-statements)理解这一点。 :: ## 例 2:比率与有依据的解释 | 项目 | 第 1 年 £ | 第 2 年 £ | | ---- | ------: | ------: | | 营业收入 | 100,000 | 120,000 | | 毛利 | 40,000 | 42,000 | | 净利润 | 8,000 | 6,000 | | 流动资产 | 30,000 | 40,000 | | 存货 | 12,000 | 25,000 | | 流动负债 | 15,000 | 20,000 | 假设流动资产仅包括现金、应收和存货。计算两年的毛利率、净利率、流动比率和速动比率。思考这组比较能为正在考虑延长信用期的供应商提供什么信息,再指出还需要哪两项证据。不要套用普遍适用的“安全比率”阈值。 ::legacy-spoiler{title="参考反馈"} | 指标 | 第 1 年 | 第 2 年 | | --------------------- | ----: | ----: | | 毛利率:毛利/收入 | 40% | 35% | | 净利率:净利润/收入 | 8% | 5% | | 流动比率:流动资产/流动负债 | 2.00 | 2.00 | | 速动比率:(流动资产 − 存货)/流动负债 | 1.20 | 0.75 | 收入增长 20%,利润率却下降。流动比率虽然没变,其中对存货的依赖却明显增加,需要进一步检查流动性。但这还不足以认定企业会违约,或存货已经过时。应查看应收账龄、存货销售与减值情况,再对照现金预测检查能否按约付款。仅凭比率无法确定收款日期。[比率分析](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis)还讨论了分母口径和可比性。 :: ## 例 3:边际贡献与降价 维修套装单价 £25,单位变动成本 £15,每月固定成本 £12,000,预计销售 1,800 套。假设产销相等,在 2,200 套以内保持同样的成本结构。 计算单位贡献、保本销量、预计利润、安全边际数量及其占预计销量的百分比,以及达到 £9,000 目标利润所需销量。再将单价降低 10%,其他假设不变,重算保本点、利润和安全边际。降价会自动增加利润吗? ::legacy-spoiler{title="参考反馈"} 原单位贡献 **£10**。保本销量 = £12,000 / £10 = **1,200 套**;预计利润 = £18,000 − £12,000 = **£6,000**;安全边际 **600 套/33.3%**。目标利润 £9,000 需要 **2,100 套**,在给定范围内。 价格降至 £22.50 后,单位贡献为 £7.50,保本点 **1,600 套**,1,800 套的利润 **£1,500**,安全边际 **200 套/11.1%**。要保持原 £6,000 利润需卖 2,400 套,超过 2,200 套的假定范围;必须先取得新的产能与成本预测,不能直接认定可行。正的安全边际不等于需求风险一定低。 :: ## 例 4:在相同业务量下比较成本 原预算产量为 1,000 件,单位变动材料成本 £8、单位变动人工成本 £6。实际生产 1,200 件,材料成本 £10,200,人工成本 £6,900。这两项成本中没有固定部分。 计算原预算、按实际产量编制的弹性预算,以及实际成本相对弹性预算的差异。采用**实际成本减弹性预算成本**:正值为不利 U,负值为有利 F。解释为何不能只凭总差异确定价格或效率原因。 ::legacy-spoiler{title="参考反馈"} | 成本 | 原预算 £ | 弹性预算 £ | 实际 £ | 实际减弹性 £ | | ------ | ---------: | ---------: | ---------: | --------: | | 材料 | 8,000 | 9,600 | 10,200 | 600 U | | 人工 | 6,000 | 7,200 | 6,900 | 300 F | | **合计** | **14,000** | **16,800** | **17,100** | **300 U** | 实际成本比原预算高出 £3,100,其中 £2,800 来自产量增加,另有 £300 超出弹性预算。材料涨价、耗损和规格变化都可能解释差异,但还需要数量和价格资料来判断;分析人工差异则需要工时和工资率。即使人工成本总体低于预算,也不能排除质量问题。可继续学习[差异拆解](https://www.pengjiaxin.com/../management-accounting/02-planning-control/20-budgeting-variances)。 :: ## 例 5:互斥投资方案 两个互斥项目寿命均为三年,假定风险相同,最多选择一个。必要报酬率 **10%** 是本题假设。下表已经包含全部增量项目现金流,不要另加税款、营运资金、残值或融资流量。NPV 计算假定未来现金流均发生在年末。 | 时点 | 项目 A £ | 项目 B £ | | -- | -------: | -------: | | 0 | (24,000) | (24,000) | | 1 | 10,000 | 2,000 | | 2 | 10,000 | 11,000 | | 3 | 10,000 | 19,000 | 1. 计算各年现值与 NPV,按给定的价值标准选择方案。 2. 用电子表格,或参考英文[资本预算计算示例](https://www.pengjiaxin.com/../../../en/accounting/management-accounting/03-decisions-investment/23-capital-budgeting),求 IRR 并检查该利率下 NPV 接近零。 3. 严格按**年末才收款**,指出普通回收期和折现回收期。 4. 另作年内插值近似:普通回收期假设回收年度内现金均匀流入;折现回收期插值把该年折现后的金额均匀分配。明确标注近似,不要悄悄更换时间假设。 5. 给出建议、一项预测风险,以及即使 NPV 较低、较早回款仍可能有价值的原因。 ::legacy-spoiler{title="计算与建议"} [[[]{.katex-mathml}[[[]{.strut style="height:4.3149em;vertical-align:-1.9074em;"}[[[[[[[[]{.pstrut style="height:3.3214em;"}[[[[NPV]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.4074em;"}[[]{.pstrut style="height:3.3214em;"}[]{.mord}]{style="top:-2.1em;"}]{.vlist style="height:2.4074em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9074em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.3214em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[−]{.mord}[24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.1]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-4.4074em;"}[[]{.pstrut style="height:3.3214em;"}[[]{.mord}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.]{.mord}[[1]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.]{.mord}[[1]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-2.1em;"}]{.vlist style="height:2.4074em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.9074em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} | 指标 | 项目 A | 项目 B | | ------------- | ---------: | -----------: | | 第 1 年现值 £ | 9,090.91 | 1,818.18 | | 第 2 年现值 £ | 8,264.46 | 9,090.91 | | 第 3 年现值 £ | 7,513.15 | 14,274.98 | | **NPV £** | **868.52** | **1,184.07** | | IRR,约 | 12.044% | 12.147% | | 年末收款假设下的普通回收期 | 第 3 年末 | 第 3 年末 | | 年末收款假设下的折现回收期 | 第 3 年末 | 第 3 年末 | | 插值普通回收期,年 | 2.400 | 2.579 | | 插值折现回收期,年 | 2.884 | 2.917 | A 的普通插值为 2 + £4,000 / £10,000 = 2.4 年;折现插值为 2 + (£24,000 − £9,090.91 − £8,264.46) / £7,513.15 ≈ 2.884 年。中间运算保留未舍入数值,最后再取小数。 在给定假设下,**B 的 NPV 高 £315.55**。这一结果对最后一笔 £19,000 的回款较为敏感:如果少收 £1,000,B 的 NPV 会减少 £751.31,降至 £432.76;若 A 不变,两者的排名就会反转。A 能更早收回较多现金,在流动性受限时可能更有吸引力。NPV 为正或 IRR 超过 10%,都不保证预测一定实现。 [ACCA 的投资评价指南](https://www.accaglobal.com/uk/en/student/exam-support-resources/prodipsust-study-resources/technical-articles/investment-appraisal.html){rel=""nofollow""}进一步讨论相关现金流与时间安排。本页的题目和数字均为原创教学示例。 :: ## 检查你的推理 阅读任何一个例题,都要区分计算结果与自己据此得出的结论。如果答案不同,先找出对业务事实、比较基准或时间假设的理解是否不同。把这层关系重新梳理清楚,才容易将方法用于数字不同的另一家企业。 ## 延伸:比较本身是否合理 比率例题比较两个年度,弹性预算比较相同业务量下的成本,投资例题则比较互斥的未来项目。三种比较需要不同的基准。解释差异以前,先问哪些条件保持一致,哪些条件发生了变化。 弹性预算留下的差异不会自动说明原因:不同的价格、工时或用量变化,可能形成相同的总差额。同样,较高的 NPV 也是在给定现金流和风险假设下得出的结论。例 5 的预测变式说明,假设改变后,排名可能反转。因此,一份有用的总结应同时记下结果、成立条件,以及什么证据会使自己重新判断。 继续阅读时,可先用[成本概念](https://www.pengjiaxin.com/../management-accounting/01-cost-foundations/16-cost-concepts)区分成本行为与决策相关性,再通过[短期决策](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/22-short-term-decisions)理解产能和机会成本怎样影响选择。 [返回基础路径](https://www.pengjiaxin.com/) · [继续完整会计课程](https://www.pengjiaxin.com/../00-index) # 财务与管理会计基础路径 []{#财务与管理会计基础路径} 如果你会计算百分比,但还没有学过会计,可以从这里开始。这组笔记围绕几个反复出现的问题展开:业务应在哪个期间记录,账户余额怎样变化,利润为什么不同于现金,以及面对不同决策应选用什么数字。每个问题都配有总结、例题和进一步阅读的入口。 先读概念总结建立整体认识,再通过例题看清推导过程。计算器和纸笔,或电子表格,就足以完成计算。Python 单元用于尝试改变假设;不运行代码,也能根据正文和表格理解结论。 ## 先串起几个核心概念 | 核心概念 | 它解释了什么 | | ---------------------- | ------------------------- | | 一项业务可能影响多个账户,也可能跨越多个期间 | 分录为什么平衡,以及平衡之后为什么仍可能需要调整 | | 余额描述一个时点,流量描述一段期间的变化 | 利润、资本和财务状况怎样通过同一套记录相互联系 | | 确认与收付款可能发生在不同时间 | 为什么企业有利润,却仍然可能需要融资 | | 比较需要明确目的,并选择合适的基准 | 比率、边际贡献、差异和 NPV 分别能回答什么问题 | ## 入门诊断 先用自己的话解释,再展开反馈比较推理过程。 1. 商店收到 £900,下个月才提供对应服务。现在什么增加了? 2. 收回上月已完成销售的 £700 欠款,会再产生收入吗? 3. 用现金 £6,000 购买设备,是否全部计入本月费用? 4. 尚未收款的供应商和商店业主,各自会要求查看什么信息? ::legacy-spoiler{title="参考反馈"} 1. 现金和提供服务的义务同时增加,尚不能因为收款就确认已履约的收入。 2. 现金增加、应收账款减少,不会因此产生第二笔销售收入。 3. 初始时设备资产替代现金资产;折旧将应折旧金额分配到使用期间,不是再付一次设备款。 4. 供应商关心付款时间和偿付能力,业主还关心盈利与经营前景。仅凭银行余额无法回答这些问题。 如果还容易混淆收款与收入、付款与费用,可以从下方的记录与调整笔记开始。如果已经理解这些区别,就通过例题寻找下一步想深入的问题。 :: ## 按知识关系阅读 下表按照概念之间的依赖关系组织。你可以依次阅读,也可以在后面的例题暴露出疑问时,返回相应专题查阅。 | 主题与要点 | 阅读和例题 | 值得继续追问的问题 | | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ | | 记录:先说明业务,再选择账户 | [基础模块](https://www.pengjiaxin.com/../financial-accounting/01-foundations/)、[复式记账](https://www.pengjiaxin.com/../financial-accounting/02-recording-transactions/04-double-entry-dr-cr) | 借贷相等时,业务仍可能记错吗? | | 调整:分清已记金额与应有余额 | [会计循环](https://www.pengjiaxin.com/../financial-accounting/02-recording-transactions/05-accounting-cycle)、[完整报表例题](https://www.pengjiaxin.com/01-adjustments-to-statements) | 为什么有些调整改变利润,却不改变现金? | | 报表:从不同角度呈现同一套记录 | [利润与资本例题](https://www.pengjiaxin.com/01-adjustments-to-statements)、[财务报表](https://www.pengjiaxin.com/../financial-accounting/04-reporting-cash/06-financial-statements) | 为什么利润进入权益,而业主提款不属于费用? | | 分析:同时看指标和指标内部的构成 | [现金与内部控制](https://www.pengjiaxin.com/../financial-accounting/04-reporting-cash/14-cash-control)、[比率分析](https://www.pengjiaxin.com/../financial-accounting/05-analysis-comparison/15-ratio-analysis) | 流动比率不变,流动性是否仍可能变化? | | 成本:贡献先弥补固定成本,再形成利润 | [成本概念](https://www.pengjiaxin.com/../management-accounting/01-cost-foundations/16-cost-concepts)、[本量利分析](https://www.pengjiaxin.com/../management-accounting/02-planning-control/18-cvp-analysis) | 保本计算有用的前提是什么? | | 预算:分清时间、业务量和成本表现 | [现金预算例题](https://www.pengjiaxin.com/02-cash-budget)、[预算与差异分析](https://www.pengjiaxin.com/../management-accounting/02-planning-control/20-budgeting-variances) | 成本总额上升,是因为多生产了,还是相同产量下成本发生了偏差? | | 投资:把未来增量现金流折算到同一时点 | [资本预算](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/23-capital-budgeting)、[决策比较例题](https://www.pengjiaxin.com/03-decision-workshop) | 哪项预测或时间假设的变化可能使方案排名反转? | ## 怎样读一个例题 先读业务事实,再确定这项计算要解释什么。跟随底稿时,留意哪些金额是余额,哪些是期间变化,哪些来自假设。理解这些关系后,即使例题更换了数字,也能重新推导。 复习时可以暂时遮住解答,先解释下一步为什么这样处理,再动手计算。如果结果不同,检查差异来自分类、时间还是算术。把错误原因写成一句话,比只抄下正确合计更有帮助。 三个基础例题各有侧重:[从记录到报表](https://www.pengjiaxin.com/01-adjustments-to-statements)贯通一套账户,[现金预算](https://www.pengjiaxin.com/02-cash-budget)追踪收付款日期,[决策比较](https://www.pengjiaxin.com/03-decision-workshop)解释为什么要根据问题选择指标。它们使用相互独立的虚构数据。 ## 从总结走向延伸 可以沿着下面三条联系,把零散的计算连起来: - \*\*权责发生制与现金:\*\*确认赊销收入时,货款未必已经收回。把应收账款接入现金预算,再思考比率能够说明什么,以及为什么它不能直接给出回款日期。 - \*\*业务量与经营表现:\*\*即使单位成本不变,产量增加也可能使变动成本总额上升。弹性预算先排除比较中的业务量差异,再让我们分析剩余的成本偏差。 - \*\*流动性与价值:\*\*项目的 NPV 可以为正,却仍然需要先投入现金、以后才收到回款。投资评价和资金安排彼此相关,需要分别分析。 每条联系都可以通过改变例题中的一个假设来检验:哪些结果随之变化,哪些关系仍然成立?上方专题链接提供更完整的推导和适用边界。 ## 接入完整课程 想进一步理解确认与计量,可以阅读[收入、存货与长期资产](https://www.pengjiaxin.com/../financial-accounting/03-measurement-adjustments/);想深入经营选择,可以进入[短期决策与投资](https://www.pengjiaxin.com/../management-accounting/03-decisions-investment/)。[会计课程首页](https://www.pengjiaxin.com/../00-index)列出其余专题,英文的 [Northstar 综合案例](https://www.pengjiaxin.com/../../../en/accounting/capstone/)可用于整合知识。Harbour 与 Northstar 的账户余额仍需分别使用。 [开始完整报表案例](https://www.pengjiaxin.com/01-adjustments-to-statements)。 # 3.1 成本概念与分类(Cost Concepts) ## 本章回答什么 - 怎样按成本行为、归属方式和用途对成本进行分类? - 为什么同一个成本标签并不一定适用于所有决策? - 在做计划和决策之前,哪些成本区分最关键? ## 学习目标 读完这一页后,你应该能够: - 按可追溯性、成本行为、功能和决策相关性分类成本。 - 解释为什么成本分类必须先说明成本对象和决策情境。 - 在特殊订单、停产和瓶颈资源题中筛选相关成本。 ## 业务场景 一家工厂收到低价特殊订单。销售经理说“价格低于全部单位成本,不能接”;生产经理说“有闲置产能,应该看增量成本”。管理会计的第一步不是争论价格,而是把成本分成变动、固定、可避免、沉没和机会成本,再判断这次决策真正会改变哪些现金流。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 成本基础**。 - 建议先读[IFRS 与 US GAAP 对比](https://www.pengjiaxin.com/../../financial-accounting/05-analysis-comparison/25-ifrs-gaap)。 - 读完后可以接着进入[成本核算系统](https://www.pengjiaxin.com/17-costing-systems)。 在管理会计中,如何理解和使用一项成本,取决于要回答什么问题: 1. 成本是为了哪个**成本对象**(cost object)服务的? 2. 这个成本会不会随业务量变化(成本行为)? 3. 这个成本在当前决策中**相关**还是**不相关**? 4. 这个成本是应该进**存货**(产品成本)还是当期费用(期间成本)? 分清这四个问题,后续做 CVP、预算差异和短期决策时,就能按步骤选择合适的成本数据,无须只靠记忆概念。 ## 3.1.1 核心直觉:成本是相对的 “直接成本/间接成本”不是成本本身的属性,而是相对某个成本对象而言: - 对“某个产品”直接,对“某个部门”可能就变成间接。 - 关键是“能否以合理成本追溯”,而不是“理论上能不能追溯”。 ## 3.1.2 按可追溯性:直接 vs 间接(Traceability) | 分类 | 定义 | 典型例子 | 做题提示 | | ------------------- | ----------- | -------------- | --------------------- | | 直接成本(Direct cost) | 能方便追溯到某成本对象 | 产品用料、计件工资 | 先写清成本对象,再判断是否“方便追溯” | | 间接成本(Indirect cost) | 不能方便追溯,需要分配 | 车间租金、主管工资、设备折旧 | 需要选择分配基础(cost driver) | **小例子**:木材对“桌子订单”是直接成本;车间租金对“桌子订单”一般是间接成本(需要按工时/机器小时分配)。 ### 同一笔工资可以同时是直接成本和固定成本 假设一位主管只负责 A 产品线,每月领取固定工资。这笔工资对 A 产品线可直接追溯,对其中每张客户订单却可能需要分摊;在当前人员配置范围内,它的总额又是固定的。“直接”回答归谁,“固定”回答怎样随业务量变化,两者不是互斥分类。 如果考虑停产 A 产品,还要判断这笔工资会随之取消,还是人员转岗后继续照发。决策中应考虑的是因方案不同而改变的未来成本。每次分类都先写清 **成本对象、活动量与时间范围**;租金本月固定,不代表租约到期后仍无法改变。 ## 3.1.3 按成本行为:变动、固定、混合(Cost Behavior) 判断成本行为时,要注意题目中常被省略的前提:这些关系在\*\*相关范围(relevant range)\*\*内成立。 | 分类 | 总额随业务量变化? | 单位成本随业务量变化? | 典型例子 | | -------------- | --------- | ----------- | -------------- | | 变动成本(Variable) | 成比例变化 | 基本不变 | 直接材料、计件工资、按件包装 | | 固定成本(Fixed) | 基本不变 | 递减 | 厂房租金、管理人员固定薪酬 | | 混合成本(Mixed) | 部分变动、部分固定 | 取决于结构 | 电话费月租 + 通话费 | 容易忽略的点: - **阶梯成本(step cost)**:在一定区间固定,跨区间跳变(例如新增一条产线就多一位班长)。 - 固定成本“总额不变”只是近似,一旦跨越相关范围就会变化。 ### 把总额与单位数放在一起检查 设月租金固定为 12,000 元,每件材料成本 30 元,并假设 500—1,000 件在同一产能范围内: | 项目 | 500 件 | 1,000 件 | | ------ | -----: | ------: | | 总租金 | 12,000 | 12,000 | | 单位分摊租金 | 24 | 12 | | 总材料成本 | 15,000 | 30,000 | | 单位材料成本 | 30 | 30 | 单位租金下降没有节省租金现金;总材料成本上升也不说明单位耗用恶化。后面的 CVP 应使用单位变动成本 30 和总固定成本 12,000,不能把分摊租金 24 或 12 当成另一个单位变动成本。 ## 3.1.4 按功能:产品成本 vs 期间成本(Product vs Period) 这种分类决定成本是先计入存货,还是直接影响当期利润。 | 分类 | 会计处理直觉 | 典型例子 | | ----------------------------- | --------------- | -------------- | | 产品成本(Product / Inventoriable) | 先进入存货,卖出后进入销售成本 | 直接材料、直接人工、制造费用 | | 期间成本(Period) | 当期发生当期费用化 | 销售费用、管理费用、办公费 | 你会在 3.4 里看到:吸收成本法和变动成本法的关键差异,正是固定制造费用在“产品成本/期间成本”的归属。 ## 3.1.5 按决策相关性:相关成本、沉没成本、机会成本(Relevance) 短期决策最常见的错误,是把“已经发生的历史成本”或“被分摊的共同成本”当成相关成本。 | 分类 | 决策里是否考虑? | 判断口径 | 典型例子 | | --------------------------- | -------- | ------------ | ----------------- | | 相关成本(Relevant) | 考虑 | 未来、现金流、方案间不同 | 特殊订单的增量材料费 | | 沉没成本(Sunk) | 不考虑 | 已发生,无法改变 | 已购设备的历史成本 | | 机会成本(Opportunity) | 考虑 | 选 A 放弃 B 的收益 | 用产能做特殊订单,放弃正常订单毛益 | | 可避免固定成本(Avoidable fixed) | 通常考虑 | 因方案改变而可避免 | 停产后可裁掉的专属管理人员薪酬 | | 分摊的共同固定成本(Allocated common) | 通常不考虑 | 不因方案改变而变化 | 总部房租按部门分摊 | ## 3.1.6 例题:识别“相关成本”到底怎么做 **情境**:工厂收到 1,000 件特殊订单,报价低于正常售价。工厂目前有闲置产能,现有固定制造费用已发生且不变。 已知: - 单位变动制造成本:40 元 - 接单需要新增特殊包装:每件 3 元 - 为接单需要临时加班,新增监督费用:2,000 元(可避免固定) - 固定制造费用总额:200,000 元(不随是否接单变化) **解法(只做相关成本表)**: | 项目 | 是否相关 | 相关金额 | | ------------------ | ---- | -----: | | 变动制造成本 40 \* 1,000 | 是 | 40,000 | | 特殊包装 3 \* 1,000 | 是 | 3,000 | | 新增监督费用 | 是 | 2,000 | | 固定制造费用(已发生且不变) | 否 | 0 | 结论:在闲置产能、没有挤占正常订单、没有其他增量成本的假设下,订单的**短期增量保本价**为 `(40,000 + 3,000 + 2,000) / 1,000 = 45 元/件`。售价恰好为 45 元时,订单只补偿增量成本,不增加利润;长期报价还需考虑持续经营所需的固定成本、正常客户反应与产能用途,不能把这个数当作永久最低售价。 ## 3.1.7 常见错误(你会在后面反复踩到) 1. 直接/间接不写成本对象,凭感觉分类。 2. 固定成本当成“每件一定要分摊”的成本,导致定价和订单决策错误。 3. 把沉没成本(历史成本)当成“已经投了所以必须继续”的理由。 4. 忽略机会成本,尤其是在存在瓶颈资源时。 ## 3.1.8 快速检查 1. “车间租金”对产品一般是直接成本还是间接成本? 2. 生产量上升导致“单位固定成本”下降,这意味着固定成本变成变动成本了吗? 3. 旧设备的账面价值,在“买新设备还是继续用旧设备”的决策中是否相关? ::legacy-spoiler{title="参考答案"} 1. 一般是间接成本,需要分配。 2. 不意味着。固定成本总额在相关范围内不变,单位固定成本下降只是分摊到更多产量上的结果。 3. 通常不相关。旧设备账面价值属于沉没成本;相关的是未来维修费、节约的现金流、处置收入等。 :: ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 理解成本性质,是使用成本核算、CVP分析、预算和决策分析等管理会计工具的基础。 - **这一节的知识有什么用?** - 能够区分固定成本/变动成本、产品成本/期间成本、相关成本/沉没成本等,为后续建模和决策提供正确的“输入变量”。 - 帮助管理层看清成本结构,判断企业是“重资产+高固定成本”还是“轻资产+高变动成本”。 - **在题目或工作中怎么用?** - 做题时:先给每个成本贴标签(行为/追溯/相关性/功能),再把它放进对应模型。 - 实务中:通过分析成本行为模式,评估在销量波动时利润的敏感度,并为定价、扩产或缩减业务提供参考。 - **用好了会得到什么结果?** - 学习后续管理会计工具时,更容易理解模型假设,并分清各种成本术语的用途。 - 实际决策时,会先判断“这项成本在不同方案下会不会变”,据此筛选相关信息。 ## 下一章 本章提供成本语言;下一章把这些成本归集和分配到订单、流程或作业中。继续读[成本核算系统](https://www.pengjiaxin.com/17-costing-systems)。 # 3.2 成本核算系统(Costing Systems) ## 本章回答什么 - 什么情况下分批法比分步法更合适? - 材料、人工和制造费用怎样归集或分配到产出对象? - 为什么生产环境不同,会导致适用的成本核算方法不同? ## 学习目标 读完这一页后,你应该能够: - 根据生产环境选择分批成本法、分步成本法或作业成本法。 - 计算 POHR、应用制造费用、等价产量和单位成本。 - 判断成本动因是否反映因果关系,并解释分配失真的风险。 ## 业务场景 同一家企业同时生产标准饮料和定制礼盒。标准饮料适合分步成本法,定制礼盒更像分批成本法;如果间接成本主要由设置、检验和搬运驱动,ABC 可能比按产量平均分配更有解释力。成本系统选择错误,会直接扭曲产品盈利性判断。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 成本基础**。 - 建议先读[成本概念](https://www.pengjiaxin.com/16-cost-concepts)。 - 读完后可以接着进入[变动成本法 vs. 吸收成本法](https://www.pengjiaxin.com/19-variable-vs-absorption)。 成本核算系统的核心任务只有一句话:把“本期发生的制造成本”合理地分配到**产品/服务**上,最终得到可用的单位成本,用于: - 存货计价与销售成本(对外报表口径需要吸收成本法) - 定价、产品组合、效率改进(对内管理口径更强调因果关系) 本章把常见的三类系统讲清楚:分批(Job)、分步(Process)、作业成本法(ABC)。 ## 3.2.1 先选系统:看产品是否同质、流程是否连续 | 情境特征 | 更常用的系统 | 典型行业 | | ---------- | ---------------- | ------------- | | 产品差异大、订单定制 | 分批成本法(Job order) | 建筑、印刷、咨询、定制家具 | | 产品同质、连续加工 | 分步成本法(Process) | 饮料、化工、造纸、炼油 | | 间接成本高、产品多样 | 作业成本法(ABC) | 多品种制造、复杂服务业 | ## 3.2.2 分批成本法(Job Order Costing) **直觉**:每个订单就是一个“成本对象”。直接材料和直接人工可以直接追溯;制造费用需要用一个合理的分配基础“应用”到订单上。 ### 关键规则:预定制造费用分配率 预定制造费用分配率(Predetermined Overhead Rate, POHR): `POHR = 预计制造费用总额 / 预计分配基础总量` 分配基础常见:直接人工小时、机器小时、直接人工成本等。选择原则:越能反映因果关系越好。 ### 做题步骤(分批成本) 1. 找出每个 Job 的 DM、DL(直接追溯)。 2. 算 POHR(题目给预计数)。 3. 用“实际分配基础”把 MOH 应用到 Job:`Applied MOH = POHR * Actual base for the job`。 4. 得到 Job 总成本与单位成本。 5. 若题目问“多分配/少分配制造费用”,再做差额:`实际 MOH - 应用 MOH`(期末调整)。 ### 例题:一个 Job 的成本单怎么做 已知: - 预计制造费用 300,000 元 - 预计机器小时 60,000 小时 - Job A 实际机器小时 900 小时 - Job A 直接材料 18,000 元,直接人工 12,000 元 计算: 1. `POHR = 300,000 / 60,000 = 5 元/机器小时` 2. `Applied MOH (Job A) = 5 * 900 = 4,500` 3. `Job A 总制造成本 = 18,000 + 12,000 + 4,500 = 34,500` 如果 Job A 产出 300 件,单位制造成本 = `34,500 / 300 = 115 元/件`。 ## 3.2.3 分步成本法(Process Costing) **直觉**:同质产品在连续流程里生产,成本按“部门/工序”归集;期末一定会有在产品,所以必须用**等价产量**把“没做完的工作量”折算成“做完的单位数”。 ### 关键概念:等价产量(Equivalent Units) 把“期末在产品”按照完工程度折算成“完全完工单位”的数量。 常见拆分:材料(Materials)和转换成本(Conversion = 直接人工 + 制造费用)。材料可能期初一次性投入,转换成本通常随加工进度发生。 ### 两个方法:加权平均法 vs FIFO | 方法 | 是否区分期初在产品成本? | 考试上直觉 | | --------- | ----------------- | -------- | | 加权平均法(WA) | 不区分,直接平均 | 更简单,常用 | | FIFO 法 | 区分,只用本期成本计算本期单位成本 | 更精确,步骤更长 | ### 做题步骤(加权平均法) 1. 画“实物流转”:期初在产品 + 本期投入 = 完工转出 + 期末在产品。 2. 计算等价产量:完工转出按 100%,期末在产品按完工百分比。 3. 算单位成本:`单位成本 = (期初成本 + 本期成本) / 等价产量`。 4. 分配成本:完工转出 + 期末在产品。 ### 例题:等价产量与单位成本 已知(单一部门): - 期初在产品 200 单位 - 本期投入 1,000 单位 - 期末在产品 300 单位(材料 100%,转换 60%) - 期初成本:材料 2,000,转换 1,000 - 本期成本:材料 10,000,转换 8,000 步骤 1:实物流转 - 完工转出 = 200 + 1,000 - 300 = 900 单位 步骤 2:等价产量(WA) | 成本要素 | 完工转出 | 期末在产品 | 等价产量 | | ---- | ----------------: | ----------------: | ----: | | 材料 | 900 \* 100% = 900 | 300 \* 100% = 300 | 1,200 | | 转换 | 900 \* 100% = 900 | 300 \* 60% = 180 | 1,080 | 步骤 3:单位成本 - 材料单位成本 = `(2,000 + 10,000) / 1,200 = 10` - 转换单位成本 = `(1,000 + 8,000) / 1,080 = 8.3333` 步骤 4:分配成本 - 完工转出成本 = `900 * (10 + 8.3333) = 16,500` - 期末在产品成本 = `材料 300 * 10 + 转换 180 * 8.3333 = 3,000 + 1,500 = 4,500` 核对:总成本 = 期初成本 3,000 + 本期成本 18,000 = 21,000,与分配合计 21,000 一致。 ## 3.2.4 作业成本法(Activity-Based Costing, ABC) **直觉**:间接成本不是“按产量平均分摊”,而是由具体作业驱动的。ABC 先把间接成本归集到作业,再用成本动因把作业成本分配给产品。 ### ABC 五步 1. 识别作业(setup、检验、搬运、客户服务等)。 2. 建作业成本池(activity cost pools)。 3. 选成本动因(cost drivers)。 4. 算动因率:`动因率 = 成本池总额 / 动因总量`。 5. 按“产品耗用的动因量”分配成本。 ### 例题:两产品、两作业成本池 作业成本池: | 作业 | 成本池(元) | 动因 | 总动因量 | | ---- | ------: | ---- | -------: | | 机器设置 | 120,000 | 设置次数 | 240 次 | | 质量检验 | 80,000 | 检验小时 | 1,600 小时 | 产品耗用: | 产品 | 设置次数 | 检验小时 | | -- | ---: | ----: | | X | 60 | 400 | | Y | 180 | 1,200 | 计算: - 设置动因率 = 120,000 / 240 = 500 元/次 - 检验动因率 = 80,000 / 1,600 = 50 元/小时 - 产品 X 分配 = 60 \* 500 + 400 \* 50 = 30,000 + 20,000 = 50,000 - 产品 Y 分配 = 180 \* 500 + 1,200 \* 50 = 90,000 + 60,000 = 150,000 这类题的关键不是算术,而是“动因是否合理”和“是否解释了成本差异来源”。 ## 3.2.5 常见错误 1. 分批成本里把“实际制造费用”直接平均分摊到 Job,忽略 POHR 的应用逻辑。 2. 分步成本里只算实物数量,不做等价产量,导致单位成本严重偏差。 3. 把材料和转换成本的完工程度混在一起(很多题目材料 100%,转换 < 100%)。 4. ABC 里动因选择不因果,只是“方便”,导致成本信息失真。 ## 3.2.6 快速检查 1. 什么时候应该用等价产量?为什么? 2. POHR 为什么用“预计数”而不是用“实际数”? 3. ABC 的“成本动因”一定是产量吗? ::legacy-spoiler{title="参考答案"} 1. 有期末在产品(WIP)且产品同质、连续生产时常见;因为需要把未完工程度折算成完工单位数,才能算单位成本并分配总成本。 2. 预计数能在期内及时把制造费用应用到产品/订单,便于定价、存货计价和管理;实际数只能期末才知道,无法用于过程控制。 3. 不一定。动因应反映作业消耗的原因,例如设置次数、检验小时、订单数、搬运次数等。 :: ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 成本核算系统决定了产品成本的“生成方式”,不同系统会得出不同的单位成本和分摊结果,直接影响定价、绩效评价和决策。 - **这一节的知识有什么用?** - 能够判断在不同生产环境(定制 vs. 大批量、简单 vs. 多品种、人工密集 vs. 机器密集)下,应采用分批成本法、分步成本法还是作业成本法。 - 通过了解ABC的思想,可以更好地识别真正驱动成本的作业和动因,避免简单按产量或工时“粗暴分摊”。 - **在题目或工作中怎么用?** - 做题时:先选系统,再按系统步骤列清楚“量的流转”和“成本的分配”,最后做核对。 - 实务中:在觉得“某些产品看起来很赚钱但算完发现不赚钱”时,可以用ABC思路重新梳理成本动因,检验现有分摊方法是否失真。 - **用好了会得到什么结果?** - 能解释“为什么同一家公司采用不同成本系统得出的结果不同”,从而为定价和产品组合决策提供更有说服力的依据。 - 在管理实践中,帮助企业找到真正浪费资源的环节,而不是简单压缩所有部门的成本。 ## 下一章 本章解决“单位成本怎样产生”;下一章比较固定制造费用进入产品成本或期间成本时,利润会怎样变化。继续读[变动成本法 vs. 吸收成本法](https://www.pengjiaxin.com/19-variable-vs-absorption)。 # 3.4 变动成本法 vs. 吸收成本法(Variable vs. Absorption) ## 本章回答什么 - 为什么存货处理方式会让变动成本法和吸收成本法下的利润不同? - 边际贡献式报表和完全成本式报表有什么差别? - 在分析和控制中,这两种方法各自更适合什么场景? ## 学习目标 读完这一页后,你应该能够: - 区分变动成本法和吸收成本法对固定制造费用的处理。 - 编制贡献式和传统式利润表,并用存货变动桥接两种利润。 - 解释过量生产为什么可能在吸收成本法下暂时提高利润。 ## 业务场景 工厂经理年底发现销量没有增长,但只要多生产并增加库存,吸收成本法下的利润就会提高。原因是部分固定制造费用被留在期末存货中,没有进入当期销售成本。管理层若只用吸收利润考核,可能激励过量生产和库存积压。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 成本基础**。 - 建议先读[成本核算系统](https://www.pengjiaxin.com/17-costing-systems)。 - 读完后可以接着进入[本量利分析](https://www.pengjiaxin.com/../02-planning-control/18-cvp-analysis)。 这一章你要抓住一个核心差异:**固定制造费用(FMOH)到底算“产品成本”还是“期间成本”?** - 变动成本法(Variable costing):FMOH 直接当期费用化。 - 吸收成本法(Absorption costing):FMOH 先进入存货,卖出后才进入销售成本。 这会导致一个非常重要的现象:**吸收成本法下,利润会受到“产量”影响;变动成本法下,利润只受“销量”影响。** ## 3.4.1 两种方法的口径差异(先看结论) | 项目 | 变动成本法(对内分析常用) | 吸收成本法(对外报表要求) | | ------- | ---------------- | ------------------------- | | 产品成本包含 | DM + DL + 变动 MOH | DM + DL + 变动 MOH + 固定 MOH | | 固定制造费用 | 期间成本(当期费用) | 产品成本(进入存货) | | 利润表结构 | 贡献式(CM) | 传统式(毛利) | | 利润受什么影响 | 销量 | 销量 + 产量(通过存货变化) | ## 3.4.2 核心公式:两种利润差异怎么桥接 假设固定制造费用按产量分配,单位固定制造费用率: `FMOH rate per unit = Total FMOH / Units produced` 利润差额(吸收 - 变动): `NI_absorption - NI_variable = (Ending inventory units - Beginning inventory units) * FMOH rate per unit` 直觉记忆: - 存货增加(产量 > 销量):吸收利润更高(固定制造费用被“留在存货里”)。 - 存货减少(产量 < 销量):吸收利润更低(以前留在存货里的固定制造费用被“释放到当期”)。 ## 3.4.3 做题步骤(最稳的写法) 1. 算单位变动制造成本(DM + DL + 变动 MOH)。 2. 算单位固定制造费用率(总固定制造费用 / 本期产量)。 3. 分别写两套利润表,或直接用“利润桥接公式”算差额。 4. 解释利润差异来源:固定制造费用在“存货 vs 当期费用”之间移动。 ## 3.4.4 例题:同一家公司两套利润为什么不一样 已知: - 单位售价:100 - 单位变动制造成本:40(DM20 + DL10 + 变动 MOH10) - 固定制造费用:200,000 - 变动销管费:10/件 - 固定销管费:50,000 - 期初存货:0 - 产量:10,000 - 销量:8,000 步骤 1:单位固定制造费用率 - `FMOH rate = 200,000 / 10,000 = 20/件` 步骤 2:变动成本法利润表(贡献式) | 项目 | 金额 | | ----------------- | --------: | | 销售收入(8,000\*100) | 800,000 | | 变动销售成本(8,000\*40) | (320,000) | | 变动销管费(8,000\*10) | (80,000) | | 贡献毛益 | 400,000 | | 固定制造费用 | (200,000) | | 固定销管费 | (50,000) | | 净利润 | 150,000 | 步骤 3:吸收成本法利润表(传统式) 吸收成本单位制造成本 = 40 + 20 = 60 | 项目 | 金额 | | ----------------------- | --------: | | 销售收入(8,000\*100) | 800,000 | | 销售成本(8,000\*60) | (480,000) | | 毛利 | 320,000 | | 销管费(8,000\*10 + 50,000) | (130,000) | | 净利润 | 190,000 | 步骤 4:用桥接公式核对 期末存货 = 10,000 - 8,000 = 2,000 件;期初存货 0 件。 差额 = (2,000 - 0) \* 20 = 40,000 吸收利润 190,000 - 变动利润 150,000 = 40,000,吻合。 ## 可运行例题:用利润桥接识别“多生产”效应 把销量改成 10,000 或 12,000,观察利润差额如何随存货变化改变。此简化模型假定期初存货为零且本期固定制造费用按本期产量分配。 ::pyodide --- code64: cHJpY2UgPSAxMDAuMAp2YXJpYWJsZV9tYW51ZmFjdHVyaW5nID0gNDAuMAp2YXJpYWJsZV9zZWxsaW5nID0gMTAuMApmaXhlZF9tYW51ZmFjdHVyaW5nID0gMjAwXzAwMC4wCmZpeGVkX3NlbGxpbmcgPSA1MF8wMDAuMApwcm9kdWNlZCA9IDEwXzAwMApzb2xkID0gOF8wMDAKYmVnaW5uaW5nX2ludmVudG9yeSA9IDAKCmZpeGVkX21vaF9yYXRlID0gZml4ZWRfbWFudWZhY3R1cmluZyAvIHByb2R1Y2VkCnZhcmlhYmxlX3Byb2ZpdCA9ICgKICAgIHNvbGQgKiBwcmljZQogICAgLSBzb2xkICogdmFyaWFibGVfbWFudWZhY3R1cmluZwogICAgLSBzb2xkICogdmFyaWFibGVfc2VsbGluZwogICAgLSBmaXhlZF9tYW51ZmFjdHVyaW5nCiAgICAtIGZpeGVkX3NlbGxpbmcKKQphYnNvcnB0aW9uX3Byb2ZpdCA9ICgKICAgIHNvbGQgKiBwcmljZQogICAgLSBzb2xkICogKHZhcmlhYmxlX21hbnVmYWN0dXJpbmcgKyBmaXhlZF9tb2hfcmF0ZSkKICAgIC0gc29sZCAqIHZhcmlhYmxlX3NlbGxpbmcKICAgIC0gZml4ZWRfc2VsbGluZwopCmVuZGluZ19pbnZlbnRvcnkgPSBiZWdpbm5pbmdfaW52ZW50b3J5ICsgcHJvZHVjZWQgLSBzb2xkCmJyaWRnZSA9IChlbmRpbmdfaW52ZW50b3J5IC0gYmVnaW5uaW5nX2ludmVudG9yeSkgKiBmaXhlZF9tb2hfcmF0ZQoKcHJpbnQoZiLlj5jliqjmiJDmnKzms5XliKnmtqbvvJp7dmFyaWFibGVfcHJvZml0OiwuMGZ9IikKcHJpbnQoZiLlkLjmlLbmiJDmnKzms5XliKnmtqbvvJp7YWJzb3JwdGlvbl9wcm9maXQ6LC4wZn0iKQpwcmludChmIuWtmOi0p+S4reeahOWbuuWumuWItumAoOi0ueeUqOWPmOWKqO+8mnticmlkZ2U6LC4wZn0iKQphc3NlcnQgYWJzKGFic29ycHRpb25fcHJvZml0IC0gdmFyaWFibGVfcHJvZml0IC0gYnJpZGdlKSA8IDFlLTk= layout: vertical locale: zh title: Python:变动成本法与吸收成本法利润桥接 --- :: 吸收成本法利润较高不等于经营更好:本例销量未变,差额只是 40,000 元固定制造费用暂留在 2,000 件期末存货中。若库存没有真实需求,下一期还可能发生仓储、跌价和费用释放。 ## 3.4.5 这章真正要你记住的管理含义 1. 对外报表必须用吸收成本法,所以“毛利”里包含了固定制造费用的分摊。 2. 对内短期决策更偏向变动成本法,因为它把“销量贡献”看得更清楚。 3. 吸收成本法下存在激励扭曲:经理可能通过“多生产、压库存”来短期抬高利润。 ## 3.4.6 常见错误 1. 把固定销管费也当成产品成本(不对,固定销管费始终是期间成本)。 2. 单位固定制造费用率用“销量”去除(应以产量为分母)。 3. 只会算利润,不会解释差异来源(固定制造费用在存货中的递延/释放)。 ## 3.4.7 快速检查 1. 如果产量 = 销量,两种方法利润为什么相同? 2. 为什么吸收成本法更符合对外报表的配比思想? 3. 变动成本法的贡献式利润表在短期决策里有什么优势? ::legacy-spoiler{title="参考答案"} 1. 因为期末存货不变,固定制造费用没有递延或释放,差额为 0。 2. 因为固定制造费用也被视为“制造成本”,在产品卖出时才进入销售成本,更符合“成本与收入匹配”的列报思路。 3. 它把变动成本与固定成本分开,更直接地展示“多卖一件贡献多少”,更适合特殊订单、停产、瓶颈资源等决策。 :: ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 同一家公司在内外部报告中可能同时使用两套成本/利润概念,如果不理解差异,很容易被“利润变化”误导。 - **这一节的知识有什么用?** - 能够解释在产量≠销量的情况下,吸收成本法利润与变动成本法利润差异的来源(固定制造费用在存货与当期费用之间的分配)。 - 在管理决策中,理解变动成本法更适合做短期决策分析,而吸收成本法是对外财务报告的要求。 - **在题目或工作中怎么用?** - 做题时:先算单位固定制造费用率,再用存货变动把两种利润桥接起来,最后写一句话解释“差额来自固定制造费用递延/释放”。 - 实务中:在评估经理的业绩或制定生产计划时,要警惕利用吸收成本法通过“过量生产”来提高当期利润的激励扭曲。 - **用好了会得到什么结果?** - 能在考题中清晰地解释为何“产量上升但销量不变时,吸收成本法利润会提高”。 - 在企业管理中,更加意识到会计计量方法对行为的影响,从而设计更合理的绩效评价和激励机制。 ## 下一章 本章解释利润为何受产量和存货影响;下一章用贡献毛益进一步分析销量、成本和利润关系。继续读[本量利分析](https://www.pengjiaxin.com/../02-planning-control/18-cvp-analysis)。 # 1. 成本基础 []{#_1-成本基础} 这个模块先解决“成本到底是什么、怎样分、怎样算”的问题。管理会计里的成本不是一个固定标签,同一笔支出在不同问题里可能被看作产品成本、期间成本、固定成本、变动成本、直接成本或间接成本。 学这一部分时,要把分类和用途连起来。成本分类不是为了背概念,而是为了服务后面的定价、预算、差异分析、接单、自制外购和停产等决策。 ## 这个模块回答什么 - 固定、变动、直接、间接成本分别是什么? - 分批法和分步法怎样把成本分配到产品或服务? - 为什么变动成本法和吸收成本法会导致不同利润结果? ## 讲义内容 | 讲义 | 重点 | | ----------------------------------------------------------------------- | -------------- | | [成本概念](https://www.pengjiaxin.com/16-cost-concepts) | 成本分类与成本行为 | | [成本核算系统](https://www.pengjiaxin.com/17-costing-systems) | 分批法、分步法和成本归集逻辑 | | [变动成本法 vs. 吸收成本法](https://www.pengjiaxin.com/19-variable-vs-absorption) | 存货计价差异如何影响利润 | ## 学完应能做到 - 根据业务场景区分固定成本、变动成本、直接成本和间接成本。 - 说明产品成本和期间成本在报表和管理分析中的不同作用。 - 判断分批法和分步法分别适合什么生产或服务环境。 - 解释变动成本法和吸收成本法为什么会产生不同利润。 - 为后续本量利、预算和短期决策准备正确的成本口径。 ## 常见误区 - 以为固定成本天然无关。 - 混淆产品成本与期间成本。 - 忽视存货处理方式对利润的影响。 ::tip{title="练习建议"} 做成本分类题时,不要只问“这是什么成本”,还要问“为了哪个决策而分类”。同一项成本换一个问题,相关性可能完全不同。 :: ## 下一步 进入 [2. 计划与控制](https://www.pengjiaxin.com/../02-planning-control/) 后,这些成本口径会被用于本量利分析、预算编制、差异解释和绩效评价。 # 3.3 CVP 分析(Cost-Volume-Profit) ## 本章回答什么 - 边际贡献、固定成本、售价和销量怎样共同决定利润? - 保本点真正告诉管理层的是什么? - 本量利分析依赖哪些简化假设,这些假设又会在哪些地方误导你? ## 学习目标 读完这一页后,你应该能够: - 计算单位贡献毛益、贡献毛益率、保本点、目标利润销量和安全边际。 - 处理销售结构固定的多产品 CVP 题。 - 说明 CVP 假设及其在现实业务中的失效风险。 ## 业务场景 一家健身房准备推出新课程。每位学员收费 200 元,教练课酬和耗材是变动成本,场地租金和营销团队工资是固定成本。管理层需要知道至少招多少学员才不亏、目标利润需要多少销量、如果报名低于预期会亏多少。CVP 把这些问题变成可计算的保本和安全边际。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 计划与控制**。 - 建议先读[变动成本法 vs. 吸收成本法](https://www.pengjiaxin.com/../01-cost-foundations/19-variable-vs-absorption)。 - 读完后可以接着进入[预算与差异分析](https://www.pengjiaxin.com/20-budgeting-variances)。 CVP(本量利)回答的是:**销量变了,利润会怎么变?** 作答时,先从题目中找出 3 个参数: - 单位售价(P) - 单位变动成本(V) - 总固定成本(F) 根据这些参数算出贡献毛益(Contribution Margin),就可以继续推算保本点和利润。 ## 3.3.1 核心直觉:先“贡献”固定成本,再“贡献”利润 每卖出一件产品,售价扣除变动成本后剩余的金额就是贡献毛益(CM)。它先用于覆盖固定成本,超过固定成本的部分才形成利润。 贡献式利润表把这一关系列示如下: ```text Sales - Variable costs = Contribution margin - Fixed costs = Operating profit ``` ## 3.3.2 关键公式(单一产品) | 指标 | 公式 | | -------- | -------------------------------- | | 单位贡献毛益 | `CMu = P - V` | | 贡献毛益率 | `CM% = CM / Sales = CMu / P` | | 保本点(销量) | `BEPu = F / CMu` | | 保本点(销售额) | `BEPr = F / CM%` | | 目标利润销量 | `Q = (F + Target profit) / CMu` | | 安全边际 | `MOS = Actual sales - BEP sales` | | 安全边际率 | `MOS% = MOS / Actual sales` | ### 公式怎样从利润关系推出来 销售收入是 `P × Q`,变动成本是 `V × Q`,再扣总固定成本 F,因此 `利润 = (P − V) × Q − F`。保本时把利润设为零;要达到目标利润 T,就让总贡献毛益覆盖 `F + T`,由此得到目标销量公式。 单位也能帮助检查:固定成本“元”除以单位贡献“元/件”,结果才是“件”;除以无量纲的贡献毛益率,结果是“销售额”。这里讨论的是模型中的营业利润,不等于扣除融资与所得税后的净利润,也不等于现金结余。 ## 3.3.3 做题步骤(推荐固定写法) 1. 把题目数据归类:P、V、F。 2. 先算 `CMu` 和 `CM%`。 3. 再根据问题算 BEP、目标销量或安全边际。 4. 如果是多产品,先算“加权平均贡献毛益”(见下节)。 ## 3.3.4 例题 1:保本点与目标利润 **情境**:单一产品。 - 单位售价 P = 50 - 单位变动成本 V = 30 - 固定成本 F = 100,000 计算: - 单位贡献毛益 `CMu = 50 - 30 = 20` - 保本点销量 `BEPu = 100,000 / 20 = 5,000 件` - 若目标利润 20,000: - `Q = (100,000 + 20,000) / 20 = 6,000 件` 这类题可以直接从 `CMu` 推算,无须先编制完整的利润表。 ### 用代回法检查取整和安全边际 若售价下降 5% 至 47.5,单位贡献变成 17.5。目标利润 20,000 要求销量 `120,000 / 17.5 = 6,857.14` 件,应向上取整为 **6,858 件**。卖 6,857 件只得到利润 19,997.5,仍未达标;卖 6,858 件才得到 20,015。题目问“至少多少件”时不能四舍五入。 回到原售价 50、单位变动成本 30:若预计卖 6,500 件,安全边际为 `6,500 − 5,000 = 1,500` 件,安全边际率约 23.1%,利润为 `1,500 × 20 = 30,000`。这表示在售价、成本和产能假设不变时,销量可以下降多少才触及保本点,不是“有 23.1% 的概率不会亏损”。 :model-curve-chart{props64="eyJ0aXRsZSI6IkNWUCDlm77vvJrmlLblhaXnur/ov73kuIrmiJDmnKznur/nmoTpgqPkuIDngrnlsLHmmK/kv53mnKzngrkiLCJzdWJ0aXRsZSI6IlA9NTDvvIxWPTMw77yMRj0xMDAsMDAw77yb6LaF6L+H5L+d5pys54K55ZCO77yM5q+P5aSa5Y2W5LiA5Lu26LSh54yu5q+b55uK5byA5aeL6L+b5YWl5Yip5ram44CCIiwieExhYmVsIjoi6ZSA6YePIFEiLCJ5TGFiZWwiOiLph5Hpop0iLCJoZWlnaHQiOjM5MCwibWluWCI6MCwibWF4WCI6NzAwMCwibWluWSI6MCwibWF4WSI6MzYwMDAwLCJzZXJpZXMiOlt7Im5hbWUiOiLplIDllK7mlLblhaUiLCJjb2xvciI6IiMyNTYzZWIiLCJwb2ludHMiOlt7IngiOjAsInkiOjB9LHsieCI6NTAwMCwieSI6MjUwMDAwLCJsYWJlbCI6IuS/neacrOeCuSJ9LHsieCI6NjAwMCwieSI6MzAwMDAwLCJsYWJlbCI6Iuebruagh+mUgOmHjyJ9LHsieCI6NzAwMCwieSI6MzUwMDAwfV19LHsibmFtZSI6IuaAu+aIkOacrCIsImNvbG9yIjoiI2RjMjYyNiIsInBvaW50cyI6W3sieCI6MCwieSI6MTAwMDAwfSx7IngiOjUwMDAsInkiOjI1MDAwMH0seyJ4Ijo2MDAwLCJ5IjoyODAwMDB9LHsieCI6NzAwMCwieSI6MzEwMDAwfV19LHsibmFtZSI6IuWbuuWumuaIkOacrCIsImNvbG9yIjoiIzY0NzQ4YiIsImRhc2hlZCI6dHJ1ZSwic21vb3RoIjpmYWxzZSwicG9pbnRzIjpbeyJ4IjowLCJ5IjoxMDAwMDB9LHsieCI6NzAwMCwieSI6MTAwMDAwfV19XSwibWFya2VycyI6W3sieCI6NTAwMCwibGFiZWwiOiI1LDAwMCDku7YiLCJjb2xvciI6IiMwZjc2NmUifSx7IngiOjYwMDAsImxhYmVsIjoiNiwwMDAg5Lu2IiwiY29sb3IiOiIjZGMyNjI2In1dLCJzZWdtZW50cyI6W3sieCI6NjAwMCwiZnJvbSI6MjgwMDAwLCJ0byI6MzAwMDAwLCJsYWJlbCI6Iuebruagh+WIqea2piAyMCwwMDAiLCJjb2xvciI6IiMwZjc2NmUifV0sImNhcHRpb24iOiLkv53mnKzngrnlt6bkvqfmmK/kuo/mjZ/ljLrvvIzlj7PkvqfmmK/nm4jliKnljLrvvJvnm67moIfliKnmtqbplIDph4/kuIDlrprokL3lnKjkv53mnKzngrnlj7PkvqfjgIIifQ=="} 这张图适合在做完公式后再看一遍直觉:固定成本让总成本线从 100,000 开始,销售收入线从 0 开始。保本点以前,收入只是不断追赶成本;越过保本点以后,收入线和总成本线之间的垂直距离才是利润。 ## 3.3.5 例题 2:多产品 CVP(销售结构固定) 多产品时,题目通常暗含“销售结构(sales mix)固定”,否则 CVP 无法唯一确定。 **情境**:两产品 A/B,销售结构固定为 A\:B = 2:1。 - A:P=40,V=28 - B:P=70,V=50 - F=120,000 步骤 1:算单位贡献毛益 - A:`CMuA = 12` - B:`CMuB = 20` 步骤 2:构造“组合包”(bundle) 按 2:1 组合包 = 2 个 A + 1 个 B - 组合包贡献毛益 = `2*12 + 1*20 = 44` 步骤 3:算保本点(组合包数) - 保本组合包数 = `120,000 / 44 = 2,727.27`,向上取整为 2,728 包 步骤 4:还原到各产品销量 - A:`2,728 * 2 = 5,456 件` - B:`2,728 * 1 = 2,728 件` ## 3.3.6 经营杠杆(Operating Leverage)的直觉 固定成本越高,利润对销量的敏感度越高。 常见指标:度量某一销量水平下的经营杠杆 `DOL = Contribution margin / Operating profit` 利润很小的时候 DOL 会很大,解释时要说明“接近保本点”的原因。 ## 3.3.7 CVP 的常见假设(也是常见失效点) 1. 成本可分为固定与变动,且在相关范围内不变。 2. 售价不变(或题目已给出分段售价)。 3. 产量 = 销量(若有存货变化,需用吸收/变动成本法另处理)。 4. 多产品时销售结构不变。 ## 可运行例题:不要只报一个保本点 基准情景的保本点是 5,000 件,但售价下降或单位变动成本上升会迅速改变结论。下面把三个情景放在同一张表中。 ::pyodide --- code64: ZnJvbSBtYXRoIGltcG9ydCBjZWlsCmZyb20gZGVjaW1hbCBpbXBvcnQgRGVjaW1hbAoKZml4ZWRfY29zdCA9IERlY2ltYWwoIjEwMDAwMCIpCnRhcmdldF9wcm9maXQgPSBEZWNpbWFsKCIyMDAwMCIpCnNjZW5hcmlvcyA9IFsKICAgICgi5Z+65YeGIiwgNTAuMCwgMzAuMCksCiAgICAoIuWUruS7t+S4i+mZjSA1JSIsIDQ3LjUsIDMwLjApLAogICAgKCLljZXkvY3lj5jliqjmiJDmnKzkuIrljYciLCA1MC4wLCAzNC4wKSwKXQoKcHJpbnQoIuaDheaZryB8IOWNleS9jei0oeeMriB8IOS/neacrOmUgOmHjyB8IOebruagh+WIqea2pumUgOmHjyIpCmZvciBuYW1lLCBwcmljZSwgdmFyaWFibGVfY29zdCBpbiBzY2VuYXJpb3M6CiAgICAjIOWFiOS/neeVmeWNgei/m+WItumHkemine+8jOmBv+WFjea1rueCueivr+W3ruiuqeeyvuehruaVtOaVsOmXqOanm+WkmuWPluS4gOS7tuOAggogICAgcHJpY2UsIHZhcmlhYmxlX2Nvc3QgPSBEZWNpbWFsKHN0cihwcmljZSkpLCBEZWNpbWFsKHN0cih2YXJpYWJsZV9jb3N0KSkKICAgIGNvbnRyaWJ1dGlvbiA9IHByaWNlIC0gdmFyaWFibGVfY29zdAogICAgaWYgY29udHJpYnV0aW9uIDw9IDA6CiAgICAgICAgcHJpbnQoZiJ7bmFtZX0gfCB7Y29udHJpYnV0aW9uOi4yZn0gfCDml6DmnInpmZDkv53mnKzngrkgfCDml6AiKQogICAgICAgIGNvbnRpbnVlCiAgICBicmVha19ldmVuID0gY2VpbChmaXhlZF9jb3N0IC8gY29udHJpYnV0aW9uKQogICAgdGFyZ2V0X3VuaXRzID0gY2VpbCgoZml4ZWRfY29zdCArIHRhcmdldF9wcm9maXQpIC8gY29udHJpYnV0aW9uKQogICAgcHJpbnQoZiJ7bmFtZX0gfCB7Y29udHJpYnV0aW9uOi4yZn0gfCB7YnJlYWtfZXZlbjosfSB8IHt0YXJnZXRfdW5pdHM6LH0iKQ== layout: vertical locale: zh title: Python:CVP 情景与保本点敏感性 --- :: 提出建议时,应先交代“在这些价格、成本和销售结构假设下”这一前提,不能把 5,000 件视为不变的保本点。在本例固定成本为正的条件下,若贡献毛益为零,新增销售只能补偿自身的变动成本;若贡献为负,增加销量还会扩大亏损。两种情况下都没有可用的有限保本销量。即使算出了目标,也要检查产能和需求是否足以支持。 接着完成[综合决策练习中的降价与产能题](https://www.pengjiaxin.com/../../foundation/03-decision-workshop),练习识别“算得出来但做不到”的目标。公式推导也可对照 [OpenStax 的保本分析](https://openstax.org/books/principles-managerial-accounting/pages/3-2-calculate-a-break-even-point-in-units-and-dollars){rel=""nofollow""}。 ## 3.3.8 常见错误 1. 把固定成本按单位分摊进 V,导致 CM 算错。 2. 多产品题目不先做销售结构“组合包”,直接拿总贡献毛益去除 F。 3. 安全边际用“销量差”却写成“金额差”,单位混乱。 4. 忘记向上取整(保本点销量必须覆盖固定成本)。 ## 3.3.9 快速检查 1. 为什么 CVP 先算贡献毛益而不是先算毛利? 2. 多产品 CVP 题里,“销售结构固定”如果不成立会发生什么? 3. 固定成本越高,风险一定越高吗? ::legacy-spoiler{title="参考答案"} 1. 贡献毛益直接对应“覆盖固定成本”和“利润”,更贴合本量利分析目的;毛利还混入了固定制造费用的分摊口径(吸收成本法)会干扰短期分析。 2. 没有固定结构就没有唯一的加权平均贡献毛益,保本点会变成一个区间甚至不可解。 3. 不一定。固定成本高意味着经营杠杆大,销量波动下利润波动更大;但如果需求非常稳定且规模效应明显,高固定成本也可能带来更低的单位成本和更强的竞争力。 :: ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - CVP分析让我们能够计算“多卖一件能多赚多少、销量降一点会不会亏本”,用于支持经营决策。 - **这一节的知识有什么用?** - 帮助确定保本点、目标利润所需的销量/销售额、安全边际和经营杠杆程度,为定价、扩产、促销等决策提供定量依据。 - **在题目或工作中怎么用?** - 做题时:先统一口径(P、V、F),再算 CM,再算保本点或目标利润,最后用文字解释“为什么”。 - 实务中:结合企业的固定成本结构和变动成本占比,评估在不同销量情景下利润的波动性,进而决定是否要提高固定成本(如加大自动化投资)。 - **用好了会得到什么结果?** - 能更熟练、准确地完成 CVP 计算,并解释结果。 - 在实际业务中,根据价格、成本和销量假设比较方案,为判断提供计算依据。 ## 下一章 本章用于做销量和利润的事前测算;下一章把计划写成预算,并在事后分析实际与预算差异。继续读[预算与差异分析](https://www.pengjiaxin.com/20-budgeting-variances)。 # 3.5 预算与差异分析(Budgeting & Variances) ## 本章回答什么 - 为什么预算既是计划工具,也是控制工具? - 差异分析怎样解释计划与实际之间的偏差? - 为什么看到差异后,第一步应该是调查原因,而不是立刻下结论? ## 学习目标 读完这一页后,你应该能够: - 说明主预算从销售预算到现金预算的逻辑顺序。 - 区分静态预算、弹性预算和实际结果。 - 计算材料、人工和制造费用差异,并解释 F/U 背后的业务原因。 ## 业务场景 生产部门本月材料成本超支。采购说市场价格上涨,车间说原材料质量差导致耗用增加。差异分析把超支拆成价格差异和用量差异,帮助管理层判断责任、可控性和改进方向,而不是简单把总差异归咎于某个部门。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 计划与控制**。 - 建议先读[本量利分析](https://www.pengjiaxin.com/18-cvp-analysis)。 - 读完后可以接着进入[绩效评价](https://www.pengjiaxin.com/21-performance-measurement)。 预算和差异分析分别用于计划与事后检查,两者需要结合使用: - 预算:把事前计划转化为可度量的数字。 - 差异分析:比较实际结果与计划,分析原因、责任和需要改进的地方。 计算差异时,先掌握这一顺序:\*\*按相同业务量比较,再拆解价格与效率差异。\*\*理解每一步在比较什么,比单独记住公式更有用。 ## 3.5.1 预算:主预算(Master Budget)是从销售开始的 **直觉**:销售决定产量,产量决定资源需求,资源需求决定成本与现金。 主预算常见构成(按流程记): 1. 销售预算(Sales budget) 2. 生产预算(Production budget) 3. 直接材料、直接人工、制造费用预算(DM/DL/MOH) 4. 销管费预算(SG\&A) 5. 现金预算与预计财务报表(Cash + Pro forma statements) 考试里如果让你“编预算”,最常见的是: - 给销量预测与期末存货目标,让你编生产预算 - 再由生产预算推出材料采购、人工工时、制造费用等 ### 把销售、生产、采购和付款分开 独立计划例子:预计销售 900 件,希望期末有成品 120 件,期初已有 100 件,则生产量为 `900 + 120 − 100 = 920` 件。每件使用 1 kg 材料,希望期末材料 50 kg,期初已有 40 kg,则采购量为 `920 + 50 − 40 = 930 kg`。 销售量、生产量和采购量各有用途。用采购量乘材料单价,得到采购金额,再结合账期和期初应付账款安排付款。销售收入也要区分现金销售与赊销,按回款时间计算收款,不能直接照搬到现金预算中。 设备购买按付款时点列入现金预算;折旧虽然影响预计利润,却不构成本期现金支出。期末现金是期初余额加净现金流,不要把“期末现金为正”误读为“本月净流入为正”。 ## 3.5.2 差异分析:先对齐业务量,再谈效率 如果还不熟悉现金预算,可先完成[现金预算与收付款时间](https://www.pengjiaxin.com/../../foundation/02-cash-budget)的跨月收付款和融资练习,再回到本节比较相同业务量下的成本。 差异分析常见口径有三张“对照表”: | 对照对象 | 业务量口径 | 用途 | | -------------- | ----- | ------- | | 静态预算(Static) | 预算业务量 | 事前计划 | | 弹性预算(Flexible) | 实际业务量 | 评价效率更公平 | | 实际结果(Actual) | 实际业务量 | 真实发生 | **最稳的分解**: - 总差异(Actual - Static) - 其中一部分来自业务量变化(Static -> Flexible) - 剩下才是效率/价格导致的差异(Flexible -> Actual) 弹性预算保留标准单价和单位投入量,只把产量换成实际产量。固定成本总额在相关范围内通常不随产量同比增长;若跨过产能台阶,应明确新增成本,而不是机械按比例放大所有预算。 ## 3.5.3 标准成本差异的通用骨架(很重要) 只要题目给了“标准价/标准量”,你都可以用这张表: | 组合 | 价格 | 数量 | | -- | -- | -- | | 标准 | SP | SQ | | 混合 | SP | AQ | | 实际 | AP | AQ | 然后: - 价格差异:`(AP - SP) * AQ` - 数量(效率)差异:`(AQ - SQ) * SP` 差异方向(F/U)建议用“成本越高越不利”的直觉来判断,不要死背正负号。 ## 3.5.4 直接材料差异(DM Variances) | 差异 | 公式 | 常见原因 | | ----------- | ---------------- | ------------------- | | 价格差异(Price) | `(AP - SP) * AQ` | 采购议价、市场价格、采购批量、紧急采购 | | 用量差异(Usage) | `(AQ - SQ) * SP` | 损耗、工艺、质量、员工熟练度、设备状态 | ### 例题:材料差异拆解 情境: - 标准:1 kg/件,10 元/kg - 实际产量:1,000 件 - 实际耗用:1,100 kg - 实际价格:11 元/kg 计算: - AQ = 1,100 kg - SQ = 1,000 \* 1 = 1,000 kg - 价格差异 = (11 - 10) \* 1,100 = 1,100(不利 U) - 用量差异 = (1,100 - 1,000) \* 10 = 1,000(不利 U) - 总差异 = 2,100(U) ### 为什么标准用量要对应实际产量 这里的 SQ 是“实际完成 1,000 件,按每件 1 kg 本应使用多少”,所以为 1,000 kg。它既不是最初计划生产的件数,也不是实际耗用的 1,100 kg。否则,超耗会被藏进标准,或产量增加会被误判为效率下降。 用三个总额检验分解:**1,000 kg × 10 = 10,000 → 1,100 kg × 10 = 11,000 → 1,100 kg × 11 = 12,100**。前一步增加的 1,000 是用量差异,后一步增加的 1,100 是价格差异,合计 2,100。 本例在实际耗用量上计算价格差异。若题目明确要求在采购时确认价格差异,应使用实际采购量,耗用与采购之间的存货变化需另行衔接,不能把两个 AQ 混用。 ### 从静态预算一直核对到实际结果 再补充:原计划产量为 900 件,标准仍为每件 1 kg、每 kg 10 元。 | 材料成本口径 | 金额 | 含义 | | ------- | ------: | ----------------- | | 静态预算 | 9,000 | 900 件按标准应花多少 | | 弹性预算 | 10,000 | 实际 1,000 件按标准应花多少 | | 实际成本 | 12,100 | 实际耗用量乘实际价格 | | 业务量差异 | 1,000 | 弹性减静态 | | 价格与用量差异 | 2,100 U | 实际减弹性 | | 总差异 | 3,100 | 实际减静态 | 所以不能把全部超支 3,100 都称作材料浪费:其中 1,000 是多生产 100 件所需的标准成本。剩余 2,100 也只是调查起点,需要采购价格、材料质量、损耗记录等证据才能解释责任。完成[综合练习中的弹性预算题](https://www.pengjiaxin.com/../../foundation/03-decision-workshop),检查自己能否把两段差异分别说清楚。 ## 3.5.5 直接人工差异(DL Variances) | 差异 | 公式 | 常见原因 | | ---------------- | ---------------- | -------------- | | 工资率差异(Rate) | `(AR - SR) * AH` | 加班、工资等级变化、市场薪资 | | 效率差异(Efficiency) | `(AH - SH) * SR` | 熟练度、停工、工艺改进 | 其中: - AH = 实际工时 - SH = 实际产量 \* 标准工时/件 ## 3.5.6 制造费用差异(MOH Variances)速记 进一步分析时,要先把 MOH 拆成“变动 + 固定”,再按所用成本制度区分预算差异与产量差异。 本章先介绍一种常用的分解方法,不展开更细的分类: - 变动制造费用:支出差异(spending)与效率差异(efficiency) - 固定制造费用:预算差异(budget)与产量差异(volume) 固定制造费用的产量差异来自实际产出与预算分配基础的差别,不等于实际多付或少付了同额现金。题目采用哪种分解方法,应以题目给定的标准和成本制度为准。 ## 3.5.7 做题模板:三步写法 1. 先写清楚标准:SP、标准用量/工时(每件),标准费率(每小时)。 2. 算 SQ/SH(基于实际产量)。 3. 套两条通用公式,把结果标注 F/U,并解释可能原因。 ## 3.5.8 常见错误 1. 不先算 SQ/SH,直接拿预算数量当 SQ/SH。 2. 价格差异用 (AP - SP) \* SQ(错,用 AQ)。 3. 把静态预算差异当成效率差异,忽略业务量变化影响。 4. 只会算差异,不会给出“可能原因”,导致解释题丢分。 ## 3.5.9 快速检查 1. 为什么评价成本控制更推荐用弹性预算,而不是静态预算? 2. 材料价格差异为什么乘 AQ 而不是 SQ? 3. “不利差异”一定代表管理层做得差吗? ::legacy-spoiler{title="参考答案"} 1. 因为弹性预算把业务量对齐到实际水平,避免“卖得多所以费用高”被误判为管理不善。 2. 价格差异关注的是实际采购/耗用的那部分数量,价格影响发生在 AQ 上。 3. 不一定。可能来自不可控因素(市场涨价、原材料短缺),也可能是“为了质量更好而付更高价”等策略选择。 :: ## 本节学习与应用(四个问题) - **为什么要学/用这一节?** - 预算提出事前计划,差异分析提供事后反馈,帮助管理者检查并调整经营活动。 - **这一节的知识有什么用?** - 能够分解总差异为价格差异和数量/效率差异,找出偏差主要来源于价格变动还是使用效率问题。 - 在考试中,预算与差异分析常以综合题形式出现,考查计算能力和解释能力。 - **在题目或工作中怎么用?** - 做题时:先算 SQ/SH,再按“价格差异 + 数量/效率差异”拆解,并写出原因假设。 - 实务中:将差异分析结果与责任中心挂钩,区分可控差异和不可控差异,避免“为不可控因素背锅”。 - **用好了会得到什么结果?** - 能快速看出“问题出在单价还是用量”,从而提出针对性的改进建议。 - 让预算有可检查的依据,并能根据实际偏差及时调整。 ## 下一章 本章介绍了如何用预算和差异分析检查经营结果。下一章讨论绩效指标怎样兼顾公平评价与行为引导,继续读[绩效评价](https://www.pengjiaxin.com/21-performance-measurement)。 # 3.6 绩效评价(Performance Measurement) ## 本章回答什么 - 绩效指标为什么必须和责任中心真正可控制的事项匹配? - ROI、RI 和 EVA 各自强调了什么不同角度? - 为什么除了会计数字,还必须加入非财务指标? ## 学习目标 读完这一页后,你应该能够: - 区分成本中心、收入中心、利润中心和投资中心的评价口径。 - 计算并解释 ROI、RI 和 EVA 的管理含义。 - 为一个责任中心选择财务和非财务指标,避免短期行为。 ## 业务场景 集团要求各事业部提高 ROI。某事业部经理拒绝一个 NPV 为正的新项目,因为项目会拉低本部门当前 ROI。这个场景说明:指标会影响行为。绩效评价不仅要算得出,还要设计得公平、可控,并与长期价值一致。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 计划与控制**。 - 建议先读[预算与差异分析](https://www.pengjiaxin.com/20-budgeting-variances)。 - 读完后可以接着进入[短期决策](https://www.pengjiaxin.com/../03-decisions-investment/22-short-term-decisions)。 绩效评价的本质,是把战略转成可观察、可追踪、可激励的行为。 如果指标选错,管理层就会去优化指标本身,而不是优化企业。 ## 3.6.1 责任中心 | 类型 | 主要控制内容 | 常见指标 | | ---- | ------ | ---------- | | 成本中心 | 成本 | 成本差异、效率 | | 收入中心 | 销售收入 | 销售增长、毛利率 | | 利润中心 | 收入和成本 | 营业利润 | | 投资中心 | 利润和资产 | ROI、RI、EVA | 评价前先看控制权归谁。 如果指标超出责任中心控制范围,评价就不公平。 ## 3.6.2 投资回报率(ROI) `ROI = 营业利润 / 平均经营资产` 还可以拆成: `ROI = 营业利润率 × 资产周转率` 这样你就能看出 ROI 变化到底来自利润率,还是来自资产使用效率。 **例子** - 营业利润 = 400,000 - 销售收入 = 5,000,000 - 平均经营资产 = 2,000,000 则: - 营业利润率 = 8% - 资产周转率 = 2.5 - ROI = 20% ## 3.6.3 剩余收益(RI) `RI = 营业利润 - (要求报酬率 × 平均经营资产)` RI 关注的是:该部门是否赚到了高于最低要求的那部分收益。 如果要求报酬率是 12%: `RI = 400,000 - (12% × 2,000,000) = 160,000` RI 的一个优点,是不容易像 ROI 那样引发“拒绝好项目”的短期行为。 ## 3.6.4 经济增加值(EVA) `EVA = NOPAT - (WACC × 投入资本)` EVA 更接近“是否真正创造价值”的问题,因为它考虑了全部资本成本。 ## 3.6.5 平衡计分卡(BSC) 财务指标是重要的,但它们通常是滞后指标。 平衡计分卡会再加上能驱动未来结果的前导指标。 常见四个维度: 1. 财务 2. 客户 3. 内部流程 4. 学习与成长 每个维度都要问: - 目标是什么? - 用什么指标衡量? - 目标值是多少? - 通过什么行动改进? ## 3.6.6 常见错误 - 用 ROI 评价并不控制资产的责任中心。 - 只看 ROI,不看是否出现了低估投资的倾向。 - 只看财务结果,不看质量、交期和客户留存。 - 平衡计分卡指标过多,最后失去重点。 ## 3.6.7 快速检查 1. ROI 可以拆成哪两个部分? 2. 为什么 RI 比 ROI 更适合长期投资判断? 3. 举一个非财务指标,并说明它为什么重要。 ::legacy-spoiler{title="参考答案"} 1. 营业利润率和资产周转率。 2. 因为 RI 看的是绝对超额收益,更不容易因为“比例下降”而拒绝好项目。 3. 例如准时交付率或缺陷率,它们会影响客户满意度和未来收入。 :: ## 下一章 本章强调指标如何引导行为;下一章进入具体经营选择,用相关成本分析做短期决策。继续读[短期决策](https://www.pengjiaxin.com/../03-decisions-investment/22-short-term-decisions)。 # 2. 计划与控制 []{#_2-计划与控制} 这个模块用成本信息做前瞻性计划,再把计划和实际结果进行比较。 管理会计不是事后把数字归档,而是帮助管理者提前设定目标,并在执行后理解偏差。本量利分析提供“销量、价格、成本和利润”的简化模型,预算提供行动基准,差异分析和绩效评价则帮助判断问题出在价格、效率、数量、责任范围还是外部条件。 ## 这个模块回答什么 - 销量、单价和固定成本怎样影响利润? - 预算为什么是控制工具? - 差异和绩效指标应该怎样解释? ## 讲义内容 | 讲义 | 重点 | | ------------------------------------------------------------------------ | --------------- | | [本量利分析](https://www.pengjiaxin.com/18-cvp-analysis) | 边际贡献、保本点和销量敏感性 | | [预算与差异分析](https://www.pengjiaxin.com/20-budgeting-variances) | 计划基准与实际偏差 | | [现金预算与收付款时间](https://www.pengjiaxin.com/../../foundation/02-cash-budget) | 跨月收付款、资金缺口与融资安排 | | [绩效评价](https://www.pengjiaxin.com/21-performance-measurement) | 责任中心与 KPI 逻辑 | ## 学完应能做到 - 用边际贡献解释销量、售价、变动成本和固定成本对利润的影响。 - 计算并解释保本点、安全边际和目标利润销量。 - 说明预算为什么既是计划工具,也是控制工具。 - 把差异拆成可解释的业务原因,而不是只判断有利或不利。 - 根据责任中心和可控性理解绩效评价指标。 ## 常见误区 - 只看一个差异数字,不看业务原因。 - 把有利差异自动当成“好结果”。 - 在短期分析里忽视固定成本行为。 ::tip{title="练习建议"} 看到差异分析题,先写出预算基准、实际结果和业务解释三列。数字差异只是起点,课程真正要训练的是解释偏差和提出后续行动。 :: ## 下一步 进入 [3. 决策与投资](https://www.pengjiaxin.com/../03-decisions-investment/) 后,预算和成本信息会被放进具体方案选择:接不接订单、做不做产品、买不买设备。 # 3.7 短期决策(Short-term Decisions) ## 本章回答什么 - 短期经营选择中,哪些未来现金流才是真正相关的? - 特殊订单、自制外购、瓶颈资源和停产决策为什么都遵循同一个增量逻辑? - 即使数字看起来很清楚,为什么机会成本和定性因素仍然重要? ## 学习目标 读完这一页后,你应该能够: - 用“未来且不同”筛选短期决策中的相关收入和相关成本。 - 分析特殊订单、自制外购、停产和瓶颈资源分配问题。 - 把定性因素和机会成本写入决策建议,避免只看账面成本。 ## 业务场景 企业有闲置产能,客户提出一笔低价特殊订单。财务系统显示单位完全成本为 70 元,而客户只愿意出 60 元。管理会计要判断:这 70 元里哪些会因为接单而新增?哪些固定成本无论接不接都存在?是否会挤占正常销售?这就是相关成本分析的核心。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 决策与投资**。 - 建议先读[绩效评价](https://www.pengjiaxin.com/../02-planning-control/21-performance-measurement)。 - 读完后可以接着进入[资本预算](https://www.pengjiaxin.com/23-capital-budgeting)。 短期决策的核心只有一句话: **如果选 A 而不是 B,哪些未来现金流会改变?** 这就是相关成本分析。 ## 3.7.1 判断规则 只考虑: - 未来会发生的 - 且在备选方案之间不同的 不考虑: - 沉没成本 - 不会随方案改变的共同成本 ## 3.7.2 自制 / 外购 比较自制和外购的相关成本。 自制时常见的相关成本包括: - 直接材料 - 直接人工 - 变动制造费用 - 可避免的固定成本 已经发生且不会改变的历史成本,不应纳入比较。 ## 3.7.3 特殊订单 如果企业有闲置产能,特殊订单通常就是“增量收入 vs 增量成本”的问题。 最低逻辑: `增量收入 > 增量成本` 如果不会挤占原有销售,很多固定成本就不相关。 ## 3.7.4 瓶颈资源分配 当资源有限时,要比较每单位瓶颈资源能带来多少贡献毛益。 `每单位瓶颈资源贡献毛益 = 单位贡献毛益 / 每单位资源耗用量` 谁的单位瓶颈资源贡献更高,就优先生产谁。 ## 3.7.5 停产 / 继续生产 不能只看某产品线“账面上亏不亏”。 要看停掉它之后,能节省多少可避免固定成本,以及会损失多少贡献毛益。 ## 3.7.6 定价 短期定价通常会参考变动成本加成; 长期定价必须覆盖全部成本并达到目标收益。 ## 3.7.7 课堂例题:自制还是外购 **资料**:公司每年需要零件 10,000 件。自制单位变动成本 18 元;专属设备维护费 40,000 元若外购可避免;共同固定成本 60,000 元无论方案如何都会发生。供应商报价 24 元/件。 | 项目 | 自制相关成本 | 外购相关成本 | | ------------ | ------: | ------: | | 单位变动成本 / 采购价 | 180,000 | 240,000 | | 可避免固定维护费 | 40,000 | 0 | | 共同固定成本 | 0 | 0 | | 相关成本合计 | 220,000 | 240,000 | 结论:仅看相关成本,自制低 20,000 元。但最终建议还要考虑供应质量、交期、产能是否有其他更高价值用途。 ## 3.7.8 常见错误 - 把沉没成本当成决策依据。 - 忽略机会成本,尤其是瓶颈资源场景。 - 把无法避免的共同固定成本当成相关成本。 - 只看数字,不看质量、声誉和供应风险。 ## 3.7.9 快速检查 1. 为什么沉没成本不相关? 2. 碰到机器工时瓶颈时,应该用什么指标排序产品? 3. 特殊订单至少要覆盖哪两类增量? ::legacy-spoiler{title="参考答案"} 1. 因为它已经发生,不能被当前决策改变。 2. 每单位机器工时的贡献毛益。 3. 增量收入和增量成本。 :: ## 下一章 本章处理短期方案比较;下一章把决策时间拉长,加入货币时间价值和长期现金流风险。继续读[资本预算](https://www.pengjiaxin.com/23-capital-budgeting)。 # 3.8 资本预算(Capital Budgeting) ## 本章回答什么 - 为什么长期项目应该用现金流而不是会计利润来评价? - NPV、IRR 和回收期各自告诉你什么投资信息? - 为什么货币时间价值会改变项目评价方式? ## 学习目标 读完这一页后,你应该能够: - 识别资本预算中的初始投资、经营现金流、残值和营运资金回收。 - 计算 NPV、IRR、回收期和折现回收期,并说明各自局限。 - 用敏感性或情景分析解释长期项目风险。 ## 业务场景 企业考虑购买一条自动化产线。项目会减少人工成本、提高产能,但需要大量初始投资,并占用营运资金。会计利润可能受到折旧政策影响,而投资决策真正关心的是未来现金流是否足以补偿资本成本。资本预算把长期决策转化为折现现金流分析。 ## 在主线中的位置 - 这一章属于 **管理会计 -> 决策与投资**。 - 建议先读[短期决策](https://www.pengjiaxin.com/22-short-term-decisions)。 - 读完后可以接着进入[综合示例与常见陷阱](https://www.pengjiaxin.com/../../appendix/24-examples-pitfalls)。 资本预算用于长期投资决策。与短期决策相比,这类项目通常涉及更大金额的现金流,持续时间更长,风险也更高。 ## 3.8.1 先问什么 一个项目值不值得投,要看: - 初始投资 - 未来经营现金流 - 终值 / 残值 - 货币时间价值 - 风险 ## 3.8.2 净现值(NPV) `NPV = 未来现金流现值 - 初始投资` 决策规则: - `NPV > 0`:接受 - `NPV < 0`:拒绝 NPV 是最常用的主方法,因为它直接衡量“创造了多少价值”。 这里的“接受”有适用条件:对于独立项目,在现金流、风险和折现率假设成立,且没有资金等约束时,正 NPV 支持投资,但不保证实际盈利。若项目互斥,即使多个项目的 NPV 都为正,也不能全部实施。还需按相同口径比较价值,并检查资金与产能限制。 ### 为什么要把不同年份的钱换算到同一天 若年折现率为 10%,今天的 100 元与一年末的 110 元在模型中等值。反过来,一年末的 100 元现值只有 `100 / 1.10 = 90.91` 元。第 t 年末的现金流应除以 `(1 + r)^t`,其中 r 的期间必须与现金流间隔一致。 先画出时间轴:0 是现在,1 是第一年末,依次类推。初始支出在 0 时点,不再折现;若题目说年初、月末或延迟一年,就要相应调整时间,不能把所有金额直接相加。还要明确名义或实际金额、税前或税后口径,并选择匹配的折现率。 ## 3.8.3 内部报酬率(IRR) IRR 是使 NPV 等于 0 的折现率。 决策规则: - `IRR > 资本成本`:接受 - `IRR < 资本成本`:拒绝 该规则适用于先有初始流出、随后为流入的常规现金流。IRR 很直观,但互斥项目可能因规模、时点不同出现排序冲突;现金流多次改变正负号时,还可能有多个 IRR 或没有有意义的 IRR。这时应回到相关折现率下的 NPV 和现金流结构。 ## 3.8.4 回收期 回收期关注的是:初始投资多久能收回来。 回收期简单、直观,能粗略反映风险,但没有考虑收回初始投资之后的现金流。 折现回收期修正了货币时间价值问题,但仍然忽略后面的现金流。 ## 3.8.5 风险分析 常见方法: - 敏感性分析 - 情景分析 - 模拟分析 这些方法用于检查假设变化会怎样影响项目,而不是预测一个“唯一正确的未来”。 ## 3.8.6 小例子 **情境** - 初始投资:100,000 - 每年现金流入:30,000,持续 5 年 - 折现率:10% 本例是独立的简化现金流练习:初始投资在现在支付,五笔 30,000 均在各年末收到;不另设税、残值或营运资金变化。不要把同额会计利润直接代入这条现金流时间轴。 | 时点 | 项目现金流 | 折现系数(约) | 现值(元,约) | | ---- | -------: | -------: | ----------: | | 0 | −100,000 | 1.000000 | −100,000.00 | | 1 年末 | 30,000 | 0.909091 | 27,272.73 | | 2 年末 | 30,000 | 0.826446 | 24,793.39 | | 3 年末 | 30,000 | 0.751315 | 22,539.44 | | 4 年末 | 30,000 | 0.683013 | 20,490.40 | | 5 年末 | 30,000 | 0.620921 | 18,627.64 | 年金现值约为: `30,000 × 3.7908 = 113,724` 所以: `NPV = 113,724 - 100,000 = 13,724` 年金系数是五个折现系数的合计,不是另加一笔现金流。保留完整精度后,流入现值为 113,723.60,NPV 为 13,723.60;上面的 13,724 是四舍五入结果。在本例的假设下,这支持接受独立项目。 ### 同一例子的回收期怎样算 三年末累计收回 90,000,四年末累计 120,000。按题设严格的年末收款,简单回收期为 **4 年**。折现后的前四年流入合计约 95,095.96,小于 100,000;第五年末才超过初始投资,因此折现回收期为 **5 年**。 教材有时另假设年内均匀收款,此时简单回收期近似为 `3 + 10,000 / 30,000 = 3.33` 年。按年折现额做线性插值的折现回收期约为 `4 + 4,904.04 / 18,627.64 = 4.26` 年,但这只是年内插值近似,不是严格年末收款的答案。写回收期时必须交代采用哪种时间口径。 ## 可运行例题:一个正 NPV 可能有多脆弱 可以改变折现率和现金流预测,观察结论是否仍然成立。下面的示例比较不同资本成本与年度现金流的组合,并用二分法计算常规现金流的 IRR。 ::pyodide --- code64: aW5pdGlhbF9pbnZlc3RtZW50ID0gMTAwXzAwMC4wCmJhc2VfY2FzaF9mbG93cyA9IFszMF8wMDAuMF0gKiA1CgpkZWYgbnB2KHJhdGUsIGNhc2hfZmxvd3MpOgogICAgaWYgcmF0ZSA8PSAtMToKICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCLmipjnjrDnjoflv4XpobvlpKfkuo4gLTEwMCXjgIIiKQogICAgcmV0dXJuIC1pbml0aWFsX2ludmVzdG1lbnQgKyBzdW0oCiAgICAgICAgY2FzaCAvICgxICsgcmF0ZSkgKiogeWVhcgogICAgICAgIGZvciB5ZWFyLCBjYXNoIGluIGVudW1lcmF0ZShjYXNoX2Zsb3dzLCBzdGFydD0xKQogICAgKQoKZGVmIGlycihjYXNoX2Zsb3dzLCBsb3c9LTAuOTksIGhpZ2g9MS4wLCBpdGVyYXRpb25zPTEwMCk6CiAgICBpZiBpbml0aWFsX2ludmVzdG1lbnQgPD0gMCBvciBub3QgY2FzaF9mbG93cyBvciBhbnkoY2FzaCA8IDAgZm9yIGNhc2ggaW4gY2FzaF9mbG93cyk6CiAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigi5q2k5L6L5Y+q5pSv5oyB5Yid5aeL5oqV6LWE5Li65q2j44CB6ZqP5ZCO546w6YeR5rWB5Z2H6Z2e6LSf55qE5bi46KeE6aG555uu44CCIikKICAgIGlmIG5vdCAtMSA8IGxvdyA8IGhpZ2ggb3IgbnB2KGxvdywgY2FzaF9mbG93cykgPCAwIG9yIG5wdihoaWdoLCBjYXNoX2Zsb3dzKSA+IDA6CiAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigi57uZ5a6a5Yy66Ze05rKh5pyJ5aS55L2PIElSUu+8jOivt+ajgOafpeeOsOmHkea1geWSjOaQnOe0oui+ueeVjOOAgiIpCiAgICBmb3IgXyBpbiByYW5nZShpdGVyYXRpb25zKToKICAgICAgICBtaWQgPSAobG93ICsgaGlnaCkgLyAyCiAgICAgICAgaWYgbnB2KG1pZCwgY2FzaF9mbG93cykgPiAwOgogICAgICAgICAgICBsb3cgPSBtaWQKICAgICAgICBlbHNlOgogICAgICAgICAgICBoaWdoID0gbWlkCiAgICByZXR1cm4gKGxvdyArIGhpZ2gpIC8gMgoKZm9yIGxhYmVsLCBjYXNoX2Zsb3dzIGluIFsKICAgICgi5Z+65YeGIiwgYmFzZV9jYXNoX2Zsb3dzKSwKICAgICgi546w6YeR5rWB5LiL6ZmNIDIwJSIsIFsyNF8wMDAuMF0gKiA1KSwKXToKICAgIHZhbHVlcyA9IFtucHYocmF0ZSwgY2FzaF9mbG93cykgZm9yIHJhdGUgaW4gKDAuMDgsIDAuMTAsIDAuMTIpXQogICAgcHJpbnQoZiJ7bGFiZWx9OiBOUFZAOCU9e3ZhbHVlc1swXTosLjBmfSwgQDEwJT17dmFsdWVzWzFdOiwuMGZ9LCBAMTIlPXt2YWx1ZXNbMl06LC4wZn0iKQogICAgcHJpbnQoZiIgIElSUj17aXJyKGNhc2hfZmxvd3MpOi4yJX0iKQ== layout: vertical locale: zh title: Python:NPV、IRR 与情景敏感性 --- :: 基准项目在 10% 下可接受,下行情景却未必仍能创造价值。敏感性分析帮助我们看清“结论依赖哪一个假设”,并不预测哪种情景一定发生。分析真实项目时,还应纳入税、营运资金、残值和互斥项目约束。 ### 从计算结果写到决策建议 除了“NPV 大于零,所以接受”,建议还应说明基准 NPV、关键假设、哪种情景足以改变结论,以及决策前还需取得什么证据。上面的程序只适用于常规现金流,搜索区间也必须包含使 NPV 为零的折现率。输入不符合这些条件时,程序会报错,避免把无效的计算结果当作 IRR。 营运资金要在被占用时记现金流出,在确实释放时记流入;折旧不直接支付现金,税务现金影响则应依据题目另算。若题目已提供税后经营现金流,就不能再重复加一次折旧税盾。完成[两个项目的综合比较](https://www.pengjiaxin.com/../../foundation/03-decision-workshop),练习同时说明 NPV、回收速度与预测风险。 ## 3.8.7 常见错误 - 把会计利润当成项目现金流。 - 忘记残值或营运资金回收。 - 折现率用错。 - 只看 IRR,不看 NPV。 ## 3.8.8 快速检查 1. 为什么 NPV 通常优先? 2. 回收期能告诉你什么,NPV 不一定直接告诉你什么? 3. 为什么资本预算必须考虑风险? ::legacy-spoiler{title="参考答案"} 1. 因为它直接反映价值创造,并考虑货币时间价值。 2. 回收速度和流动性风险。 3. 因为长期预测不确定,项目的可行性会随假设变化而变化。 :: ## 下一章 本章完成管理会计决策工具;下一章把财务会计和管理会计常见题型放在一起复盘。继续读[综合示例与常见陷阱](https://www.pengjiaxin.com/../../appendix/24-examples-pitfalls)。 # 3. 决策与投资 []{#_3-决策与投资} 这个模块把会计信息真正用于行动选择。前面的成本分类、预算和差异分析告诉我们“发生了什么”和“偏离了什么”,这里进一步判断“接下来选哪条路”。 短期决策通常关注相关收入、相关成本和约束资源;长期投资则更强调未来现金流、时间价值和风险。两者共同点是:不要让沉没成本、平均成本或会计利润替代真正与决策有关的增量信息。 ## 这个模块回答什么 - 做短期经营决策时,哪些成本和收益才是相关的? - 评价长期项目时,应该如何处理未来现金流? ## 讲义内容 | 讲义 | 重点 | | ---------------------------------------------------------- | -------------------- | | [短期决策](https://www.pengjiaxin.com/22-short-term-decisions) | 相关成本、特殊订单、自制外购与停产等选择 | | [资本预算](https://www.pengjiaxin.com/23-capital-budgeting) | NPV、IRR、回收期与投资判断 | ## 学完应能做到 - 判断一项成本或收益是否会随当前方案选择而改变。 - 在特殊订单、自制外购、停产、产品组合等场景中识别相关信息。 - 说明沉没成本、机会成本和约束资源为什么会影响结论。 - 用 NPV、IRR 和回收期等方法比较长期项目。 - 区分短期经营决策中的贡献分析和资本预算中的现金流分析。 ## 常见误区 - 把沉没成本放进决策模型。 - 忽视机会成本。 - 用会计利润替代资本预算中的现金流。 ::tip{title="练习建议"} 每做一个决策题,先写出“比较对象”。只有明确 A 方案和 B 方案分别是什么,才能判断哪些收入、成本和现金流真正不同。 :: ## 下一步 进入 [附录](https://www.pengjiaxin.com/../../appendix/) 做综合复习,重点检查自己是否能把相关成本、现金流和报表利润区分开。 # 管理会计 []{#管理会计} 管理会计面对的是企业内部行动,而不是外部报送。它不再以准则列报为中心,而是关心管理者怎样用成本、预算、差异和现金流信息做计划、控制和选择。 它的主线是: `理解成本 -> 计划与控制 -> 决策与投资` 如果说财务会计先回答“企业发生了什么,应该怎样对外说明”,管理会计则继续追问“接下来应该怎么做,哪一种行动更划算”。因此,本部分会更频繁地使用假设、预测和方案比较。 ## 模块顺序 | 模块 | 主要问题 | 入口 | | -------- | -------------------- | ----------------------------------------------------------- | | 1. 成本基础 | 这是什么成本,应该怎样归集? | [进入模块](https://www.pengjiaxin.com/01-cost-foundations/) | | 2. 计划与控制 | 原计划是什么,实际发生了什么,差在哪里? | [进入模块](https://www.pengjiaxin.com/02-planning-control/) | | 3. 决策与投资 | 哪个方案更值得做? | [进入模块](https://www.pengjiaxin.com/03-decisions-investment/) | ## 学完这一部分应能做到 - 区分固定成本、变动成本、直接成本、间接成本、产品成本和期间成本。 - 说明分批法、分步法、变动成本法和吸收成本法各自适合解决什么问题。 - 用边际贡献、本量利分析和预算差异解释经营结果。 - 判断一个成本在特定决策中是否相关,并识别沉没成本、机会成本和约束资源。 - 用现金流思路评价长期投资,而不是只看会计利润。 ## 读这一部分时要记住 - 管理会计通常比财务会计更面向未来。 - 不是所有成本都与当前决策相关。 - 内部有用性通常比对外列报格式更重要。 ::tip{title="练习建议"} 做管理会计题时,先写出“决策问题”本身:是定价、接单、自制外购、停产,还是投资项目?问题不同,相关成本和评价标准也会不同。 :: ## 接到附录 学完这一部分后,可以去 [附录](https://www.pengjiaxin.com/../appendix/) 做整合复习。附录里的综合示例适合用来检查自己能否把财务会计的报表逻辑和管理会计的决策逻辑区分开。 # 第一章:引言与基础 []{#第一章引言与基础} 本章是整门资产定价课程的起点。不要急着背复杂模型,先把几个最基本的问题想清楚:资产价格为什么可以被看作未来现金流的现值?收益率和风险为什么总是一起讨论?无套利为什么能在很少假设下给出强有力的定价约束? 从课程安排上看,本章相当于后面所有模型的“语言准备”。后续的均值-方差、CAPM、期权定价和固定收益都会反复使用这里的概念。如果第一遍读完觉得公式不难,也建议结合真实市场数据做几道小练习,因为收益率口径、复利频率、超额收益和贴现因子这些细节,往往决定后续实证结果是否可靠。 ## 本章路线 | 课次 | 核心问题 | | --------- | ------------------- | | 1.1 定价概述 | 价格怎样连接未来现金流与状态价值? | | 1.2 金融市场 | 哪些制度、摩擦与交易安排影响价格形成? | | 1.3 收益与风险 | 应该用哪种收益率口径,风险如何度量? | | 1.4 时间价值 | 不同时点的现金流怎样放到同一尺度? | | 1.5 无套利 | 相同现金流为什么必须具有相同价格? | ## 学习成果 通过本章学习,你将掌握: 1. 资产定价理论的基本框架和研究问题 2. 金融市场的基本结构和功能 3. 收益率的计算方法和风险度量指标 4. 货币时间价值的概念和应用 5. 无套利原理在资产定价中的核心作用 更具体地说,读完本章后你应该能够: - 把一项资产拆成“未来现金流”和“折现方式”两部分来讨论。 - 区分价格、收益率、超额收益、风险和风险溢价,避免把它们混成同一个概念。 - 用简单收益率、对数收益率、均值、方差和协方差描述一组金融数据。 - 解释为什么无套利条件可以给出价格边界,却不一定能直接解释风险溢价。 - 为后续的效用理论、投资组合、CAPM 和期权复制组合做好符号与直觉准备。 ## 金融与经济动机 资产定价不是只为“算出一个价格”。在金融市场里,价格同时承担三项任务: | 任务 | 对应问题 | 本章入口 | | ---- | ------------------- | -------- | | 配置资本 | 哪些项目值得融资,哪些风险应该被补偿 | 时间价值、贴现率 | | 分担风险 | 风险如何在不同投资者之间重新分配 | 收益率、风险度量 | | 汇总信息 | 价格是否已经反映现金流、利率和信息变化 | 金融市场、无套利 | 因此,本章的关键不是把“价格等于现值”背下来,而是理解:同一笔未来现金流在不同状态下价值不同;同一项资产对不同投资者的风险也可能不同;市场价格正是在这些现金流、状态价格和交易约束之间形成的。 ## 先建立直觉,再写公式 最基本的定价想法可以写成: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[今天的价格]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[[未来支付的贴现值]{.mord.cjk_fallback}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果未来支付没有风险,贴现率主要来自时间价值;如果未来支付有风险,贴现率还要补偿投资者不愿意持有的风险。更一般地,现代资产定价会把这个想法写成: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这里的 [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是下期支付, [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是随机贴现因子。直觉上, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 给不同状态分配“今天的价值权重”:经济很差、边际消费很宝贵的状态,通常会有更高的状态价格;在这些状态支付更多的资产更像保险,预期收益率可以更低。 ::tip{title="先不用急着完全掌握 SDF"} 本章只需要知道:随机贴现因子是把“贴现”“风险偏好”“状态价格”和“无套利”放进同一个表达式的工具。第六章会系统展开。 :: ## 关键定义与定理 ### 收益率 若资产今天价格为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,下一期价格为 [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,期间现金流为 [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,简单收益率为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文直觉:收益率把不同价格水平的资产放到同一把尺子上比较。100 元涨到 110 元和 10 元涨到 11 元,价格变化不同,但收益率都为 10%。 ### 超额收益 超额收益是风险资产收益率减去无风险收益率: [[[]{.katex-mathml}[[[]{.strut style="height:1.0197em;vertical-align:-0.3053em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文直觉:它衡量投资者放弃无风险资产后额外承担风险获得的回报,是 CAPM 和因子模型的核心对象。 ### 一价定律 如果两个资产在所有未来状态下支付完全相同,那么它们今天必须有相同价格。 中文直觉:否则买便宜的、卖贵的,就能构造无需净投入且未来无风险获利的套利。 ### 无套利定价 如果一项资产的现金流能由其他资产组合完全复制,那么它的价格必须等于复制组合的成本。 中文直觉:复制组合是“金融中的实验对照组”。当两个现金流完全一样时,价格差异不是风险补偿,而是套利机会。 ## 例子:一只股票的收益率与风险溢价 某股票今天价格为 50 元,一年后价格可能为 60 元或 45 元,且预计支付 2 元股利。无风险利率为 4%。 | 状态 | 未来价格 | 股利 | 简单收益率 | | --- | ---: | -: | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | 好状态 | 60 | 2 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[60]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[)]{.mclose}[/50]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[24%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | 差状态 | 45 | 2 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[45]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[)]{.mclose}[/50]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[6%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 若两个状态概率各为 50%,预期收益率为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[24%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[6%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[9%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 预期超额收益为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[9%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[4%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[5%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这里的 5% 不是“保证多赚 5%”,而是平均意义上的风险补偿。考试和实证中最容易出错的地方,是把预期超额收益误读成每个状态下都会超过无风险收益。 ## 可运行例题:复制组合给出唯一价格 一只债券在好、坏状态都支付 1,另一只风险资产分别支付 1.4 和 0.6。目标证券支付 1.2 和 0.8,恰好可以由两只资产各持有一半复制。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpwYXlvZmZfbWF0cml4ID0gbnAuYXJyYXkoWwogICAgWzEuMCwgMS40XSwgICMg5aW954q25oCB77ya5YC65Yi444CB6aOO6Zmp6LWE5LqnCiAgICBbMS4wLCAwLjZdLCAgIyDlnY/nirbmgIEKXSkKdGFyZ2V0X3BheW9mZiA9IG5wLmFycmF5KFsxLjIsIDAuOF0pCnRyYWRlZF9wcmljZXMgPSBucC5hcnJheShbMC45NSwgMC45OF0pCgp3ZWlnaHRzID0gbnAubGluYWxnLnNvbHZlKHBheW9mZl9tYXRyaXgsIHRhcmdldF9wYXlvZmYpCnJlcGxpY2F0aW9uX3ByaWNlID0gd2VpZ2h0cyBAIHRyYWRlZF9wcmljZXMKcXVvdGVkX3ByaWNlID0gMC45OQoKcHJpbnQoIuWkjeWItuadg+mHje+8iOWAuuWIuOOAgemjjumZqei1hOS6p++8iToiLCBucC5yb3VuZCh3ZWlnaHRzLCAzKSkKcHJpbnQoZiLlpI3liLbmiJDmnKw6IHtyZXBsaWNhdGlvbl9wcmljZTouM2Z9IikKcHJpbnQoZiLnm67moIfor4HliLjmiqXku7c6IHtxdW90ZWRfcHJpY2U6LjNmfSIpCnByaW50KGYi5Y2W5Ye655uu5qCH44CB5Lmw5YWl5aSN5Yi257uE5ZCI55qE5pyf5Yid5YeA5rWB5YWlOiB7cXVvdGVkX3ByaWNlLXJlcGxpY2F0aW9uX3ByaWNlOi4zZn0iKQpwcmludCgi5Yiw5pyf5YeA546w6YeR5rWBOiIsIG5wLnJvdW5kKHBheW9mZl9tYXRyaXggQCB3ZWlnaHRzIC0gdGFyZ2V0X3BheW9mZiwgOCkp layout: vertical locale: zh packages: numpy title: Python:复制价格与套利缺口 --- :: 只要交易和卖空可行,0.99 的报价就高于 0.965 的复制成本。无套利给出的是相对价格约束;现实中还要检查买卖价差、融资和头寸限制是否吞掉 0.025 的价差。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | ------------ | ---------------- | -------------------- | | 1.1 资产定价概述 | 资产定价到底在解释什么 | 价格、现金流、风险和投资者偏好之间的关系 | | 1.2 金融市场基础 | 市场把哪些主体和证券连接起来 | 交易机制、流动性和信息对价格形成的影响 | | 1.3 收益率与风险度量 | 如何把价格变化转成可比较的收益 | 简单收益率、对数收益率、波动率和协方差 | | 1.4 时间价值与贴现 | 为什么同一笔钱在不同时间价值不同 | 贴现率、复利频率和现值计算 | | 1.5 无套利原理 | 为什么“免费午餐”会限制价格 | 复制组合、套利边界和一价定律 | ::tip{title="练习方式"} 本章适合配合一个简单数据表学习:选一只股票、一个市场指数和一个无风险利率序列,手动算出收益率、超额收益、均值、方差和相关系数。这样后面读 CAPM、因子模型和回测时,概念不会停留在抽象符号上。 :: ## 常见错误与考试陷阱 1. **把价格变化当成收益率**:资产价格高低不能直接比较投资表现,必须转成收益率。 2. **忘记股利或票息**:总收益率要包括现金流,不能只看资本利得。 3. **混用简单收益率和对数收益率**:短期差别小,长期或高波动时差别明显。 4. **把无套利当成“市场一定公平”**:无套利只排除免费午餐,不保证所有资产都被完全正确估值。 5. **把贴现率当成固定常数**:有风险现金流的贴现率取决于现金流在哪些状态支付。 ## 自测题 1. 为什么资产定价既可以从“贴现现金流”出发,也可以从“预期收益率”出发? 2. 一个资产在好状态收益 20%,坏状态收益 -10%,两个状态概率相同,无风险收益率 3%。它的预期超额收益是多少? 3. 一价定律和无套利定价有什么区别? 4. 为什么在资产定价中,协方差往往比单个资产的方差更重要? ## 答案指引 1. 价格和收益率是同一个定价问题的两种表达:给定未来现金流和贴现方式可以求价格;给定价格和未来现金流可以反推出所需收益率。 2. 预期收益率为 [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[20%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[10%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[5%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,预期超额收益为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[5%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[3%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[2%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 3. 一价定律比较的是完全相同现金流的两个资产;无套利定价进一步说,如果某现金流能被组合复制,其价格应等于复制成本。 4. 投资者关心的是资产加入整体组合后的边际风险。若一个资产在投资者最不想亏钱的状态下亏钱,即使自身方差不大,也可能要求较高风险补偿。 ## 小结与过渡 本章建立了三条主线:现金流需要贴现,风险需要补偿,价格受到无套利约束。下一章转向投资者本身:为什么同样的风险会让不同人有不同反应?效用理论会给“风险厌恶”和“风险溢价”提供微观基础。 # 第二章:效用理论与风险偏好 []{#第二章效用理论与风险偏好} 第一章用现金流、贴现和无套利搭起了价格框架。本章回答更深一层的问题:为什么风险资产需要提供额外收益?为什么同样的赌博,有人愿意参与,有人宁愿买保险?资产定价中的“风险溢价”并不是凭空设定的参数,它来自投资者对不确定财富的偏好。 效用理论的作用,是把“我不喜欢风险”翻译成可以推导、比较和估计的数学对象。你不需要把每个公理背成哲学命题,但要能看懂:凹效用意味着风险厌恶;风险厌恶程度决定确定性等价和风险溢价;这些概念会在均值-方差、CAPM 和跨期消费模型中反复出现。 ## 本章路线 | 课次 | 核心问题 | | --------- | ----------------------- | | 2.1 期望效用 | 不确定财富怎样进入选择? | | 2.2 风险厌恶 | 为什么同一风险对不同财富水平的人代价不同? | | 2.3 效用函数 | CARA、CRRA 与对数效用分别固定了什么? | | 2.4 随机占优 | 不指定完整效用函数时还能排除哪些选择? | | 2.5 确定性等价 | 投资者愿意用多少确定财富替代风险财富? | ## 学习成果 通过本章学习,你将掌握: 1. 期望效用理论的公理化基础 2. 风险厌恶的度量方法 3. 不同效用函数的性质和应用 4. 随机占优的概念和判别方法 5. 确定性等价在资产定价中的应用 读完本章后,你应能完成以下任务: - 判断一个效用函数是否体现风险厌恶、风险中性或风险偏好。 - 用绝对风险厌恶和相对风险厌恶解释不同财富水平下的投资行为。 - 计算简单彩票的期望效用、确定性等价和风险溢价。 - 区分一阶随机占优与二阶随机占优,并说明它们为什么不依赖具体效用函数。 - 解释为什么风险溢价取决于“坏状态下的损失”,而不只是收益率方差。 ## 金融与经济动机 在现实投资中,投资者并不是只最大化期望收益。一个 50% 概率赚 100 元、50% 概率亏 100 元的赌博,期望收益为 0,但大多数人不会无所谓;一个收益更高但在经济衰退时亏损更大的资产,也不一定比低收益的保险型资产更有吸引力。 效用理论帮助我们把这些现象放进统一框架: | 现实问题 | 效用理论中的表达 | | ------------------- | -------------------- | | 为什么人们买保险 | 愿意牺牲一部分期望财富,换取更稳定的财富 | | 为什么股票要有风险溢价 | 股票在坏状态亏损,需要补偿风险厌恶投资者 | | 为什么富人和普通人的风险承受能力不同 | 风险厌恶可能随财富变化 | | 为什么“高期望收益”不等于“更优选择” | 需要比较期望效用而非期望金额 | ## 模型设置与直觉 设投资者最终财富为随机变量 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,效用函数为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。在期望效用框架下,投资者比较不同选择时看的是: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 而不是 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。若 [[]{.katex-mathml}[[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,更多财富更好;若 [[]{.katex-mathml}[[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,边际效用递减,说明同样 1 元钱在低财富状态更有价值。 这条直觉非常重要:风险资产如果在低财富、坏经济状态中支付少,它会降低最宝贵状态下的财富,因此必须提供更高的平均收益作为补偿。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsi6ZqP5py66LSi5a+MIFciXSAtLT4gQlsi5pWI55So5Ye95pWwIHUoVykiXQogIEIgLS0+IENbIuacn+acm+aViOeUqCBFW3UoVyldIl0KICBDIC0tPiBEWyLnoa7lrprmgKfnrYnku7cgQ0UiXQogIEQgLS0+IEVbIumjjumZqea6ouS7tyBSUCJd" locale="zh"} ## 关键定义与定理 ### 期望效用 彩票 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的期望效用为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[u]{.mord.mathnormal}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:不是先把金额平均再取效用,而是先对每个结果取效用,再按概率平均。 ### 风险厌恶 若投资者对任意公平赌博都不愿意接受,则称其风险厌恶。充分常用的数学条件是: [[[]{.katex-mathml}[[[]{.strut style="height:1.0519em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:效用函数凹,代表损失 1 元带来的痛苦大于获得 1 元带来的快乐。 ### Arrow-Pratt 风险厌恶系数 绝对风险厌恶: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3649em;vertical-align:-0.936em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 相对风险厌恶: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3649em;vertical-align:-0.936em;"}[−]{.mord}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 更适合讨论固定金额风险,例如是否买保险; [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 更适合讨论按财富比例投资风险资产,例如股票配置比例。 ### 确定性等价与风险溢价 确定性等价 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 满足: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 风险溢价为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释: [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是投资者认为“和这个风险彩票一样好”的确定金额; [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是投资者愿意放弃的平均收益,以避免风险。 ## 例子:从期望收益到确定性等价 某投资者效用函数为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.1133em;"}[[[[[[]{.pstrut style="height:3em;"}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8867em;"}]{.vlist style="height:0.9267em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1133em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。有一种彩票:50% 概率得到 64,50% 概率得到 144。 期望财富: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[64]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[144]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[104]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 期望效用: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[12]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 确定性等价满足 [[]{.katex-mathml}[[[]{.strut style="height:1.04em;vertical-align:-0.1133em;"}[[[[[[]{.pstrut style="height:3em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8867em;"}]{.vlist style="height:0.9267em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1133em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,所以: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 风险溢价: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[104]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这个结果说明,投资者并不是觉得彩票“值 104”,而是愿意用确定的 100 换掉它。4 就是承担该风险所需要的补偿。 ## 可运行例题:均值相同,风险溢价可以不同 两种彩票的期望财富都为 104。第二种彩票把结果进一步拉开,是第一种彩票的均值保持扩散。 ::pyodide --- code64: ZnJvbSBtYXRoIGltcG9ydCBzcXJ0Cgpwcm9iYWJpbGl0aWVzID0gWzAuNSwgMC41XQpnYW1ibGVzID0gewogICAgIui+g+eqhOW9qeelqCI6IFs2NC4wLCAxNDQuMF0sCiAgICAi6L6D5a695b2p56WoIjogWzI0LjAsIDE4NC4wXSwKfQoKZm9yIG5hbWUsIHdlYWx0aCBpbiBnYW1ibGVzLml0ZW1zKCk6CiAgICBleHBlY3RlZF93ZWFsdGggPSBzdW0ocCAqIHcgZm9yIHAsIHcgaW4gemlwKHByb2JhYmlsaXRpZXMsIHdlYWx0aCkpCiAgICBleHBlY3RlZF91dGlsaXR5ID0gc3VtKHAgKiBzcXJ0KHcpIGZvciBwLCB3IGluIHppcChwcm9iYWJpbGl0aWVzLCB3ZWFsdGgpKQogICAgY2VydGFpbnR5X2VxdWl2YWxlbnQgPSBleHBlY3RlZF91dGlsaXR5ICoqIDIKICAgIHJpc2tfcHJlbWl1bSA9IGV4cGVjdGVkX3dlYWx0aCAtIGNlcnRhaW50eV9lcXVpdmFsZW50CiAgICBwcmludCgKICAgICAgICBmIntuYW1lfTogRVtXXT17ZXhwZWN0ZWRfd2VhbHRoOi4yZn0sIENFPXtjZXJ0YWludHlfZXF1aXZhbGVudDouMmZ9LCAiCiAgICAgICAgZiLpo47pmanmuqLku7c9e3Jpc2tfcHJlbWl1bTouMmZ9IgogICAgKQ== layout: vertical locale: zh title: Python:确定性等价与均值保持扩散 --- :: 凹效用下,更宽的彩票有更低确定性等价和更高风险溢价。这个方向来自风险厌恶;具体金额依赖效用函数和财富水平,不能当作所有投资者的统一市场价格。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | ------------- | ----------------- | ------------------------- | | 2.1 期望效用理论 | 为什么比较的是期望效用而非期望金额 | 独立性公理、正仿射变换 | | 2.2 风险厌恶与风险溢价 | 凹效用如何生成风险溢价 | Jensen 不等式、Arrow-Pratt 度量 | | 2.3 常见效用函数 | 不同效用函数如何影响投资比例 | CARA、CRRA、对数效用 | | 2.4 随机占优 | 不指定效用函数时能否排序风险 | 一阶与二阶随机占优 | | 2.5 确定性等价与保险 | 为什么保险有正价格仍然有人买 | 公平保费、风险加载、逆选择 | ## 常见错误与考试陷阱 1. **把效用函数当成唯一可观测量**:效用函数本身可做正仿射变换,重要的是它代表的偏好和风险厌恶。 2. **先平均财富再取效用**:风险厌恶者通常有 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[])]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,顺序不能反。 3. **混淆绝对与相对风险厌恶**:固定金额赌博和固定比例投资对应不同风险厌恶概念。 4. **认为高方差一定更差**:若高方差资产在坏状态支付更多,可能反而像保险。 5. **把随机占优当成均值比较**:随机占优比较的是整个分布,不只是平均值。 ## 自测题 1. 为什么凹效用函数意味着投资者厌恶公平赌博? 2. 对 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[ln]{.mop}[]{.mspace style="margin-right:0.1667em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,判断绝对风险厌恶和相对风险厌恶随财富如何变化。 3. 某彩票 50% 概率得到 80,50% 概率得到 120,效用函数 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.1133em;"}[[[[[[]{.pstrut style="height:3em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8867em;"}]{.vlist style="height:0.9267em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1133em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。确定性等价大约是多少?风险溢价为多少? 4. 一阶随机占优为什么对所有“财富越多越好”的投资者都成立? ## 答案指引 1. 由 Jensen 不等式,凹函数满足 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[])]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。公平赌博的期望财富等于初始财富,但期望效用更低。 2. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[W]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex},随财富上升下降; [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,保持不变。这就是对数效用的常相对风险厌恶性质。 3. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[u]{.mord.mathnormal}[(]{.mopen}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.1328em;"}[0.5]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[80]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8672em;"}]{.vlist style="height:0.9072em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1328em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.1328em;"}[0.5]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[120]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8672em;"}]{.vlist style="height:0.9072em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1328em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[9.944]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex},所以 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[98.9]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。期望财富为 100,风险溢价约 1.1。 4. 一阶随机占优意味着在任意财富门槛上,一个分布至少同样可能达到更高结果,并在某些地方严格更好;只要效用单调递增,期望效用就不会更低。 ## 小结与过渡 本章把风险偏好放进资产定价:投资者关心的是状态中的效用,而不是单纯的平均金额。下一章会把这种偏好简化为均值和方差两个维度,进入马科维茨投资组合理论,并解释为什么分散化可以降低无补偿风险。 # 第三章:均值-方差分析 []{#第三章均值-方差分析} 第二章从效用函数解释风险厌恶。本章把问题简化成投资者最常用的一张图:横轴是风险,纵轴是预期收益。均值-方差分析的核心不是“方差越低越好”,而是在给定收益下尽量降低风险,或在给定风险下尽量提高收益。 马科维茨框架看似数学化,实际直觉很朴素:单个资产的风险不等于组合风险。只要资产之间不是完全同涨同跌,组合就可能通过分散化降低波动。后面的 CAPM、市场组合、资本市场线和许多量化组合优化方法,都建立在本章语言之上。 ## 本章路线 | 课次 | 核心问题 | | --------- | ------------------- | | 3.1 组合风险 | 为什么协方差决定分散化空间? | | 3.2 两资产 | 权重和相关系数怎样改变风险? | | 3.3 有效前沿 | 给定风险时,哪些组合拥有最高期望收益? | | 3.4 无风险资产 | 资本配置线为什么是直线? | | 3.5 切点组合 | 风险偏好与最优风险组合怎样分离? | | 3.6 实践边界 | 估计误差、约束和交易成本怎样改变权重? | ## 学习成果 通过本章学习,你将掌握: 1. 马科维茨投资组合理论的数学基础 2. 如何计算和绘制有效前沿 3. 无风险资产对投资决策的影响 4. 分离定理及其经济含义 5. 实际资产配置的方法和技巧 读完本章后,你应能完成以下任务: - 用权重、预期收益向量和协方差矩阵写出组合收益与组合方差。 - 解释为什么低相关资产能够降低组合风险。 - 在两资产案例中计算组合收益率、方差和最小方差权重。 - 区分可行集、有效前沿、最小方差组合和切点组合。 - 说明无风险资产如何把弯曲的有效前沿变成资本配置线。 ## 金融与经济动机 实际投资者很少只持有一只资产。养老金、基金、家族办公室和个人账户都在做同一个决策:如何把财富分配到股票、债券、现金、商品或另类资产中。均值-方差分析给出一个基准回答:如果只关心预期收益和波动率,组合选择就是在收益和风险之间做权衡。 | 投资问题 | 均值-方差语言 | | ----------------- | ----------------- | | 为什么不要重仓一只股票 | 个体风险可以通过分散化降低 | | 为什么相关系数重要 | 组合风险取决于协方差而非单个波动率 | | 为什么有“核心组合+现金/杠杆” | 无风险资产与切点组合的线性组合 | | 为什么业绩要看 Sharpe 比率 | 每单位总风险获得的超额收益 | ## 模型设置与直觉 设有 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 个风险资产,预期收益向量为 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[μ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,协方差矩阵为 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Σ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,组合权重为 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[w]{.mord.mathnormal style="margin-right:0.0269em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,且 [[]{.katex-mathml}[[[]{.strut style="height:0.7519em;"}[[1]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。组合预期收益和方差为: [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9963em;vertical-align:-0.1944em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[μ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1.2472em;vertical-align:-0.3831em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8019em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[Σ]{.mord}[w]{.mord.mathnormal style="margin-right:0.0269em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 直觉上, [[]{.katex-mathml}[[[]{.strut style="height:0.9463em;vertical-align:-0.1944em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[μ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是各资产预期收益的加权平均; [[]{.katex-mathml}[[[]{.strut style="height:0.7519em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[Σ]{.mord}[w]{.mord.mathnormal style="margin-right:0.0269em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 不只是各资产方差的加权平均,还包括资产之间是否一起波动。分散化的力量正来自协方差项。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsi6LWE5Lqn5pS255uK5Z2H5YC8IG11Il0gLS0+IENbIue7hOWQiOmihOacn+aUtuebiiJdCiAgQlsi5Y2P5pa55beu55+p6Zi1IFNpZ21hIl0gLS0+IERbIue7hOWQiOmjjumZqSJdCiAgRVsi57uE5ZCI5p2D6YeNIHciXSAtLT4gQwogIEUgLS0+IEQKICBDIC0tPiBGWyLmnInmlYjliY3msr8iXQogIEQgLS0+IEY=" locale="zh"} ## 关键定义与定理 ### 可行集 所有满足权重约束的组合在“风险-收益”平面上形成的集合。 中文解释:它描述投资者用现有资产能做出的全部组合选择。 ### 有效前沿 在给定风险下预期收益最高,或在给定预期收益下风险最低的组合集合。 中文解释:有效前沿是“没有明显浪费”的组合。前沿以下的组合不是不可能,而是被其他组合支配。 ### 最小方差组合 所有可行组合中方差最低的组合。 中文解释:如果一个投资者只想最小化波动率,不关心预期收益,就会选择它。 ### 切点组合 引入无风险资产后,与风险资产有效前沿相切的组合。它最大化 Sharpe 比率: [[[]{.katex-mathml}[[[]{.strut style="height:2.3589em;vertical-align:-0.93em;"}[[[[[[]{.pstrut style="height:3em;"}[[w]{.mord.mathnormal.mtight style="margin-right:0.0269em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[[[[[]{.pstrut style="height:3em;"}[[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[Σ]{.mord}[w]{.mord.mathnormal style="margin-right:0.0269em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8867em;"}]{.vlist style="height:0.9267em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1133em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.mord}]{style="top:-2.1833em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[1]{.mord.mathbf}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.93em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:所有投资者先持有同一个最佳风险组合,再根据风险承受能力决定借入、贷出或持有多少无风险资产。 ### 两基金分离定理 在均值-方差框架下,投资者的最终组合可以由两个基金组合而成:无风险资产和切点风险组合。 中文解释:资产选择和风险偏好可以分开。市场先决定最优风险组合,个人偏好只决定放大或缩小风险敞口。 ## 例子:两个资产的分散化 资产 A 的预期收益为 8%,波动率为 20%;资产 B 的预期收益为 4%,波动率为 10%;两者相关系数为 0。若各投 50%,组合预期收益为: [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[8%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[4%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[6%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 组合方差为: [[[]{.katex-mathml}[[[]{.strut style="height:1.2472em;vertical-align:-0.3831em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[0.]{.mord}[[5]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[20%]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[0.]{.mord}[[5]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[10%]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[2]{.mord}[(]{.mopen}[0.5]{.mord}[)]{.mclose}[(]{.mopen}[0.5]{.mord}[)]{.mclose}[(]{.mopen}[0]{.mord}[)]{.mclose}[(]{.mopen}[20%]{.mord}[)]{.mclose}[(]{.mopen}[10%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.0125]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 组合波动率为: [[[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.04em;vertical-align:-0.0839em;"}[[[[[[]{.pstrut style="height:3em;"}[[0.0125]{.mord}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.9161em;"}]{.vlist style="height:0.9561em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.0839em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[11.18%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 注意它低于两个波动率的简单平均 [[]{.katex-mathml}[[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[15%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。这不是因为资产 B “低风险”本身,而是因为两个资产不完全同向波动。 ## 可运行例题:相关系数决定分散化空间 保持两个资产各自的收益和波动率不变,只改变相关系数,搜索不允许卖空时的最小方差权重。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpleHBlY3RlZF9yZXR1cm5zID0gbnAuYXJyYXkoWzAuMDgsIDAuMDRdKQp2b2xhdGlsaXR5ID0gbnAuYXJyYXkoWzAuMjAsIDAuMTBdKQp3ZWlnaHRzX2EgPSBucC5saW5zcGFjZSgwLCAxLCAxMDAxKQoKZm9yIGNvcnJlbGF0aW9uIGluIFstMC41LCAwLjAsIDAuOF06CiAgICBjb3ZhcmlhbmNlID0gY29ycmVsYXRpb24gKiB2b2xhdGlsaXR5WzBdICogdm9sYXRpbGl0eVsxXQogICAgdmFyaWFuY2UgPSAoCiAgICAgICAgd2VpZ2h0c19hKioyICogdm9sYXRpbGl0eVswXSoqMgogICAgICAgICsgKDEgLSB3ZWlnaHRzX2EpKioyICogdm9sYXRpbGl0eVsxXSoqMgogICAgICAgICsgMiAqIHdlaWdodHNfYSAqICgxIC0gd2VpZ2h0c19hKSAqIGNvdmFyaWFuY2UKICAgICkKICAgIGJlc3QgPSBucC5hcmdtaW4odmFyaWFuY2UpCiAgICBwb3J0Zm9saW9fcmV0dXJuID0gKAogICAgICAgIHdlaWdodHNfYVtiZXN0XSAqIGV4cGVjdGVkX3JldHVybnNbMF0KICAgICAgICArICgxIC0gd2VpZ2h0c19hW2Jlc3RdKSAqIGV4cGVjdGVkX3JldHVybnNbMV0KICAgICkKICAgIHByaW50KAogICAgICAgIGYicmhvPXtjb3JyZWxhdGlvbjorLjFmfTogd19BPXt3ZWlnaHRzX2FbYmVzdF06LjNmfSwgIgogICAgICAgIGYiRVtSXT17cG9ydGZvbGlvX3JldHVybjouMiV9LCBzaWdtYT17bnAuc3FydCh2YXJpYW5jZVtiZXN0XSk6LjIlfSIKICAgICk= layout: vertical locale: zh packages: numpy title: Python:两资产最小方差与相关性 --- :: 相关性越高,可利用的分散化空间通常越小。这里的权重使用已知参数;真实投资中均值和协方差都要估计,样本误差可能比公式本身更重要。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | -------------- | ------------- | --------------- | | 3.1 投资组合理论基础 | 组合收益与组合风险如何计算 | 权重约束、协方差矩阵 | | 3.2 两资产组合 | 分散化从哪里来 | 相关系数对风险的影响 | | 3.3 多资产组合与有效前沿 | 哪些组合是有效的 | 最小方差组合、有效前沿形状 | | 3.4 引入无风险资产 | 无风险资产如何改变选择空间 | 借贷、杠杆、资本配置线 | | 3.5 资本市场线与分离定理 | 为什么切点组合如此重要 | Sharpe 比率、两基金分离 | | 3.6 资产配置实践 | 理论如何进入真实组合 | 估计误差、约束、再平衡 | ## 常见错误与考试陷阱 1. **把组合波动率算成波动率加权平均**:正确做法是先算方差,再开方。 2. **忽略协方差项**:相关性越高,分散化收益越小;相关性为 1 时没有分散化收益。 3. **认为有效前沿上的组合都适合自己**:有效只说明不被支配,具体选择仍取决于风险偏好。 4. **把最小方差组合当成最优组合**:只有极端保守或特定目标下才会选择它。 5. **低估估计误差**:均值估计误差会让最优权重非常不稳定,实务中需要约束和稳健化。 ## 自测题 1. 为什么组合风险取决于协方差矩阵,而不是只取决于各资产方差? 2. 两资产相关系数从 1 降到 0,再降到 -1,有效前沿会怎样变化? 3. 无风险资产存在时,为什么最大 Sharpe 比率组合成为核心组合? 4. 如果估计得到某资产预期收益很高,均值-方差优化会如何反应?为什么实务中要谨慎? ## 答案指引 1. 组合方差包含 [[]{.katex-mathml}[[[]{.strut style="height:0.9305em;vertical-align:-0.2861em;"}[2]{.mord}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。资产之间同涨同跌会放大组合波动,不同涨跌会抵消部分风险。 2. 相关系数越低,分散化越强,有效前沿越向左上方弯曲;相关系数为 -1 时,可能构造零风险组合。 3. 任意无风险资产与风险组合的连线斜率都是 Sharpe 比率。斜率最高的切点组合给每单位风险最高超额收益。 4. 优化器会倾向给它很高权重,甚至在允许卖空时给出极端杠杆。若预期收益估计噪声大,这种权重可能完全不稳健。 ## 小结与过渡 本章说明了分散化和有效前沿如何把风险资产组合成更有效的投资机会。下一章的 CAPM 会在此基础上加入市场均衡:如果所有投资者都做均值-方差选择,哪些风险会被补偿,哪些风险会被分散掉? # 第四章:资本资产定价模型(CAPM) []{#第四章资本资产定价模型capm} 第三章讨论了单个投资者如何在均值和方差之间选择。本章进一步问:如果市场上所有投资者都这样选择,资产的预期收益应该如何由风险决定?CAPM 的答案非常简洁:只有不能被分散掉的系统性风险才应该获得风险补偿,而这种风险用 beta 衡量。 CAPM 在现实中并不完美,但它是资产定价的核心基准。你会在公司金融中用它估计权益资本成本,在投资管理中用它分解主动收益,在实证研究中用它作为检验其他模型的起点。 ## 本章路线 | 课次 | 核心问题 | | -------- | ------------------------- | | 4.1 推导 | 哪些均衡假设使所有人持有同一风险组合? | | 4.2 beta | 资产对市场共同波动的暴露如何度量? | | 4.3 应用 | 必要收益率、资本成本与业绩评价怎样连接? | | 4.4 实证检验 | alpha 不为零究竟反驳模型还是基准组合? | | 4.5 扩展 | 税、借贷限制和动态机会集会改变什么? | | 4.6 替代模型 | 多因子与 SDF 如何保留 CAPM 的基准作用? | ## 学习成果 通过本章学习,你将掌握: 1. CAPM模型的理论推导 2. 贝塔系数的计算和解释 3. 证券市场线的应用 4. CAPM在资本预算和业绩评估中的使用 5. CAPM的实证表现和理论局限 读完本章后,你应能完成以下任务: - 从均值-方差选择和市场出清解释市场组合为什么进入定价公式。 - 计算并解释资产 beta,说明 beta 与相关系数、波动率的关系。 - 用证券市场线判断资产预期收益是否偏离 CAPM 基准。 - 区分总风险、系统性风险和特质风险。 - 说明 CAPM 的实证失败为什么推动多因子模型发展。 ## 金融与经济动机 投资者不会因为承担任何风险都得到补偿。持有一只个股的特质风险可以通过买更多股票分散掉,因此市场没有理由为这种风险支付稳定溢价。真正需要补偿的是无法通过分散化消除、会随着整体市场一起恶化的风险。 | 问题 | CAPM 的回答 | | --------- | ------------------- | | 哪类风险有价格 | 与市场组合共同波动的系统性风险 | | 如何衡量系统性风险 | beta,即资产收益对市场收益的敏感度 | | 风险补偿多大 | beta 乘以市场风险溢价 | | CAPM 的用途 | 资本成本、业绩评价、异常收益基准 | ## 模型设置与直觉 CAPM 的核心公式是: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 直觉上, [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 衡量资产 [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对市场组合的“放大倍数”。若 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,市场超额收益上升 1 个百分点时,该资产平均上升 1.5 个百分点;市场下跌时也更容易放大损失。投资者要求更高预期收益,是因为这种资产在全市场不好时也容易表现不好。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsi5Z2H5YC8LeaWueW3ruaKlei1hOiAhSJdIC0tPiBCWyLmjIHmnInliIfngrnnu4TlkIgiXQogIEIgLS0+IENbIuW4guWcuuWHuua4hSJdCiAgQyAtLT4gRFsi5YiH54K557uE5ZCIPeW4guWcuue7hOWQiCJdCiAgRCAtLT4gRVsi57O757uf5oCn6aOO6Zmp55SxIGJldGEg5a6a5Lu3Il0=" locale="zh"} ## 关键定义与定理 ### 市场组合 市场中所有风险资产按市值权重组成的组合。 中文解释:如果每个投资者都持有某个最优风险组合,且所有资产都必须被持有,那么这个组合在总量上就是市场组合。 ### beta 资产收益对市场收益的协方差除以市场方差: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0406em;vertical-align:-0.933em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[im]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.933em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:beta 不是“这个资产有多波动”,而是“它有多跟市场一起波动”。 ### 证券市场线 CAPM 公式在预期收益-beta 平面上的直线。 中文解释:在 CAPM 成立时,所有资产和组合都应落在这条线上;偏离直线的部分称为 alpha。 ### alpha 回归或模型中无法由 beta 风险解释的平均超额收益: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:正 alpha 常被解释为异常收益,但也可能来自模型遗漏、数据挖掘或风险度量错误。 ## 例子:用 beta 估计必要收益率 假设无风险利率为 3%,市场预期收益为 9%,某股票 beta 为 1.2。CAPM 给出的必要收益率是: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[3%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1.2]{.mord}[(]{.mopen}[9%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[3%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[10.2%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若分析师预测该股票预期收益为 12%,则 CAPM alpha 为: [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[12%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[10.2%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[1.8%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这并不自动说明股票“被低估”。你还要检查 beta 估计是否稳定、市场组合代理是否合适、预测收益是否可实现,以及是否遗漏规模、价值、盈利能力等其他风险因子。 ## 可运行例题:alpha 对 beta 误差有多敏感 分析师预测收益仍为 12%,但 beta 的合理估计区间是 0.9—1.5。比较区间两端。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpyaXNrX2ZyZWUgPSAwLjAzCm1hcmtldF9yZXR1cm4gPSAwLjA5CmZvcmVjYXN0X3JldHVybiA9IDAuMTIKCmZvciBiZXRhIGluIG5wLmFycmF5KFswLjksIDEuMiwgMS41XSk6CiAgICByZXF1aXJlZCA9IHJpc2tfZnJlZSArIGJldGEgKiAobWFya2V0X3JldHVybiAtIHJpc2tfZnJlZSkKICAgIGFscGhhID0gZm9yZWNhc3RfcmV0dXJuIC0gcmVxdWlyZWQKICAgIHByaW50KGYiYmV0YT17YmV0YTouMWZ9OiDlv4XopoHmlLbnm4o9e3JlcXVpcmVkOi4yJX0sIOmihOa1i+WHj+W/heimgeaUtuebij17YWxwaGE6LjIlfSIp layout: vertical locale: zh packages: numpy title: Python:CAPM 必要收益与 beta 敏感性 --- :: 同一份 12% 预测,在 beta=0.9 时看似有 3.6% 超额,在 beta=1.5 时恰好没有。报告 alpha 时至少应同时报告 beta 的估计方法、标准误、窗口与市场代理。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | -------------- | -------------- | ----------------- | | 4.1 CAPM的假设与推导 | CAPM 从哪些假设推出 | 市场组合、切点组合、市场出清 | | 4.2 市场组合与贝塔 | beta 衡量什么风险 | beta 与相关系数、波动率的区别 | | 4.3 CAPM的应用 | 如何用证券市场线做估值和评价 | 资本成本、alpha、业绩归因 | | 4.4 CAPM的实证检验 | CAPM 在数据中表现如何 | 时间序列回归、横截面检验 | | 4.5 CAPM的扩展与批评 | 哪些假设过强 | 借贷限制、异质预期、非正态收益 | | 4.6 替代模型总结 | 为什么需要多因子模型 | APT、ICAPM、行为解释 | ## 常见错误与考试陷阱 1. **把 beta 当成波动率**:高波动但与市场低相关的资产,beta 可能不高。 2. **认为特质风险也应被补偿**:在充分分散组合中,特质风险可被消除,CAPM 不给它定价。 3. **混淆资本市场线和证券市场线**:资本市场线用总波动率描述有效组合;证券市场线用 beta 描述任意资产。 4. **把 alpha 当成必然套利机会**:alpha 估计可能受模型错误、样本选择和交易成本影响。 5. **忽略市场组合不可观测**:实证中常用股票指数代理市场组合,这会带来 Roll 批评。 ## 自测题 1. 为什么 CAPM 认为只有系统性风险获得补偿? 2. 某资产与市场相关系数为 0.6,资产波动率 30%,市场波动率 15%。它的 beta 是多少? 3. 无风险利率 2%,市场风险溢价 6%,资产 beta 为 0.8。CAPM 必要收益率是多少? 4. 若一个低 beta 股票长期平均收益高于 CAPM 预测,你会提出哪些可能解释? ## 答案指引 1. 特质风险可以通过分散化消除;系统性风险与整体市场一起波动,无法由持有更多资产完全消除。 2. [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ρ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[im]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[m]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.6]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[30%/15%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}。 3. 必要收益率为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[2%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[6%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[6.8%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 4. 可能是 CAPM 遗漏风险因子、beta 估计误差、样本期特殊、交易成本或限制套利,也可能是行为偏差造成的误定价。 ## 小结与过渡 CAPM 把均值-方差选择推进到市场均衡,并给出“beta 定价”的清晰基准。下一章的因子模型会放松单一市场因子的限制,讨论为什么规模、价值、动量、盈利能力等多个风险或特征也能解释横截面收益差异。 # 第五章:因子模型 []{#第五章因子模型} CAPM 用一个市场因子解释所有资产的预期收益,但大量实证结果显示,单一 beta 很难解释横截面收益差异。因子模型把问题扩展为:资产收益是否由多个共同风险源或系统性特征驱动?如果一个资产在某些共同因子上暴露更高,它是否应该获得更高预期收益? 本章是从“理论资产定价”走向“实证资产定价”和“量化因子投资”的桥梁。读这一章时,要同时保持两种视角:因子可能代表经济风险,也可能只是统计上有预测力的特征;两者在投资实践中都重要,但解释力度和可持续性不同。 ## 本章路线 | 课次 | 核心问题 | | ------------ | ------------------------ | | 5.1 APT | 少数系统冲击怎样约束横截面预期收益? | | 5.2 统计基础 | 暴露、溢价与 alpha 分别由哪一维数据识别? | | 5.3—5.5 经典模型 | 规模、价值、动量、盈利与投资因子解释什么? | | 5.6 因子动物园 | 多重检验和模型选择怎样制造偶然因子? | | 5.7 因子投资 | 统计溢价扣除换手、容量和成本后还剩什么? | ## 学习成果 通过本章学习,你将掌握: 1. APT的理论基础和与CAPM的关系 2. 如何构建和估计因子模型 3. 主要的经典因子模型及其经济含义 4. 因子动物园问题和因子筛选 5. 因子投资的实践策略 读完本章后,你应能完成以下任务: - 写出线性因子模型,并解释 alpha、beta、因子收益和残差的含义。 - 区分时间序列回归和横截面回归在资产定价检验中的作用。 - 解释 APT 与 CAPM 的共同点和差异。 - 说明 Fama-French、Carhart 和五因子模型各自增加了什么经济信息。 - 识别因子研究中的数据挖掘、拥挤交易和交易成本问题。 ## 金融与经济动机 如果两个股票市场 beta 都接近 1,但一个是小盘价值股,一个是大盘成长股,它们长期平均收益可能明显不同。CAPM 把这种差异放进 alpha,但因子模型会进一步追问:这是不是因为它们暴露于不同的系统性风险?还是因为投资者行为、机构约束或市场摩擦造成了可持续异象? | 现象 | 因子模型的处理 | | ------------ | ------------ | | 小盘股平均收益更高 | SMB 因子或规模特征 | | 价值股平均收益更高 | HML 因子或账面市值比 | | 赢家股票短期继续上涨 | 动量因子 | | 盈利能力高的公司表现更好 | 盈利能力因子 | | 因子数量越来越多 | 因子动物园与多重检验问题 | ## 模型设置与直觉 线性因子模型通常写成: [[[]{.katex-mathml}[[[]{.strut style="height:1.0975em;vertical-align:-0.3831em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ik]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:1.0781em;vertical-align:-0.3948em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4413em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6644em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3948em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是资产 [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的超额收益, [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是第 [[]{.katex-mathml}[[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 个因子收益, [[]{.katex-mathml}[[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是资产对该因子的暴露。 直觉上,因子模型把资产收益拆成三部分: 1. 因共同风险或特征获得的收益; 2. 模型无法解释的平均收益 alpha; 3. 个体资产自己的噪声。 如果模型足够好,alpha 应该接近 0;如果大量资产仍有显著 alpha,说明模型遗漏了重要风险、定价错误或检验设计有问题。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsi6LWE5Lqn6LaF6aKd5pS255uKIl0gLS0+IEJbIuWFseWQjOWboOWtkOaatOmcsiJdCiAgQSAtLT4gQ1siYWxwaGEiXQogIEEgLS0+IERbIueJuei0qOaui+W3riJdCiAgQiAtLT4gRVsi6aOO6Zmp6KGl5YG/5oiW54m55b6B5rqi5Lu3Il0KICBDIC0tPiBGWyLmqKHlnovpgZfmvI/miJblvILluLjmlLbnm4oiXQ==" locale="zh"} ## 关键定义与定理 ### 线性因子模型 资产收益由一组共同因子线性解释的模型。 中文解释:它假设很多资产一起涨跌,不是巧合,而是因为它们共同暴露于同一些风险源或特征。 ### 因子暴露 beta 资产对某个因子的敏感度。 中文解释:价值因子 beta 高的资产,通常在价值股组合相对成长股表现好时也表现好。 ### 因子风险溢价 承担某个因子暴露所获得的预期补偿。 中文解释:如果某因子代表坏状态风险,那么投资者要求正溢价;如果只是统计特征,它的溢价是否可持续需要额外验证。 ### APT 套利定价理论说明:若资产收益由少数共同因子驱动,且特质风险可被充分分散,则不存在套利时预期收益应近似为因子 beta 的线性函数。 中文解释:APT 不要求所有人持有市场组合,但要求不能存在大规模、低风险、正收益的套利组合。 ### 因子动物园 文献中被提出的大量收益预测因子。 中文解释:因子太多时,显著性可能来自反复试验。真正有用的因子应有经济逻辑、稳健样本外表现和可交易性。 ## 例子:三因子收益归因 某基金月度超额收益回归结果为: [[[]{.katex-mathml}[[[]{.strut style="height:1.0975em;vertical-align:-0.3831em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[p]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[0.20%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[1.05]{.mord}[M]{.mord.mathnormal style="margin-right:0.109em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[0.30]{.mord}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[0.45]{.mord}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[L]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[ε]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 当月市场因子收益 2%,SMB 为 -1%,HML 为 1.5%。模型解释的超额收益为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[0.20%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1.05]{.mord}[(]{.mopen}[2%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.30]{.mord}[(]{.mopen}[−]{.mord}[1%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.45]{.mord}[(]{.mopen}[1.5%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[2.675%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若基金实际超额收益为 3.0%,当月残差为 0.325%。解释时不要直接说经理创造了 3.0% alpha,因为其中大部分来自市场、规模和价值因子暴露。 ## 可运行例题:暴露、平均 alpha 与单月残差要分开 回归截距 0.20% 是样本期平均的条件外异常收益估计;某个月实际收益与拟合值的差是残差,不是“当月 alpha”。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgptb250aGx5X2FscGhhID0gMC4wMDIKYmV0YXMgPSBucC5hcnJheShbMS4wNSwgMC4zMCwgMC40NV0pCmZhY3Rvcl9yZXR1cm5zID0gbnAuYXJyYXkoWzAuMDIwLCAtMC4wMTAsIDAuMDE1XSkKYWN0dWFsX2V4Y2Vzc19yZXR1cm4gPSAwLjAzMAoKZmFjdG9yX2NvbnRyaWJ1dGlvbiA9IGJldGFzICogZmFjdG9yX3JldHVybnMKZml0dGVkX3JldHVybiA9IG1vbnRobHlfYWxwaGEgKyBmYWN0b3JfY29udHJpYnV0aW9uLnN1bSgpCnJlc2lkdWFsID0gYWN0dWFsX2V4Y2Vzc19yZXR1cm4gLSBmaXR0ZWRfcmV0dXJuCgpmb3IgbmFtZSwgY29udHJpYnV0aW9uIGluIHppcChbIuW4guWcuiIsICLop4TmqKEiLCAi5Lu35YC8Il0sIGZhY3Rvcl9jb250cmlidXRpb24pOgogICAgcHJpbnQoZiJ7bmFtZX3lm6DlrZDotKHnjK46IHtjb250cmlidXRpb246LjMlfSIpCnByaW50KGYi5Zue5b2S5oiq6Led6LSh54yuOiB7bW9udGhseV9hbHBoYTouMyV9IikKcHJpbnQoZiLmqKHlnovmi5/lkIjmlLbnm4o6IHtmaXR0ZWRfcmV0dXJuOi4zJX0iKQpwcmludChmIuWNleaciOaui+W3rjoge3Jlc2lkdWFsOi4zJX0iKQ== layout: vertical locale: zh packages: numpy title: Python:三因子收益归因 --- :: 若要判断经理是否持续创造 alpha,需要整段样本、推断方法和可交易成本;单月残差只说明该月还有未被模型解释的部分。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | ----------- | -------------- | -------------- | | 5.1 APT | 无套利如何支持多因子定价 | 因子结构、充分分散、近似定价 | | 5.2 统计基础 | 因子模型如何估计和检验 | 回归、标准误、多重共线性 | | 5.3 FF3 | 市场、规模、价值如何解释收益 | SMB、HML 构造逻辑 | | 5.4 Carhart | 动量为什么需要单独建模 | 动量收益与换手成本 | | 5.5 FF5 | 盈利能力和投资因子的加入 | 与 HML 的解释重叠 | | 5.6 因子动物园 | 如何筛选可信因子 | 数据挖掘、样本外、经济机制 | | 5.7 因子投资 | 因子如何进入组合 | 暴露控制、交易成本、拥挤 | ## 常见错误与考试陷阱 1. **把因子收益当成资产收益**:因子通常是多空组合或特征排序组合,不是单只资产。 2. **把显著 alpha 当成投资机会**:alpha 可能来自遗漏因子、幸存者偏差或交易成本未计入。 3. **忽略因子相关性**:多个因子高度相关时,单个 beta 和 t 值可能不稳定。 4. **把特征和风险混为一谈**:账面市值比等特征可以预测收益,但是否代表风险需要额外论证。 5. **用样本内表现选择因子**:这会高估因子有效性,必须看样本外和跨市场稳健性。 ## 自测题 1. APT 与 CAPM 都是线性预期收益模型,它们的核心差异是什么? 2. 为什么一个基金有正收益不代表有正 alpha? 3. 若某股票对 HML 的 beta 为 0.8,HML 当月收益为 -2%,这个因子对股票当月收益贡献多少? 4. 判断一个新因子是否可信,应检查哪些证据? ## 答案指引 1. CAPM 依赖市场组合和均衡假设,只有一个市场因子;APT 基于因子结构和无套利,可以有多个共同因子。 2. 正收益可能来自市场上涨或已知因子暴露。alpha 是扣除模型解释部分之后的平均超额收益。 3. 贡献为 [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[2%]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[1.6%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 4. 至少检查经济机制、样本外表现、跨市场稳健性、是否经受多重检验调整、交易成本和容量约束。 ## 小结与过渡 因子模型把资产定价从单一市场 beta 扩展到多维风险与特征暴露。下一章进入跨期资产定价,用消费、状态价格和随机贴现因子把 CAPM、因子模型与更一般的动态定价框架连接起来。 # 第六章:跨期资产定价 []{#第六章跨期资产定价} 前几章大多在单期框架中讨论收益和风险。本章把时间真正放进模型:投资者今天的投资选择会影响未来消费,未来经济状态又会反过来决定今天资产的价值。跨期资产定价的核心语言是随机贴现因子和 Euler 方程,它们把效用、风险溢价、状态价格和实证检验统一起来。 本章把“贴现率”从一个常数展开为随经济状态变化的随机变量。核心不是多背一个模型,而是理解为什么坏状态中的支付更有价值。 ## 本章路线 | 课次 | 核心问题 | | ----------------- | ----------------------- | | 6.1 消费 CAPM | 收益怎样补偿与边际效用共同波动的风险? | | 6.2 Euler 方程与 SDF | 一个矩条件怎样统一价格和收益率? | | 6.3 HJ 边界 | 资产收益对候选 SDF 提出什么最低波动要求? | | 6.4 GMM | 如何用样本矩估计并检验定价模型? | | 6.5—6.7 宏观解释 | 股权溢价为何推动长期风险与习惯形成模型? | ## 学习成果 通过本章学习,你将掌握: 1. 跨期消费选择理论 2. CCAPM的推导和经济直觉 3. 随机贴现因子框架 4. 欧拉方程在资产定价中的应用 5. 汉森-贾根纳坦边界的计算和含义 读完本章后,你应能完成以下任务: - 从跨期效用最大化推导基本 Euler 方程。 - 解释随机贴现因子为什么可以统一股票、债券、期权和因子模型的定价。 - 判断一个资产在“边际效用高的状态”支付多还是少,并据此解释风险溢价方向。 - 理解 HJ 边界如何把资产收益数据转化为对定价核波动性的约束。 - 说明股权溢价之谜为什么是消费资产定价中的核心难题。 ## 金融与经济动机 静态模型告诉我们风险要被补偿,但没有充分说明“哪些状态最重要”。跨期模型给出答案:当经济差、消费低、边际效用高时,能提供支付的资产特别有价值;当经济差时也亏钱的资产,会让投资者在最痛苦的时候更痛苦,因此必须给出较高预期收益。 | 资产类型 | 跨期视角下的价值 | | ----- | ----------------------- | | 防御型资产 | 在坏状态支付较多,像保险,风险溢价较低 | | 周期型股票 | 在坏状态亏损,增加消费风险,风险溢价较高 | | 长期债券 | 对利率和通胀状态敏感,可能是保险也可能是风险源 | | 期权保护 | 在尾部状态支付,状态价格通常较高 | ## 模型设置与直觉 投资者最大化跨期效用: [[[]{.katex-mathml}[[[]{.strut style="height:3.0171em;vertical-align:-1.2671em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[\[]{.delimsizing.size4}]{.mopen.delimcenter style="top:0em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[s]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[∞]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[s]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[u]{.mord.mathnormal}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[s]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[]]{.delimsizing.size4}]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若购买一单位资产需要今天支付 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,明天得到随机支付 [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,最优条件可写为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中: [[[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3649em;vertical-align:-0.936em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文直觉: [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 衡量明天一元钱相对今天一元钱的价值。如果明天消费低,边际效用 [[]{.katex-mathml}[[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 高,那么 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 高,明天在这个状态支付的一元钱今天就更值钱。 ## 关键定义与定理 ### Euler 方程 对任意资产回报 [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,最优条件可写为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:投资者不能通过微调任意资产持仓来提高期望效用。若某资产回报在高 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 状态下很高,它今天价格会更高,预期收益率会更低。 ### 随机贴现因子 能够给所有资产定价的随机变量 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 中文解释:它是“状态价格的压缩表示”。不同模型的差异,往往体现在它们假设的 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 长什么样。 ### CCAPM 消费 CAPM 认为资产风险溢价由资产收益与消费增长的协方差决定: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.1667em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Δ]{.mord}[c]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:不是与市场组合一起波动才有风险,而是与投资者消费一起波动才有根本风险。 ### Hansen-Jagannathan 边界 资产收益数据对任何有效随机贴现因子的均值和标准差施加下界约束。 中文解释:如果市场上有很高 Sharpe 比率的资产组合,那么能够解释它的 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 必须有足够波动,否则无法产生那么高的风险补偿。 ## 例子:坏状态支付为什么更值钱 假设明天有两个状态:衰退和繁荣,概率各 50%。投资者在衰退时边际效用高,因此 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[衰退]{.mord.cjk_fallback.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,繁荣时 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[繁荣]{.mord.cjk_fallback.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.8]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 资产 A 在两个状态都支付 1 元,则价格: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[1.2]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[0.8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 资产 B 在衰退支付 1.5 元,繁荣支付 0.5 元,则价格: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[B]{.mord.mathnormal.mtight style="margin-right:0.0502em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[1.2]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1.5]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[(]{.mopen}[0.8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.5]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 虽然 A 和 B 的期望支付都为 1 元,B 价格更高,因为它在边际效用高的衰退状态支付更多。它像保险,因此预期收益率更低。 ## 可运行例题:支付与 SDF 的协方差决定价格 三项资产期望支付都为 1,但支付状态不同。程序直接计算 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[m]{.mord.mathnormal}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpwcm9iYWJpbGl0eSA9IG5wLmFycmF5KFswLjUsIDAuNV0pCnNkZiA9IG5wLmFycmF5KFsxLjIsIDAuOF0pICAjIOihsOmAgOOAgee5geiNowphc3NldHMgPSB7CiAgICAi5peg6aOO6Zmp5pSv5LuYIjogbnAuYXJyYXkoWzEuMCwgMS4wXSksCiAgICAi6KGw6YCA5L+d6ZmpIjogbnAuYXJyYXkoWzEuNSwgMC41XSksCiAgICAi6aG65ZGo5pyf5pSv5LuYIjogbnAuYXJyYXkoWzAuNSwgMS41XSksCn0KCmZvciBuYW1lLCBwYXlvZmYgaW4gYXNzZXRzLml0ZW1zKCk6CiAgICBwcmljZSA9IG5wLnN1bShwcm9iYWJpbGl0eSAqIHNkZiAqIHBheW9mZikKICAgIGV4cGVjdGVkX3BheW9mZiA9IG5wLnN1bShwcm9iYWJpbGl0eSAqIHBheW9mZikKICAgIGV4cGVjdGVkX3JldHVybiA9IGV4cGVjdGVkX3BheW9mZiAvIHByaWNlIC0gMQogICAgY292YXJpYW5jZSA9IG5wLnN1bShwcm9iYWJpbGl0eSAqIChzZGYgLSBzZGYubWVhbigpKSAqIChwYXlvZmYgLSBwYXlvZmYubWVhbigpKSkKICAgIHByaW50KAogICAgICAgIGYie25hbWV9OiBwcmljZT17cHJpY2U6LjNmfSwgRVtSXT17ZXhwZWN0ZWRfcmV0dXJuOi4yJX0sICIKICAgICAgICBmIkNvdihtLFgpPXtjb3ZhcmlhbmNlOisuM2Z9IgogICAgKQ== layout: vertical locale: zh packages: numpy title: Python:坏状态保险与预期收益 --- :: 与 SDF 正协方差的衰退保险价格更高、预期收益更低;顺周期资产相反。这是风险补偿的状态定价语言,不代表投资者知道未来状态一定发生。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | --------------- | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 6.1 CCAPM | 消费风险如何定价 | 边际效用、消费增长协方差 | | 6.2 Euler 与 SDF | 一个公式如何统一定价 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[M]{.mord,mathnormal style="margin-right:0.109em;"}[R]{.mord,mathnormal style="margin-right:0.0077em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的经济含义 | | 6.3 HJ 边界 | 收益数据对 SDF 有何约束 | Sharpe 比率与 SDF 波动 | | 6.4 GMM 估计 | 如何把 Euler 方程带到数据里 | 矩条件、工具变量、过度识别检验 | | 6.5 股权溢价之谜 | 为什么标准 CCAPM 解释不了股票溢价 | 风险厌恶、消费平滑 | | 6.6 长期风险 | 小而持久的增长风险如何被定价 | 持久性、递归效用 | | 6.7 习惯形成 | 风险厌恶为什么随经济状态变化 | 盈余消费比、时变风险溢价 | ## 常见错误与考试陷阱 1. **把贴现因子当成常数**:跨期模型中 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 随状态变化,风险溢价来自这种共变。 2. **只看支付的期望值**:支付在什么状态发生,比平均支付同样重要。 3. **混淆消费风险和市场风险**:CAPM 用市场组合,CCAPM 用消费增长;二者相关但不等同。 4. **认为高消费增长协方差一定好**:与消费同涨同跌的资产在坏状态表现差,通常要求更高预期收益。 5. **忽略实证难点**:消费数据低频、平滑且有测量误差,导致 CCAPM 检验很困难。 ## 自测题 1. 为什么 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可以看作“无可改进”的最优条件? 2. 如果一项资产在 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 高的状态支付更多,它的价格和预期收益率通常如何变化? 3. HJ 边界为什么与最大 Sharpe 比率有关? 4. 标准 CCAPM 为什么难以解释股权溢价之谜? ## 答案指引 1. 若 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,增加该资产持仓能提高边际效用调整后的收益;若小于 1,应减少持仓。最优时所有可交易资产都满足等式。 2. 价格更高,预期收益率更低,因为它在投资者最需要财富的状态提供支付。 3. 高 Sharpe 比率意味着单位风险有很高补偿,要求 SDF 与收益有足够负相关和足够波动。 4. 消费增长过于平滑,无法在合理风险厌恶参数下产生足够大的风险溢价;若强行匹配,需要非常高的风险厌恶。 ## 小结与过渡 本章用随机贴现因子把资产定价提升到统一框架:价格取决于现金流与边际效用状态价格的共同变化。下一章转向衍生品,展示在无套利和动态复制下,即使不直接建模投资者偏好,也能对期权等复杂现金流进行定价。 # 第七章:期权定价理论 []{#第七章期权定价理论} 期权定价是资产定价中最清楚展示“无套利”力量的部分。股票的预期收益很难只靠无套利确定,但期权在理想条件下可以通过标的资产和无风险资产动态复制,因此价格受到非常强的约束。 本章以“复制相同现金流”作为主线。风险中性概率是完成无套利定价的工具,不是对真实上涨概率的预测。 ## 本章路线 | 课次 | 核心问题 | | ----------------- | -------------------------- | | 7.1 二叉树 | 怎样用股票与借贷复制期权? | | 7.2 Black–Scholes | 连续动态对冲需要哪些理想化假设? | | 7.3 Greeks | 价格对标的、波动率和时间怎样局部变化? | | 7.4 隐含波动率 | 市场期权价格隐含了什么,而没有告诉什么? | | 7.5—7.8 扩展 | 提前行权、路径依赖、随机波动与跳跃怎样破坏基础模型? | ## 学习成果 通过本章学习,你将掌握: 1. 期权的基本概念和损益结构 2. 二叉树期权定价方法 3. Black-Scholes公式的推导和应用 4. 期权的希腊字母及其在对冲中的应用 5. 各类期权的定价技巧 读完本章后,你应能完成以下任务: - 画出看涨、看跌、保护性看跌和备兑看涨的到期损益。 - 用单期二叉树构造复制组合并计算风险中性概率。 - 解释 Black-Scholes 公式背后的动态复制思想,而不只是代入公式。 - 用 Delta、Gamma、Vega、Theta、Rho 描述期权组合的主要风险。 - 说明隐含波动率微笑为什么暴露了 Black-Scholes 常数波动率假设的局限。 ## 金融与经济动机 期权本质上是在不同状态下重新分配现金流:看跌期权在下跌状态支付,像保险;看涨期权保留上涨收益、限制亏损为权利金。正因为它们的支付高度非线性,期权被广泛用于风险管理、投机、结构性产品和市场预期提取。 | 实务问题 | 期权定价工具 | | ----------- | ----------------- | | 如何给标准欧式期权定价 | 二叉树、Black-Scholes | | 如何控制期权组合风险 | 希腊字母、动态对冲 | | 市场预期未来波动多少 | 隐含波动率、VIX | | 期权可提前行权怎么办 | 美式期权数值方法 | | 波动率不是常数怎么办 | 随机波动率、跳跃扩散 | ## 模型设置与直觉 期权定价的核心思想是复制:如果一个期权的未来支付可以由标的资产和无风险资产组成的组合复制,那么期权价格必须等于复制组合成本。 在二叉树中,设股票今天价格为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,下一期上涨到 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 或下跌到 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。看涨期权对应支付 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。复制组合持有 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Δ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 股股票和 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 元无风险资产,使得: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 解出 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Δ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 后,期权价格为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[Δ]{.mord}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文直觉:我们没有问投资者风险偏好,也没有预测股票真实上涨概率;只要复制组合和期权在每个状态支付相同,它们今天就必须同价。 ## 关键定义与定理 ### 看涨期权与看跌期权 看涨期权给持有人以执行价 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 买入标的资产的权利;看跌期权给持有人以执行价 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 卖出标的资产的权利。 中文解释:权利不是义务,因此期权价值不会为负。 ### 风险中性定价 在无套利市场中,可以用风险中性概率 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 折现期望支付: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[\[]{.mopen.delimcenter style="top:0em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:风险中性概率不是现实概率,而是把风险补偿吸收到概率中后,用无风险利率折现的定价工具。 ### Black-Scholes 公式 在连续交易、无交易成本、几何布朗运动和常数波动率等假设下,欧式看涨期权价格为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1413em;vertical-align:-0.25em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:公式背后的经济含义是连续动态对冲,而不是“正态分布套公式”。 ### Put-Call Parity 欧式看涨和看跌期权满足: [[[]{.katex-mathml}[[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8913em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:左边是看涨加无风险债券,右边是看跌加股票;到期支付完全相同,因此今天同价。 ### 希腊字母 希腊字母衡量期权价格对不同变量的敏感性。 | 希腊字母 | 含义 | | ----- | --------------- | | Delta | 标的价格变化对期权价格的影响 | | Gamma | Delta 对标的价格的敏感性 | | Vega | 波动率变化对期权价格的影响 | | Theta | 时间流逝对期权价格的影响 | | Rho | 利率变化对期权价格的影响 | ## 例子:单期二叉树定价 股票今天 100,一期后上涨到 120 或下跌到 90。无风险利率为 5%,执行价为 100 的看涨期权到期支付为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[20]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 风险中性概率满足: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.263em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[u]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[120]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[90]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[105]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[90]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 期权价格为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1.05]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[9.52]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这里 0.5 不是股票真实上涨概率,而是能使股票期望收益等于无风险利率的风险中性概率。 ## 可运行例题:风险中性定价与复制必须一致 同一个单期期权既可以用风险中性期望,也可以用 delta 与借贷复制。两条路径若对不上,通常是现金流时点或贴现写错。 ::pyodide --- code64: c3BvdCA9IDEwMC4wCnVwX3Nwb3QgPSAxMjAuMApkb3duX3Nwb3QgPSA5MC4wCnN0cmlrZSA9IDEwMC4wCnJpc2tfZnJlZV9ncm93dGggPSAxLjA1CgpjYWxsX3VwID0gbWF4KHVwX3Nwb3QgLSBzdHJpa2UsIDAuMCkKY2FsbF9kb3duID0gbWF4KGRvd25fc3BvdCAtIHN0cmlrZSwgMC4wKQpxID0gKHJpc2tfZnJlZV9ncm93dGggKiBzcG90IC0gZG93bl9zcG90KSAvICh1cF9zcG90IC0gZG93bl9zcG90KQpyaXNrX25ldXRyYWxfcHJpY2UgPSAocSAqIGNhbGxfdXAgKyAoMSAtIHEpICogY2FsbF9kb3duKSAvIHJpc2tfZnJlZV9ncm93dGgKCmRlbHRhID0gKGNhbGxfdXAgLSBjYWxsX2Rvd24pIC8gKHVwX3Nwb3QgLSBkb3duX3Nwb3QpCmJvbmRfcGF5b2ZmID0gY2FsbF9kb3duIC0gZGVsdGEgKiBkb3duX3Nwb3QKcmVwbGljYXRpb25fcHJpY2UgPSBkZWx0YSAqIHNwb3QgKyBib25kX3BheW9mZiAvIHJpc2tfZnJlZV9ncm93dGgKCnByaW50KGYi6aOO6Zmp5Lit5oCn5qaC546HIHE9e3E6LjNmfSIpCnByaW50KGYi6aOO6Zmp5Lit5oCn5Lu35qC8PXtyaXNrX25ldXRyYWxfcHJpY2U6LjRmfSIpCnByaW50KGYi5aSN5Yi257uE5ZCI77yaZGVsdGE9e2RlbHRhOi40Zn3vvIzliLDmnJ/lgLrliLjlpLTlr7g9e2JvbmRfcGF5b2ZmOi4yZn0iKQpwcmludChmIuWkjeWItuaIkOacrD17cmVwbGljYXRpb25fcHJpY2U6LjRmfSIpCmFzc2VydCBhYnMocmlza19uZXV0cmFsX3ByaWNlIC0gcmVwbGljYXRpb25fcHJpY2UpIDwgMWUtMTA= layout: vertical locale: zh title: Python:单期看涨期权的两种定价 --- :: `bond_payoff` 为负表示借款。真实市场的离散对冲、跳跃、交易成本和波动率变化会让复制出现误差;模型价格是给定假设下的无套利基准。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | ----------------- | -------------- | -------------- | | 7.1 二叉树 | 复制组合如何给期权定价 | Delta、风险中性概率 | | 7.2 Black-Scholes | 连续时间复制如何得到闭式公式 | 假设条件、波动率 | | 7.3 希腊字母 | 期权风险如何分解 | 动态对冲、Gamma 风险 | | 7.4 隐含波动率 | 如何从市场价格反推波动率 | 微笑、偏斜、期限结构 | | 7.5 奇异期权 | 路径依赖和复杂支付如何处理 | 蒙特卡洛、障碍、亚式 | | 7.6 美式期权 | 提前行权价值如何定价 | 行权边界、LSM | | 7.7 随机波动率 | 波动率随机变化如何建模 | Heston、SABR、校准 | | 7.8 跳跃扩散 | 尾部跳跃如何进入价格 | 厚尾、短期期权 | ## 常见错误与考试陷阱 1. **把风险中性概率当成真实概率**:它是定价概率,不是预测概率。 2. **忽略期权价格边界**:若价格违反上下界或 put-call parity,说明存在套利。 3. **认为 Black-Scholes 只需要代公式**:公式成立依赖动态复制和强假设。 4. **混淆 Delta 对冲和无风险**:Delta 对冲只在小幅、短时变化下近似中性,Gamma 和波动率风险仍存在。 5. **把隐含波动率当成未来实现波动率的无偏预测**:隐含波动率包含风险溢价和供需压力。 ## 自测题 1. 为什么期权价格可以在不使用真实上涨概率的情况下确定? 2. 写出 put-call parity,并解释两边组合为什么到期支付相同。 3. 一个看涨期权 Delta 为 0.6,Gamma 为正。标的上涨后,Delta 通常如何变化? 4. 为什么虚值看跌期权的隐含波动率常常高于平值期权? ## 答案指引 1. 若能用股票和无风险资产复制期权支付,无套利要求两者今天价格相同;真实概率影响股票预期收益,但不影响复制关系。 2. [[]{.katex-mathml}[[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8413em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8413em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}。到期时左边支付 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[max]{.mop}[(]{.mopen}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,右边支付 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[max]{.mop}[(]{.mopen}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,两者都等于 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[max]{.mop}[(]{.mopen}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 3. Gamma 为正表示标的价格上升时 Delta 上升,看涨期权会变得更像股票。 4. 投资者愿意为下跌保护支付保险溢价,且股票指数收益具有负偏和跳跃风险,导致虚值看跌需求和价格较高。 ## 小结与过渡 期权定价展示了无套利、复制和状态现金流的强大约束。下一章转向固定收益证券:债券现金流更线性,但利率期限结构、久期、凸性和信用风险会带来另一套定价与风险管理问题。 # 第八章:固定收益证券 []{#第八章固定收益证券} 固定收益证券看起来比股票简单,因为债券现金流常常写在合约里。但真正的难点在于:现金流发生在不同期限,贴现率随期限变化,利率曲线会整体移动、扭曲和旋转,信用风险还会改变实际收到现金流的概率。 本章把前面学到的贴现、无套利和风险度量用于债券、收益率曲线、久期凸性、利率模型和信用风险。它也是理解货币政策传导、银行资产负债管理和利率衍生品的基础。 ## 本章路线 | 课次 | 核心问题 | | ---------- | ---------------------- | | 8.1 债券定价 | 每笔现金流应使用哪一个贴现率? | | 8.2 久期与凸性 | 利率小幅变化时价格怎样近似响应? | | 8.3 收益率曲线 | 即期利率、远期利率与到期收益率有何区别? | | 8.4 期限结构 | 短端、长期均值和风险溢价怎样动态变化? | | 8.5—8.7 扩展 | 信用、提前偿还和利率衍生品增加哪些状态依赖? | ## 学习成果 通过本章学习,你将掌握: 1. 债券定价的基本方法 2. 利率期限结构的构建和理论 3. 久期和凸性的计算和应用 4. 常见的利率模型 5. 信用风险的度量和定价 读完本章后,你应能完成以下任务: - 用贴现因子、即期利率和到期收益率给债券定价。 - 计算久期、修正久期和凸性,并解释它们对利率风险的含义。 - 从零息债价格构造收益率曲线,并区分即期利率、远期利率和 YTM。 - 说明 Vasicek、CIR、HJM 等期限结构模型的基本思想。 - 解释信用利差如何由违约概率、回收率、流动性和风险溢价共同决定。 ## 金融与经济动机 债券市场通常比股票市场更大,也更直接连接宏观经济。央行改变短端利率,会通过收益率曲线影响贷款、按揭、企业融资和资产估值。对机构投资者来说,固定收益不是“低风险资产”的同义词,而是一套关于期限、利率、通胀、流动性和信用的风险管理体系。 | 实务问题 | 固定收益工具 | | --------------- | --------- | | 债券价格为什么随利率反向变化 | 现金流贴现 | | 如何衡量债券对利率变化的敏感度 | 久期、凸性 | | 如何解释收益率曲线形状 | 期限结构理论 | | 如何给公司债定价 | 信用利差、违约风险 | | 如何管理按揭和可赎回债风险 | 嵌入期权、负凸性 | ## 模型设置与直觉 最基本的债券价格等于未来现金流的贴现值: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0954em;vertical-align:-1.2671em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7196em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果每个期限的贴现率不同,更一般地写成: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0954em;vertical-align:-1.2671em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是 [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 期贴现因子。直觉上,债券不是一个单一现金流,而是一串不同期限现金流的组合。久期衡量这串现金流的加权平均到期时间,凸性衡量价格-收益率关系的弯曲程度。 ## 关键定义与定理 ### 到期收益率 使债券未来现金流现值等于当前价格的单一折现率。 中文解释:YTM 是一个内部收益率式的摘要指标,方便比较,但它把不同期限贴现率压缩成一个数,可能掩盖收益率曲线信息。 ### 即期利率 从今天到某一未来期限的零息利率。 中文解释:即期利率是给确定期限现金流定价的基础,比 YTM 更适合拆解债券现金流。 ### 远期利率 今天锁定的未来某段时期借贷利率。 中文解释:远期利率来自不同期限贴现因子之间的无套利关系,不等于市场对未来短利率的简单预测,因为还可能包含期限溢价。 ### 久期 Macaulay 久期是债券现金流时间的现值加权平均;修正久期近似衡量收益率变化对价格的百分比影响: [[[]{.katex-mathml}[[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[Δ]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[−]{.mord}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[mod]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Δ]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中文解释:久期越长,价格对利率变化越敏感。 ### 凸性 价格-收益率曲线的二阶敏感度。 中文解释:凸性让久期近似更准确。普通债券通常有正凸性,可赎回债和 MBS 可能有负凸性。 ## 例子:久期近似价格变化 某债券价格为 100,修正久期为 5,凸性为 40。若收益率上升 0.50 个百分点,即 [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.005]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,一阶久期近似为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[Δ]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.005]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[2.5%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 加入凸性修正: [[[]{.katex-mathml}[[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[Δ]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[−]{.mord}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[mod]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Δ]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[Δ]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.3669em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[2.5%]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[40]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8641em;"}[0.00]{.mord}[[5]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[2.45%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 收益率变化较小时,久期已经很有用;变化较大或债券含期权时,凸性不可忽略。 ## 可运行例题:近似误差本身也是风险信息 下面对一只 5 年期、票息 5%、到期收益率 4% 的债券比较精确重定价、久期近似和久期—凸性近似。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpmYWNlID0gMTAwLjAKY291cG9uX3JhdGUgPSAwLjA1CnlpZWxkX3JhdGUgPSAwLjA0Cm1hdHVyaXR5ID0gNQpjYXNoX2Zsb3dzID0gbnAuZnVsbChtYXR1cml0eSwgZmFjZSAqIGNvdXBvbl9yYXRlKQpjYXNoX2Zsb3dzWy0xXSArPSBmYWNlCnRpbWVzID0gbnAuYXJhbmdlKDEsIG1hdHVyaXR5ICsgMSkKCmRlZiBwcmljZSh5KToKICAgIHJldHVybiBucC5zdW0oY2FzaF9mbG93cyAvICgxICsgeSkgKiogdGltZXMpCgpwMCA9IHByaWNlKHlpZWxkX3JhdGUpCnB2ID0gY2FzaF9mbG93cyAvICgxICsgeWllbGRfcmF0ZSkgKiogdGltZXMKbWFjYXVsYXkgPSBucC5zdW0odGltZXMgKiBwdikgLyBwMAptb2RpZmllZCA9IG1hY2F1bGF5IC8gKDEgKyB5aWVsZF9yYXRlKQpjb252ZXhpdHkgPSBucC5zdW0oCiAgICB0aW1lcyAqICh0aW1lcyArIDEpICogY2FzaF9mbG93cyAvICgxICsgeWllbGRfcmF0ZSkgKiogKHRpbWVzICsgMikKKSAvIHAwCgpkeSA9IDAuMDA1CmV4YWN0ID0gcHJpY2UoeWllbGRfcmF0ZSArIGR5KQpkdXJhdGlvbl9vbmx5ID0gcDAgKiAoMSAtIG1vZGlmaWVkICogZHkpCmR1cmF0aW9uX2NvbnZleGl0eSA9IHAwICogKDEgLSBtb2RpZmllZCAqIGR5ICsgMC41ICogY29udmV4aXR5ICogZHkqKjIpCgpwcmludChmIuWIneWni+S7t+agvD17cDA6LjRmfSwg5L+u5q2j5LmF5pyfPXttb2RpZmllZDouM2Z9LCDlh7jmgKc9e2NvbnZleGl0eTouM2Z9IikKcHJpbnQoZiLmlLbnm4rnjofkuIrljYcgNTBicCDlkI7nsr7noa7ku7fmoLw9e2V4YWN0Oi40Zn0iKQpwcmludChmIuS5heacn+i/keS8vD17ZHVyYXRpb25fb25seTouNGZ9IikKcHJpbnQoZiLkuYXmnJ8r5Ye45oCn6L+R5Ly8PXtkdXJhdGlvbl9jb252ZXhpdHk6LjRmfSIp layout: vertical locale: zh packages: numpy title: Python:债券重定价、久期与凸性 --- :: 近似误差随利率变动幅度和现金流非线性增加。含赎回、提前偿还或信用迁移时,单一到期收益率和静态凸性都可能不够。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | ---------- | ----------- | ------------- | | 8.1 债券定价基础 | 债券现金流如何贴现 | 票息、零息债、YTM | | 8.2 久期与凸性 | 利率变化如何影响价格 | 一阶与二阶近似 | | 8.3 收益率曲线 | 曲线如何构造和解释 | 即期、远期、期限溢价 | | 8.4 期限结构模型 | 利率动态如何建模 | 短利率模型、无套利漂移 | | 8.5 信用风险 | 公司债利差从哪里来 | 违约概率、回收率、流动性 | | 8.6 MBS | 提前还款如何改变现金流 | 负凸性、利率路径依赖 | | 8.7 利率衍生品 | 利率风险如何交易和对冲 | 互换、上限、下限、互换期权 | ## 常见错误与考试陷阱 1. **把 YTM 当成每期都能再投资的保证收益**:YTM 隐含再投资假设,实际收益会受再投资利率影响。 2. **认为债券一定低风险**:长期债和低评级债可能有很高利率风险或信用风险。 3. **忽略价格-收益率关系的非线性**:大幅利率变化时只用久期会产生误差。 4. **混淆即期利率和远期利率**:远期利率由无套利关系推出,不是简单未来预测。 5. **把信用利差全看成违约概率**:利差还包含流动性、税收、风险溢价和市场供需。 ## 自测题 1. 为什么债券价格与收益率通常反向变化? 2. 一只债券修正久期为 7,收益率下降 20 个基点,价格近似变化多少? 3. 为什么普通债券通常有正凸性?可赎回债为什么可能有负凸性? 4. 信用利差可以分解成哪些部分? ## 答案指引 1. 收益率上升意味着未来现金流用更高折现率折现,现值下降;收益率下降则现值上升。 2. [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[Δ]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[0.002]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex},价格近似变化为 [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[7]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[0.002]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[+]{.mord}[1.4%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 3. 普通债券价格下跌时久期下降较慢、上涨时受益于曲率,呈正凸性;可赎回债在利率下降时可能被赎回,上涨空间受限,形成负凸性。 4. 预期违约损失、违约风险溢价、流动性溢价、税收差异、市场供需和模型误差。 ## 小结与过渡 固定收益把贴现问题推进到完整期限结构:同一资产的不同现金流可能对应不同状态和期限价格。下一章讨论市场有效性与异象,转向一个更实证的问题:现实市场价格是否真的充分反映了信息和风险? # 第九章:市场有效性与异象 []{#第九章市场有效性与异象} 前面几章主要讨论资产“应该”如何定价。本章转向资产“实际”是否这样定价:市场价格是否已经反映可得信息?如果某些收益模式长期存在,它们是风险补偿、行为偏差、交易摩擦,还是数据挖掘的结果? 本章不把“市场有效”理解为价格永远正确,而是问:相对于某个信息集和定价模型,是否存在扣除风险与成本后仍可利用的可预测性? ## 本章路线 | 课次 | 核心问题 | | ------------ | ---------------------- | | 9.1 有效市场 | 当前价格相对于哪个信息集有效? | | 9.2 异象 | 可预测收益是风险补偿、错误定价还是数据挖掘? | | 9.3 行为金融 | 哪些偏差与套利限制能产生持续影响? | | 9.4—9.6 市场机制 | 流动性、订单流和速度怎样影响价格发现? | | 9.7 实证检验 | 事件研究与可预测性检验如何面对联合假设? | ## 学习成果 通过本章学习,你将掌握: 1. 有效市场假说的三种形式 2. 市场有效性的检验方法 3. 主要的资产定价异象 4. 行为金融学的基本理论 5. 异象与套利限制的关系 读完本章后,你应能完成以下任务: - 区分弱式、半强式和强式有效市场假说。 - 解释“价格反映信息”不等于“价格永远正确”。 - 判断一个异象可能是风险补偿、行为偏差、市场摩擦还是数据挖掘。 - 说明事件研究和收益可预测性检验的基本思路。 - 讨论交易成本、卖空限制和资金约束如何让错误定价持续存在。 ## 金融与经济动机 如果市场完全有效,主动选股和择时很难持续创造超额收益;如果市场存在可利用异象,投资者又会竞争性地交易这些机会,直到收益被压缩。市场有效性研究的难点就在这里:我们观察到的收益模式,可能是真实风险溢价,也可能是暂时错误定价,还可能只是研究者在大量数据中挑出来的偶然结果。 | 观察到的现象 | 可能解释 | | --------- | ----------------- | | 价值股长期收益较高 | 风险补偿、行为过度反应、会计特征 | | 动量收益存在 | 投资者反应不足、资金流、风险暴露 | | 公告后价格继续漂移 | 信息处理迟缓、交易限制 | | 高频价差和短期反转 | 流动性供给、库存风险、微观结构噪声 | ## 模型设置与直觉 有效市场假说的简洁表达是:在给定信息集 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[I]{.mord.mathcal style="margin-right:0.0738em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0738em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 下,价格已经反映所有可用信息。若用收益可预测性表示,常见检验是: [[[]{.katex-mathml}[[[]{.strut style="height:1.0553em;vertical-align:-0.3053em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[∣]{.mord}[[I]{.mord.mathcal style="margin-right:0.0738em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0738em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 或在风险调整后: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[∣]{.mord}[[I]{.mord.mathcal style="margin-right:0.0738em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0738em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 直觉上,如果某个公开信号能稳定预测正的风险调整收益,投资者会买入相关资产,价格上升会压低未来收益,直到机会消失。但如果套利有成本或风险,这个调整过程可能很慢,异象就可能持续。 ## 关键定义与定理 ### 弱式有效 价格已经反映历史价格和交易量信息。 中文解释:仅靠技术图形或历史收益序列,不应稳定获得风险调整超额收益。 ### 半强式有效 价格已经反映所有公开信息。 中文解释:财报、公告和宏观数据公开后,价格应迅速调整。 ### 强式有效 价格反映所有公开和私人信息。 中文解释:连内幕信息也无法带来超额收益。这是最强也最不现实的版本。 ### 联合假设问题 市场有效性检验必须同时假设一个资产定价模型。 中文解释:如果发现 alpha,不知道是市场无效,还是风险模型错了。这是有效市场研究最重要的识别难题。 ### 套利限制 即使存在错误定价,交易者也可能因卖空限制、资金约束、噪声交易者风险或交易成本而无法立刻消除它。 中文解释:知道价格错了,不等于有能力、耐心和资金承受它在短期内错得更离谱。 ## 例子:公告后漂移如何检验 研究者想检验盈利公告后价格是否充分反映信息。可以把公司按公告意外程度分组: 1. 计算标准化意外盈利 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 2. 将股票分为高 SUE 和低 SUE 组合; 3. 在公告后 1 至 60 个交易日跟踪风险调整收益; 4. 检验高 SUE 组合是否继续跑赢低 SUE 组合。 若高 SUE 组合在公告后仍持续获得正 alpha,可能说明市场对盈利消息反应不足。但答题时必须补充:需要控制规模、价值、动量、流动性、交易成本和样本外稳健性,否则不能直接宣布市场无效。 ## 可运行例题:事件窗口中的 CAR 不是自动的 alpha 先用最简单的市场调整收益展示计算。正式事件研究还要在事件前估计预期收益模型,并处理事件聚集与横截面相关。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpldmVudF9kYXlzID0gbnAuYXJyYXkoWy0yLCAtMSwgMCwgMSwgMl0pCnN0b2NrX3JldHVybnMgPSBucC5hcnJheShbMC4wMDEsIDAuMDAyLCAwLjA0MCwgMC4wMTIsIDAuMDA2XSkKbWFya2V0X3JldHVybnMgPSBucC5hcnJheShbMC4wMDIsIDAuMDAxLCAwLjAwNSwgMC4wMDMsIDAuMDAyXSkKYWJub3JtYWxfcmV0dXJucyA9IHN0b2NrX3JldHVybnMgLSBtYXJrZXRfcmV0dXJucwpjYXIgPSBhYm5vcm1hbF9yZXR1cm5zLnN1bSgpCnBvc3RfYW5ub3VuY2VtZW50X2NhciA9IGFibm9ybWFsX3JldHVybnNbZXZlbnRfZGF5cyA+IDBdLnN1bSgpCgpmb3IgZGF5LCBhYm5vcm1hbCBpbiB6aXAoZXZlbnRfZGF5cywgYWJub3JtYWxfcmV0dXJucyk6CiAgICBwcmludChmImRheSB7ZGF5OitkfTogbWFya2V0LWFkanVzdGVkIGFibm9ybWFsIHJldHVybj17YWJub3JtYWw6LjIlfSIpCnByaW50KGYiQ0FSWy0yLCsyXT17Y2FyOi4yJX0iKQpwcmludChmIkNBUlsrMSwrMl09e3Bvc3RfYW5ub3VuY2VtZW50X2NhcjouMiV9Iik= layout: vertical locale: zh packages: numpy title: Python:公告窗口异常收益与 CAR --- :: 4.8% 的窗口 CAR 只是相对于“市场收益”这个简化基准的差额。若换成多因子模型、调整公告时点、剔除同期事件或计入买卖价差,结论可能改变;这正是联合假设问题。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | --------- | ------------ | -------------- | | 9.1 EMH | 信息如何进入价格 | 三种有效形式、联合假设 | | 9.2 市场异象 | 哪些收益模式挑战 EMH | 异象定义、风险调整 | | 9.3 行为金融 | 投资者偏差如何影响价格 | 过度反应、反应不足、前景理论 | | 9.4 微观结构 | 交易机制如何影响短期价格 | 买卖价差、流动性、订单簿 | | 9.5 信息与交易 | 信息优势如何转化为收益 | 私人信息、噪声交易、内幕交易 | | 9.6 算法与高频 | 技术如何改变价格发现 | 延迟、做市、监管 | | 9.7 实证检验 | 如何检验有效性 | 事件研究、回归、稳健性 | ## 常见错误与考试陷阱 1. **把市场有效理解成价格永远等于基本价值**:有效市场允许价格有风险补偿和随机波动。 2. **看到可预测收益就断言市场无效**:必须先做风险调整和交易成本分析。 3. **忽略联合假设问题**:拒绝某个模型不等于直接拒绝市场有效性。 4. **把样本内异象当成可交易策略**:真实交易还要考虑滑点、容量、税费和拥挤。 5. **认为套利一定能立即纠正价格**:套利者面临资金、期限和噪声交易者风险。 ## 自测题 1. 弱式、半强式和强式有效市场假说分别排除了哪些信息优势? 2. 为什么市场有效性检验一定面临联合假设问题? 3. 一个策略样本内年化 alpha 为 5%,你会先检查哪些问题? 4. 为什么卖空限制会让负面信息反映更慢? ## 答案指引 1. 弱式排除历史价格和成交量优势;半强式排除公开信息优势;强式进一步排除私人信息优势。 2. 任何 alpha 都是相对于某个风险模型计算的。若 alpha 显著,可能是市场无效,也可能是模型遗漏风险。 3. 检查样本外表现、风险因子控制、多重检验、交易成本、换手率、流动性、容量和是否存在前视偏差。 4. 悲观投资者若不能卖空,负面观点无法充分进入价格;持有人也可能因约束或行为偏差不愿卖出,导致价格调整滞后。 ## 小结与过渡 本章提醒我们:资产定价模型不仅要有理论逻辑,还要经受数据、交易成本和市场制度的检验。最后一章进入实证与数值方法,系统讨论如何估计、模拟、检验并复现资产定价模型。 # 第十章:数值方法与实证应用 []{#第十章数值方法与实证应用} 前面几章主要回答“模型应该长什么样”,本章转向“模型怎么落地”。在真实研究中,资产定价模型很少只停留在解析推导上:我们需要模拟现金流和风险因子,需要估计参数,需要比较不同模型,也需要判断一个看似显著的结果到底是经济规律,还是样本噪声和反复试验带来的错觉。 本章适合作为课程后半段的综合训练。阅读时可以把每一节都对应到一个实际研究问题:蒙特卡洛用于理解随机收益和路径依赖,优化用于组合构建和参数校准,Bootstrap 用于评估不确定性,模型检验和 Python 案例则帮助你把论文中的方法搬到自己的数据上。 ## 本章路线 | 课次 | 核心问题 | | ---------------- | ---------------------- | | 10.1 Monte Carlo | 模拟误差怎样随路径数下降? | | 10.2 优化 | 权重约束、目标函数与数值误差如何互动? | | 10.3 估计与校准 | 估计对象、损失函数和识别条件是什么? | | 10.4 模型检验 | 定价误差、预测误差和经济价值怎样区分? | | 10.5 Bootstrap | 时间依赖下应如何重抽样? | | 10.6—10.7 ML 与实现 | 信息时点、样本外评价和交易成本如何进入代码? | ## 学习目标 通过本章学习,你将掌握: 1. 蒙特卡洛模拟的原理和应用 2. 常用的数值优化算法 3. 参数估计的方法(MLE、GMM等) 4. 模型检验和比较技术 5. 使用Python实现资产定价模型 更具体地说,读完本章后你应能: - 为一个资产定价问题选择合适的模拟、优化或估计方法。 - 说明 Monte Carlo、Bootstrap、GMM、MLE 和回归检验分别解决什么问题。 - 识别实证研究中的前视偏差、样本选择、幸存者偏差和多重检验问题。 - 用清晰的工作流组织数据清洗、模型估计、稳健性分析和结果解释。 - 判断一个模型“统计显著”是否同时具有经济意义和可交易性。 ## 金融与经济动机 资产定价研究最后都要回到数据。一个模型可能推导漂亮,但如果参数无法稳定估计、检验结果对样本期高度敏感、或者交易成本吃掉全部收益,它就很难指导真实投资。反过来,一个实证异象即使在数据中显著,也需要通过经济机制、稳健性和可实施性检验,才可能成为可信结论。 | 研究目标 | 常用方法 | 主要风险 | | ------- | ------------------ | ----------- | | 估计风险溢价 | 回归、GMM、MLE | 标准误错误、弱识别 | | 评估策略表现 | 回测、Bootstrap | 前视偏差、交易成本遗漏 | | 定价复杂衍生品 | Monte Carlo、树、有限差分 | 离散误差、随机误差 | | 校准模型参数 | 数值优化 | 局部最优、过拟合 | | 比较多个模型 | 统计检验、样本外验证 | 数据挖掘、多重检验 | ## 模型设置与直觉 实证资产定价通常从一个矩条件、回归方程或定价误差开始。例如因子模型可以写成: [[[]{.katex-mathml}[[[]{.strut style="height:1.0975em;vertical-align:-0.3831em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0528em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 模型检验关注的是 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是否系统性偏离 0。SDF/GMM 框架则常写成: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 估计的目标不是让样本内误差消失,而是在统计噪声、经济约束和可复现性之间取得可靠结论。好的实证工作流会把“提出假设”和“检查假设”分开,避免研究者不断试错后只汇报最好看的结果。 ## 实证工作流 :mermaid-diagram{code64="Zmxvd2NoYXJ0IFRECiAgQVsi5o+Q5Ye65a6a5Lu35YGH6K6+Il0gLS0+IEJbIuaVtOeQhuaUtuebiueOh+OAgeWboOWtkOWSjOaOp+WItuWPmOmHjyJdCiAgQiAtLT4gQ1si5Lyw6K6h5Y+C5pWw5oiW5p6E6YCg57uE5ZCIIl0KICBDIC0tPiBEWyLov5vooYzmqKHlnovmo4DpqozlkoznqLPlgaXmgKfliIbmnpAiXQogIEQgLS0+IEVbIuino+mHiue7j+a1juWQq+S5iSJdCiAgRSAtLT4gRlsi5aSN546w44CB6K6w5b2V5ZKM5omp5bGVIl0=" locale="zh"} | 环节 | 常见问题 | 本章对应内容 | | -- | ---------------- | ----------------- | | 模拟 | 模型在不同市场状态下会怎样表现 | 蒙特卡洛、方差缩减 | | 优化 | 如何在约束下求组合权重或校准参数 | 数值优化、组合约束 | | 估计 | 参数是否稳定,标准误是否可信 | MLE、GMM、Bootstrap | | 检验 | 模型能否解释收益差异 | 模型比较、横截面检验 | | 实现 | 代码结果是否可复现 | Python 案例、数据清洗 | ::warning{title="常见误区"} 实证资产定价最容易出问题的地方不是公式,而是样本选择、变量口径、缺失值处理和重复试验。看到显著结果时,先检查数据生成过程和检验设计,再讨论经济解释。 :: ## 关键方法速查 ### Monte Carlo 通过大量随机路径近似期望、分布或价格。 中文解释:当解析解困难时,用模拟把“积分问题”变成“平均问题”。误差随路径数增加按 [[]{.katex-mathml}[[[]{.strut style="height:1.1767em;vertical-align:-0.25em;"}[1/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8867em;"}]{.vlist style="height:0.9267em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1133em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 下降。 ### 数值优化 在目标函数下寻找最优参数或组合权重。 中文解释:资产配置、模型校准和最大似然估计都离不开优化;约束条件和初值选择会明显影响结果。 ### MLE 在假设完整概率分布后,选择使观测数据最可能出现的参数。 中文解释:效率高,但对分布假设敏感。 ### GMM 利用理论给出的矩条件估计参数,不要求完整分布。 中文解释:适合 Euler 方程和资产定价检验,但工具变量、权重矩阵和弱识别会影响结论。 ### Bootstrap 通过重抽样估计统计量的不确定性。 中文解释:当标准误公式复杂或样本分布非正态时,Bootstrap 能给出更直观的置信区间;时间序列要用块 Bootstrap 保留相关性。 ## 例子:一个最小实证检验设计 想检验一个价值因子是否能解释股票横截面收益,可以按以下方式组织: 1. 明确样本:A 股或美股、起止日期、剔除规则、调仓频率。 2. 构造因子:按账面市值比分组,形成多空组合。 3. 估计暴露:对测试组合做时间序列回归。 4. 检验 alpha:查看加入价值因子后 alpha 是否下降并失去显著性。 5. 稳健性:换样本期、换分组、加入规模和动量、考虑交易成本。 6. 解释:若有效,说明是风险补偿、行为偏差,还是会计变量代理其他信息。 这个流程比直接报告“价值因子 t 值大于 2”更可靠,因为它把数据、模型、检验和经济解释分开检查。 ## 可运行例题:未来信息会制造漂亮的样本外结果 两个模型都严格按前 200 期训练、后 100 期测试;区别在于第二个特征偷偷含有未来收益。时间切分本身不能修复特征泄漏。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMTAxMCkKbiA9IDMwMApwb2ludF9pbl90aW1lX3NpZ25hbCA9IHJuZy5ub3JtYWwoc2l6ZT1uKQpmdXR1cmVfcmV0dXJuID0gMC4wMTUgKiBwb2ludF9pbl90aW1lX3NpZ25hbCArIHJuZy5ub3JtYWwoc2NhbGU9MC4wNCwgc2l6ZT1uKQpsZWFreV9mZWF0dXJlID0gZnV0dXJlX3JldHVybiArIHJuZy5ub3JtYWwoc2NhbGU9MC4wMDQsIHNpemU9bikKc3BsaXQgPSAyMDAKCmRlZiBmaXRfYW5kX3Rlc3QoZmVhdHVyZSwgbGFiZWwpOgogICAgeF90cmFpbiA9IG5wLmNvbHVtbl9zdGFjayhbbnAub25lcyhzcGxpdCksIGZlYXR1cmVbOnNwbGl0XV0pCiAgICB4X3Rlc3QgPSBucC5jb2x1bW5fc3RhY2soW25wLm9uZXMobiAtIHNwbGl0KSwgZmVhdHVyZVtzcGxpdDpdXSkKICAgIGJldGEgPSBucC5saW5hbGcubHN0c3EoeF90cmFpbiwgZnV0dXJlX3JldHVybls6c3BsaXRdLCByY29uZD1Ob25lKVswXQogICAgcHJlZGljdGlvbiA9IHhfdGVzdCBAIGJldGEKICAgIGFjdHVhbCA9IGZ1dHVyZV9yZXR1cm5bc3BsaXQ6XQogICAgcjIgPSAxIC0gbnAuc3VtKChhY3R1YWwgLSBwcmVkaWN0aW9uKSAqKiAyKSAvIG5wLnN1bSgoYWN0dWFsIC0gYWN0dWFsLm1lYW4oKSkgKiogMikKICAgIHByaW50KGYie2xhYmVsfTogdGVzdCBSMj17cjI6LjNmfSwgc2xvcGU9e2JldGFbMV06LjNmfSIpCgpmaXRfYW5kX3Rlc3QocG9pbnRfaW5fdGltZV9zaWduYWwsICLlvZPml7blj6/lvpfnibnlvoEiKQpmaXRfYW5kX3Rlc3QobGVha3lfZmVhdHVyZSwgIuWQq+acquadpeS/oeaBr+eahOeJueW+gSIp layout: vertical locale: zh packages: numpy title: Python:point-in-time 特征与前视偏差 --- :: 泄漏模型的高 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 不代表可预测性。实证审计必须逐列记录发布时间、修订历史、可交易时点和形成期;语言模型还要核对训练语料截止日。 ## 学习顺序建议 | 小节 | 先抓住的问题 | 需要特别留意 | | ---------------- | -------------- | -------------- | | 10.1 Monte Carlo | 如何用随机模拟近似价格或风险 | 随机误差、收敛速度 | | 10.2 优化 | 如何求组合权重或校准参数 | 约束、局部最优、数值稳定 | | 10.3 参数估计 | 如何从数据识别模型参数 | MLE、GMM、标准误 | | 10.4 模型检验 | 如何判断模型解释力 | alpha、J 检验、样本外 | | 10.5 Bootstrap | 如何评估统计不确定性 | 重抽样单位、块长度 | | 10.6 机器学习 | 如何处理高维预测问题 | 过拟合、交叉验证、可解释性 | | 10.7 Python 案例 | 如何把流程复现为代码 | 数据清洗、随机种子、结果记录 | ## 常见错误与考试陷阱 1. **只报告点估计,不报告不确定性**:参数估计没有标准误或置信区间,很难解释。 2. **把样本内拟合当成预测能力**:资产定价更重视样本外表现和稳健性。 3. **忽略时间序列相关性**:普通 IID 标准误常低估不确定性。 4. **反复试验后不做多重检验调整**:因子越试越多,偶然显著越常见。 5. **把统计显著当成经济显著**:年化 alpha 若小于交易成本或容量很小,投资意义有限。 ## 自测题 1. Monte Carlo 路径数增加 4 倍,标准误大约如何变化? 2. 为什么时间序列收益数据做 Bootstrap 时常用块 Bootstrap? 3. GMM 相比 MLE 的优势和代价是什么? 4. 一个策略样本内 Sharpe 很高,但换样本期后消失,你会如何解释? ## 答案指引 1. 标准误约减半,因为 Monte Carlo 误差按 [[]{.katex-mathml}[[[]{.strut style="height:1.1767em;vertical-align:-0.25em;"}[1/]{.mord}[[[[[[]{.pstrut style="height:3em;"}[[N]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8867em;"}]{.vlist style="height:0.9267em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1133em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 收敛。 2. 金融收益可能存在自相关、波动率聚集和状态持续性;块 Bootstrap 能保留局部时间依赖。 3. GMM 不要求完整分布,只需矩条件,适合资产定价 Euler 方程;代价是可能效率较低,且对工具变量和权重矩阵敏感。 4. 可能是过拟合、数据挖掘、市场结构变化、交易拥挤,也可能是样本外风险状态不同;需要重新检查经济机制和稳健性。 ## 小结与课程收束 本章把前面所有理论变成可估计、可检验、可复现的研究流程。完成本章后,建议回到 CAPM、因子模型、跨期定价或期权定价中任选一个模型,做一次完整小项目:写清假设,整理数据,估计参数,检验模型,解释结果,并记录所有失败和修改。资产定价的真正训练,往往就在这些细节里。 下一步进入[资产定价浏览器交互实验](https://www.pengjiaxin.com/../11-interactive-labs/),用成对的 Python/R 单元复现收益率、组合、CAPM、多因子、SDF、期权和债券计算。 # 第十一章:资产定价浏览器交互实验 []{#第十一章资产定价浏览器交互实验} 本章把资产定价的七类核心任务放进同一个可重复工作流: :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRGF0YVsi5Lu35qC844CB546w6YeR5rWB5LiO5Zug5a2QIl0gLS0+IFJldHVybnNbIuaUtuebiueOh+S4jui2hemineaUtuebiiJdCiAgUmV0dXJucyAtLT4gUG9ydGZvbGlvWyLnu4TlkIjkuI7po47pmakiXQogIFBvcnRmb2xpbyAtLT4gUmVncmVzc2lvblsiQ0FQTSAvIOWboOWtkOWbnuW9kiJdCiAgUmVncmVzc2lvbiAtLT4gU0RGWyJTREYg5LiO55+p5p2h5Lu2Il0KICBTREYgLS0+IERlcml2YXRpdmVzWyLmnJ/mnYPkuI7lgLrliLjlrprku7ciXQogIERlcml2YXRpdmVzIC0tPiBBdWRpdFsi6K+v5beu44CB56iz5YGl5oCn5LiO57uP5rWO6Kej6YeKIl0=" locale="zh"} 每个实验都有 Python 与 R 版本。代码使用相同输入和公式,适合做交叉核验。点击“运行”后,先检查基准输出,再显示代码修改参数。 ## 学习成果 完成本章后,你应能够: - 正确计算简单收益率、对数收益率、总收益率和现值; - 用协方差矩阵构造全局最小方差与切点组合; - 估计 CAPM 和多因子回归,解释 alpha、beta、标准误和 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - 用 Euler 方程矩条件理解 SDF 参数估计; - 用风险中性二叉树计算欧式期权价格; - 计算债券价格、Macaulay 久期、修正久期和凸性; - 区分教学模拟、统计证据和真实可交易结论。 ::tip{title="运行环境"} Python 单元由项目已有的 Pyodide 运行时执行,R 单元由 webR 执行。首次运行需要加载浏览器运行时。示例优先使用 NumPy、SciPy、Statsmodels、Matplotlib 和 base R,避免依赖无法在 WebAssembly 中运行的本地库。 :: ## 实验一:收益率、现金流与现值 ### 收益率定义 若期初价格为 [[]{.katex-mathml}[[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 、期末价格为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 、期间分红为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,总简单收益率为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2547em;vertical-align:-0.8943em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8943em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 财富增长因子是 [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,多期累计收益必须连乘: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[:]{.mrel.mtight}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0954em;vertical-align:-1.2671em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∏]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 对数收益率 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可以跨期相加,但横截面组合仍应使用简单收益率。 ### 现值 确定现金流 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 在固定贴现率 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 下的价格为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0954em;vertical-align:-1.2671em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7196em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpwcmljZXMgPSBucC5hcnJheShbMTAwLjAsIDEwNC4wLCAxMDEuMCwgMTA4LjAsIDExMi4wXSkKZGl2aWRlbmRzID0gbnAuYXJyYXkoWzEuMCwgMC44LCAxLjIsIDEuMF0pCgpzaW1wbGVfcmV0dXJucyA9ICgKICAgIHByaWNlc1sxOl0gKyBkaXZpZGVuZHMgLSBwcmljZXNbOi0xXQopIC8gcHJpY2VzWzotMV0KbG9nX3JldHVybnMgPSBucC5sb2cxcChzaW1wbGVfcmV0dXJucykKY3VtdWxhdGl2ZV9zaW1wbGUgPSBucC5wcm9kKDEgKyBzaW1wbGVfcmV0dXJucykgLSAxCmN1bXVsYXRpdmVfZnJvbV9sb2dzID0gbnAuZXhwKGxvZ19yZXR1cm5zLnN1bSgpKSAtIDEKCmNhc2hfZmxvd3MgPSBucC5hcnJheShbNS4wLCA2LjAsIDcuMCwgMTA3LjBdKQpkaXNjb3VudF9yYXRlID0gMC4wOApwZXJpb2RzID0gbnAuYXJhbmdlKDEsIGxlbihjYXNoX2Zsb3dzKSArIDEpCnByZXNlbnRfdmFsdWVzID0gY2FzaF9mbG93cyAvICgxICsgZGlzY291bnRfcmF0ZSkgKiogcGVyaW9kcwpwcmljZSA9IHByZXNlbnRfdmFsdWVzLnN1bSgpCgpwcmludCgiUGVyaW9kIHNpbXBsZSByZXR1cm5zOiIsIG5wLnJvdW5kKHNpbXBsZV9yZXR1cm5zLCA0KSkKcHJpbnQoIlBlcmlvZCBsb2cgcmV0dXJuczogICAiLCBucC5yb3VuZChsb2dfcmV0dXJucywgNCkpCnByaW50KGYiQ3VtdWxhdGl2ZSByZXR1cm4gYnkgY29tcG91bmRpbmc6IHtjdW11bGF0aXZlX3NpbXBsZTouNGZ9IikKcHJpbnQoZiJDdW11bGF0aXZlIHJldHVybiBmcm9tIGxvZyBzdW06ICAge2N1bXVsYXRpdmVfZnJvbV9sb2dzOi40Zn0iKQpwcmludCgiUHJlc2VudCB2YWx1ZSBieSBjYXNoIGZsb3c6IiwgbnAucm91bmQocHJlc2VudF92YWx1ZXMsIDMpKQpwcmludChmIkFzc2V0IHByaWNlIGF0IDglIGRpc2NvdW50IHJhdGU6IHtwcmljZTouM2Z9Iik= layout: vertical locale: zh packages: numpy title: Python:总收益率与贴现现金流 --- :: ::web-r --- code64: cHJpY2VzIDwtIGMoMTAwLjAsIDEwNC4wLCAxMDEuMCwgMTA4LjAsIDExMi4wKQpkaXZpZGVuZHMgPC0gYygxLjAsIDAuOCwgMS4yLCAxLjApCgpzaW1wbGVfcmV0dXJucyA8LSAoCiAgcHJpY2VzWy0xXSArIGRpdmlkZW5kcyAtIHByaWNlc1stbGVuZ3RoKHByaWNlcyldCikgLyBwcmljZXNbLWxlbmd0aChwcmljZXMpXQpsb2dfcmV0dXJucyA8LSBsb2cxcChzaW1wbGVfcmV0dXJucykKY3VtdWxhdGl2ZV9zaW1wbGUgPC0gcHJvZCgxICsgc2ltcGxlX3JldHVybnMpIC0gMQpjdW11bGF0aXZlX2Zyb21fbG9ncyA8LSBleHAoc3VtKGxvZ19yZXR1cm5zKSkgLSAxCgpjYXNoX2Zsb3dzIDwtIGMoNS4wLCA2LjAsIDcuMCwgMTA3LjApCmRpc2NvdW50X3JhdGUgPC0gMC4wOApwZXJpb2RzIDwtIHNlcV9hbG9uZyhjYXNoX2Zsb3dzKQpwcmVzZW50X3ZhbHVlcyA8LSBjYXNoX2Zsb3dzIC8gKDEgKyBkaXNjb3VudF9yYXRlKV5wZXJpb2RzCnByaWNlIDwtIHN1bShwcmVzZW50X3ZhbHVlcykKCnByaW50KHJvdW5kKHNpbXBsZV9yZXR1cm5zLCA0KSkKcHJpbnQocm91bmQobG9nX3JldHVybnMsIDQpKQpwcmludChjKAogIGN1bXVsYXRpdmVfY29tcG91bmRpbmcgPSBjdW11bGF0aXZlX3NpbXBsZSwKICBjdW11bGF0aXZlX2xvZ19zdW0gPSBjdW11bGF0aXZlX2Zyb21fbG9ncywKICBwcmljZSA9IHByaWNlCikpCnByaW50KHJvdW5kKHByZXNlbnRfdmFsdWVzLCAzKSk= layout: vertical locale: zh title: R:总收益率与贴现现金流 --- :: ### 审计任务 - 把贴现率从 8% 改为 10%,解释价格为何下降。 - 删除分红后重新计算累计收益,量化价格收益与总收益的差异。 - 检查简单收益率平均值与对数收益率平均值为何不完全相同。 ## 实验二:均值—方差组合 ### 全局最小方差组合 给定协方差矩阵 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Σ]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,权重和为 1 的全局最小方差组合为: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[GM]{.mord.mathnormal.mtight style="margin-right:0.109em;"}[V]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1771em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[1]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[1]{.mord.mathbf}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[1]{.mord.mathbf}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若允许卖空,切点组合满足: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4632em;vertical-align:-0.9721em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[1]{.mord.mathbf}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7401em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[1]{.mord.mathbf}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Σ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[μ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[f]{.mord.mathnormal.mtight style="margin-right:0.1076em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[1]{.mord.mathbf}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这些闭式解依赖期望收益和协方差已知。现实中它们是估计量,输入误差尤其会放大切点权重。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCmV4cGVjdGVkX3JldHVybnMgPSBucC5hcnJheShbMC4wNiwgMC4wOSwgMC4xMl0pCnZvbGF0aWxpdGllcyA9IG5wLmFycmF5KFswLjEwLCAwLjE2LCAwLjIyXSkKY29ycmVsYXRpb24gPSBucC5hcnJheShbCiAgICBbMS4wMCwgMC4zMCwgMC4xNV0sCiAgICBbMC4zMCwgMS4wMCwgMC40NV0sCiAgICBbMC4xNSwgMC40NSwgMS4wMF0sCl0pCmNvdmFyaWFuY2UgPSBucC5vdXRlcih2b2xhdGlsaXRpZXMsIHZvbGF0aWxpdGllcykgKiBjb3JyZWxhdGlvbgpvbmVzID0gbnAub25lcygzKQpyaXNrX2ZyZWVfcmF0ZSA9IDAuMDI1CgppbnZlcnNlX2NvdmFyaWFuY2UgPSBucC5saW5hbGcuaW52KGNvdmFyaWFuY2UpCmdtdiA9IGludmVyc2VfY292YXJpYW5jZSBAIG9uZXMKZ212ID0gZ212IC8gKG9uZXMgQCBnbXYpCgpleGNlc3NfcmV0dXJucyA9IGV4cGVjdGVkX3JldHVybnMgLSByaXNrX2ZyZWVfcmF0ZQp0YW5nZW5jeSA9IGludmVyc2VfY292YXJpYW5jZSBAIGV4Y2Vzc19yZXR1cm5zCnRhbmdlbmN5ID0gdGFuZ2VuY3kgLyAob25lcyBAIHRhbmdlbmN5KQoKZGVmIHBvcnRmb2xpb19zdGF0aXN0aWNzKHdlaWdodHMpOgogICAgbWVhbiA9IHdlaWdodHMgQCBleHBlY3RlZF9yZXR1cm5zCiAgICB2b2xhdGlsaXR5ID0gbnAuc3FydCh3ZWlnaHRzIEAgY292YXJpYW5jZSBAIHdlaWdodHMpCiAgICByZXR1cm4gbWVhbiwgdm9sYXRpbGl0eQoKZ212X21lYW4sIGdtdl92b2xhdGlsaXR5ID0gcG9ydGZvbGlvX3N0YXRpc3RpY3MoZ212KQp0YW5nZW5jeV9tZWFuLCB0YW5nZW5jeV92b2xhdGlsaXR5ID0gcG9ydGZvbGlvX3N0YXRpc3RpY3ModGFuZ2VuY3kpCnRhbmdlbmN5X3NoYXJwZSA9ICh0YW5nZW5jeV9tZWFuIC0gcmlza19mcmVlX3JhdGUpIC8gdGFuZ2VuY3lfdm9sYXRpbGl0eQoKcHJpbnQoIkdNViB3ZWlnaHRzOiIsIG5wLnJvdW5kKGdtdiwgNCkpCnByaW50KGYiR01WIG1lYW49e2dtdl9tZWFuOi40Zn0sIHZvbGF0aWxpdHk9e2dtdl92b2xhdGlsaXR5Oi40Zn0iKQpwcmludCgiVGFuZ2VuY3kgd2VpZ2h0czoiLCBucC5yb3VuZCh0YW5nZW5jeSwgNCkpCnByaW50KGYiVGFuZ2VuY3kgbWVhbj17dGFuZ2VuY3lfbWVhbjouNGZ9LCB2b2xhdGlsaXR5PXt0YW5nZW5jeV92b2xhdGlsaXR5Oi40Zn0iKQpwcmludChmIlRhbmdlbmN5IFNoYXJwZSByYXRpbz17dGFuZ2VuY3lfc2hhcnBlOi40Zn0iKQoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDExMDIpCnJhbmRvbV93ZWlnaHRzID0gcm5nLmRpcmljaGxldChucC5vbmVzKDMpLCBzaXplPTMwMDApCnJhbmRvbV9tZWFucyA9IHJhbmRvbV93ZWlnaHRzIEAgZXhwZWN0ZWRfcmV0dXJucwpyYW5kb21fdm9sYXRpbGl0aWVzID0gbnAuc3FydCgKICAgIG5wLmVpbnN1bSgiaWosamssaWstPmkiLCByYW5kb21fd2VpZ2h0cywgY292YXJpYW5jZSwgcmFuZG9tX3dlaWdodHMpCikKCnBsdC5zY2F0dGVyKHJhbmRvbV92b2xhdGlsaXRpZXMsIHJhbmRvbV9tZWFucywgcz04LCBhbHBoYT0wLjI1KQpwbHQuc2NhdHRlcihnbXZfdm9sYXRpbGl0eSwgZ212X21lYW4sIG1hcmtlcj0iKiIsIHM9MTgwLCBsYWJlbD0iR01WIikKcGx0LnNjYXR0ZXIodGFuZ2VuY3lfdm9sYXRpbGl0eSwgdGFuZ2VuY3lfbWVhbiwgbWFya2VyPSIqIiwgcz0xODAsIGxhYmVsPSJUYW5nZW5jeSIpCnBsdC54bGFiZWwoIlZvbGF0aWxpdHkiKQpwbHQueWxhYmVsKCJFeHBlY3RlZCByZXR1cm4iKQpwbHQubGVnZW5kKCkKcGx0LmdyaWQoYWxwaGE9MC4zKQpwbHQuc2hvdygp layout: vertical locale: zh packages: numpy, matplotlib title: Python:最小方差与切点组合 --- :: ::web-r --- code64: ZXhwZWN0ZWRfcmV0dXJucyA8LSBjKDAuMDYsIDAuMDksIDAuMTIpCnZvbGF0aWxpdGllcyA8LSBjKDAuMTAsIDAuMTYsIDAuMjIpCmNvcnJlbGF0aW9uIDwtIG1hdHJpeChjKAogIDEuMDAsIDAuMzAsIDAuMTUsCiAgMC4zMCwgMS4wMCwgMC40NSwKICAwLjE1LCAwLjQ1LCAxLjAwCiksIG5yb3cgPSAzLCBieXJvdyA9IFRSVUUpCmNvdmFyaWFuY2UgPC0gb3V0ZXIodm9sYXRpbGl0aWVzLCB2b2xhdGlsaXRpZXMpICogY29ycmVsYXRpb24Kb25lcyA8LSByZXAoMSwgMykKcmlza19mcmVlX3JhdGUgPC0gMC4wMjUKCmludmVyc2VfY292YXJpYW5jZSA8LSBzb2x2ZShjb3ZhcmlhbmNlKQpnbXYgPC0gYXMudmVjdG9yKGludmVyc2VfY292YXJpYW5jZSAlKiUgb25lcykKZ212IDwtIGdtdiAvIHN1bShnbXYpCgpleGNlc3NfcmV0dXJucyA8LSBleHBlY3RlZF9yZXR1cm5zIC0gcmlza19mcmVlX3JhdGUKdGFuZ2VuY3kgPC0gYXMudmVjdG9yKGludmVyc2VfY292YXJpYW5jZSAlKiUgZXhjZXNzX3JldHVybnMpCnRhbmdlbmN5IDwtIHRhbmdlbmN5IC8gc3VtKHRhbmdlbmN5KQoKcG9ydGZvbGlvX3N0YXRpc3RpY3MgPC0gZnVuY3Rpb24od2VpZ2h0cykgewogIG1lYW5fcmV0dXJuIDwtIHN1bSh3ZWlnaHRzICogZXhwZWN0ZWRfcmV0dXJucykKICB2b2xhdGlsaXR5IDwtIHNxcnQodCh3ZWlnaHRzKSAlKiUgY292YXJpYW5jZSAlKiUgd2VpZ2h0cykKICBjKG1lYW4gPSBtZWFuX3JldHVybiwgdm9sYXRpbGl0eSA9IHZvbGF0aWxpdHkpCn0KCmdtdl9zdGF0cyA8LSBwb3J0Zm9saW9fc3RhdGlzdGljcyhnbXYpCnRhbmdlbmN5X3N0YXRzIDwtIHBvcnRmb2xpb19zdGF0aXN0aWNzKHRhbmdlbmN5KQp0YW5nZW5jeV9zaGFycGUgPC0gKAogIHRhbmdlbmN5X3N0YXRzWyJtZWFuIl0gLSByaXNrX2ZyZWVfcmF0ZQopIC8gdGFuZ2VuY3lfc3RhdHNbInZvbGF0aWxpdHkiXQoKcHJpbnQocm91bmQoZ212LCA0KSkKcHJpbnQocm91bmQoZ212X3N0YXRzLCA0KSkKcHJpbnQocm91bmQodGFuZ2VuY3ksIDQpKQpwcmludChyb3VuZChjKHRhbmdlbmN5X3N0YXRzLCBTaGFycGUgPSB0YW5nZW5jeV9zaGFycGUpLCA0KSkKCnNldC5zZWVkKDExMDIpCnJhd193ZWlnaHRzIDwtIG1hdHJpeChyZXhwKDMwMDAgKiAzKSwgbmNvbCA9IDMpCnJhbmRvbV93ZWlnaHRzIDwtIHJhd193ZWlnaHRzIC8gcm93U3VtcyhyYXdfd2VpZ2h0cykKcmFuZG9tX21lYW5zIDwtIGFzLnZlY3RvcihyYW5kb21fd2VpZ2h0cyAlKiUgZXhwZWN0ZWRfcmV0dXJucykKcmFuZG9tX3ZhcmlhbmNlcyA8LSByb3dTdW1zKChyYW5kb21fd2VpZ2h0cyAlKiUgY292YXJpYW5jZSkgKiByYW5kb21fd2VpZ2h0cykKcmFuZG9tX3ZvbGF0aWxpdGllcyA8LSBzcXJ0KHJhbmRvbV92YXJpYW5jZXMpCgpwbG90KAogIHJhbmRvbV92b2xhdGlsaXRpZXMsCiAgcmFuZG9tX21lYW5zLAogIHBjaCA9IDE2LAogIGNleCA9IDAuMzUsCiAgY29sID0gcmdiKDAsIDAsIDAsIDAuMiksCiAgeGxhYiA9ICJWb2xhdGlsaXR5IiwKICB5bGFiID0gIkV4cGVjdGVkIHJldHVybiIsCiAgbWFpbiA9ICJGZWFzaWJsZSBsb25nLW9ubHkgcG9ydGZvbGlvcyIKKQpwb2ludHMoZ212X3N0YXRzWyJ2b2xhdGlsaXR5Il0sIGdtdl9zdGF0c1sibWVhbiJdLCBwY2ggPSA4LCBjZXggPSAyKQpwb2ludHModGFuZ2VuY3lfc3RhdHNbInZvbGF0aWxpdHkiXSwgdGFuZ2VuY3lfc3RhdHNbIm1lYW4iXSwgcGNoID0gOCwgY2V4ID0gMiwgY29sID0gInJlZCIp layout: vertical locale: zh title: R:最小方差与切点组合 --- :: ### 修改任务 - 把第一与第三个资产的相关系数从 0.15 改为 0.80,观察分散化收益。 - 将预期收益都增加 2 个百分点,解释 GMV 权重为何不变而切点权重可能改变。 - 现实组合加入“不允许卖空”和单资产权重上限后,闭式解不再直接适用,需要约束优化。 ## 实验三:CAPM 时间序列回归 CAPM 常用时间序列回归检验: [[[]{.katex-mathml}[[[]{.strut style="height:1.0975em;vertical-align:-0.3831em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0975em;vertical-align:-0.3831em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[M]{.mord.mathnormal.mtight style="margin-right:0.109em;"}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 衡量资产对市场超额收益的暴露; [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是相对于该模型的平均定价误差。显著 alpha 可能来自错误定价,也可能来自遗漏风险、样本选择或标准误不当。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDExMDMpCm1vbnRocyA9IDI0MAp0cnVlX2FscGhhID0gMC4wMDEKdHJ1ZV9iZXRhID0gMS4yNQoKbWFya2V0X2V4Y2VzcyA9IHJuZy5ub3JtYWwobG9jPTAuMDA1LCBzY2FsZT0wLjA0NSwgc2l6ZT1tb250aHMpCmlkaW9zeW5jcmF0aWMgPSBybmcubm9ybWFsKHNjYWxlPTAuMDM1LCBzaXplPW1vbnRocykKYXNzZXRfZXhjZXNzID0gdHJ1ZV9hbHBoYSArIHRydWVfYmV0YSAqIG1hcmtldF9leGNlc3MgKyBpZGlvc3luY3JhdGljCgpYID0gc20uYWRkX2NvbnN0YW50KG1hcmtldF9leGNlc3MpCm1vZGVsID0gc20uT0xTKGFzc2V0X2V4Y2VzcywgWCkuZml0KGNvdl90eXBlPSJIQUMiLCBjb3Zfa3dkcz17Im1heGxhZ3MiOiA0fSkKCnByaW50KGYiVHJ1ZSBtb250aGx5IGFscGhhOiB7dHJ1ZV9hbHBoYTouNGZ9IikKcHJpbnQoZiJFc3RpbWF0ZWQgYWxwaGE6ICAgIHttb2RlbC5wYXJhbXNbMF06LjRmfSAoSEFDIFNFIHttb2RlbC5ic2VbMF06LjRmfSkiKQpwcmludChmIlRydWUgYmV0YTogICAgICAgICAge3RydWVfYmV0YTouM2Z9IikKcHJpbnQoZiJFc3RpbWF0ZWQgYmV0YTogICAgIHttb2RlbC5wYXJhbXNbMV06LjNmfSAoSEFDIFNFIHttb2RlbC5ic2VbMV06LjNmfSkiKQpwcmludChmIlItc3F1YXJlZDogICAgICAgICAge21vZGVsLnJzcXVhcmVkOi4zZn0iKQpwcmludChmIkFubnVhbGl6ZWQgYWxwaGEgYXBwcm94aW1hdGlvbjogezEyICogbW9kZWwucGFyYW1zWzBdOi4zJX0iKQoKZ3JpZCA9IG5wLmxpbnNwYWNlKG1hcmtldF9leGNlc3MubWluKCksIG1hcmtldF9leGNlc3MubWF4KCksIDEwMCkKcGx0LnNjYXR0ZXIobWFya2V0X2V4Y2VzcywgYXNzZXRfZXhjZXNzLCBhbHBoYT0wLjM1LCBzPTE4KQpwbHQucGxvdChncmlkLCBtb2RlbC5wYXJhbXNbMF0gKyBtb2RlbC5wYXJhbXNbMV0gKiBncmlkLCBjb2xvcj0icmVkIikKcGx0LnhsYWJlbCgiTWFya2V0IGV4Y2VzcyByZXR1cm4iKQpwbHQueWxhYmVsKCJBc3NldCBleGNlc3MgcmV0dXJuIikKcGx0LnRpdGxlKCJDQVBNIHRpbWUtc2VyaWVzIHJlZ3Jlc3Npb24iKQpwbHQuZ3JpZChhbHBoYT0wLjMpCnBsdC5zaG93KCk= layout: vertical locale: zh packages: numpy, statsmodels, matplotlib title: Python:CAPM 回归 --- :: ::web-r --- code64: c2V0LnNlZWQoMTEwMykKbW9udGhzIDwtIDI0MAp0cnVlX2FscGhhIDwtIDAuMDAxCnRydWVfYmV0YSA8LSAxLjI1CgptYXJrZXRfZXhjZXNzIDwtIHJub3JtKG1vbnRocywgbWVhbiA9IDAuMDA1LCBzZCA9IDAuMDQ1KQppZGlvc3luY3JhdGljIDwtIHJub3JtKG1vbnRocywgc2QgPSAwLjAzNSkKYXNzZXRfZXhjZXNzIDwtIHRydWVfYWxwaGEgKyB0cnVlX2JldGEgKiBtYXJrZXRfZXhjZXNzICsgaWRpb3N5bmNyYXRpYwoKbW9kZWwgPC0gbG0oYXNzZXRfZXhjZXNzIH4gbWFya2V0X2V4Y2VzcykKY29lZmZpY2llbnRfdGFibGUgPC0gc3VtbWFyeShtb2RlbCkkY29lZmZpY2llbnRzCgpwcmludChjKAogIHRydWVfbW9udGhseV9hbHBoYSA9IHRydWVfYWxwaGEsCiAgZXN0aW1hdGVkX2FscGhhID0gY29lZihtb2RlbClbIihJbnRlcmNlcHQpIl0sCiAgb3JkaW5hcnlfYWxwaGFfc2UgPSBjb2VmZmljaWVudF90YWJsZVsiKEludGVyY2VwdCkiLCAiU3RkLiBFcnJvciJdLAogIHRydWVfYmV0YSA9IHRydWVfYmV0YSwKICBlc3RpbWF0ZWRfYmV0YSA9IGNvZWYobW9kZWwpWyJtYXJrZXRfZXhjZXNzIl0sCiAgb3JkaW5hcnlfYmV0YV9zZSA9IGNvZWZmaWNpZW50X3RhYmxlWyJtYXJrZXRfZXhjZXNzIiwgIlN0ZC4gRXJyb3IiXSwKICBSX3NxdWFyZWQgPSBzdW1tYXJ5KG1vZGVsKSRyLnNxdWFyZWQsCiAgYW5udWFsaXplZF9hbHBoYV9hcHByb3hpbWF0aW9uID0gMTIgKiBjb2VmKG1vZGVsKVsiKEludGVyY2VwdCkiXQopKQoKcGxvdCgKICBtYXJrZXRfZXhjZXNzLAogIGFzc2V0X2V4Y2VzcywKICBwY2ggPSAxNiwKICBjb2wgPSByZ2IoMCwgMCwgMCwgMC4zNSksCiAgeGxhYiA9ICJNYXJrZXQgZXhjZXNzIHJldHVybiIsCiAgeWxhYiA9ICJBc3NldCBleGNlc3MgcmV0dXJuIiwKICBtYWluID0gIkNBUE0gdGltZS1zZXJpZXMgcmVncmVzc2lvbiIKKQphYmxpbmUobW9kZWwsIGNvbCA9ICJyZWQiLCBsd2QgPSAyKQ== layout: vertical locale: zh title: R:CAPM 回归 --- :: Python 示例报告 HAC 标准误,R 示例报告普通标准误,以提醒读者:系数相同不代表推断相同。真实月度收益可能有自相关和条件异方差,应根据数据结构选择 HAC、Bootstrap 或其他推断。 ## 实验四:多因子回归与遗漏风险 设测试资产由市场、规模、价值与动量因子驱动: [[[]{.katex-mathml}[[[]{.strut style="height:0.9614em;vertical-align:-0.247em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[M]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[M]{.mord.mathnormal style="margin-right:0.109em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[S]{.mord.mathnormal.mtight style="margin-right:0.0576em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[H]{.mord.mathnormal.mtight style="margin-right:0.0813em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[H]{.mord.mathnormal style="margin-right:0.0813em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[[L]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[U]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[M]{.mord.mathnormal style="margin-right:0.109em;"}[O]{.mord.mathnormal style="margin-right:0.0278em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若只估计 CAPM,遗漏且与市场相关的因子可能进入 alpha 或市场 beta。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZygxMTA0KQptb250aHMgPSAzNjAKCmZhY3Rvcl9jb3ZhcmlhbmNlID0gbnAuYXJyYXkoWwogICAgWzAuMDAyMCwgMC4wMDAzLCAtMC4wMDAyLCAtMC4wMDAxXSwKICAgIFswLjAwMDMsIDAuMDAxMiwgMC4wMDAyLCAwLjAwMDFdLAogICAgWy0wLjAwMDIsIDAuMDAwMiwgMC4wMDEwLCAtMC4wMDAyXSwKICAgIFstMC4wMDAxLCAwLjAwMDEsIC0wLjAwMDIsIDAuMDAxNV0sCl0pCmZhY3Rvcl9tZWFucyA9IG5wLmFycmF5KFswLjAwNSwgMC4wMDIsIDAuMDAzLCAwLjAwNF0pCmZhY3RvcnMgPSBybmcubXVsdGl2YXJpYXRlX25vcm1hbChmYWN0b3JfbWVhbnMsIGZhY3Rvcl9jb3ZhcmlhbmNlLCBzaXplPW1vbnRocykKdHJ1ZV9iZXRhcyA9IG5wLmFycmF5KFsxLjAsIDAuNiwgMC44LCAwLjVdKQphc3NldF9leGNlc3MgPSBmYWN0b3JzIEAgdHJ1ZV9iZXRhcyArIHJuZy5ub3JtYWwoc2NhbGU9MC4wMjUsIHNpemU9bW9udGhzKQoKY2FwbSA9IHNtLk9MUyhhc3NldF9leGNlc3MsIHNtLmFkZF9jb25zdGFudChmYWN0b3JzWzosIDBdKSkuZml0KGNvdl90eXBlPSJIQzEiKQpmb3VyX2ZhY3RvciA9IHNtLk9MUyhhc3NldF9leGNlc3MsIHNtLmFkZF9jb25zdGFudChmYWN0b3JzKSkuZml0KGNvdl90eXBlPSJIQzEiKQoKcHJpbnQoIlRydWUgYmV0YXM6IiwgdHJ1ZV9iZXRhcykKcHJpbnQoZiJDQVBNIGFscGhhPXtjYXBtLnBhcmFtc1swXTouNGZ9LCBSMj17Y2FwbS5yc3F1YXJlZDouM2Z9IikKcHJpbnQoZiJGb3VyLWZhY3RvciBhbHBoYT17Zm91cl9mYWN0b3IucGFyYW1zWzBdOi40Zn0sIFIyPXtmb3VyX2ZhY3Rvci5yc3F1YXJlZDouM2Z9IikKcHJpbnQoIkVzdGltYXRlZCBmb3VyLWZhY3RvciBiZXRhczoiLCBucC5yb3VuZChmb3VyX2ZhY3Rvci5wYXJhbXNbMTpdLCAzKSkKcHJpbnQoIlJvYnVzdCBiZXRhIFNFczoiLCBucC5yb3VuZChmb3VyX2ZhY3Rvci5ic2VbMTpdLCAzKSk= layout: vertical locale: zh packages: numpy, statsmodels title: Python:CAPM 与四因子模型比较 --- :: ::web-r --- code64: c2V0LnNlZWQoMTEwNCkKbW9udGhzIDwtIDM2MAoKZmFjdG9yX2NvdmFyaWFuY2UgPC0gbWF0cml4KGMoCiAgMC4wMDIwLCAwLjAwMDMsIC0wLjAwMDIsIC0wLjAwMDEsCiAgMC4wMDAzLCAwLjAwMTIsIDAuMDAwMiwgMC4wMDAxLAogIC0wLjAwMDIsIDAuMDAwMiwgMC4wMDEwLCAtMC4wMDAyLAogIC0wLjAwMDEsIDAuMDAwMSwgLTAuMDAwMiwgMC4wMDE1CiksIG5yb3cgPSA0LCBieXJvdyA9IFRSVUUpCmZhY3Rvcl9tZWFucyA8LSBjKDAuMDA1LCAwLjAwMiwgMC4wMDMsIDAuMDA0KQoKc3RhbmRhcmRfZHJhd3MgPC0gbWF0cml4KHJub3JtKG1vbnRocyAqIDQpLCBuY29sID0gNCkKZmFjdG9ycyA8LSBzdGFuZGFyZF9kcmF3cyAlKiUgY2hvbChmYWN0b3JfY292YXJpYW5jZSkKZmFjdG9ycyA8LSBzd2VlcChmYWN0b3JzLCAyLCBmYWN0b3JfbWVhbnMsICIrIikKY29sbmFtZXMoZmFjdG9ycykgPC0gYygiTUtUIiwgIlNNQiIsICJITUwiLCAiTU9NIikKCnRydWVfYmV0YXMgPC0gYygxLjAsIDAuNiwgMC44LCAwLjUpCmFzc2V0X2V4Y2VzcyA8LSBhcy52ZWN0b3IoZmFjdG9ycyAlKiUgdHJ1ZV9iZXRhcykgKyBybm9ybShtb250aHMsIHNkID0gMC4wMjUpCgpkYXRhIDwtIGRhdGEuZnJhbWUoYXNzZXRfZXhjZXNzLCBmYWN0b3JzKQpjYXBtIDwtIGxtKGFzc2V0X2V4Y2VzcyB+IE1LVCwgZGF0YSA9IGRhdGEpCmZvdXJfZmFjdG9yIDwtIGxtKGFzc2V0X2V4Y2VzcyB+IE1LVCArIFNNQiArIEhNTCArIE1PTSwgZGF0YSA9IGRhdGEpCgpwcmludCh0cnVlX2JldGFzKQpwcmludChjKAogIENBUE1fYWxwaGEgPSBjb2VmKGNhcG0pWyIoSW50ZXJjZXB0KSJdLAogIENBUE1fUjIgPSBzdW1tYXJ5KGNhcG0pJHIuc3F1YXJlZCwKICBmb3VyX2ZhY3Rvcl9hbHBoYSA9IGNvZWYoZm91cl9mYWN0b3IpWyIoSW50ZXJjZXB0KSJdLAogIGZvdXJfZmFjdG9yX1IyID0gc3VtbWFyeShmb3VyX2ZhY3Rvcikkci5zcXVhcmVkCikpCnByaW50KHJvdW5kKGNvZWYoZm91cl9mYWN0b3IpWy0xXSwgMykp layout: vertical locale: zh title: R:CAPM 与四因子模型比较 --- :: ### 模型比较边界 增加因子几乎总能提高样本内 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。更好的模型还应有经济机制、样本外表现、稳定风险价格和较小定价误差,并控制多重检验。因子数量多于可靠独立信息时,回归会过拟合。 ## 实验五:随机贴现因子与 Euler 方程 资产定价的统一条件是: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} CRRA 消费模型常设: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5613em;vertical-align:-0.95em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[γ]{.mord.mathnormal.mtight style="margin-right:0.0556em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.6112em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是相对风险厌恶系数。下面用网格搜索寻找使样本 Euler 误差最接近 0 的 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZygxMTA1KQpzYW1wbGVfc2l6ZSA9IDIwMDAKYmV0YSA9IDAuOTkKdHJ1ZV9nYW1tYSA9IDQuMAoKY29uc3VtcHRpb25fZ3Jvd3RoID0gbnAuZXhwKAogICAgcm5nLm5vcm1hbChsb2M9MC4wMDIsIHNjYWxlPTAuMDI1LCBzaXplPXNhbXBsZV9zaXplKQopCnRydWVfc2RmID0gYmV0YSAqIGNvbnN1bXB0aW9uX2dyb3d0aCAqKiAoLXRydWVfZ2FtbWEpCnByaWNpbmdfbm9pc2UgPSBybmcubm9ybWFsKGxvYz0wLjAsIHNjYWxlPTAuMDMsIHNpemU9c2FtcGxlX3NpemUpCmdyb3NzX3JldHVybiA9ICgxIC8gdHJ1ZV9zZGYpICogKDEgKyBwcmljaW5nX25vaXNlKQoKZ2FtbWFfZ3JpZCA9IG5wLmxpbnNwYWNlKDAuMCwgOC4wLCAxNjEpCmV1bGVyX2Vycm9ycyA9IG5wLmFycmF5KFsKICAgIG5wLm1lYW4oYmV0YSAqIGNvbnN1bXB0aW9uX2dyb3d0aCAqKiAoLWdhbW1hKSAqIGdyb3NzX3JldHVybikgLSAxCiAgICBmb3IgZ2FtbWEgaW4gZ2FtbWFfZ3JpZApdKQplc3RpbWF0ZWRfZ2FtbWEgPSBnYW1tYV9ncmlkW25wLmFyZ21pbihldWxlcl9lcnJvcnMgKiogMildCgpwcmludChmIlRydWUgZ2FtbWE6IHt0cnVlX2dhbW1hOi4yZn0iKQpwcmludChmIkdyaWQtc2VhcmNoIGdhbW1hOiB7ZXN0aW1hdGVkX2dhbW1hOi4yZn0iKQpwcmludChmIkV1bGVyIGVycm9yIGF0IGVzdGltYXRlOiB7ZXVsZXJfZXJyb3JzW25wLmFyZ21pbihldWxlcl9lcnJvcnMgKiogMildOi42Zn0iKQoKcGx0LnBsb3QoZ2FtbWFfZ3JpZCwgZXVsZXJfZXJyb3JzKQpwbHQuYXhobGluZSgwLCBjb2xvcj0iYmxhY2siLCBsaW5ld2lkdGg9MSkKcGx0LmF4dmxpbmUodHJ1ZV9nYW1tYSwgY29sb3I9InJlZCIsIGxpbmVzdHlsZT0iLS0iLCBsYWJlbD0iVHJ1ZSBnYW1tYSIpCnBsdC54bGFiZWwoIlJpc2stYXZlcnNpb24gcGFyYW1ldGVyIGdhbW1hIikKcGx0LnlsYWJlbCgiU2FtcGxlIEV1bGVyIGVycm9yIikKcGx0LmxlZ2VuZCgpCnBsdC5ncmlkKGFscGhhPTAuMykKcGx0LnNob3coKQ== layout: vertical locale: zh packages: numpy, matplotlib title: Python:SDF 矩条件网格搜索 --- :: ::web-r --- code64: c2V0LnNlZWQoMTEwNSkKc2FtcGxlX3NpemUgPC0gMjAwMApiZXRhIDwtIDAuOTkKdHJ1ZV9nYW1tYSA8LSA0LjAKCmNvbnN1bXB0aW9uX2dyb3d0aCA8LSBleHAocm5vcm0oc2FtcGxlX3NpemUsIG1lYW4gPSAwLjAwMiwgc2QgPSAwLjAyNSkpCnRydWVfc2RmIDwtIGJldGEgKiBjb25zdW1wdGlvbl9ncm93dGheKC10cnVlX2dhbW1hKQpwcmljaW5nX25vaXNlIDwtIHJub3JtKHNhbXBsZV9zaXplLCBtZWFuID0gMC4wLCBzZCA9IDAuMDMpCmdyb3NzX3JldHVybiA8LSAoMSAvIHRydWVfc2RmKSAqICgxICsgcHJpY2luZ19ub2lzZSkKCmdhbW1hX2dyaWQgPC0gc2VxKDAuMCwgOC4wLCBsZW5ndGgub3V0ID0gMTYxKQpldWxlcl9lcnJvcnMgPC0gc2FwcGx5KGdhbW1hX2dyaWQsIGZ1bmN0aW9uKGdhbW1hKSB7CiAgbWVhbihiZXRhICogY29uc3VtcHRpb25fZ3Jvd3RoXigtZ2FtbWEpICogZ3Jvc3NfcmV0dXJuKSAtIDEKfSkKZXN0aW1hdGVkX2dhbW1hIDwtIGdhbW1hX2dyaWRbd2hpY2gubWluKGV1bGVyX2Vycm9yc14yKV0KCnByaW50KGMoCiAgdHJ1ZV9nYW1tYSA9IHRydWVfZ2FtbWEsCiAgZ3JpZF9zZWFyY2hfZ2FtbWEgPSBlc3RpbWF0ZWRfZ2FtbWEsCiAgRXVsZXJfZXJyb3JfYXRfZXN0aW1hdGUgPSBldWxlcl9lcnJvcnNbd2hpY2gubWluKGV1bGVyX2Vycm9yc14yKV0KKSkKCnBsb3QoCiAgZ2FtbWFfZ3JpZCwKICBldWxlcl9lcnJvcnMsCiAgdHlwZSA9ICJsIiwKICB4bGFiID0gIlJpc2stYXZlcnNpb24gcGFyYW1ldGVyIGdhbW1hIiwKICB5bGFiID0gIlNhbXBsZSBFdWxlciBlcnJvciIsCiAgbWFpbiA9ICJTREYgbW9tZW50IGNvbmRpdGlvbiIKKQphYmxpbmUoaCA9IDApCmFibGluZSh2ID0gdHJ1ZV9nYW1tYSwgY29sID0gInJlZCIsIGx0eSA9IDIp layout: vertical locale: zh title: R:SDF 矩条件网格搜索 --- :: ### 研究生审计 这个模拟让收益按真 SDF 构造,因此模型设定正确。真实消费数据有测量误差、时间聚合和有限波动,单一矩条件也可能弱识别 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。正式 GMM 还要选择测试资产、工具变量和权重矩阵,并估计参数不确定性与过度识别检验。 ## 实验六:风险中性二叉树期权定价 在 Cox–Ross–Rubinstein 二叉树中: [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.26em;vertical-align:-0.1944em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[σ]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:3em;"}[[Δ]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail.mtight style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8923em;"}]{.vlist style="height:0.9323em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1077em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:1.0656em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0585em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2877em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[d]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[Δ]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8413em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[d]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.5183em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 欧式看涨期权终值为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[max]{.mop}[(]{.mopen}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,然后按风险中性概率逐层贴现。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmZyb20gc2NpcHkgaW1wb3J0IHN0YXRzCgpkZWYgYmlub21pYWxfY2FsbChzcG90LCBzdHJpa2UsIHJhdGUsIHZvbGF0aWxpdHksIG1hdHVyaXR5LCBzdGVwcyk6CiAgICBkdCA9IG1hdHVyaXR5IC8gc3RlcHMKICAgIHVwID0gbnAuZXhwKHZvbGF0aWxpdHkgKiBucC5zcXJ0KGR0KSkKICAgIGRvd24gPSAxIC8gdXAKICAgIHByb2JhYmlsaXR5ID0gKG5wLmV4cChyYXRlICogZHQpIC0gZG93bikgLyAodXAgLSBkb3duKQoKICAgIG5vZGVzID0gbnAuYXJhbmdlKHN0ZXBzICsgMSkKICAgIHRlcm1pbmFsX3Nwb3QgPSBzcG90ICogdXAgKiogbm9kZXMgKiBkb3duICoqIChzdGVwcyAtIG5vZGVzKQogICAgb3B0aW9uID0gbnAubWF4aW11bSh0ZXJtaW5hbF9zcG90IC0gc3RyaWtlLCAwLjApCgogICAgZGlzY291bnQgPSBucC5leHAoLXJhdGUgKiBkdCkKICAgIGZvciBfIGluIHJhbmdlKHN0ZXBzKToKICAgICAgICBvcHRpb24gPSBkaXNjb3VudCAqICgKICAgICAgICAgICAgcHJvYmFiaWxpdHkgKiBvcHRpb25bMTpdICsgKDEgLSBwcm9iYWJpbGl0eSkgKiBvcHRpb25bOi0xXQogICAgICAgICkKICAgIHJldHVybiBmbG9hdChvcHRpb25bMF0pCgpkZWYgYmxhY2tfc2Nob2xlc19jYWxsKHNwb3QsIHN0cmlrZSwgcmF0ZSwgdm9sYXRpbGl0eSwgbWF0dXJpdHkpOgogICAgZDEgPSAoCiAgICAgICAgbnAubG9nKHNwb3QgLyBzdHJpa2UpCiAgICAgICAgKyAocmF0ZSArIDAuNSAqIHZvbGF0aWxpdHkqKjIpICogbWF0dXJpdHkKICAgICkgLyAodm9sYXRpbGl0eSAqIG5wLnNxcnQobWF0dXJpdHkpKQogICAgZDIgPSBkMSAtIHZvbGF0aWxpdHkgKiBucC5zcXJ0KG1hdHVyaXR5KQogICAgcmV0dXJuICgKICAgICAgICBzcG90ICogc3RhdHMubm9ybS5jZGYoZDEpCiAgICAgICAgLSBzdHJpa2UgKiBucC5leHAoLXJhdGUgKiBtYXR1cml0eSkgKiBzdGF0cy5ub3JtLmNkZihkMikKICAgICkKCnNwb3QgPSAxMDAKc3RyaWtlID0gMTAwCnJhdGUgPSAwLjAzCnZvbGF0aWxpdHkgPSAwLjIwCm1hdHVyaXR5ID0gMS4wCgpmb3Igc3RlcHMgaW4gWzEsIDUsIDI1LCAxMDAsIDMwMF06CiAgICBwcmljZSA9IGJpbm9taWFsX2NhbGwoc3BvdCwgc3RyaWtlLCByYXRlLCB2b2xhdGlsaXR5LCBtYXR1cml0eSwgc3RlcHMpCiAgICBwcmludChmInN0ZXBzPXtzdGVwczozZH0sIGJpbm9taWFsIGNhbGw9e3ByaWNlOi41Zn0iKQoKY2xvc2VkX2Zvcm0gPSBibGFja19zY2hvbGVzX2NhbGwoc3BvdCwgc3RyaWtlLCByYXRlLCB2b2xhdGlsaXR5LCBtYXR1cml0eSkKcHJpbnQoZiJCbGFjay1TY2hvbGVzIGNhbGw9e2Nsb3NlZF9mb3JtOi41Zn0iKQ== layout: vertical locale: zh packages: numpy, scipy title: Python:二叉树与 Black–Scholes 对照 --- :: ::web-r --- code64: Ymlub21pYWxfY2FsbCA8LSBmdW5jdGlvbihzcG90LCBzdHJpa2UsIHJhdGUsIHZvbGF0aWxpdHksIG1hdHVyaXR5LCBzdGVwcykgewogIGR0IDwtIG1hdHVyaXR5IC8gc3RlcHMKICB1cCA8LSBleHAodm9sYXRpbGl0eSAqIHNxcnQoZHQpKQogIGRvd24gPC0gMSAvIHVwCiAgcHJvYmFiaWxpdHkgPC0gKGV4cChyYXRlICogZHQpIC0gZG93bikgLyAodXAgLSBkb3duKQoKICBub2RlcyA8LSAwOnN0ZXBzCiAgdGVybWluYWxfc3BvdCA8LSBzcG90ICogdXBebm9kZXMgKiBkb3duXihzdGVwcyAtIG5vZGVzKQogIG9wdGlvbiA8LSBwbWF4KHRlcm1pbmFsX3Nwb3QgLSBzdHJpa2UsIDApCiAgZGlzY291bnQgPC0gZXhwKC1yYXRlICogZHQpCgogIGZvciAobGV2ZWwgaW4gc3RlcHM6MSkgewogICAgb3B0aW9uIDwtIGRpc2NvdW50ICogKAogICAgICBwcm9iYWJpbGl0eSAqIG9wdGlvblsyOmxlbmd0aChvcHRpb24pXQogICAgICArICgxIC0gcHJvYmFiaWxpdHkpICogb3B0aW9uWzE6KGxlbmd0aChvcHRpb24pIC0gMSldCiAgICApCiAgfQogIG9wdGlvblsxXQp9CgpibGFja19zY2hvbGVzX2NhbGwgPC0gZnVuY3Rpb24oc3BvdCwgc3RyaWtlLCByYXRlLCB2b2xhdGlsaXR5LCBtYXR1cml0eSkgewogIGQxIDwtICgKICAgIGxvZyhzcG90IC8gc3RyaWtlKQogICAgKyAocmF0ZSArIDAuNSAqIHZvbGF0aWxpdHleMikgKiBtYXR1cml0eQogICkgLyAodm9sYXRpbGl0eSAqIHNxcnQobWF0dXJpdHkpKQogIGQyIDwtIGQxIC0gdm9sYXRpbGl0eSAqIHNxcnQobWF0dXJpdHkpCiAgc3BvdCAqIHBub3JtKGQxKSAtIHN0cmlrZSAqIGV4cCgtcmF0ZSAqIG1hdHVyaXR5KSAqIHBub3JtKGQyKQp9CgpzcG90IDwtIDEwMApzdHJpa2UgPC0gMTAwCnJhdGUgPC0gMC4wMwp2b2xhdGlsaXR5IDwtIDAuMjAKbWF0dXJpdHkgPC0gMS4wCgpzdGVwc19ncmlkIDwtIGMoMSwgNSwgMjUsIDEwMCwgMzAwKQpwcmljZXMgPC0gc2FwcGx5KHN0ZXBzX2dyaWQsIGZ1bmN0aW9uKHN0ZXBzKSB7CiAgYmlub21pYWxfY2FsbChzcG90LCBzdHJpa2UsIHJhdGUsIHZvbGF0aWxpdHksIG1hdHVyaXR5LCBzdGVwcykKfSkKcHJpbnQoZGF0YS5mcmFtZShzdGVwcyA9IHN0ZXBzX2dyaWQsIGJpbm9taWFsX2NhbGwgPSByb3VuZChwcmljZXMsIDUpKSkKcHJpbnQoYygKICBCbGFja19TY2hvbGVzX2NhbGwgPSBibGFja19zY2hvbGVzX2NhbGwoCiAgICBzcG90LCBzdHJpa2UsIHJhdGUsIHZvbGF0aWxpdHksIG1hdHVyaXR5CiAgKQopKQ== layout: vertical locale: zh title: R:二叉树与 Black–Scholes 对照 --- :: ### 修改任务 - 把波动率从 20% 提高到 40%,解释看涨期权价值为何上升。 - 修改执行价,比较实值、平值和虚值期权。 - 检查 [[]{.katex-mathml}[[[]{.strut style="height:0.6835em;vertical-align:-0.0391em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ;若不满足,树参数与无套利条件不兼容。 - 欧式二叉树随步数增加趋近 Black–Scholes,并不表示市场真实满足连续对冲和常波动率假设。 ## 实验七:债券久期与凸性 固定票息债券价格为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0954em;vertical-align:-1.2671em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8829em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2671em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.7196em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Macaulay 久期是现金流时间的现值加权平均: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[M]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1257em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1308em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.1667em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[F]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.6897em;"}]{.vlist style="height:1.4397em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 修正久期 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[m]{.mord.mathnormal.mtight}[o]{.mord.mathnormal.mtight}[d]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[M]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 给出一阶价格敏感性,凸性提供二阶修正: [[[]{.katex-mathml}[[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[Δ]{.mord}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[−]{.mord}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[m]{.mord.mathnormal.mtight}[o]{.mord.mathnormal.mtight}[d]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Δ]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[o]{.mord.mathnormal}[n]{.mord.mathnormal}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[e]{.mord.mathnormal}[x]{.mord.mathnormal}[i]{.mord.mathnormal}[t]{.mord.mathnormal}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[Δ]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpmYWNlX3ZhbHVlID0gMTAwLjAKY291cG9uX3JhdGUgPSAwLjA1CnlpZWxkX3RvX21hdHVyaXR5ID0gMC4wNAptYXR1cml0eSA9IDcKCmNhc2hfZmxvd3MgPSBucC5mdWxsKG1hdHVyaXR5LCBmYWNlX3ZhbHVlICogY291cG9uX3JhdGUpCmNhc2hfZmxvd3NbLTFdICs9IGZhY2VfdmFsdWUKdGltZXMgPSBucC5hcmFuZ2UoMSwgbWF0dXJpdHkgKyAxKQoKZGVmIGJvbmRfcHJpY2UoeWllbGRfcmF0ZSk6CiAgICByZXR1cm4gbnAuc3VtKGNhc2hfZmxvd3MgLyAoMSArIHlpZWxkX3JhdGUpICoqIHRpbWVzKQoKcHJpY2UgPSBib25kX3ByaWNlKHlpZWxkX3RvX21hdHVyaXR5KQpwcmVzZW50X3ZhbHVlcyA9IGNhc2hfZmxvd3MgLyAoMSArIHlpZWxkX3RvX21hdHVyaXR5KSAqKiB0aW1lcwptYWNhdWxheV9kdXJhdGlvbiA9IG5wLnN1bSh0aW1lcyAqIHByZXNlbnRfdmFsdWVzKSAvIHByaWNlCm1vZGlmaWVkX2R1cmF0aW9uID0gbWFjYXVsYXlfZHVyYXRpb24gLyAoMSArIHlpZWxkX3RvX21hdHVyaXR5KQpjb252ZXhpdHkgPSBucC5zdW0oCiAgICB0aW1lcyAqICh0aW1lcyArIDEpICogY2FzaF9mbG93cwogICAgLyAoMSArIHlpZWxkX3RvX21hdHVyaXR5KSAqKiAodGltZXMgKyAyKQopIC8gcHJpY2UKCnlpZWxkX2NoYW5nZSA9IDAuMDEKZXhhY3RfbmV3X3ByaWNlID0gYm9uZF9wcmljZSh5aWVsZF90b19tYXR1cml0eSArIHlpZWxkX2NoYW5nZSkKZHVyYXRpb25fYXBwcm94aW1hdGlvbiA9IHByaWNlICogKDEgLSBtb2RpZmllZF9kdXJhdGlvbiAqIHlpZWxkX2NoYW5nZSkKZHVyYXRpb25fY29udmV4aXR5X2FwcHJveGltYXRpb24gPSBwcmljZSAqICgKICAgIDEKICAgIC0gbW9kaWZpZWRfZHVyYXRpb24gKiB5aWVsZF9jaGFuZ2UKICAgICsgMC41ICogY29udmV4aXR5ICogeWllbGRfY2hhbmdlKioyCikKCnByaW50KGYiUHJpY2U6IHtwcmljZTouNGZ9IikKcHJpbnQoZiJNYWNhdWxheSBkdXJhdGlvbjoge21hY2F1bGF5X2R1cmF0aW9uOi40Zn0iKQpwcmludChmIk1vZGlmaWVkIGR1cmF0aW9uOiB7bW9kaWZpZWRfZHVyYXRpb246LjRmfSIpCnByaW50KGYiQ29udmV4aXR5OiB7Y29udmV4aXR5Oi40Zn0iKQpwcmludChmIkV4YWN0IHByaWNlIGFmdGVyICsxMDAgYnA6IHtleGFjdF9uZXdfcHJpY2U6LjRmfSIpCnByaW50KGYiRHVyYXRpb24tb25seSBhcHByb3hpbWF0aW9uOiB7ZHVyYXRpb25fYXBwcm94aW1hdGlvbjouNGZ9IikKcHJpbnQoZiJEdXJhdGlvbiArIGNvbnZleGl0eSBhcHByb3hpbWF0aW9uOiB7ZHVyYXRpb25fY29udmV4aXR5X2FwcHJveGltYXRpb246LjRmfSIp layout: vertical locale: zh packages: numpy title: Python:债券价格、久期与凸性 --- :: ::web-r --- code64: ZmFjZV92YWx1ZSA8LSAxMDAuMApjb3Vwb25fcmF0ZSA8LSAwLjA1CnlpZWxkX3RvX21hdHVyaXR5IDwtIDAuMDQKbWF0dXJpdHkgPC0gNwoKY2FzaF9mbG93cyA8LSByZXAoZmFjZV92YWx1ZSAqIGNvdXBvbl9yYXRlLCBtYXR1cml0eSkKY2FzaF9mbG93c1ttYXR1cml0eV0gPC0gY2FzaF9mbG93c1ttYXR1cml0eV0gKyBmYWNlX3ZhbHVlCnRpbWVzIDwtIDE6bWF0dXJpdHkKCmJvbmRfcHJpY2UgPC0gZnVuY3Rpb24oeWllbGRfcmF0ZSkgewogIHN1bShjYXNoX2Zsb3dzIC8gKDEgKyB5aWVsZF9yYXRlKV50aW1lcykKfQoKcHJpY2UgPC0gYm9uZF9wcmljZSh5aWVsZF90b19tYXR1cml0eSkKcHJlc2VudF92YWx1ZXMgPC0gY2FzaF9mbG93cyAvICgxICsgeWllbGRfdG9fbWF0dXJpdHkpXnRpbWVzCm1hY2F1bGF5X2R1cmF0aW9uIDwtIHN1bSh0aW1lcyAqIHByZXNlbnRfdmFsdWVzKSAvIHByaWNlCm1vZGlmaWVkX2R1cmF0aW9uIDwtIG1hY2F1bGF5X2R1cmF0aW9uIC8gKDEgKyB5aWVsZF90b19tYXR1cml0eSkKY29udmV4aXR5IDwtIHN1bSgKICB0aW1lcyAqICh0aW1lcyArIDEpICogY2FzaF9mbG93cwogIC8gKDEgKyB5aWVsZF90b19tYXR1cml0eSleKHRpbWVzICsgMikKKSAvIHByaWNlCgp5aWVsZF9jaGFuZ2UgPC0gMC4wMQpleGFjdF9uZXdfcHJpY2UgPC0gYm9uZF9wcmljZSh5aWVsZF90b19tYXR1cml0eSArIHlpZWxkX2NoYW5nZSkKZHVyYXRpb25fYXBwcm94aW1hdGlvbiA8LSBwcmljZSAqICgxIC0gbW9kaWZpZWRfZHVyYXRpb24gKiB5aWVsZF9jaGFuZ2UpCmR1cmF0aW9uX2NvbnZleGl0eV9hcHByb3hpbWF0aW9uIDwtIHByaWNlICogKAogIDEKICAtIG1vZGlmaWVkX2R1cmF0aW9uICogeWllbGRfY2hhbmdlCiAgKyAwLjUgKiBjb252ZXhpdHkgKiB5aWVsZF9jaGFuZ2VeMgopCgpwcmludChjKAogIHByaWNlID0gcHJpY2UsCiAgTWFjYXVsYXlfZHVyYXRpb24gPSBtYWNhdWxheV9kdXJhdGlvbiwKICBtb2RpZmllZF9kdXJhdGlvbiA9IG1vZGlmaWVkX2R1cmF0aW9uLAogIGNvbnZleGl0eSA9IGNvbnZleGl0eSwKICBleGFjdF9wcmljZV9hZnRlcl8xMDBicCA9IGV4YWN0X25ld19wcmljZSwKICBkdXJhdGlvbl9vbmx5ID0gZHVyYXRpb25fYXBwcm94aW1hdGlvbiwKICBkdXJhdGlvbl9wbHVzX2NvbnZleGl0eSA9IGR1cmF0aW9uX2NvbnZleGl0eV9hcHByb3hpbWF0aW9uCikp layout: vertical locale: zh title: R:债券价格、久期与凸性 --- :: ### 解释边界 久期和凸性假设收益率曲线平行移动,并把信用、流动性、期权性与基差风险压缩为单一收益率变化。含赎回权、抵押贷款支持证券或信用风险的债券需要情景、有效久期或结构模型。 ## 综合项目 选择一条主线完成项目: ### 本科项目 1. 复现至少三个实验; 2. 每个实验修改两个参数并解释方向; 3. 用 Python 与 R 对照结果; 4. 写清楚现金流、收益率、频率和单位; 5. 区分模型结论与真实投资建议。 ### 研究生项目 1. 选择 CAPM、因子、SDF、期权或固定收益模型; 2. 写出定价限制、estimand 和估计方程; 3. 做 Monte Carlo 或真实数据复现; 4. 报告稳健/HAC/Bootstrap 推断和样本外结果; 5. 讨论弱识别、多重检验、交易成本与模型不确定性; 6. 提交数据字典、环境说明、代码、日志和研究报告。 ## 进一步阅读 - Cochrane, *Asset Pricing*:SDF、Euler 方程与 GMM 的统一框架; - Campbell, Lo and MacKinlay, *The Econometrics of Financial Markets*; - Bodie, Kane and Marcus, *Investments*:本科组合与 CAPM 主线; - Hull, *Options, Futures, and Other Derivatives*; - Campbell, *Financial Decisions and Markets*; - Gibbons, Ross and Shanken (1989):多资产 alpha 的联合检验; - Harvey, Liu and Zhu (2016):因子发现与多重检验。 [返回资产定价首页](https://www.pengjiaxin.com/../) · [进入实证与数值方法](https://www.pengjiaxin.com/../10-empirical/) # 第十二章:前沿文献与现代资产定价案例(2023—2026) []{#第十二章前沿文献与现代资产定价案例20232026} 现代资产定价面对的困难已经不只是“CAPM 是否成立”。研究者同时拥有数百个公司特征、大量宏观时间序列、文本披露和灵活机器学习模型。候选变量越多,拟合能力越强,越需要无套利约束、样本外评价、复现设计与经济机制来防止把噪声包装成风险溢价。 本章用三篇同行评议论文与两篇 2026 年工作论文建立一条完整链条:深度网络怎样进入随机贴现因子;“因子动物园”怎样做复现;气候文本怎样转化为风险暴露;机器学习预测怎样进入组合决策;语言模型怎样满足历史信息边界。材料检索截至 **2026 年 8 月 1 日**,属于课程定向更新,不是穷尽式综述。代码使用合成收益率,不构成投资建议或论文复现。 ## 学习目标 完成本章后,你应能够: 1. 把机器学习资产定价重新写回随机贴现因子与 Euler 方程; 2. 区分收益预测、定价误差、Sharpe 比率和经济机制; 3. 解释大量候选因子为何同时带来多重检验与共同主题信息; 4. 设计发现样本、验证样本与跨市场复现; 5. 说明文本暴露变量的构造效度、测量误差和定价解释; 6. 避免把样本内最优模型、文本提及次数或显著 alpha 直接当成可交易因果结论。 7. 识别工作论文的证据状态,并审计语言模型是否真正 point-in-time。 ## 案例一:深度学习不是无套利条件的替代品 ### 1. 统一起点:随机贴现因子 任何资产 [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的超额收益 [[]{.katex-mathml}[[[]{.strut style="height:1.0781em;vertical-align:-0.3948em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4413em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6644em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3948em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 在正确随机贴现因子 [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 下满足: [[[]{.katex-mathml}[[[]{.strut style="height:1.1331em;vertical-align:-0.3831em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3831em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 传统线性因子模型令: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[a]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0102em;vertical-align:-0.2083em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若公司特征与宏观状态很多,线性形式可能漏掉非线性和交互。深度学习的合理角色,是用灵活函数近似条件 SDF 或组合权重: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 而训练目标仍要回到矩条件、定价误差或与之等价的经济准则。 ### 2. Chen、Pelger 与 Zhu 的研究设计 Chen、Pelger 与 Zhu(2023 年在线发表,刊于 2024 年 *Management Science* 70 卷)用深度神经网络估计个股收益的条件资产定价模型。论文的两项关键设计是: 1. 以无套利条件为准则,并通过对抗式方法构造信息量较高的测试资产; 2. 从大量宏观时间序列中提取经济状态,使条件关系能够随时间变化。 论文报告其模型在所研究样本的样本外 Sharpe 比率、解释变异和定价误差上优于基准方法。正确表述是“在论文设定的样本、资产、信息集和评价指标下优于基准”,不是“深度网络已经发现真实 SDF”。 ### 3. 对抗测试资产的直觉 若只在容易定价的组合上检查模型,错误 SDF 也可能看起来很好。对抗网络可被理解为寻找一个组合 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,使当前 SDF 的矩条件违背尽可能明显: [[[]{.katex-mathml}[[[]{.strut style="height:1.55em;vertical-align:-0.7em;"}[[[[[[]{.pstrut style="height:3em;"}[[w]{.mord.mathnormal.mtight style="margin-right:0.0269em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[[]{.pstrut style="height:3.2em;"}[]{style="width:0.333em;height:1.2em;"}]{style="top:-2.85em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0077em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[[[[[[[]{.pstrut style="height:3.2em;"}[]{style="width:0.333em;height:1.2em;"}]{style="top:-2.85em;"}]{.vlist style="height:0.85em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.35em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} SDF 网络则努力最小化最难测试资产上的定价误差。这与 GMM 中选择有信息矩条件的思想相连;“对抗”不是脱离经济学的黑盒竞争。 ### 4. 本科生与研究生的不同要求 本科生应能解释:模型预测高收益不等于该收益是风险补偿,交易成本和不可实现信息也会降低可交易性。研究生还应检查: - 测试资产是否用验证数据构造,是否引入数据窥视; - 超参数和早停是否只在训练/验证集选择; - Sharpe 比率是否经过选择偏误和估计误差校正; - 定价误差的经济量级是否优于简单模型; - 模型在不同时期、市场和交易成本下是否稳定; - 隐状态与风险机制是否具有可解释、可证伪的对应关系。 ## 案例二:因子动物园究竟是危机还是信息 ### 1. 多重检验的经典担忧 假设研究者检验 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 个真实 alpha 均为零的因子,每个检验使用 5% 显著性水平。若检验近似独立,至少出现一个假阳性的概率为: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1413em;vertical-align:-0.25em;"}[0.05]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[M]{.mord.mathnormal.mtight style="margin-right:0.109em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 时,该概率约为 99.4%。即使因子相关,挑选最大的 t 统计量仍产生严重选择偏误。发现样本中的显著性因此必须与样本外复现、经济先验和联合建模结合。 ### 2. Jensen、Kelly 与 Pedersen 的不同观点 Jensen、Kelly 与 Pedersen(2023)构建了覆盖 93 个国家、153 个因子的全球数据,并用贝叶斯因子复现模型重新评价“复现危机”。论文报告:多数因子可以复现,候选因子可聚为 13 个主题,多数主题进入切点组合,并在新的全球数据中表现出样本外证据。 他们的重要论点是:大量相似因子不一定只是独立的数据挖掘尝试,也可能是同一潜在经济主题的多种噪声测量。若价值、动量或质量主题有许多相关代理变量,联合层级模型可以从横截面共享信息。 ### 3. 为什么这不等于“所有因子都可信” 论文的结论来自特定贝叶斯先验、聚类、数据清理和复现定义。频率学多重检验与贝叶斯层级模型回答的问题不同:前者控制重复抽样错误率,后者在给定先验和似然下更新主题与因子可信度。高质量报告应同时给出: - 原始研究定义与可复现实现; - 发现样本、时间外与市场外结果; - 因子之间的相关和主题结构; - 交易成本、换手率、可卖空性和容量; - 多重检验、选择后推断或层级收缩; - 对替代构造、断点日期和微盘股处理的敏感性。 ### 4. 一个实用的三层证据标准 | 层级 | 问题 | 最低证据 | | --- | ----------- | ---------------- | | 统计层 | 平均收益是否区别于噪声 | 置信区间、多重检验、选择后校正 | | 复现层 | 换时期或市场是否仍存在 | 预先声明的样本外复现 | | 经济层 | 为什么应获得风险补偿 | 风险、摩擦或行为机制及可证伪预测 | 某因子可以通过前两层却仍缺乏清楚机制;也可能具有强理论动机但当前估计不精确。两种情况都不应被简化成“有效/无效”二元标签。 ## 案例三:把气候讨论转成公司层面风险暴露 ### 1. 研究问题 行业碳排放或 ESG 评级通常变化慢,难以捕捉一家企业在某个季度面对的具体转型机会、实体风险和监管风险。Sautner、van Lent、Vilkov 与 Zhang(2023)使用上市公司季度业绩电话会议文本,构造随时间变化的公司气候暴露。 论文将机器学习关键词发现算法用于气候相关词组,分别捕捉: - **机会暴露**:绿色技术、产品需求和转型机会; - **实体风险**:极端天气、资产受损和供应中断; - **监管风险**:碳政策、合规与转型成本。 最终指标可理解为相关 bigram 在电话会议文本中的相对频率,并对季度序列做适当平滑。 ### 2. 构造效度比回归显著更先 一个文本指标进入资产定价回归前,至少需要四类验证: 1. **内容效度**:被算法发现的词组是否真的表达气候暴露? 2. **收敛效度**:指标是否与已知排放、行业风险或气候事件合理相关? 3. **区分效度**:它能否区分机会、实体和监管,而不只是一般风险语气? 4. **预测/结果效度**:它是否预测绿色专利、绿色技术就业或市场定价对象? 论文的全球样本包含 34 个国家、逾 10,000 家企业,覆盖 2002—2020 年。作者报告指标可预测净零转型相关的实际结果,并包含期权和股票市场定价信息。 ### 3. “被定价”不自动等于因果风险溢价 若高暴露公司具有不同收益,可有多种解释: - 投资者要求承担气候风险的补偿; - 暴露预示未来现金流变化; - 文本披露反映管理层注意力或信息环境; - 指标与行业、规模、盈利或政策周期共同变化; - 期权价格反映尾部风险和预期波动,而非平均收益溢价。 所以需要分别检验现金流渠道、贴现率渠道、事件响应和横截面预期收益,而不能把一个显著系数统称为“气候风险被定价”。 ### 4. 研究生扩展 研究生可以先按文本暴露 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 构造可交易或可检验的气候因子收益 [[]{.katex-mathml}[[[]{.strut style="height:1.1555em;vertical-align:-0.3064em;"}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:-0.1076em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[c]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[ima]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}[e]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3064em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,再把它放入对所有资产共同的 SDF: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.2044em;vertical-align:-0.3053em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[f]{.mord.mathnormal style="margin-right:0.1076em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1076em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[c]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[ima]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}[e]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.3053em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 在这里进入组合形成或测试资产,而不是让每只资产拥有不同的 SDF。研究者必须解决 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是资产特征还是风险暴露、气候创新如何构造、横截面和时间序列识别怎样分开,以及文本测量误差会如何衰减或扭曲风险价格。 ## 案例四:2026 年的两条方法提醒 ### 1. 预测误差要按最终决策的代价衡量 Wang、Gao、Harvey、Liu 与 Tao(2026)的 NBER 工作论文 *Machine Learning Meets Markowitz* 质疑常见的“两步法”:先让预测模型最小化所有资产的平均误差,再把预测收益送入组合优化器。若某些资产因风险约束、卖空成本或投资者偏好获得很大权重,它们的预测误差对最终效用更重要;普通预测损失却把各资产误差近似等量看待。 | 两步法 | 决策一体化思路 | | --------------- | --------------- | | 先优化预测指标,再优化组合 | 用最终组合目标反向约束预测 | | 预测误差权重与投资者无关 | 误差代价随偏好、约束和摩擦变化 | | 较低 RMSE 被当作主要胜利 | 还要看样本外效用、换手和风险 | 这不表示任何端到端网络都优于传统方法。更灵活的目标也更容易过拟合,且该文截至资料日是 **NBER 工作论文**,应把结果表述为尚待进一步同行评议与独立复现的研究证据。 ### 2. “只把旧文本放进提示词”仍可能穿越 Kelly、Malamud、Schwab 与 Xu(2026)的 NBER 工作论文 *Scaling Point-in-Time Language Models* 指出:使用不受时间限制的互联网语料训练的语言模型,参数中可能已经编码未来信息。研究者即使只向模型输入 2017 年年报,也不能据此断言模型在模拟“2017 年投资者的信息集”。 他们按日历时间过滤训练语料并构造一系列历史模型检查点,目标是从模型训练阶段消除这种泄漏。对资产定价回测,最小审计表应包括: | 对象 | 必须记录 | | ---- | ------------------ | | 原始文本 | 发布日期、时区、修订与可获得时间 | | 模型 | 训练语料截止日、检查点与后续微调数据 | | 特征 | 第一次可计算日期,而非数据库当前日期 | | 证券集合 | 当时可见的上市、退市和成分信息 | | 交易 | 信号形成、下单、成交与成本假设 | ::warning{title="最小反例"} 用 2026 年通用语言模型重新编码 2017 年公告,可以做“今天回看历史文本”的研究;若没有证明模型参数满足 2017 年信息边界,就不能把它包装成 2017 年可实时实施的策略回测。 :: ## 浏览器实验:200 个候选因子与样本外复现 下面模拟 200 个候选月度因子,其中前 5 个具有正的真实月均收益,其余为零。我们在前 120 个月选择 t 统计量最大的因子,再在后 120 个月复核。一次运行不能证明一般规律;3 个输出问题分别是:发现样本有多少“显著因子”、赢家是否是真因子、复核是否保持同方向和显著。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMTIyMDI2KQptb250aHMgPSAyNDAKY2FuZGlkYXRlcyA9IDIwMApkaXNjb3ZlcnlfbW9udGhzID0gbW9udGhzIC8vIDIKCnRydWVfbWVhbiA9IG5wLnplcm9zKGNhbmRpZGF0ZXMpCnRydWVfbWVhbls6NV0gPSBucC5hcnJheShbMC4wMDksIDAuMDA4LCAwLjAwNywgMC4wMDYsIDAuMDA1XSkKbW9udGhseV9yZXR1cm5zID0gdHJ1ZV9tZWFuICsgcm5nLm5vcm1hbCgKICAgIHNjYWxlPTAuMDQsIHNpemU9KG1vbnRocywgY2FuZGlkYXRlcykKKQoKZGVmIHRfc3RhdGlzdGljcyhzYW1wbGUpOgogICAgbWVhbiA9IHNhbXBsZS5tZWFuKGF4aXM9MCkKICAgIHN0YW5kYXJkX2Vycm9yID0gc2FtcGxlLnN0ZChheGlzPTAsIGRkb2Y9MSkgLyBucC5zcXJ0KHNhbXBsZS5zaGFwZVswXSkKICAgIHJldHVybiBtZWFuIC8gc3RhbmRhcmRfZXJyb3IKCnRfZGlzY292ZXJ5ID0gdF9zdGF0aXN0aWNzKG1vbnRobHlfcmV0dXJuc1s6ZGlzY292ZXJ5X21vbnRoc10pCnRfdmFsaWRhdGlvbiA9IHRfc3RhdGlzdGljcyhtb250aGx5X3JldHVybnNbZGlzY292ZXJ5X21vbnRoczpdKQp3aW5uZXIgPSBucC5hcmdtYXgodF9kaXNjb3ZlcnkpCgpzaWduaWZpY2FudF9kaXNjb3ZlcnkgPSBucC5hYnModF9kaXNjb3ZlcnkpID4gMS45NgpyZXBsaWNhdGVkID0gKAogICAgc2lnbmlmaWNhbnRfZGlzY292ZXJ5CiAgICAmIChucC5zaWduKHRfZGlzY292ZXJ5KSA9PSBucC5zaWduKHRfdmFsaWRhdGlvbikpCiAgICAmIChucC5hYnModF92YWxpZGF0aW9uKSA+IDEuOTYpCikKCnByaW50KGYiQ2FuZGlkYXRlcyBzaWduaWZpY2FudCBpbiBkaXNjb3Zlcnkgc2FtcGxlOiB7c2lnbmlmaWNhbnRfZGlzY292ZXJ5LnN1bSgpfSIpCnByaW50KGYiQ2FuZGlkYXRlcyBhbHNvIHNpZ25pZmljYW50IHdpdGggc2FtZSBzaWduIGluIHZhbGlkYXRpb246IHtyZXBsaWNhdGVkLnN1bSgpfSIpCnByaW50KGYiU2VsZWN0ZWQgd2lubmVyIGluZGV4OiB7d2lubmVyfSIpCnByaW50KGYiV2lubmVyIGlzIG9uZSBvZiBmaXZlIHRydWUgZmFjdG9yczoge3dpbm5lciA8IDV9IikKcHJpbnQoZiJXaW5uZXIgdHJ1ZSBtb250aGx5IG1lYW46IHt0cnVlX21lYW5bd2lubmVyXTouNGZ9IikKcHJpbnQoZiJXaW5uZXIgZGlzY292ZXJ5IHQtc3RhdGlzdGljOiB7dF9kaXNjb3Zlcnlbd2lubmVyXTouM2Z9IikKcHJpbnQoZiJXaW5uZXIgdmFsaWRhdGlvbiB0LXN0YXRpc3RpYzoge3RfdmFsaWRhdGlvblt3aW5uZXJdOi4zZn0iKQoKdG9wID0gbnAuYXJnc29ydCh0X2Rpc2NvdmVyeSlbLTU6XVs6Oi0xXQpwcmludCgiXG5Ub3AgZml2ZSBkaXNjb3ZlcnkgY2FuZGlkYXRlcyIpCmZvciBqIGluIHRvcDoKICAgIHByaW50KAogICAgICAgIGYiZmFjdG9yPXtqOjNkfSwgdHJ1dGg9e3RydWVfbWVhbltqXTouM2Z9LCAiCiAgICAgICAgZiJ0X2luPXt0X2Rpc2NvdmVyeVtqXTouMmZ9LCB0X291dD17dF92YWxpZGF0aW9uW2pdOi4yZn0iCiAgICAp layout: vertical locale: zh packages: numpy title: Python:因子筛选、赢家诅咒与样本外复现 --- :: ::web-r --- code64: c2V0LnNlZWQoMTIyMDI2KQptb250aHMgPC0gMjQwCmNhbmRpZGF0ZXMgPC0gMjAwCmRpc2NvdmVyeV9tb250aHMgPC0gbW9udGhzIC8gMgoKdHJ1ZV9tZWFuIDwtIG51bWVyaWMoY2FuZGlkYXRlcykKdHJ1ZV9tZWFuWzE6NV0gPC0gYygwLjAwOSwgMC4wMDgsIDAuMDA3LCAwLjAwNiwgMC4wMDUpCm1vbnRobHlfcmV0dXJucyA8LSBtYXRyaXgoCiAgcm5vcm0obW9udGhzICogY2FuZGlkYXRlcywgc2QgPSAwLjA0KSwKICBucm93ID0gbW9udGhzLAogIG5jb2wgPSBjYW5kaWRhdGVzCikKbW9udGhseV9yZXR1cm5zIDwtIHN3ZWVwKG1vbnRobHlfcmV0dXJucywgMiwgdHJ1ZV9tZWFuLCAiKyIpCgp0X3N0YXRpc3RpY3MgPC0gZnVuY3Rpb24oc2FtcGxlKSB7CiAgc2FtcGxlX21lYW4gPC0gY29sTWVhbnMoc2FtcGxlKQogIHN0YW5kYXJkX2Vycm9yIDwtIGFwcGx5KHNhbXBsZSwgMiwgc2QpIC8gc3FydChucm93KHNhbXBsZSkpCiAgc2FtcGxlX21lYW4gLyBzdGFuZGFyZF9lcnJvcgp9Cgp0X2Rpc2NvdmVyeSA8LSB0X3N0YXRpc3RpY3MobW9udGhseV9yZXR1cm5zWzE6ZGlzY292ZXJ5X21vbnRocywgXSkKdF92YWxpZGF0aW9uIDwtIHRfc3RhdGlzdGljcyhtb250aGx5X3JldHVybnNbKGRpc2NvdmVyeV9tb250aHMgKyAxKTptb250aHMsIF0pCndpbm5lciA8LSB3aGljaC5tYXgodF9kaXNjb3ZlcnkpCgpzaWduaWZpY2FudF9kaXNjb3ZlcnkgPC0gYWJzKHRfZGlzY292ZXJ5KSA+IDEuOTYKcmVwbGljYXRlZCA8LSBzaWduaWZpY2FudF9kaXNjb3ZlcnkgJgogIHNpZ24odF9kaXNjb3ZlcnkpID09IHNpZ24odF92YWxpZGF0aW9uKSAmCiAgYWJzKHRfdmFsaWRhdGlvbikgPiAxLjk2CgpwcmludChjKAogIHNpZ25pZmljYW50X2Rpc2NvdmVyeSA9IHN1bShzaWduaWZpY2FudF9kaXNjb3ZlcnkpLAogIHNhbWVfc2lnbl92YWxpZGF0aW9uID0gc3VtKHJlcGxpY2F0ZWQpLAogIHNlbGVjdGVkX3dpbm5lciA9IHdpbm5lciwKICB3aW5uZXJfaXNfdHJ1ZSA9IHdpbm5lciA8PSA1LAogIHdpbm5lcl90cnVlX21vbnRobHlfbWVhbiA9IHRydWVfbWVhblt3aW5uZXJdLAogIHdpbm5lcl90X2luID0gdF9kaXNjb3Zlcnlbd2lubmVyXSwKICB3aW5uZXJfdF9vdXQgPSB0X3ZhbGlkYXRpb25bd2lubmVyXQopKQoKdG9wIDwtIG9yZGVyKHRfZGlzY292ZXJ5LCBkZWNyZWFzaW5nID0gVFJVRSlbMTo1XQpwcmludChkYXRhLmZyYW1lKAogIGZhY3RvciA9IHRvcCwKICB0cnV0aCA9IHRydWVfbWVhblt0b3BdLAogIHRfaW4gPSByb3VuZCh0X2Rpc2NvdmVyeVt0b3BdLCAyKSwKICB0X291dCA9IHJvdW5kKHRfdmFsaWRhdGlvblt0b3BdLCAyKQopKQ== layout: vertical locale: zh title: R:因子筛选、赢家诅咒与样本外复现 --- :: ### 实验审计 - 把候选因子从 200 改为 20 和 2,000,观察发现样本显著数量与最大 t 值。 - 把发现样本延长而保持总样本 240 个月,说明发现精度与验证精度的权衡。 - 让 195 个零因子具有共同噪声,讨论检验相关性为何改变但不消除数据挖掘问题。 - 当前复现标准只是同方向且 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[t]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.96]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ;真实研究还要核对构造、交易成本、市场覆盖和经济机制。 ## 分层作业 ### 本科生任务 选择一个公开因子,写一页“证据卡”:因子定义、排序变量、持有期、样本、平均收益、波动、换手率、发现期和至少一个样本外市场。若没有交易成本信息,要明确写“证据缺失”。 ### 研究生任务 设计一项气候暴露资产定价研究。分别写出:文本指标构造、人工标注验证、气候创新、测试资产、SDF 矩条件、双重聚类或 Fama–MacBeth 推断、行业与规模控制、选择后校正、期权与股票市场的互证。最后列出至少三个无法由显著风险价格排除的替代解释。 ## 一手文献与延伸阅读 1. Chen, L., Pelger, M., & Zhu, J. (2023). [Deep Learning in Asset Pricing](https://pubsonline.informs.org/doi/10.1287/mnsc.2023.4695){rel=""nofollow""}. *Management Science*, 70(2), 714–750. DOI: [10.1287/mnsc.2023.4695](https://doi.org/10.1287/mnsc.2023.4695){rel=""nofollow""}. 2. Jensen, T. I., Kelly, B., & Pedersen, L. H. (2023). [Is There a Replication Crisis in Finance?](https://onlinelibrary.wiley.com/doi/full/10.1111/jofi.13249){rel=""nofollow""}. *Journal of Finance*, 78(5), 2465–2518. DOI: [10.1111/jofi.13249](https://doi.org/10.1111/jofi.13249){rel=""nofollow""}. 3. Sautner, Z., van Lent, L., Vilkov, G., & Zhang, R. (2023). [Firm-Level Climate Change Exposure](https://onlinelibrary.wiley.com/doi/10.1111/jofi.13219){rel=""nofollow""}. *Journal of Finance*, 78(3), 1449–1498. DOI: [10.1111/jofi.13219](https://doi.org/10.1111/jofi.13219){rel=""nofollow""}. 作者公开的[气候暴露数据](https://doi.org/10.17605/OSF.IO/FD6JQ){rel=""nofollow""}可用于进一步复现训练。 4. Wang, Y., Gao, H., Harvey, C. R., Liu, Y., & Tao, X. (2026). [Machine Learning Meets Markowitz](https://www.nber.org/papers/w34861){rel=""nofollow""}. NBER Working Paper 34861. DOI: [10.3386/w34861](https://doi.org/10.3386/w34861){rel=""nofollow""}. **工作论文。** 5. Kelly, B. T., Malamud, S., Schwab, J., & Xu, T. A. (2026). [Scaling Point-in-Time Language Models](https://www.nber.org/papers/w35247){rel=""nofollow""}. NBER Working Paper 35247. DOI: [10.3386/w35247](https://doi.org/10.3386/w35247){rel=""nofollow""}. **工作论文。** 建议与[因子模型](https://www.pengjiaxin.com/05-factor-models/)、[跨期资产定价](https://www.pengjiaxin.com/06-intertemporal/)和[浏览器交互实验](https://www.pengjiaxin.com/11-interactive-labs/)配套学习。 # 资产定价理论 []{#资产定价理论} 资产定价关心一个朴素但很难的问题:一项资产今天应该值多少钱,为什么有些资产会提供更高的预期收益,市场价格又在多大程度上反映了风险、信息和投资者偏好。本课程按照大学金融经济学的常见安排,从收益率、贴现与无套利出发,逐步进入投资组合选择、CAPM、因子模型、跨期定价、衍生品、固定收益和实证检验。 如果你已经学过微观经济学、概率统计和一点线性代数,可以把这门课看作“金融学中的核心理论课”。如果你的目标是量化研究或投资策略开发,建议把本课程与 [`量化投资导论`](https://www.pengjiaxin.com/zh/quant/00-index.md) 配合阅读:这里解释模型从哪里来,量化部分讨论如何把模型变成数据、代码、回测和风控流程。 ## 学习成果 完成课程后,你应能够: 1. 区分价格、简单收益率、对数收益率、总收益率和超额收益率; 2. 用现值、状态价格、复制组合和随机贴现因子表达无套利定价; 3. 从期望效用与风险厌恶推导风险溢价和资产需求; 4. 构造均值—方差前沿,解释分散化、切点组合和资本市场线; 5. 推导并检验 CAPM、APT 与多因子模型,正确解释 beta 和 alpha; 6. 使用 Euler 方程与 SDF 统一理解股票、债券和跨期风险补偿; 7. 用复制、风险中性概率、久期和凸性给期权与债券定价; 8. 识别实证资产定价中的联合假设、数据挖掘、前视偏差和交易成本; 9. 用 Python 与 R 完成回报计算、组合优化、因子回归和定价实验。 ## 本科生与研究生路径 | 层级 | 必须掌握 | 研究生扩展 | | --- | ----------------------------- | ----------------------------- | | 本科生 | 现值、无套利、效用、组合选择、CAPM、债券和二叉树定价。 | 完成一个组合或证券定价项目,解释模型假设。 | | 研究生 | SDF、Euler 方程、GMM、条件因子模型和动态定价。 | 处理弱识别、模型比较、横截面检验、机器学习与模型不确定性。 | ## 先修诊断 | 问题 | 应当掌握的思想 | | ------------------------------- | --------------------- | | 为什么价格上涨 10% 后下跌 10% 不能回到原价? | 复利与收益率的非线性。 | | 协方差为何比单个资产方差更决定组合风险? | 组合方差包含所有交叉项。 | | 无套利是否等于市场完全有效? | 无套利是较弱的价格一致性条件。 | | CAPM 回归中的 alpha 为零能否证明 CAPM 正确? | 不能;还受样本、测试资产和联合假设影响。 | | 风险中性概率是否是投资者真实概率? | 不是;它是使贴现价格满足无套利的定价测度。 | 若这些问题还不熟,先复习[概率论与数理统计](https://www.pengjiaxin.com/zh/prob-and-stats/)中的期望、协方差、抽样分布和回归基础。 ## 适合怎样学习 - **先建立框架,再补数学细节**:第一遍阅读时,重点把“现金流、折现、风险补偿、无套利、均衡”这些概念连起来;第二遍再认真推导公式。 - **每章都问一个定价问题**:例如“为什么分散化能降低风险?”“为什么市场组合会进入 CAPM?”“为什么期权可以复制?”这样比单纯记公式更可靠。 - **理论与实证交替推进**:读完 CAPM 和因子模型后,可以回到第十章看估计、检验和 Python 案例,再去读量化投资中的因子构建与回测。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsi5pS255uK546H44CB6LS0546w5LiO5peg5aWX5YipIl0gLS0+IEJbIuaViOeUqOS4jumjjumZqeWBj+WlvSJdCiAgQiAtLT4gQ1si5Z2H5YC8LeaWueW3ruS4juaKlei1hOe7hOWQiCJdCiAgQyAtLT4gRFsiQ0FQTSDkuI7lm6DlrZDmqKHlnosiXQogIEQgLS0+IEVbIui3qOacn+WumuS7t+S4jumaj+acuui0tOeOsOWboOWtkCJdCiAgRCAtLT4gRlsi6KGN55Sf5ZOB5LiO5Zu65a6a5pS255uKIl0KICBFIC0tPiBHWyLlrp7or4Hmo4DpqozkuI7mlbDlgLzmlrnms5UiXQogIEYgLS0+IEcKICBHIC0tPiBIWyLph4/ljJbnrZbnlaXkuI7po47pmannrqHnkIYiXQ==" locale="zh"} :cytoscape-graph{props64="eyJub2RlcyI6W3siaWQiOiJjYXNoZmxvdyIsImxhYmVsIjoi546w6YeR5rWBIiwiZ3JvdXAiOiJmb3VuZGF0aW9uIn0seyJpZCI6ImRpc2NvdW50IiwibGFiZWwiOiLotLTnjrAiLCJncm91cCI6ImZvdW5kYXRpb24ifSx7ImlkIjoicmlzayIsImxhYmVsIjoi6aOO6Zmp5YGP5aW9IiwiZ3JvdXAiOiJmb3VuZGF0aW9uIn0seyJpZCI6InNkZiIsImxhYmVsIjoi6ZqP5py66LS0546w5Zug5a2QIiwiZ3JvdXAiOiJtZXRob2QifSx7ImlkIjoicG9ydGZvbGlvIiwibGFiZWwiOiLmipXotYTnu4TlkIgiLCJncm91cCI6Im1ldGhvZCJ9LHsiaWQiOiJmYWN0b3JzIiwibGFiZWwiOiLlm6DlrZDmqKHlnosiLCJncm91cCI6Im1ldGhvZCJ9LHsiaWQiOiJwcmljZSIsImxhYmVsIjoi6LWE5Lqn5Lu35qC8IiwiZ3JvdXAiOiJvdXRjb21lIn0seyJpZCI6InRlc3QiLCJsYWJlbCI6IuWunuivgeajgOmqjCIsImdyb3VwIjoib3V0Y29tZSJ9XSwiZWRnZXMiOlt7InNvdXJjZSI6ImNhc2hmbG93IiwidGFyZ2V0IjoiZGlzY291bnQiLCJsYWJlbCI6IuaKmOaIkOS7iuWkqSJ9LHsic291cmNlIjoicmlzayIsInRhcmdldCI6InNkZiIsImxhYmVsIjoi5Yaz5a6a5p2D6YeNIn0seyJzb3VyY2UiOiJkaXNjb3VudCIsInRhcmdldCI6InNkZiIsImxhYmVsIjoi6L+b5YWlIn0seyJzb3VyY2UiOiJzZGYiLCJ0YXJnZXQiOiJwcmljZSIsImxhYmVsIjoi5a6a5Lu3In0seyJzb3VyY2UiOiJwb3J0Zm9saW8iLCJ0YXJnZXQiOiJmYWN0b3JzIiwibGFiZWwiOiLmj5Dngrzpo47pmakifSx7InNvdXJjZSI6ImZhY3RvcnMiLCJ0YXJnZXQiOiJwcmljZSIsImxhYmVsIjoi6Kej6YeK5pS255uKIn0seyJzb3VyY2UiOiJwcmljZSIsInRhcmdldCI6InRlc3QiLCJsYWJlbCI6IuWbnuWIsOaVsOaNriJ9LHsic291cmNlIjoidGVzdCIsInRhcmdldCI6ImZhY3RvcnMiLCJsYWJlbCI6IuS/ruato+aooeWeiyJ9XSwiY2FwdGlvbiI6Iui1hOS6p+WumuS7t+eahOamguW/tee9kee7nO+8mueOsOmHkea1geOAgemjjumZqeWBj+WlveOAgei0tOeOsOWboOWtkOOAgee7hOWQiOWSjOWunuivgeajgOmqjOS6kuebuOi/nuaOpeOAgiJ9"} ## 前沿延伸:从少数因子到模型不确定性 经典资产定价课程通常从均值-方差、CAPM、APT 和随机贴现因子出发,强调“哪些风险需要补偿”。近年的实证资产定价则把这个问题推得更具体:如果候选因子很多、资产特征很多、模型形式很多,我们怎样知道某个风险补偿不是样本内偶然性? Bagnara(2022)的[资产定价与机器学习综述](https://doi.org/10.1111/joes.12532){rel=""nofollow""}说明,机器学习最直接的作用不是推翻 CAPM 或因子模型,而是让收益预测、风险暴露和非线性交互的估计更灵活。学生应当把 ML 看成对随机贴现因子和条件期望的函数逼近,而不是一个自动发现真理的按钮。模型预测得更准,只能说明它抓住了某些样本外结构;能否解释为风险补偿,还要回到经济机制、交易成本和稳健性检验。 因子动物园问题也改变了我们对“多因子模型”的理解。[Bryzgalova、Huang 与 Julliard(2022)](https://doi.org/10.1111/jofi.13197){rel=""nofollow""}用贝叶斯方法处理大量候选因子的模型不确定性;[Didisheim、Ke、Kelly 与 Malamud(2023)](https://www.nber.org/papers/w31689){rel=""nofollow""}讨论因子模型复杂度;[Sautner 等(2023)](https://doi.org/10.1111/jofi.13219){rel=""nofollow""}则展示文本和披露如何进入公司气候暴露度量。2026 年的两篇 NBER 工作论文进一步提出:预测模型应与最终组合目标连接,历史回测中的语言模型必须遵守训练语料的时间边界。详见[第十二章](https://www.pengjiaxin.com/12-frontier-literature-2026)。 因此,本课程的基础模型仍然是主线,但读法要更现代:CAPM 是理解 beta 和风险补偿的基准,因子模型是组织横截面收益的语言,SDF 是统一定价条件;前沿研究则要求我们同时处理高维候选变量、模型选择、样本外表现和经济可解释性。 ## 课程大纲 ### 第一章:引言与基础 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/01-intro/) - 资产定价概述 - 金融市场基础 - 收益率与风险度量 - 时间价值 ### 第二章:效用理论与风险偏好 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/02-utility/) - 期望效用理论 - 风险厌恶与风险溢价 - 常见效用函数 - 确定性等价 ### 第三章:均值-方差分析 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/03-mean-variance/) - 投资组合理论 - 有效前沿 - 资本配置线 - 分离定理 ### 第四章:资本资产定价模型(CAPM) [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/04-capm/) - CAPM推导 - 市场组合与贝塔 - 证券市场线 - CAPM的实证检验 ### 第五章:因子模型 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/05-factor-models/) - 套利定价理论(APT) - Fama-French三因子模型 - 多因子模型 - 因子投资策略 ### 第六章:跨期资产定价 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/06-intertemporal/) - 消费资本资产定价模型(CCAPM) - 跨期CAPM - 随机贴现因子 - 欧拉方程 ### 第七章:期权定价理论 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/07-options/) - 期权基础 - 二叉树模型 - Black-Scholes模型 - 期权定价的偏微分方程方法 ### 第八章:固定收益证券 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/08-fixed-income/) - 债券定价基础 - 利率期限结构 - 久期与凸性 - 利率模型 ### 第九章:市场有效性与异象 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/09-efficiency/) - 有效市场假说 - 市场异象 - 行为金融学 - 实证资产定价 ### 第十章:数值方法与实证应用 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/10-empirical/) - 蒙特卡洛模拟 - 数值优化 - 参数估计 - 模型检验 ### 第十一章:浏览器交互定价与回归实验 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/11-interactive-labs/) - 收益率与贴现现金流 - 均值—方差组合与最小方差权重 - CAPM 与多因子回归 - SDF/Euler 方程矩条件 - 二叉树期权与债券久期、凸性 ### 第十二章:前沿文献与现代资产定价案例 [进入本章 →](https://www.pengjiaxin.com/zh/asset-pricing/12-frontier-literature-2026.md) - 深度网络、无套利矩条件与对抗测试资产 - 因子动物园、多重检验与跨市场复现 - 公司气候暴露的文本度量与定价边界 ## 建议课程节奏 | 周次 | 主题 | 学习重点 | 推荐产出 | | -- | --------- | -------------------------------- | ------------------------- | | 1 | 引言、市场与收益率 | 把价格、收益率、贴现和无套利放进同一个框架 | 用一组价格数据计算简单收益率、对数收益率和超额收益 | | 2 | 效用理论与风险偏好 | 理解风险厌恶、确定性等价和风险溢价 | 画出不同风险厌恶参数下的效用函数 | | 3 | 均值-方差分析 | 推导有效前沿,理解分散化和风险预算 | 用两个或多个资产构造有效前沿 | | 4 | CAPM | 从市场组合、贝塔和证券市场线理解均衡定价 | 用回归估计单只资产的 beta | | 5 | 因子模型 | 理解 APT、Fama-French 模型和因子暴露 | 做一次简单的多因子收益归因 | | 6 | 跨期定价 | 从 Euler 方程和随机贴现因子理解统一定价语言 | 写出消费 CAPM 的核心一阶条件 | | 7 | 期权定价 | 理解复制、风险中性定价和 Black-Scholes 思路 | 用二叉树给欧式期权定价 | | 8 | 固定收益 | 掌握收益率曲线、久期、凸性和利率风险 | 计算债券价格对利率变动的敏感性 | | 9 | 市场有效性与异象 | 区分风险补偿、错误定价和数据挖掘 | 讨论一个市场异象是否可能持续 | | 10 | 数值方法与实证应用 | 将模型估计、检验和模拟连接起来 | 完成一个小型实证资产定价案例 | | 11 | 浏览器交互实验 | 用 Python/R 对照实现组合、回归、SDF、期权和债券计算 | 提交双语言可复现实验记录 | | 12 | 前沿文献与复现 | 深度 SDF、因子复现和气候文本度量 | 提交因子或文本指标证据卡 | | 13 | 综合研究项目 | 把理论、估计、稳健性和经济解释连成一体 | 完成研究报告与口头答辩 | ## 与其他科目的衔接 - 学完 [`概率论与数理统计`](https://www.pengjiaxin.com/zh/prob-and-stats/) 后,再读本课程中的收益分布、估计和检验会更顺。 - 学完 [`微观经济学`](https://www.pengjiaxin.com/zh/microeconomics/00-intro/) 后,更容易理解效用最大化、均衡和信息问题。 - 学完本课程第五章和第十章后,可以进入 [`量化投资导论`](https://www.pengjiaxin.com/zh/quant/00-index.md) 的因子、回测和组合管理部分。 ## 研究训练与评估建议 | 任务 | 本科标准 | 研究生扩展 | | ----- | ---------------------- | ------------------------- | | 理论问题集 | 推导无套利、组合、CAPM 和基础衍生品结果 | 加入 SDF、动态模型和 GMM 条件 | | 浏览器实验 | 修改参数并解释图表和回归 | 做 Monte Carlo、模型比较和有限样本分析 | | 论文复现 | 复现一张表或一幅图 | 审计数据构造、标准误、多重检验和样本外结果 | | 课程项目 | 一个证券或因子的完整分析 | 明确 SDF/风险机制、估计对象和识别限制 | 具体分值与考试制度应由实际开课单位确定。所有实证项目至少应交付数据字典、无前视的数据处理代码、结果表、稳健性检查和限制说明。 ## 内容支撑与证据层级 本课程把证据分为四层:会计定义与收益恒等式、无套利与均衡模型、统计估计与检验、真实交易可实施性。数学上成立的定价关系不必然解释经验风险溢价;显著 alpha 也不必然可交易。每个结论都应说明自己位于哪一层。 [浏览器交互实验](https://www.pengjiaxin.com/zh/asset-pricing/11-interactive-labs/)使用合成数据和教学现金流验证公式与估计器。它们提供可重复的机制证据,但不替代真实市场数据的公司行动调整、退市样本、交易成本、税费、流动性和时间依赖审计。 ## 参考资料 - Cochrane, J. H. (2005). *Asset Pricing*. Princeton University Press. - Campbell, J. Y., Lo, A. W., & MacKinlay, A. C. (1997). *The Econometrics of Financial Markets*. Princeton University Press. - Duffie, D. (2001). *Dynamic Asset Pricing Theory*. Princeton University Press. - Hull, J. C. (2018). *Options, Futures, and Other Derivatives*. Pearson. # 第一章:数据、概率与回归对象 []{#第一章数据概率与回归对象} ## 1. 计量问题从“对象”开始 在回归软件中输入变量之前,先说明:研究对象是谁、观察单位是什么、结果变量如何定义、解释变量如何测量,以及你想描述还是想识别因果效应。 例如,“教育影响工资”至少有三种不同问题: 1. 受教育年限与工资的条件相关是什么? 2. 对一个随机选择的个体,额外教育一年的潜在工资变化是什么? 3. 某项教育政策使受影响者的工资改变多少? 三者可能使用相似数据和回归形式,但目标参数与识别条件不同。 ## 学习目标 - 区分总体、样本、参数、统计量和估计量; - 用条件期望函数描述预测与因果问题; - 解释抽样误差、测量误差和选择进入数据的差异; - 理解线性投影不要求真实条件期望函数完全线性; - 为 OLS 推导准备矩阵和概率语言。 ## 2. 随机变量与数据生成过程 把一个观测写成 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。样本 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 来自某种数据生成过程。i.i.d. 是常见基准,但面板、时间序列、空间数据和聚类抽样会破坏简单独立性。 数据生成过程不是“软件看不到的误差项”,而是描述数据如何被产生、观测和选择进入样本的理论对象。若样本只包含就业者,工资回归的误差可能同时包含劳动参与选择;若问卷非随机缺失,缺失机制会影响目标参数。 ## 3. 条件期望函数 条件期望函数为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathbb}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 它是给定 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 时 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的最佳平方损失预测器,因为对任意函数 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathbb}[\[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathbb}[\[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathbb}[\[(]{.mopen}[m]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 线性回归进一步限制预测函数为 [[]{.katex-mathml}[[[]{.strut style="height:0.9463em;vertical-align:-0.1944em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。当真实 CEF 非线性时,OLS 仍然估计总体线性投影系数,而不一定估计某个结构参数。 ## 4. 相关、条件相关与因果 条件相关描述在控制 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 后 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的关系。因果效应要求比较同一单位在不同处理状态下的潜在结果: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 个体处理效应为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,平均处理效应为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathbb}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。问题在于同一单位不能同时观察两种状态。回归控制、随机化、工具变量和准实验设计都是构造或逼近反事实的方法,但依赖不同假设。 ## 5. 目标参数表 | 对象 | 例子 | 是否自动具有因果含义 | | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- | | 描述性统计量 | 样本平均工资 | 否 | | 条件均值 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 否 | | 线性投影系数 | OLS 中 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的系数 | 否,除非有识别假设 | | ATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 是,定义本身是因果参数 | | ATT | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 是,但需要设计识别 | | 预测风险 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1968em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord,accent}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 否,评价预测任务 | 写实证报告时,把“估计的是什么”放在结果表之前,读者才知道系数应如何解释。 ## 6. 测量与选择 测量误差包括教育年限报告误差、收入顶格报告、价格指数口径变化和行政数据匹配误差。解释变量测量误差在经典条件下可能造成衰减偏误,但现实测量误差未必满足经典条件。 选择问题包括: - 只有就业者才有观察到的工资; - 只有申请者才进入政策样本; - 只有留下来接受追踪的个体有后续结果; - 变量缺失与结果或处理状态相关。 样本量大不能自动修复选择偏误。大样本会让估计更精确地估计错误的对象。 ## 自测题 1. 为什么条件期望是最佳平方预测器? 2. OLS 估计线性投影系数时,真实 CEF 非线性会产生什么含义? 3. 描述性相关何时可能接近因果效应?需要什么假设? 4. 解释变量测量误差为什么可能使系数向零偏? 5. 选择进入样本与样本量大小有什么不同? ## 下一章 下一章把线性投影写成矩阵形式,推导 OLS,并使用 FWL 定理解释“控制变量”究竟改变了什么比较。 # 第二章:OLS、矩阵与几何解释 []{#第二章ols矩阵与几何解释} ## 1. 线性回归模型 写成矩阵形式: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[u]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是 [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 向量, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是包含常数项的 [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 设计矩阵, [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是参数, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是误差。OLS 选择 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[b]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 使残差平方和最小: [[[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.5021em;vertical-align:-0.7521em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[b]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3479em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7521em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0519em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[b]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[b]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 一阶条件为 [[]{.katex-mathml}[[[]{.strut style="height:1.0019em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.2079em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,如果 [[]{.katex-mathml}[[[]{.strut style="height:0.7519em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可逆,则: [[[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ## 学习目标 - 从最小化问题推导正规方程和 OLS 估计量; - 用投影矩阵解释拟合值与残差; - 使用 FWL 定理理解多元回归系数; - 推导遗漏变量偏误的方向和条件; - 理解函数形式、交互项和对数模型的解释。 ## 2. 几何解释 拟合值 [[]{.katex-mathml}[[[]{.strut style="height:0.9468em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 在 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的列空间上的正交投影,残差 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9468em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的每一列正交: [[[]{.katex-mathml}[[[]{.strut style="height:0.8019em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 投影矩阵为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 因此 [[]{.katex-mathml}[[[]{.strut style="height:0.9468em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 、 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。矩阵语言揭示了 OLS 的两个重要事实:它是一个线性投影,且残差与所有回归解释变量正交。但正交不等于因果独立。 ## 3. FWL 定理与控制变量 考虑: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 先把 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 回归,得到残差 [[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ;再把 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 残差化,得到 [[]{.katex-mathml}[[[]{.strut style="height:0.9202em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[X]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。FWL 定理说明: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4074em;vertical-align:-0.8102em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6779em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.mord}]{style="top:-2.1898em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.6023em;"}]{.vlist style="height:0.9202em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.5972em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8102em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 所以多元回归中的 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 系数来自:在剔除 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可解释部分之后, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的剩余变异与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的剩余变异之间的线性关系。 这解释了为什么控制变量选择重要:控制变量改变了比较所使用的变异,也可能打开新的偏误路径。控制变量不是“越多越科学”。 ## 4. 遗漏变量偏误 真实模型为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[u]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 但研究者只回归 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。在简单线性情形下,短回归系数近似为: [[[]{.katex-mathml}[[[]{.strut style="height:1.1257em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.6134em;"}]{.vlist style="height:0.9313em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 偏误方向由两条路径共同决定: [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的作用,以及 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的相关。只有知道两者方向,才可以判断高估还是低估。 ### 教育—工资例子 若能力提高工资且能力更高者教育更多,则省略能力通常使教育回报被高估;若教育更多的人来自不利背景而背景降低工资,偏误方向可能相反。实际研究不能只凭直觉说“能力偏误一定向上”,要画出因果图或写出协方差路径。 ## 5. 函数形式 | 形式 | 模型 | 主要解释 | | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 水平—水平 | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 增加一单位, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 变化 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 单位 | | 对数—水平 | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 增加一单位, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 约变化 [[]{.katex-mathml}[[[]{.strut style="height:0.9444em;vertical-align:-0.1944em;"}[100]{.mord}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | | 水平—对数 | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 增加 1%, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 约变化 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[/100]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 单位 | | 对数—对数 | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord,mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord,mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是弹性 | 对数形式改变了参数含义,也会改变误差结构和样本处理。不能为了让 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 更高而机械取对数。 ## 6. 交互项与异质性 若教育回报因性别或地区不同,可以写: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[e]{.mord.mathnormal}[ma]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[e]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[e]{.mord.mathnormal}[ma]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[e]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 男性的教育斜率是 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,女性的教育斜率是 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。含交互项时,不能把 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[3]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 单独称为“女性效应”;要在有意义的教育水平上计算边际效应。 ## 研究生扩展 - 投影定理与最佳线性预测; - Frisch–Waugh–Lovell 在高维控制和固定效应中的应用; - partialling-out 与双重机器学习; - 高杠杆点、影响函数和稳健回归; - 规格搜索、多重检验和预先注册。 ## 自测题 1. 为什么 OLS 残差与解释变量正交不能证明外生性? 2. 用 FWL 定理解释控制家庭背景后的教育系数变化。 3. 遗漏变量偏误何时为零? 4. 对数—对数模型中系数如何解释? 5. 交互项存在时,如何计算某一组的边际效应? ## 下一章 OLS 给出点估计,但研究者还必须说明估计的不确定性。下一章讨论 t/F 检验、异方差、聚类和 bootstrap。 # 第三章:统计推断与稳健标准误 []{#第三章统计推断与稳健标准误} ## 1. 点估计不是完整结果 回归系数只是一个样本结果。由于换一批样本可能得到不同的系数,研究者还要报告标准误、置信区间、检验假设和估计对象。统计推断描述的是抽样不确定性,不自动包含测量误差、模型不确定性、外部有效性或识别假设失败的风险。 ## 学习目标 - 理解标准误来自抽样分布而不是“软件附带的误差”; - 正确解释置信区间、p 值和联合检验; - 区分异方差稳健、聚类稳健和时间序列稳健标准误; - 说明 bootstrap 何时有帮助、何时不能修复识别问题; - 解释统计显著、经济显著和实际重要性之间的差异。 ## 2. 估计量的抽样分布 若重复从总体抽样并每次计算 [[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,这些估计值的分布就是抽样分布。标准误是其标准差的估计。样本量增大通常让估计更集中,但前提是样本和估计过程仍然针对同一目标。 大样本近似常写为: [[[]{.katex-mathml}[[[]{.strut style="height:1.2079em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[[n]{.mord.mathnormal}]{.mord style="padding-left:0.833em;"}]{.svg-align style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{.hide-tail style="min-width:0.853em;height:1.08em;"}]{style="top:-2.8092em;"}]{.vlist style="height:0.8492em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1908em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.sqrt}[(]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.3581em;vertical-align:-0.25em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[d]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight.x-arrow-pad}]{style="top:-3.322em;"}[[]{.pstrut style="height:2.7em;"}[]{.hide-tail style="height:0.522em;min-width:1.469em;"}]{.svg-align style="top:-2.689em;"}]{.vlist style="height:1.1081em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.011em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mrel.x-arrow}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 推断需要估计 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。如果误差具有异方差或组内相关,使用错误的方差公式会让置信区间过窄,t 统计量过大。 ## 3. t 检验与置信区间 检验 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[H]{.mord.mathnormal style="margin-right:0.0813em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0813em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[,]{.mpunct.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的统计量为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.7689em;vertical-align:-1.134em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.1521em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[,]{.mpunct.mtight}[0]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.6349em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.134em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 95% 置信区间近似为: [[[]{.katex-mathml}[[[]{.strut style="height:1.244em;vertical-align:-0.2861em;"}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[±]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.244em;vertical-align:-0.2861em;"}[1.96]{.mord}[]{.mspace style="margin-right:0.1667em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 置信区间不是“参数有 95% 概率在这个固定区间内”的贝叶斯陈述,而是重复抽样程序长期覆盖真参数约 95% 的频率学派解释。 ## 4. 异方差 如果: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 随 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 改变,就存在异方差。OLS 点估计在外生性成立时仍可能一致,但同方差标准误不再可靠。Huber–White 三明治方差估计为: [[[]{.katex-mathml}[[[]{.strut style="height:1.0733em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[H]{.mord.mathnormal.mtight style="margin-right:0.0813em;"}[C]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.0277em;vertical-align:-1.2777em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size4}]{.mopen.delimcenter style="top:0em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.delimsizing.size4}]{.mclose.delimcenter style="top:0em;"}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 稳健标准误修正推断,不会修正遗漏变量偏误、反向因果、错误函数形式或样本选择。 ## 5. 聚类相关 同一学校、企业、地区、州或个体的观测可能共享冲击。若组内误差相关,样本的有效独立信息量小于观测行数。聚类标准误允许同组内任意相关,而通常要求组间独立或在更高层次上满足适当条件。 聚类层级应由误差相关和处理分配层级决定,而不是由“哪一种软件选项方便”决定。政策在州层面变化时,只在个人层面使用稳健标准误通常会低估不确定性。 ## 6. 多重检验与经济显著 同时检验许多假设,即使所有原假设都正确,也可能偶然出现显著结果。研究者应预先说明主要结果、控制多重检验或报告探索性结果。 解释结果时同时写: 1. 系数单位和数量级; 2. 置信区间; 3. 相对于基线均值或政策成本的经济意义; 4. 识别假设与数据覆盖范围。 大样本可以让极小且无实际意义的效果显著;小样本可能让重要效果不显著。显著性星号不能替代机制和量级解释。 ## 7. Bootstrap Bootstrap 通过重复从样本重抽样近似估计量的抽样分布。它可用于复杂统计量、分位数或有限样本诊断,但需要尊重数据依赖结构:面板要按个体/组重抽,时间序列要使用区块或其他序列方法。 Bootstrap 不能解决内生性、错误的目标参数或不代表性的样本。它提高的是不确定性近似,不是因果可信度。 ## 研究生扩展 - sandwich 方差与影响函数; - 少量聚类、随机化推断和 wild bootstrap; - 高维同时推断; - 弱识别下的置信区间; - 预先注册、规格曲线和选择后推断。 ## 自测题 1. 异方差会影响 OLS 点估计还是标准误,取决于什么假设? 2. 为什么州层面政策需要考虑州内相关? 3. 95% 置信区间应该如何解释? 4. bootstrap 为什么不能修复遗漏变量偏误? 5. 如何判断一个统计显著结果是否具有经济意义? ## 下一章 下一章讨论一个更根本的问题:当解释变量与误差相关时,稳健标准误并不能使 OLS 重新具有因果含义,需要工具变量和更明确的识别设计。 # 第四章:内生性、工具变量与两阶段最小二乘 []{#第四章内生性工具变量与两阶段最小二乘} ## 1. 内生性是什么 在线性模型中: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[u]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 相关,OLS 不能把 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的变化解释为外生变化。常见来源包括: - 遗漏变量:能力同时影响教育和工资; - 反向因果:收入影响健康,健康也影响收入; - 测量误差:真实处理未被准确记录; - 同时性:价格与数量由同一市场冲击共同决定; - 选择:个体根据未观测收益选择处理。 ## 学习目标 - 用协方差和因果图识别内生性来源; - 写出工具变量的相关性与排除限制; - 推导 Wald 比率和 2SLS; - 理解弱工具、过度识别和有限样本问题; - 解释 IV 估计的局部平均处理效应。 ## 2. 工具变量的两个核心条件 工具变量 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 需要: ### 相关性 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[[[[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[]{.mrel}]{.mord}]{.inner}[]{.fix}]{.rlap}]{.thinbox}]{.mord.vbox}]{.mrel}[]{.mspace.nobreak}[=]{.mrel}]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 工具必须能改变处理或解释变量。相关性弱会导致 IV 方差大,且传统近似推断可能失效。 ### 排除限制 在控制 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 后, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 只能通过 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 影响 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,不能直接进入结果,也不能与未观测结果决定因素相关。这个条件通常不能靠统计检验完全证明,必须依赖制度、时间顺序、机制和安慰剂证据。 ## 3. Wald 估计量 当 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 都是二元变量,简化式为: [[[]{.katex-mathml}[[[]{.strut style="height:0.9833em;"}[[[[[[]{.pstrut style="height:3em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.3em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9833em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[]]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[]]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 分子是工具对结果的简化式影响,分母是工具对处理的第一阶段影响。IV 的直觉是用 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 产生的外生处理变化来估计处理效应。 ## 4. 两阶段最小二乘 第一阶段: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 得到拟合处理 [[]{.katex-mathml}[[[]{.strut style="height:0.9468em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。第二阶段: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1412em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[ε]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 实际推断要使用正确的 2SLS 方差,而不是把 [[]{.katex-mathml}[[[]{.strut style="height:0.9468em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.9468em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 当作无误差变量再次普通 OLS。 ## 5. 弱工具 第一阶段相关性很弱时,IV 估计可能极不稳定,有限样本偏向 OLS,置信区间覆盖率很差。第一阶段 F 统计量是有用的警示,但不是所有弱识别问题的完整诊断。 应考虑: - 报告第一阶段系数和统计量; - 使用弱工具稳健的 Anderson–Rubin 类推断; - 比较不同工具与不同规格; - 解释工具的制度来源而非只报告显著性。 ## 6. LATE 与外部有效性 在单调性、排除限制和独立性条件下,IV 通常识别的是顺应者的局部平均处理效应(LATE),即那些会因为工具变化而改变处理状态的人。 这不必等于总体 ATE,也不必等于永远接受处理者或永远不接受处理者的效应。政策推广时必须问:顺应者是谁?他们与目标人群是否相似? ## 7. 研究设计例子:教育工具 假设某项政策改变部分学生上大学的成本。研究者用政策资格 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 作为工具,教育年限 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为处理,工资 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为结果。需要分析: 1. 政策资格是否真的改变教育年限? 2. 资格是否通过家庭背景、地区劳动力市场或预期职业路径直接影响工资? 3. 是否存在不遵从和反向选择? 4. 估计对象是受政策影响的边缘学生,而非所有学生的教育回报。 一个显著的 IV 系数本身不能替代这些问题。 ## 研究生扩展 - 多个工具与过度识别检验; - LIML、Fuller 与弱识别稳健推断; - 连续处理、非线性第一阶段与单调性; - 结构方程和控制函数; - 识别集合、部分识别和敏感性分析。 ## 自测题 1. 为什么“工具与结果相关”不能单独证明工具有效? 2. 第一阶段弱会带来哪些实际后果? 3. 为什么 IV 估计可能只对一部分人有效? 4. 写出一个排除限制可能失败的路径。 5. 当政策制定者关心全体人群 ATE 时,LATE 的外部有效性问题是什么? ## 下一章 下一章研究重复观察同一单位或同一时间序列时,如何利用数据结构改善控制、理解依赖并避免错误推断。 # 第五章:面板数据与时间序列 []{#第五章面板数据与时间序列} ## 1. 数据结构改变了推断问题 横截面数据在一个时间点观察许多单位;时间序列数据观察一个单位的连续时期;面板数据同时包含单位维度 [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和时间维度 [[]{.katex-mathml}[[[]{.strut style="height:0.6151em;"}[t]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。同一单位的多次观测通常共享不随时间变化的特征,连续时期还可能存在序列相关。 ## 学习目标 - 区分 pooled OLS、固定效应和随机效应; - 解释组内变换和固定效应估计; - 选择适当的聚类层级; - 识别时间趋势、单位根、季节性和结构断点; - 区分解释动态关系与预测任务。 ## 2. 固定效应模型 考虑: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是单位固定效应, [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是时间固定效应。固定效应吸收不随时间变化的单位特征和所有单位共同经历的时期冲击。 组内变换通过减去单位均值消除 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9701em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[(]{.mopen}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 固定效应估计依赖单位内部随时间变化的处理。若处理几乎不变,组内信息很少,标准误会很大。 ## 3. 固定效应不是自动的因果识别 固定效应控制的是时间不变的未观测差异,不能消除: - 随时间变化的遗漏变量; - 处理前趋势不同; - 反向因果和同时性; - 测量误差; - 处理引起的时间变化控制变量。 “加入个体和年份固定效应”是模型设定,不是识别假设的完整描述。要写清楚剩余处理变化为什么可被视为外生,或配合 DID、IV 等设计。 ## 4. 随机效应与 Hausman 直觉 随机效应把单位效应视为随机变量,并要求它与所有解释变量不相关。若该假设成立,随机效应可能更有效;若不成立,固定效应更稳健。Hausman 检验可以提供诊断,但不能替代对数据生成过程和制度机制的判断。 ## 5. 时间序列的平稳性 弱平稳要求均值、方差和协方差结构不随时间变化。带趋势的两个非平稳序列可能产生伪回归: [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 很高、t 值很大,但关系没有稳定经济含义。 回归前要检查: - 图形中的趋势、季节性和断点; - ACF/PACF 与滚动均值/方差; - 单位根和协整; - 变换、差分和模型残差。 差分可以去除某些趋势,但过度差分会丢失长期信息。协整关系需要用误差修正或其他适合的动态结构表达。 ## 6. 动态模型与滞后 一个简单 AR(1) 模型为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8917em;vertical-align:-0.2083em;"}[ρ]{.mord.mathnormal}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 当 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[ρ]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 时,冲击会衰减;当 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 接近 1 时,冲击持久性很高。滞后变量可以描述调整过程,但加入滞后也会带来初始条件、Nickell 偏误、解释与预测区分等问题。 ## 7. 标准误与有效样本量 时间序列误差往往序列相关,普通或仅异方差稳健标准误可能不够。可考虑 Newey–West、HAC、块 bootstrap 或明确建模误差过程。面板中常按个体聚类;若冲击在时间维度高度共同,还要考虑双向聚类或其他依赖结构。 ## 研究生扩展 - 动态面板与 GMM; - 单位根、协整和误差修正模型; - 状态空间、结构 VAR 和局部投影; - 空间相关、网络效应和多维聚类; - 高频数据、混频模型与实时预测。 ## 自测题 1. 固定效应消除了哪类遗漏变量? 2. 为什么固定效应不自动解决反向因果? 3. 伪回归可能有什么表面特征? 4. 为什么时间序列要考虑序列相关标准误? 5. 在面板中,如何决定聚类标准误的层级? ## 下一章 下一章把估计器放进更广的工具箱,并将实验、DID、RDD 与 IV 的共同逻辑连接起来。 # 第六章:估计方法与因果设计的共同基础 []{#第六章估计方法与因果设计的共同基础} ## 1. 估计器与识别先后顺序 极大似然、GMM、OLS 或贝叶斯方法回答“在给定模型和数据下如何估计参数”;实验、IV、DID、RDD 和匹配回答“在什么设计或假设下参数可以被识别”。一个精确估计的错误目标仍然是错误答案。 ## 学习目标 - 写出极大似然和矩估计的基本对象; - 区分识别、估计、推断和预测; - 理解随机化、IV、DID、RDD 和匹配在反事实上的不同构造; - 设计一个从理论机制到估计策略的分析计划; - 识别常见的 p-hacking、泄漏、坏控制和选择后解释问题。 ## 2. 极大似然 若观测密度为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,独立样本的似然为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[L]{.mord.mathnormal}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∏]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 通常最大化对数似然: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} MLE 依赖分布设定;分布错设时,估计可能仍有准最大似然解释,但推断要使用稳健方差并清楚说明目标。 ## 3. GMM 若参数满足矩条件: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 样本矩为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1138em;vertical-align:-0.2997em;"}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.162em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。GMM 选择使加权样本矩尽量接近零的参数: [[[]{.katex-mathml}[[[]{.strut style="height:0.9579em;"}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.554em;vertical-align:-0.7521em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[θ]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3479em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7521em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[W]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:3em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} IV、2SLS 和很多资产定价估计都可以从矩条件理解。关键在于矩条件的经济来源和权重矩阵,而不是软件命令的名称。 ## 4. 因果设计的比较 | 设计 | 反事实来源 | 关键假设 | | ------ | --------------- | -------------------- | | 随机实验 | 随机分配 | 随机化、遵从、无干扰或明确处理干扰 | | IV | 工具产生的处理变化 | 相关性、排除限制、独立性、单调性 | | DID | 处理组的未处理趋势由对照组近似 | 平行趋势及其外推稳定性 | | RDD | 阈值两侧局部可比 | 连续性、无精确操纵、带宽与函数形式 | | 匹配/IPW | 条件可忽略性与重叠 | 可观测变量足以控制选择,且处理概率非极端 | 这些设计都需要把估计量与适用人群、时间窗口和处理版本联系起来。一个设计越局部,外部有效性问题通常越重要。 ## 5. 研究分析计划 写代码前完成一页分析计划: 1. 目标参数与主结果; 2. 处理、结果、协变量和单位; 3. 反事实和识别假设; 4. 主估计量与标准误; 5. 预先指定的稳健性与异质性; 6. 不会被主结果改变的报告规则。 这不是为了阻止探索,而是为了区分确认性分析和探索性分析。 ## 研究生扩展 - 半参数效率与 influence function; - 交叉拟合和双重稳健估计; - 局部平均处理效应与识别集合; - 部分识别、敏感性界限和 Rosenbaum bounds; - 选择后推断和机器学习中的样本外评估。 ## 自测题 1. 识别与估计有什么不同? 2. 为什么分布错设会影响 MLE 的解释? 3. DID 的平行趋势是关于哪个反事实的假设? 4. RDD 的估计对象为什么通常是局部效应? 5. 为什么分析计划应在查看主结果前确定? ## 下一章 最后一章把方法组织成一份可复现的实证项目,训练从原始数据、模型代码到最终报告的完整交付。 # 第七章:可重复计量实证项目 []{#第七章可重复计量实证项目} ## 项目目标 计量学习的终点不是一张回归表,而是一个别人可以检查、运行、质疑和扩展的研究对象。本章给出本科生和研究生都适用的项目结构。 ## 1. 项目目录建议 ```text project/ README.md data_raw/ # 原始数据,只读 data_processed/ # 清洗后的中间数据 code/ # 清理、估计、图表、表格脚本 output/ # 自动生成的表格和图片 notes/ # 研究日志、分析计划、变量字典 report/ # Markdown、Quarto 或 LaTeX 报告 ``` 原始数据与生成结果分开,代码按步骤组织,避免在交互式环境中只运行部分单元而无法重现。 ## 2. 数据字典 | 字段 | 示例 | | ---- | -------------- | | 变量名 | `educ_years` | | 含义 | 最高完成教育年限 | | 单位 | 年 | | 观察层级 | 个体—年份 | | 来源 | 调查问卷第 X 题 | | 缺失编码 | −99 转换为缺失 | | 处理 | 顶格值、异常值和年龄范围 | | 理论角色 | 处理变量/控制变量/结果变量 | 没有数据字典,回归表中的变量名很容易脱离测量含义。研究生项目还要记录版本、下载日期、修订、匹配键和隐私处理。 ## 3. 分析日志 每次改变样本、变量、函数形式、标准误或模型,都记录:日期、改变、理由、预期影响、结果和是否纳入主文。这样可以把“探索”与“确认性结果”区分开。 ## 4. 结果表的最低标准 - 显示观测数和目标样本; - 说明因变量单位和转换; - 报告标准误类型和聚类层级; - 标明固定效应、控制变量和样本限制; - 给出置信区间或至少明确显著性水平; - 同时报告经济量级而非只有星号; - 说明缺失值、权重和异常值处理。 ## 5. 本科生项目 建议选择一个公开数据集,完成: 1. 研究问题和变量字典; 2. 描述性统计和可视化; 3. 两到三个嵌套回归; 4. 合适的稳健标准误; 5. 一个函数形式或样本敏感性分析; 6. 对系数、置信区间和限制的解释。 本科生不必声称发现了严格因果关系,但必须诚实区分描述性和因果语言。 ## 6. 研究生项目 研究生应增加: - 预先定义的目标参数和识别策略; - 主要结果与探索性结果分开; - 处理缺失、测量误差、聚类和弱识别; - 安慰剂、预趋势、替代样本和规格敏感性; - 外部有效性、统计功效和政策解释边界; - 可复现环境或依赖版本说明。 ## 7. 最终审计 在提交前,从一个新的环境运行: 1. 安装依赖; 2. 从原始数据运行清理脚本; 3. 生成所有图表和表格; 4. 检查报告中的数字与输出文件一致; 5. 删除缓存和不可解释的手工修改; 6. 阅读 README,确认另一位研究者知道如何复现。 ## 自测题 1. 为什么原始数据应尽量只读? 2. 结果表中为什么必须说明聚类层级? 3. 探索性结果如何与确认性结果区分? 4. 一个可复现项目是否自动具有因果可信度?为什么? 5. 如果重新运行代码得到不同结果,应该检查哪些来源? ## 与微观计量的衔接 完成本课程后,进入[微观计量经济学](https://www.pengjiaxin.com/../microeconometrics/)时,应把同一套项目审计流程带入 IV、DID、RDD、匹配、离散选择和机器学习因果推断。高级方法不会降低对变量定义、识别假设和可重复性的要求,反而会提高要求。 # 第八章:计量经济学浏览器回归实验 []{#第八章计量经济学浏览器回归实验} 本章用七组数据生成过程把计量经济学的关键概念变成可重复实验。每个问题同时给出 Python 与 R 代码,使用相同的模型和随机种子。你可以直接点击运行,也可以显示代码后修改样本量、信号强度和误差结构。 这里使用合成数据,是为了让“真参数”和内生性来源已知。真实研究没有这个便利:研究者必须借助制度背景、研究设计和稳健性分析论证识别。 ## 学习成果 完成实验后,你应能够: - 用正规方程和软件回归得到相同的 OLS 系数; - 通过数据生成过程解释遗漏变量偏误的方向; - 比较经典标准误与异方差稳健标准误; - 手工完成第一阶段和第二阶段,解释 2SLS 的识别来源; - 用组内去均值理解固定效应估计; - 说明聚类标准误为什么必须匹配处理分配层级; - 用 Bootstrap 近似估计量的抽样分布。 ## 实验规范 每次实验按以下顺序记录: 1. **Estimand**:想估计哪个总体参数? 2. **DGP**:数据怎样生成,哪些变量可观测? 3. **Estimator**:软件究竟计算了什么? 4. **Inference**:标准误允许怎样的误差相关? 5. **Interpretation**:结果是描述、预测还是因果? ::tip{title="浏览器运行环境"} Python 单元由站点已有的 Pyodide 插件执行;R 单元由 webR 执行。首次点击会下载运行时,后续单元复用同一页面状态。代码仅使用 Pyodide 可加载包和 base R。 :: ## 实验一:从正规方程到 OLS ### 目标 在线性模型 [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 中,OLS 选择使残差平方和最小的系数: [[[]{.katex-mathml}[[[]{.strut style="height:1.1523em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 下面用矩阵计算和回归软件计算同一个结果。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZygxMDEpCnNhbXBsZV9zaXplID0gMzAwCnggPSBybmcubm9ybWFsKHNpemU9c2FtcGxlX3NpemUpCnUgPSBybmcubm9ybWFsKHNjYWxlPTEuMiwgc2l6ZT1zYW1wbGVfc2l6ZSkKeSA9IDIuMCArIDEuNSAqIHggKyB1CgpYID0gbnAuY29sdW1uX3N0YWNrKFtucC5vbmVzKHNhbXBsZV9zaXplKSwgeF0pCmJldGFfbWF0cml4ID0gbnAubGluYWxnLnNvbHZlKFguVCBAIFgsIFguVCBAIHkpCm1vZGVsID0gc20uT0xTKHksIFgpLmZpdCgpCgpwcmludCgiVHJ1ZSBjb2VmZmljaWVudHM6ICAgICAgICIsIG5wLmFycmF5KFsyLjAsIDEuNV0pKQpwcmludCgiTWF0cml4IE9MUyBjb2VmZmljaWVudHM6ICIsIG5wLnJvdW5kKGJldGFfbWF0cml4LCA0KSkKcHJpbnQoIlN0YXRzbW9kZWxzIGNvZWZmaWNpZW50czoiLCBucC5yb3VuZChtb2RlbC5wYXJhbXMsIDQpKQpwcmludCgiUmVzaWR1YWwgb3J0aG9nb25hbGl0eSBYJ3U6IiwgbnAucm91bmQoWC5UIEAgbW9kZWwucmVzaWQsIDEwKSk= layout: vertical locale: zh packages: numpy, statsmodels title: Python:手工 OLS 与软件结果 --- :: ::web-r --- code64: c2V0LnNlZWQoMTAxKQpzYW1wbGVfc2l6ZSA8LSAzMDAKeCA8LSBybm9ybShzYW1wbGVfc2l6ZSkKdSA8LSBybm9ybShzYW1wbGVfc2l6ZSwgc2QgPSAxLjIpCnkgPC0gMi4wICsgMS41ICogeCArIHUKClggPC0gY2JpbmQoaW50ZXJjZXB0ID0gMSwgeCA9IHgpCmJldGFfbWF0cml4IDwtIHNvbHZlKGNyb3NzcHJvZChYKSwgY3Jvc3Nwcm9kKFgsIHkpKQptb2RlbCA8LSBsbSh5IH4geCkKCnByaW50KGModHJ1ZV9pbnRlcmNlcHQgPSAyLjAsIHRydWVfc2xvcGUgPSAxLjUpKQpwcmludChyb3VuZChiZXRhX21hdHJpeCwgNCkpCnByaW50KHJvdW5kKGNvZWYobW9kZWwpLCA0KSkKcHJpbnQocm91bmQoY3Jvc3Nwcm9kKFgsIHJlc2lkKG1vZGVsKSksIDEwKSk= layout: vertical locale: zh title: R:手工 OLS 与 lm 结果 --- :: ### 应当观察到什么 两种实现的系数完全一致,且残差与每一列解释变量样本正交。系数不等于真值 1.5 是抽样误差,不是程序错误。把样本量从 300 改为 30,再多次运行,可以看到估计波动增大。 ## 实验二:遗漏变量偏误可以有方向 ### 数据生成过程 假设能力同时影响教育和工资: [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[a]{.mord.mathnormal}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[12]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.8]{.mord}[abi]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[i]{.mord.mathnormal}[t]{.mord.mathnormal}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.10]{.mord}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.50]{.mord}[abi]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[i]{.mord.mathnormal}[t]{.mord.mathnormal}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 教育的结构系数是 0.10。若能力不可观测,短回归把部分能力效应归到教育上。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZygyMDIpCnNhbXBsZV9zaXplID0gMTIwMAphYmlsaXR5ID0gcm5nLm5vcm1hbChzaXplPXNhbXBsZV9zaXplKQplZHVjYXRpb24gPSAxMiArIDAuOCAqIGFiaWxpdHkgKyBybmcubm9ybWFsKHNjYWxlPTEuMCwgc2l6ZT1zYW1wbGVfc2l6ZSkKbG9nX3dhZ2UgPSAoCiAgICAxLjAKICAgICsgMC4xMCAqIGVkdWNhdGlvbgogICAgKyAwLjUwICogYWJpbGl0eQogICAgKyBybmcubm9ybWFsKHNjYWxlPTAuNywgc2l6ZT1zYW1wbGVfc2l6ZSkKKQoKc2hvcnRfWCA9IHNtLmFkZF9jb25zdGFudChlZHVjYXRpb24pCmZ1bGxfWCA9IHNtLmFkZF9jb25zdGFudChucC5jb2x1bW5fc3RhY2soW2VkdWNhdGlvbiwgYWJpbGl0eV0pKQpzaG9ydF9tb2RlbCA9IHNtLk9MUyhsb2dfd2FnZSwgc2hvcnRfWCkuZml0KCkKZnVsbF9tb2RlbCA9IHNtLk9MUyhsb2dfd2FnZSwgZnVsbF9YKS5maXQoKQoKcHJpbnQoZiJUcnVlIGVkdWNhdGlvbiBlZmZlY3Q6ICAgICAgICB7MC4xMDouM2Z9IikKcHJpbnQoZiJTaG9ydCByZWdyZXNzaW9uIGNvZWZmaWNpZW50OiB7c2hvcnRfbW9kZWwucGFyYW1zWzFdOi4zZn0iKQpwcmludChmIkZ1bGwgcmVncmVzc2lvbiBjb2VmZmljaWVudDogIHtmdWxsX21vZGVsLnBhcmFtc1sxXTouM2Z9IikKcHJpbnQoZiJFZHVjYXRpb24tYWJpbGl0eSBjb3JyZWxhdGlvbjoge25wLmNvcnJjb2VmKGVkdWNhdGlvbiwgYWJpbGl0eSlbMCwxXTouM2Z9Iik= layout: vertical locale: zh packages: numpy, statsmodels title: Python:短回归与完整回归 --- :: ::web-r --- code64: c2V0LnNlZWQoMjAyKQpzYW1wbGVfc2l6ZSA8LSAxMjAwCmFiaWxpdHkgPC0gcm5vcm0oc2FtcGxlX3NpemUpCmVkdWNhdGlvbiA8LSAxMiArIDAuOCAqIGFiaWxpdHkgKyBybm9ybShzYW1wbGVfc2l6ZSwgc2QgPSAxLjApCmxvZ193YWdlIDwtICgKICAxLjAKICArIDAuMTAgKiBlZHVjYXRpb24KICArIDAuNTAgKiBhYmlsaXR5CiAgKyBybm9ybShzYW1wbGVfc2l6ZSwgc2QgPSAwLjcpCikKCnNob3J0X21vZGVsIDwtIGxtKGxvZ193YWdlIH4gZWR1Y2F0aW9uKQpmdWxsX21vZGVsIDwtIGxtKGxvZ193YWdlIH4gZWR1Y2F0aW9uICsgYWJpbGl0eSkKCnByaW50KGMoCiAgdHJ1ZV9lZmZlY3QgPSAwLjEwLAogIHNob3J0X3JlZ3Jlc3Npb24gPSBjb2VmKHNob3J0X21vZGVsKVsiZWR1Y2F0aW9uIl0sCiAgZnVsbF9yZWdyZXNzaW9uID0gY29lZihmdWxsX21vZGVsKVsiZWR1Y2F0aW9uIl0sCiAgZWR1Y2F0aW9uX2FiaWxpdHlfY29ycmVsYXRpb24gPSBjb3IoZWR1Y2F0aW9uLCBhYmlsaXR5KQopKQ== layout: vertical locale: zh title: R:短回归与完整回归 --- :: ### 偏误方向 在单一遗漏变量情形,偏误近似为: [[[]{.katex-mathml}[[[]{.strut style="height:1.2079em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[ia]{.mord.mathnormal}[s]{.mord.mathnormal}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[^]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9579em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[e]{.mord.mathnormal.mtight}[d]{.mord.mathnormal.mtight}[u]{.mord.mathnormal.mtight}[c]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}[i]{.mord.mathnormal.mtight}[o]{.mord.mathnormal.mtight}[n]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[abi]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[→]{.mrel.mtight}[w]{.mord.mathnormal.mtight style="margin-right:0.0269em;"}[a]{.mord.mathnormal.mtight}[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[e]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[n]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[n]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[abi]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[i]{.mord.mathnormal}[t]{.mord.mathnormal}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 两个因子都为正,因此短回归向上偏。把能力对教育的系数改为负值,偏误方向会改变。真实数据中能力可能不可观测,加入代理变量也可能有测量误差,因此“控制更多变量”不等于自动恢复因果效应。 ## 实验三:异方差改变推断,不一定改变系数 ### 数据生成过程 令误差标准差随 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[∣]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[∣]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 增大: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1.5∣]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[∣]{.mord}[)]{.mclose}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若条件均值仍为零,OLS 系数可以无偏或一致,但经典同方差标准误不再可靠。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZygzMDMpCnNhbXBsZV9zaXplID0gNzAwCnggPSBybmcubm9ybWFsKHNpemU9c2FtcGxlX3NpemUpCmVycm9yX3NjYWxlID0gMC41ICsgMS41ICogbnAuYWJzKHgpCnUgPSBlcnJvcl9zY2FsZSAqIHJuZy5ub3JtYWwoc2l6ZT1zYW1wbGVfc2l6ZSkKeSA9IDEuMCArIDIuMCAqIHggKyB1CgpYID0gc20uYWRkX2NvbnN0YW50KHgpCmNsYXNzaWNhbCA9IHNtLk9MUyh5LCBYKS5maXQoKQpyb2J1c3QgPSBzbS5PTFMoeSwgWCkuZml0KGNvdl90eXBlPSJIQzEiKQoKcHJpbnQoZiJTbG9wZSBlc3RpbWF0ZTogICAgICAge2NsYXNzaWNhbC5wYXJhbXNbMV06LjRmfSIpCnByaW50KGYiQ2xhc3NpY2FsIHN0YW5kYXJkIGVycm9yOiB7Y2xhc3NpY2FsLmJzZVsxXTouNGZ9IikKcHJpbnQoZiJIQzEgcm9idXN0IHN0YW5kYXJkIGVycm9yOiB7cm9idXN0LmJzZVsxXTouNGZ9IikKcHJpbnQoZiJDbGFzc2ljYWwgOTUlIENJOiB7Y2xhc3NpY2FsLmNvbmZfaW50KClbMV19IikKcHJpbnQoZiJSb2J1c3QgOTUlIENJOiAgICB7cm9idXN0LmNvbmZfaW50KClbMV19Iik= layout: vertical locale: zh packages: numpy, statsmodels title: Python:经典与 HC1 标准误 --- :: ::web-r --- code64: c2V0LnNlZWQoMzAzKQpzYW1wbGVfc2l6ZSA8LSA3MDAKeCA8LSBybm9ybShzYW1wbGVfc2l6ZSkKZXJyb3Jfc2NhbGUgPC0gMC41ICsgMS41ICogYWJzKHgpCnUgPC0gZXJyb3Jfc2NhbGUgKiBybm9ybShzYW1wbGVfc2l6ZSkKeSA8LSAxLjAgKyAyLjAgKiB4ICsgdQoKbW9kZWwgPC0gbG0oeSB+IHgpClggPC0gbW9kZWwubWF0cml4KG1vZGVsKQpyZXNpZHVhbHNfc3F1YXJlZCA8LSByZXNpZChtb2RlbCleMgpuIDwtIG5yb3coWCkKayA8LSBuY29sKFgpCgpicmVhZCA8LSBzb2x2ZShjcm9zc3Byb2QoWCkpCndlaWdodGVkX1ggPC0gWCAqIGFzLnZlY3RvcihyZXNpZChtb2RlbCkpCm1lYXQgPC0gY3Jvc3Nwcm9kKHdlaWdodGVkX1gpCnZjb3ZfaGMxIDwtIChuIC8gKG4gLSBrKSkgKiBicmVhZCAlKiUgbWVhdCAlKiUgYnJlYWQKCmNsYXNzaWNhbF9zZSA8LSBzdW1tYXJ5KG1vZGVsKSRjb2VmZmljaWVudHNbIngiLCAiU3RkLiBFcnJvciJdCnJvYnVzdF9zZSA8LSBzcXJ0KGRpYWcodmNvdl9oYzEpKVsieCJdCgpwcmludChjKAogIHNsb3BlID0gY29lZihtb2RlbClbIngiXSwKICBjbGFzc2ljYWxfc2UgPSBjbGFzc2ljYWxfc2UsCiAgSEMxX3NlID0gcm9idXN0X3NlCikp layout: vertical locale: zh title: R:手工计算 HC1 标准误 --- :: ### 审计问题 - 稳健标准误不修复内生性、遗漏变量或错误函数形式。 - 小样本中 HC0、HC1、HC2、HC3 可能差异明显。 - 若误差在群组或时间上相关,仅做异方差稳健仍然不够。 ## 实验四:工具变量与两阶段最小二乘 ### 数据生成过程 令 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 影响教育,但不直接影响工资;能力同时影响教育和工资: [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[a]{.mord.mathnormal}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[12]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.9]{.mord}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.9]{.mord}[abi]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[i]{.mord.mathnormal}[t]{.mord.mathnormal}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.12]{.mord}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.7]{.mord}[abi]{.mord.mathnormal}[l]{.mord.mathnormal style="margin-right:0.0197em;"}[i]{.mord.mathnormal}[t]{.mord.mathnormal}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 在模拟中, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[z]{.mord.mathnormal style="margin-right:0.044em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.044em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与能力独立,因此相关性与排除限制按设计成立。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZyg0MDQpCnNhbXBsZV9zaXplID0gMjAwMAppbnN0cnVtZW50ID0gcm5nLm5vcm1hbChzaXplPXNhbXBsZV9zaXplKQphYmlsaXR5ID0gcm5nLm5vcm1hbChzaXplPXNhbXBsZV9zaXplKQplZHVjYXRpb24gPSAoCiAgICAxMgogICAgKyAwLjkgKiBpbnN0cnVtZW50CiAgICArIDAuOSAqIGFiaWxpdHkKICAgICsgcm5nLm5vcm1hbChzaXplPXNhbXBsZV9zaXplKQopCmxvZ193YWdlID0gKAogICAgMQogICAgKyAwLjEyICogZWR1Y2F0aW9uCiAgICArIDAuNyAqIGFiaWxpdHkKICAgICsgcm5nLm5vcm1hbChzY2FsZT0wLjgsIHNpemU9c2FtcGxlX3NpemUpCikKCm9scyA9IHNtLk9MUyhsb2dfd2FnZSwgc20uYWRkX2NvbnN0YW50KGVkdWNhdGlvbikpLmZpdCgpCmZpcnN0X3N0YWdlID0gc20uT0xTKGVkdWNhdGlvbiwgc20uYWRkX2NvbnN0YW50KGluc3RydW1lbnQpKS5maXQoKQplZHVjYXRpb25faGF0ID0gZmlyc3Rfc3RhZ2UuZml0dGVkdmFsdWVzCnNlY29uZF9zdGFnZSA9IHNtLk9MUyhsb2dfd2FnZSwgc20uYWRkX2NvbnN0YW50KGVkdWNhdGlvbl9oYXQpKS5maXQoKQoKZmlyc3Rfc3RhZ2VfZiA9IGZsb2F0KGZpcnN0X3N0YWdlLnR2YWx1ZXNbMV0gKiogMikKcHJpbnQoZiJUcnVlIGNhdXNhbCBlZmZlY3Q6IHswLjEyOi4zZn0iKQpwcmludChmIk9MUyBlc3RpbWF0ZTogICAgICAge29scy5wYXJhbXNbMV06LjNmfSIpCnByaW50KGYiMlNMUyBwb2ludCBlc3RpbWF0ZTp7c2Vjb25kX3N0YWdlLnBhcmFtc1sxXTouM2Z9IikKcHJpbnQoZiJGaXJzdC1zdGFnZSBzbG9wZTogIHtmaXJzdF9zdGFnZS5wYXJhbXNbMV06LjNmfSIpCnByaW50KGYiRmlyc3Qtc3RhZ2UgRjogICAgICB7Zmlyc3Rfc3RhZ2VfZjouMWZ9IikKcHJpbnQoIk5vdGU6IHRoZSBzZWNvbmQtc3RhZ2UgT0xTIHN0YW5kYXJkIGVycm9yIGlzIG5vdCBhIHZhbGlkIDJTTFMgc3RhbmRhcmQgZXJyb3IuIik= layout: vertical locale: zh packages: numpy, statsmodels title: Python:OLS、第一阶段与 2SLS --- :: ::web-r --- code64: c2V0LnNlZWQoNDA0KQpzYW1wbGVfc2l6ZSA8LSAyMDAwCmluc3RydW1lbnQgPC0gcm5vcm0oc2FtcGxlX3NpemUpCmFiaWxpdHkgPC0gcm5vcm0oc2FtcGxlX3NpemUpCmVkdWNhdGlvbiA8LSAoCiAgMTIKICArIDAuOSAqIGluc3RydW1lbnQKICArIDAuOSAqIGFiaWxpdHkKICArIHJub3JtKHNhbXBsZV9zaXplKQopCmxvZ193YWdlIDwtICgKICAxCiAgKyAwLjEyICogZWR1Y2F0aW9uCiAgKyAwLjcgKiBhYmlsaXR5CiAgKyBybm9ybShzYW1wbGVfc2l6ZSwgc2QgPSAwLjgpCikKCm9scyA8LSBsbShsb2dfd2FnZSB+IGVkdWNhdGlvbikKZmlyc3Rfc3RhZ2UgPC0gbG0oZWR1Y2F0aW9uIH4gaW5zdHJ1bWVudCkKZWR1Y2F0aW9uX2hhdCA8LSBmaXR0ZWQoZmlyc3Rfc3RhZ2UpCnNlY29uZF9zdGFnZSA8LSBsbShsb2dfd2FnZSB+IGVkdWNhdGlvbl9oYXQpCmZpcnN0X3N0YWdlX2YgPC0gc3VtbWFyeShmaXJzdF9zdGFnZSkkY29lZmZpY2llbnRzWyJpbnN0cnVtZW50IiwgInQgdmFsdWUiXV4yCgpwcmludChjKAogIHRydWVfZWZmZWN0ID0gMC4xMiwKICBPTFMgPSBjb2VmKG9scylbImVkdWNhdGlvbiJdLAogIHR3b19zdGFnZV9wb2ludF9lc3RpbWF0ZSA9IGNvZWYoc2Vjb25kX3N0YWdlKVsiZWR1Y2F0aW9uX2hhdCJdLAogIGZpcnN0X3N0YWdlX3Nsb3BlID0gY29lZihmaXJzdF9zdGFnZSlbImluc3RydW1lbnQiXSwKICBmaXJzdF9zdGFnZV9GID0gZmlyc3Rfc3RhZ2VfZgopKQpwcmludCgiU2Vjb25kLXN0YWdlIGxtIHN0YW5kYXJkIGVycm9ycyBhcmUgbm90IHZhbGlkIDJTTFMgc3RhbmRhcmQgZXJyb3JzLiIp layout: vertical locale: zh title: R:OLS、第一阶段与 2SLS --- :: ### 为什么要警告标准误 把第一阶段拟合值直接放进普通 OLS 可以得到恰好相同的 2SLS 点估计,但普通第二阶段标准误忽略拟合值的估计误差。正式研究应使用专门 IV 估计器,并报告弱工具诊断、稳健或聚类标准误,以及排除限制的制度论证。 ### 弱工具实验 把第一阶段系数 0.9 改为 0.08,重复运行。你会看到第一阶段 F 值下降,2SLS 估计波动明显增大。显著的第一阶段也不能证明排除限制;它只提供相关性证据。 ## 实验五:固定效应的组内变换 ### 数据生成过程 个体特征 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 同时影响解释变量和结果: [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0.8]{.mord}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1.5]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} Pooled OLS 遗漏 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。固定效应通过个体内去均值消除时间不变的 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7622em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[x]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[u]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.2222em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZyg1MDUpCnVuaXRzID0gMTIwCnBlcmlvZHMgPSA4Cgp1bml0X2VmZmVjdCA9IHJuZy5ub3JtYWwoc2l6ZT11bml0cykKdW5pdF9pZCA9IG5wLnJlcGVhdChucC5hcmFuZ2UodW5pdHMpLCBwZXJpb2RzKQphbHBoYSA9IG5wLnJlcGVhdCh1bml0X2VmZmVjdCwgcGVyaW9kcykKd2l0aGluX3NpZ25hbCA9IHJuZy5ub3JtYWwoc2l6ZT11bml0cyAqIHBlcmlvZHMpCnggPSAwLjggKiBhbHBoYSArIHdpdGhpbl9zaWduYWwKeSA9IDEuNSAqIHggKyBhbHBoYSArIHJuZy5ub3JtYWwoc2NhbGU9MC44LCBzaXplPXVuaXRzICogcGVyaW9kcykKCnBvb2xlZCA9IHNtLk9MUyh5LCBzbS5hZGRfY29uc3RhbnQoeCkpLmZpdCgpCgp4X21hdHJpeCA9IHgucmVzaGFwZSh1bml0cywgcGVyaW9kcykKeV9tYXRyaXggPSB5LnJlc2hhcGUodW5pdHMsIHBlcmlvZHMpCnhfZGVtZWFuZWQgPSAoeF9tYXRyaXggLSB4X21hdHJpeC5tZWFuKGF4aXM9MSwga2VlcGRpbXM9VHJ1ZSkpLnJhdmVsKCkKeV9kZW1lYW5lZCA9ICh5X21hdHJpeCAtIHlfbWF0cml4Lm1lYW4oYXhpcz0xLCBrZWVwZGltcz1UcnVlKSkucmF2ZWwoKQp3aXRoaW4gPSBzbS5PTFMoeV9kZW1lYW5lZCwgeF9kZW1lYW5lZFs6LCBOb25lXSkuZml0KCkKCnByaW50KGYiVHJ1ZSBzbG9wZTogICAgICAgIHsxLjU6LjNmfSIpCnByaW50KGYiUG9vbGVkIE9MUyBzbG9wZTogIHtwb29sZWQucGFyYW1zWzFdOi4zZn0iKQpwcmludChmIldpdGhpbi1GRSBzbG9wZTogICB7d2l0aGluLnBhcmFtc1swXTouM2Z9IikKcHJpbnQoZiJNZWFuIGRlbWVhbmVkIHggYnkgdW5pdCAobWF4IGFicyk6IHtucC5tYXgobnAuYWJzKHhfZGVtZWFuZWQucmVzaGFwZSh1bml0cywgcGVyaW9kcykubWVhbihheGlzPTEpKSk6LjJlfSIp layout: vertical locale: zh packages: numpy, statsmodels title: Python:Pooled OLS 与组内估计 --- :: ::web-r --- code64: c2V0LnNlZWQoNTA1KQp1bml0cyA8LSAxMjAKcGVyaW9kcyA8LSA4Cgp1bml0X2VmZmVjdCA8LSBybm9ybSh1bml0cykKdW5pdF9pZCA8LSByZXAoMTp1bml0cywgZWFjaCA9IHBlcmlvZHMpCmFscGhhIDwtIHJlcCh1bml0X2VmZmVjdCwgZWFjaCA9IHBlcmlvZHMpCndpdGhpbl9zaWduYWwgPC0gcm5vcm0odW5pdHMgKiBwZXJpb2RzKQp4IDwtIDAuOCAqIGFscGhhICsgd2l0aGluX3NpZ25hbAp5IDwtIDEuNSAqIHggKyBhbHBoYSArIHJub3JtKHVuaXRzICogcGVyaW9kcywgc2QgPSAwLjgpCgpwb29sZWQgPC0gbG0oeSB+IHgpCnhfZGVtZWFuZWQgPC0geCAtIGF2ZSh4LCB1bml0X2lkKQp5X2RlbWVhbmVkIDwtIHkgLSBhdmUoeSwgdW5pdF9pZCkKd2l0aGluIDwtIGxtKHlfZGVtZWFuZWQgfiB4X2RlbWVhbmVkIC0gMSkKCnByaW50KGMoCiAgdHJ1ZV9zbG9wZSA9IDEuNSwKICBwb29sZWRfT0xTID0gY29lZihwb29sZWQpWyJ4Il0sCiAgd2l0aGluX0ZFID0gY29lZih3aXRoaW4pWyJ4X2RlbWVhbmVkIl0KKSkKcHJpbnQobWF4KGFicyh0YXBwbHkoeF9kZW1lYW5lZCwgdW5pdF9pZCwgbWVhbikpKSk= layout: vertical locale: zh title: R:Pooled OLS 与组内估计 --- :: ### 固定效应不能做什么 固定效应只消除时间不变、以加法进入模型的个体差异。它不能自动解决时间变化的混淆、反向因果、测量误差或动态面板偏误。若处理几乎不随时间变化,组内估计还可能非常不精确。 ## 实验六:标准误应跟随处理分配层级 ### 数据生成过程 假设政策在学校层面分配,而结果在学生层面观测。同校学生共享学校冲击: [[[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8694em;vertical-align:-0.2861em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 即使有很多学生,真正独立的处理变异主要来自学校数量。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KCnJuZyA9IG5wLnJhbmRvbS5kZWZhdWx0X3JuZyg2MDYpCmNsdXN0ZXJzID0gNjAKc3R1ZGVudHNfcGVyX2NsdXN0ZXIgPSAyNQpjbHVzdGVyX2lkID0gbnAucmVwZWF0KG5wLmFyYW5nZShjbHVzdGVycyksIHN0dWRlbnRzX3Blcl9jbHVzdGVyKQoKdHJlYXRtZW50X2J5X2NsdXN0ZXIgPSBybmcuYmlub21pYWwoMSwgMC41LCBzaXplPWNsdXN0ZXJzKQp0cmVhdG1lbnQgPSBucC5yZXBlYXQodHJlYXRtZW50X2J5X2NsdXN0ZXIsIHN0dWRlbnRzX3Blcl9jbHVzdGVyKQpjbHVzdGVyX3Nob2NrID0gbnAucmVwZWF0KHJuZy5ub3JtYWwoc2NhbGU9MS41LCBzaXplPWNsdXN0ZXJzKSwgc3R1ZGVudHNfcGVyX2NsdXN0ZXIpCmluZGl2aWR1YWxfbm9pc2UgPSBybmcubm9ybWFsKHNpemU9Y2x1c3RlcnMgKiBzdHVkZW50c19wZXJfY2x1c3RlcikKeSA9IDAuOCAqIHRyZWF0bWVudCArIGNsdXN0ZXJfc2hvY2sgKyBpbmRpdmlkdWFsX25vaXNlCgpYID0gc20uYWRkX2NvbnN0YW50KHRyZWF0bWVudCkKb3JkaW5hcnkgPSBzbS5PTFMoeSwgWCkuZml0KCkKY2x1c3RlcmVkID0gc20uT0xTKHksIFgpLmZpdCgKICAgIGNvdl90eXBlPSJjbHVzdGVyIiwKICAgIGNvdl9rd2RzPXsiZ3JvdXBzIjogY2x1c3Rlcl9pZH0KKQoKcHJpbnQoZiJUcmVhdG1lbnQgZXN0aW1hdGU6IHtvcmRpbmFyeS5wYXJhbXNbMV06LjNmfSIpCnByaW50KGYiT3JkaW5hcnkgU0U6ICAgICAgICB7b3JkaW5hcnkuYnNlWzFdOi4zZn0iKQpwcmludChmIkNsdXN0ZXJlZCBTRTogICAgICAge2NsdXN0ZXJlZC5ic2VbMV06LjNmfSIpCnByaW50KGYiU3R1ZGVudHM6IHtsZW4oeSl9LCBpbmRlcGVuZGVudCBhc3NpZ25tZW50IGNsdXN0ZXJzOiB7Y2x1c3RlcnN9Iik= layout: vertical locale: zh packages: numpy, statsmodels title: Python:普通与学校聚类标准误 --- :: ::web-r --- code64: c2V0LnNlZWQoNjA2KQpjbHVzdGVycyA8LSA2MApzdHVkZW50c19wZXJfY2x1c3RlciA8LSAyNQpjbHVzdGVyX2lkIDwtIHJlcCgxOmNsdXN0ZXJzLCBlYWNoID0gc3R1ZGVudHNfcGVyX2NsdXN0ZXIpCgp0cmVhdG1lbnRfYnlfY2x1c3RlciA8LSByYmlub20oY2x1c3RlcnMsIDEsIDAuNSkKdHJlYXRtZW50IDwtIHJlcCh0cmVhdG1lbnRfYnlfY2x1c3RlciwgZWFjaCA9IHN0dWRlbnRzX3Blcl9jbHVzdGVyKQpjbHVzdGVyX3Nob2NrIDwtIHJlcChybm9ybShjbHVzdGVycywgc2QgPSAxLjUpLCBlYWNoID0gc3R1ZGVudHNfcGVyX2NsdXN0ZXIpCmluZGl2aWR1YWxfbm9pc2UgPC0gcm5vcm0oY2x1c3RlcnMgKiBzdHVkZW50c19wZXJfY2x1c3RlcikKeSA8LSAwLjggKiB0cmVhdG1lbnQgKyBjbHVzdGVyX3Nob2NrICsgaW5kaXZpZHVhbF9ub2lzZQoKbW9kZWwgPC0gbG0oeSB+IHRyZWF0bWVudCkKWCA8LSBtb2RlbC5tYXRyaXgobW9kZWwpCnUgPC0gcmVzaWQobW9kZWwpCmJyZWFkIDwtIHNvbHZlKGNyb3NzcHJvZChYKSkKCmNsdXN0ZXJfc2NvcmVzIDwtIG1hdHJpeCgwLCBucm93ID0gY2x1c3RlcnMsIG5jb2wgPSBuY29sKFgpKQpmb3IgKGNsdXN0ZXIgaW4gMTpjbHVzdGVycykgewogIHJvd3MgPC0gY2x1c3Rlcl9pZCA9PSBjbHVzdGVyCiAgY2x1c3Rlcl9zY29yZXNbY2x1c3RlciwgXSA8LSBjcm9zc3Byb2QoWFtyb3dzLCAsIGRyb3AgPSBGQUxTRV0sIHVbcm93c10pCn0KbWVhdCA8LSBjcm9zc3Byb2QoY2x1c3Rlcl9zY29yZXMpCmZpbml0ZV9zYW1wbGUgPC0gKGNsdXN0ZXJzIC8gKGNsdXN0ZXJzIC0gMSkpICogKChucm93KFgpIC0gMSkgLyAobnJvdyhYKSAtIG5jb2woWCkpKQp2Y292X2NsdXN0ZXIgPC0gZmluaXRlX3NhbXBsZSAqIGJyZWFkICUqJSBtZWF0ICUqJSBicmVhZAoKb3JkaW5hcnlfc2UgPC0gc3VtbWFyeShtb2RlbCkkY29lZmZpY2llbnRzWyJ0cmVhdG1lbnQiLCAiU3RkLiBFcnJvciJdCmNsdXN0ZXJlZF9zZSA8LSBzcXJ0KGRpYWcodmNvdl9jbHVzdGVyKSlbInRyZWF0bWVudCJdCgpwcmludChjKAogIHRyZWF0bWVudF9lc3RpbWF0ZSA9IGNvZWYobW9kZWwpWyJ0cmVhdG1lbnQiXSwKICBvcmRpbmFyeV9zZSA9IG9yZGluYXJ5X3NlLAogIGNsdXN0ZXJlZF9zZSA9IGNsdXN0ZXJlZF9zZSwKICBzdHVkZW50cyA9IGxlbmd0aCh5KSwKICBhc3NpZ25tZW50X2NsdXN0ZXJzID0gY2x1c3RlcnMKKSk= layout: vertical locale: zh title: R:手工学校聚类标准误 --- :: ### 解释 把学生人数当作独立样本会夸大有效信息量。聚类层级应由处理分配和误差相关机制决定,不能只选择让显著性最好看的层级。群组很少时,常规聚类渐近近似也可能不可靠,需要小样本修正、随机化推断或 wild cluster bootstrap。 ## 实验七:Bootstrap 看见估计量的抽样分布 ### 思想 Pairs Bootstrap 从观测对 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 中有放回重抽样,每次重新估计系数。得到的系数分布近似原估计量的抽样分布。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDcwNykKc2FtcGxlX3NpemUgPSAxODAKeCA9IHJuZy5sb2dub3JtYWwobWVhbj0wLjAsIHNpZ21hPTAuOCwgc2l6ZT1zYW1wbGVfc2l6ZSkKdSA9ICgwLjQgKyAwLjUgKiB4KSAqIHJuZy5ub3JtYWwoc2l6ZT1zYW1wbGVfc2l6ZSkKeSA9IDAuNSArIDEuMiAqIHggKyB1CgpvcmlnaW5hbCA9IHNtLk9MUyh5LCBzbS5hZGRfY29uc3RhbnQoeCkpLmZpdCgpCmJvb3RzdHJhcF9zbG9wZXMgPSBbXQoKZm9yIF8gaW4gcmFuZ2UoMTAwMCk6CiAgICBkcmF3ID0gcm5nLmludGVnZXJzKDAsIHNhbXBsZV9zaXplLCBzaXplPXNhbXBsZV9zaXplKQogICAgZml0dGVkID0gc20uT0xTKHlbZHJhd10sIHNtLmFkZF9jb25zdGFudCh4W2RyYXddKSkuZml0KCkKICAgIGJvb3RzdHJhcF9zbG9wZXMuYXBwZW5kKGZpdHRlZC5wYXJhbXNbMV0pCgpib290c3RyYXBfc2xvcGVzID0gbnAuYXJyYXkoYm9vdHN0cmFwX3Nsb3BlcykKaW50ZXJ2YWwgPSBucC5xdWFudGlsZShib290c3RyYXBfc2xvcGVzLCBbMC4wMjUsIDAuOTc1XSkKCnByaW50KGYiT3JpZ2luYWwgc2xvcGU6IHtvcmlnaW5hbC5wYXJhbXNbMV06LjRmfSIpCnByaW50KGYiQm9vdHN0cmFwIFNFOiAgIHtib290c3RyYXBfc2xvcGVzLnN0ZChkZG9mPTEpOi40Zn0iKQpwcmludChmIlBlcmNlbnRpbGUgQ0k6ICBbe2ludGVydmFsWzBdOi40Zn0sIHtpbnRlcnZhbFsxXTouNGZ9XSIpCgpwbHQuaGlzdChib290c3RyYXBfc2xvcGVzLCBiaW5zPTM1LCBkZW5zaXR5PVRydWUsIGFscGhhPTAuNzUpCnBsdC5heHZsaW5lKDEuMiwgY29sb3I9ImJsYWNrIiwgbGluZXN0eWxlPSItLSIsIGxhYmVsPSJUcnVlIHNsb3BlIikKcGx0LmF4dmxpbmUob3JpZ2luYWwucGFyYW1zWzFdLCBjb2xvcj0icmVkIiwgbGFiZWw9IlNhbXBsZSBlc3RpbWF0ZSIpCnBsdC54bGFiZWwoIkJvb3RzdHJhcCBzbG9wZSIpCnBsdC55bGFiZWwoIkRlbnNpdHkiKQpwbHQubGVnZW5kKCkKcGx0LnNob3coKQ== layout: vertical locale: zh packages: numpy, statsmodels, matplotlib title: Python:Pairs Bootstrap 回归 --- :: ::web-r --- code64: c2V0LnNlZWQoNzA3KQpzYW1wbGVfc2l6ZSA8LSAxODAKeCA8LSBybG5vcm0oc2FtcGxlX3NpemUsIG1lYW5sb2cgPSAwLjAsIHNkbG9nID0gMC44KQp1IDwtICgwLjQgKyAwLjUgKiB4KSAqIHJub3JtKHNhbXBsZV9zaXplKQp5IDwtIDAuNSArIDEuMiAqIHggKyB1CgpvcmlnaW5hbCA8LSBsbSh5IH4geCkKYm9vdHN0cmFwX3Nsb3BlcyA8LSBudW1lcmljKDEwMDApCgpmb3IgKHJlcGxpY2F0ZSBpbiAxOjEwMDApIHsKICBkcmF3IDwtIHNhbXBsZS5pbnQoc2FtcGxlX3NpemUsIHNhbXBsZV9zaXplLCByZXBsYWNlID0gVFJVRSkKICBmaXR0ZWQgPC0gbG0oeVtkcmF3XSB+IHhbZHJhd10pCiAgYm9vdHN0cmFwX3Nsb3Blc1tyZXBsaWNhdGVdIDwtIGNvZWYoZml0dGVkKVsyXQp9CgppbnRlcnZhbCA8LSBxdWFudGlsZShib290c3RyYXBfc2xvcGVzLCBjKDAuMDI1LCAwLjk3NSkpCnByaW50KGMoCiAgb3JpZ2luYWxfc2xvcGUgPSBjb2VmKG9yaWdpbmFsKVsieCJdLAogIGJvb3RzdHJhcF9zZSA9IHNkKGJvb3RzdHJhcF9zbG9wZXMpLAogIGxvd2VyID0gaW50ZXJ2YWxbMV0sCiAgdXBwZXIgPSBpbnRlcnZhbFsyXQopKQoKaGlzdCgKICBib290c3RyYXBfc2xvcGVzLAogIGJyZWFrcyA9IDM1LAogIGZyZXEgPSBGQUxTRSwKICB4bGFiID0gIkJvb3RzdHJhcCBzbG9wZSIsCiAgbWFpbiA9ICJQYWlycyBCb290c3RyYXAgZGlzdHJpYnV0aW9uIgopCmFibGluZSh2ID0gMS4yLCBsdHkgPSAyKQphYmxpbmUodiA9IGNvZWYob3JpZ2luYWwpWyJ4Il0sIGNvbCA9ICJyZWQiKQ== layout: vertical locale: zh title: R:Pairs Bootstrap 回归 --- :: ### Bootstrap 不是万能修复 重抽样单位必须匹配数据结构。时间序列常需要 block bootstrap;聚类数据应按群组重抽样;极端小样本、参数在边界、弱识别或非平滑统计量下,普通 Bootstrap 可能失败。 ## 综合作业 选择一个实验并完成以下审计: 1. 写出 DGP、estimand 和估计量; 2. 用 Python 与 R 得到基准结果; 3. 改变样本量和一个结构参数,重复 200 次; 4. 画出估计量分布或报告偏差、标准差和覆盖率; 5. 指出在真实数据中最危险的识别假设; 6. 说明应使用何种稳健性检查和标准误。 ## 进一步阅读 - Wooldridge, *Introductory Econometrics*:OLS、IV、面板和应用解释; - Hayashi, *Econometrics*:投影、渐近理论、GMM 与时间序列; - Hansen, *Econometrics*:现代估计与推断的系统参考; - Angrist and Pischke, *Mostly Harmless Econometrics*:研究设计与实证直觉; - Cameron and Miller (2015), “A Practitioner’s Guide to Cluster-Robust Inference”。 [返回课程首页](https://www.pengjiaxin.com/) · [进入可重复实证项目](https://www.pengjiaxin.com/07-reproducible-project) # 第九章:前沿文献与现代计量案例(2023—2026) []{#第九章前沿文献与现代计量案例20232026} 现代计量经济学的进步,往往不是发明一个更复杂的回归,而是发现一个常用回归在什么条件下不再估计研究者以为的对象。本章选择三组近期文献,集中训练三个能力:先定义 estimand,再识别“谁在充当谁的对照组”,最后检查灵活预测工具有没有破坏有效推断。 本章基于截至 **2026 年 7 月 31 日** 的一手文献定向检索,不是系统综述。示例使用合成数据,仅复现方法的逻辑,不复现论文的经验结果。 ## 学习目标 完成本章后,你应能够: 1. 解释交错实施政策下传统双向固定效应回归为何可能混合不合适的比较; 2. 写出组别—时间处理效应与动态事件时间效应; 3. 用“只在未处理观测上拟合反事实”的插补逻辑估计 ATT; 4. 说明平行趋势检验为什么不能把“未拒绝”误写成“已证明”; 5. 解释双重机器学习中的正交化、交叉拟合和高维混淆控制; 6. 区分预测准确率、参数识别和置信区间覆盖率。 ## 案例一:交错实施下,传统事件研究到底在平均什么 ### 1. 基本设定 令单位 [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 在时期 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 首次接受处理,此后持续处于处理状态: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord.mathbf}[(]{.mopen}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 潜在结果写为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。研究者真正关心的通常不是一个永恒不变的 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,而是组别—时间效应: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[]]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若再按事件时间 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6984em;vertical-align:-0.0833em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 聚合,得到政策实施后第 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 期的平均动态效应。到这里,目标参数已经告诉我们:不同批次和不同处理时长可以有不同效果。 ### 2. 为什么双向固定效应可能失败 传统回归常写成: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 当所有单位同时处理且效应恒定时, [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的解释相对清楚。交错实施时,回归会利用多类比较:尚未处理与已处理、较早处理与较晚处理,甚至较晚处理单位实施后与已经处理很久的单位比较。若效应随处理时长增长,后者已经受到处理,便不是干净的反事实。 问题不只是“标准误算错”,而是回归系数可能成为许多组别—时间效应的非透明加权平均;某些隐含权重还可能为负。此时提高样本量不能修复 estimand 错位。 ### 3. Borusyak、Jaravel 与 Spiess 的插补思路 Borusyak、Jaravel 与 Spiess(2024)针对交错处理和异质处理效应建立统一框架,并推导了在其条件下有效的估计量。无限制异质性下,估计量具有直观的插补形式: 1. 只用未处理观测估计 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的模型; 2. 为已经处理的观测预测反事实 [[]{.katex-mathml}[[[]{.strut style="height:1.1733em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. 计算处理观测的残差 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1733em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 4. 按预先声明的组别、时期或事件时间权重聚合。 在最简单的平行趋势模型中: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 关键纪律是:**处理后的结果不能用来拟合未处理路径。** 这不意味着插补自动可信;它仍依赖未处理结果模型、无预期效应、可用对照组和误差结构。 论文将方法用于美国退税后的消费反应,报告第一季度名义边际消费倾向约为 8%—11%,大约是用于校准宏观模型的一些基准估计的一半,而且支出反应主要集中在第一个月。这个数字属于论文特定数据和定义,不能直接当作其他财政转移的乘数。 ## 案例二:现代 DID 不是“换一个软件包” Roth、Sant’Anna、Bilinski 与 Poe(2023)的综述把近年来 DID 的进展组织为三类:多期与处理时点变化、平行趋势可能偏离、以及替代推断框架。教学上可把它转成下面的决策表。 | 研究情形 | 首先要问 | 不能只做什么 | | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | 所有单位同一时点处理 | 对照组是否给出可信趋势 | 只看一条处理后系数 | | 分批处理 | 每个时期谁仍未处理 | 机械使用 TWFE 事件研究 | | 处理效应动态变化 | 想聚合哪一组 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord,mathnormal}[T]{.mord,mathnormal style="margin-right:0.1389em;"}[T]{.mord,mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord,mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord,mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 把一个 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord,mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 当成普遍效应 | | 处理前趋势不完全平行 | 多大偏离会改变结论 | 把 lead 不显著当作证明 | | 少量处理组或组内相关 | 有多少独立分配单元 | 仅使用个体级普通标准误 | ### 预趋势检验的正确读法 事件研究中处理前系数没有显著偏离零,可能是因为趋势确实接近平行,也可能是检验功效太低。反过来,某个 lead 显著也可能来自随机波动、多重检验、提前反应或模型设定。一个强分析至少要报告: - 处理前系数及联合置信区间; - 处理组和对照组的原始或残差化趋势; - 对不同幅度非平行趋势的敏感性; - 处理时点、预期效应和样本构成变化; - 推断在哪个层级聚类,以及处理组数量是否足够。 ### 研究生应写出的聚合式 如果目标是事件时间 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的平均效应,应明确权重: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4882em;vertical-align:-1.4382em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[:]{.mrel.mtight}[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[+]{.mbin.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[≤]{.mrel.mtight}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4382em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[,]{.mpunct.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.4361em;vertical-align:-1.3861em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.9em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[,]{.mpunct.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[g]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}[,]{.mpunct.mtight}[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可以按组规模、目标人群或政策相关性设定。没有“自然唯一”的聚合;不同权重回答不同问题。 ## 案例三:文本和图像成为混淆变量以后 ### 1. 从低维控制到多模态混淆 在很多现代研究中,处理选择可能受病历文本、卫星图像、简历或产品图片影响。把这些信息压缩成几个手工指标,可能遗漏重要混淆;直接把高维表示塞进结果回归,又可能产生正则化偏误和过拟合。 Spindler 等(2026)在双重机器学习框架中为文本与图像混淆设计神经网络结构,并通过半合成数据评估覆盖率。论文的贡献是方法与评估,不是声称任何神经网络都能解决未观测混淆。 ### 2. 部分线性模型与正交化 考虑: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[ε]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可以同时含表格、文本和图像。再定义结果条件均值 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ℓ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。若直接把机器学习估计的高维控制函数代入结果回归,正则化误差可能传入 [[]{.katex-mathml}[[[]{.strut style="height:0.9344em;"}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。DML 先估计 [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[ℓ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 两个干扰函数,再构造残差: [[[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1933em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[ℓ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.2222em);margin-left:0.2222em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[m]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 最后用 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 回归。相应矩条件 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[))]{.mclose}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ℓ]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)))]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 对干扰函数的小误差具有局部不敏感性,这就是 Neyman 正交性的直觉。 ### 3. 为什么还要交叉拟合 若同一观测既训练复杂模型又计算残差,模型可能记住噪声。交叉拟合将样本分折:在其他折上训练 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[[[[]{.pstrut style="height:3em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[i]{.mord.mathnormal}[d]{.mord.mathnormal}[e]{.mord.mathnormal}[ha]{.mord.mathnormal}[t]{.mord.mathnormal}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,再为当前折生成样本外预测。每个观测最终都获得“未见过自己”的干扰函数预测。 这解决的是过拟合传入矩条件的问题,不解决以下风险: - 关键混淆变量根本没有被记录; - 处理概率接近 0 或 1,缺乏重叠; - 文本或图像在处理后生成,成为坏控制; - 表示学习目标泄漏了结果; - 模型在新人群或新设备上分布漂移。 ## 浏览器实验:TWFE 与未处理观测插补 下面生成 60 个单位、8 个时期。三分之一在第 4 期处理,三分之一在第 6 期处理,其余从不处理。处理效应随暴露时长增加,因此“已经处理的单位”不是稳定对照。代码比较真实处理观测平均效应、传统 TWFE 系数与一个简化插补估计。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjA3MzEpCm5fdW5pdHMsIG5fcGVyaW9kcyA9IDYwLCA4CnVuaXQgPSBucC5yZXBlYXQobnAuYXJhbmdlKG5fdW5pdHMpLCBuX3BlcmlvZHMpCnRpbWUgPSBucC50aWxlKG5wLmFyYW5nZShuX3BlcmlvZHMpLCBuX3VuaXRzKQoKY29ob3J0X2J5X3VuaXQgPSBucC5yZXBlYXQobnAuYXJyYXkoWzMsIDUsIDk5XSksIG5fdW5pdHMgLy8gMykKY29ob3J0ID0gY29ob3J0X2J5X3VuaXRbdW5pdF0KdHJlYXRlZCA9ICh0aW1lID49IGNvaG9ydCkuYXN0eXBlKGZsb2F0KQpldmVudF90aW1lID0gdGltZSAtIGNvaG9ydAp0cnVlX2VmZmVjdCA9IG5wLndoZXJlKHRyZWF0ZWQgPT0gMSwgMC41ICsgMC43ICogZXZlbnRfdGltZSwgMC4wKQoKdW5pdF9lZmZlY3QgPSBybmcubm9ybWFsKHNjYWxlPTEuMCwgc2l6ZT1uX3VuaXRzKVt1bml0XQp0aW1lX2VmZmVjdCA9IG5wLmFycmF5KFswLjAsIDAuMiwgMC41LCAwLjksIDEuMSwgMS40LCAxLjgsIDIuMF0pW3RpbWVdCm91dGNvbWUgPSB1bml0X2VmZmVjdCArIHRpbWVfZWZmZWN0ICsgdHJ1ZV9lZmZlY3QgKyBybmcubm9ybWFsKAogICAgc2NhbGU9MC40NSwgc2l6ZT1sZW4odW5pdCkKKQoKZGVmIGZpeGVkX2VmZmVjdF9kZXNpZ24oaW5jbHVkZV90cmVhdG1lbnQpOgogICAgdW5pdF9kdW1taWVzID0gbnAuZXllKG5fdW5pdHMpW3VuaXRdWzosIDE6XQogICAgdGltZV9kdW1taWVzID0gbnAuZXllKG5fcGVyaW9kcylbdGltZV1bOiwgMTpdCiAgICBwaWVjZXMgPSBbbnAub25lcygobGVuKHVuaXQpLCAxKSksIHVuaXRfZHVtbWllcywgdGltZV9kdW1taWVzXQogICAgaWYgaW5jbHVkZV90cmVhdG1lbnQ6CiAgICAgICAgcGllY2VzLmFwcGVuZCh0cmVhdGVkWzosIE5vbmVdKQogICAgcmV0dXJuIG5wLmNvbHVtbl9zdGFjayhwaWVjZXMpCgojIENvbnZlbnRpb25hbCB0d28td2F5IGZpeGVkIGVmZmVjdHMgcmVncmVzc2lvbi4KeF90d2ZlID0gZml4ZWRfZWZmZWN0X2Rlc2lnbihpbmNsdWRlX3RyZWF0bWVudD1UcnVlKQp0d2ZlID0gbnAubGluYWxnLmxzdHNxKHhfdHdmZSwgb3V0Y29tZSwgcmNvbmQ9Tm9uZSlbMF1bLTFdCgojIEZpdCB1bnRyZWF0ZWQgcG90ZW50aWFsIG91dGNvbWVzIG9ubHkgd2hlcmUgdHJlYXRtZW50IGhhcyBub3Qgc3RhcnRlZC4KeF9jb3VudGVyZmFjdHVhbCA9IGZpeGVkX2VmZmVjdF9kZXNpZ24oaW5jbHVkZV90cmVhdG1lbnQ9RmFsc2UpCnVudHJlYXRlZCA9IHRyZWF0ZWQgPT0gMApiZXRhX3plcm8gPSBucC5saW5hbGcubHN0c3EoCiAgICB4X2NvdW50ZXJmYWN0dWFsW3VudHJlYXRlZF0sIG91dGNvbWVbdW50cmVhdGVkXSwgcmNvbmQ9Tm9uZQopWzBdCnByZWRpY3RlZF96ZXJvID0geF9jb3VudGVyZmFjdHVhbCBAIGJldGFfemVybwppbXB1dGF0aW9uX2F0dCA9IG5wLm1lYW4oKG91dGNvbWUgLSBwcmVkaWN0ZWRfemVybylbdHJlYXRlZCA9PSAxXSkKdHJ1ZV9hdHQgPSBucC5tZWFuKHRydWVfZWZmZWN0W3RyZWF0ZWQgPT0gMV0pCgpwcmludChmIlRydWUgYXZlcmFnZSBlZmZlY3Qgb3ZlciB0cmVhdGVkIG9ic2VydmF0aW9uczoge3RydWVfYXR0Oi4zZn0iKQpwcmludChmIkNvbnZlbnRpb25hbCBUV0ZFIGNvZWZmaWNpZW50OiAgICAgICAgICAgICAgICB7dHdmZTouM2Z9IikKcHJpbnQoZiJVbnRyZWF0ZWQtb2JzZXJ2YXRpb24gaW1wdXRhdGlvbiBBVFQ6ICAgICAgICAgIHtpbXB1dGF0aW9uX2F0dDouM2Z9IikKCmZvciBrIGluIHJhbmdlKDQpOgogICAgc2VsZWN0ZWQgPSAodHJlYXRlZCA9PSAxKSAmIChldmVudF90aW1lID09IGspCiAgICBlc3RpbWF0ZWQgPSBucC5tZWFuKChvdXRjb21lIC0gcHJlZGljdGVkX3plcm8pW3NlbGVjdGVkXSkKICAgIHRydXRoID0gbnAubWVhbih0cnVlX2VmZmVjdFtzZWxlY3RlZF0pCiAgICBwcmludChmImV2ZW50IHRpbWUge2t9OiB0cnV0aD17dHJ1dGg6LjJmfSwgaW1wdXRhdGlvbj17ZXN0aW1hdGVkOi4yZn0iKQ== layout: vertical locale: zh packages: numpy title: Python:交错处理下的 TWFE 与插补 --- :: ::web-r --- code64: c2V0LnNlZWQoMjAyNjA3MzEpCm5fdW5pdHMgPC0gNjAKbl9wZXJpb2RzIDwtIDgKcGFuZWwgPC0gZXhwYW5kLmdyaWQodGltZSA9IDA6KG5fcGVyaW9kcyAtIDEpLCB1bml0ID0gMDoobl91bml0cyAtIDEpKQpwYW5lbCA8LSBwYW5lbFtvcmRlcihwYW5lbCR1bml0LCBwYW5lbCR0aW1lKSwgXQoKY29ob3J0X2J5X3VuaXQgPC0gcmVwKGMoMywgNSwgOTkpLCBlYWNoID0gbl91bml0cyAvIDMpCnBhbmVsJGNvaG9ydCA8LSBjb2hvcnRfYnlfdW5pdFtwYW5lbCR1bml0ICsgMV0KcGFuZWwkdHJlYXRlZCA8LSBhcy5udW1lcmljKHBhbmVsJHRpbWUgPj0gcGFuZWwkY29ob3J0KQpwYW5lbCRldmVudF90aW1lIDwtIHBhbmVsJHRpbWUgLSBwYW5lbCRjb2hvcnQKcGFuZWwkdHJ1ZV9lZmZlY3QgPC0gaWZlbHNlKAogIHBhbmVsJHRyZWF0ZWQgPT0gMSwKICAwLjUgKyAwLjcgKiBwYW5lbCRldmVudF90aW1lLAogIDAKKQoKdW5pdF9lZmZlY3QgPC0gcm5vcm0obl91bml0cywgc2QgPSAxLjApCnRpbWVfZWZmZWN0IDwtIGMoMC4wLCAwLjIsIDAuNSwgMC45LCAxLjEsIDEuNCwgMS44LCAyLjApCnBhbmVsJG91dGNvbWUgPC0gdW5pdF9lZmZlY3RbcGFuZWwkdW5pdCArIDFdICsKICB0aW1lX2VmZmVjdFtwYW5lbCR0aW1lICsgMV0gKwogIHBhbmVsJHRydWVfZWZmZWN0ICsgcm5vcm0obnJvdyhwYW5lbCksIHNkID0gMC40NSkKCnR3ZmVfZml0IDwtIGxtKG91dGNvbWUgfiB0cmVhdGVkICsgZmFjdG9yKHVuaXQpICsgZmFjdG9yKHRpbWUpLCBkYXRhID0gcGFuZWwpCnR3ZmUgPC0gdW5uYW1lKGNvZWYodHdmZV9maXQpWyJ0cmVhdGVkIl0pCgp1bnRyZWF0ZWRfZml0IDwtIGxtKAogIG91dGNvbWUgfiBmYWN0b3IodW5pdCkgKyBmYWN0b3IodGltZSksCiAgZGF0YSA9IHBhbmVsLAogIHN1YnNldCA9IHRyZWF0ZWQgPT0gMAopCnBhbmVsJHByZWRpY3RlZF96ZXJvIDwtIHByZWRpY3QodW50cmVhdGVkX2ZpdCwgbmV3ZGF0YSA9IHBhbmVsKQpwYW5lbCRpbXB1dGVkX2VmZmVjdCA8LSBwYW5lbCRvdXRjb21lIC0gcGFuZWwkcHJlZGljdGVkX3plcm8KCnRydWVfYXR0IDwtIG1lYW4ocGFuZWwkdHJ1ZV9lZmZlY3RbcGFuZWwkdHJlYXRlZCA9PSAxXSkKaW1wdXRhdGlvbl9hdHQgPC0gbWVhbihwYW5lbCRpbXB1dGVkX2VmZmVjdFtwYW5lbCR0cmVhdGVkID09IDFdKQpwcmludChjKHRydWVfQVRUID0gdHJ1ZV9hdHQsIFRXRkUgPSB0d2ZlLCBpbXB1dGF0aW9uX0FUVCA9IGltcHV0YXRpb25fYXR0KSkKCmZvciAoayBpbiAwOjMpIHsKICBzZWxlY3RlZCA8LSBwYW5lbCR0cmVhdGVkID09IDEgJiBwYW5lbCRldmVudF90aW1lID09IGsKICBwcmludChjKAogICAgZXZlbnRfdGltZSA9IGssCiAgICB0cnV0aCA9IG1lYW4ocGFuZWwkdHJ1ZV9lZmZlY3Rbc2VsZWN0ZWRdKSwKICAgIGltcHV0YXRpb24gPSBtZWFuKHBhbmVsJGltcHV0ZWRfZWZmZWN0W3NlbGVjdGVkXSkKICApKQp9 layout: vertical locale: zh title: R:交错处理下的 TWFE 与插补 --- :: ### 实验审计 - 将真实效应改成恒定的 1,观察 TWFE 与插补差距如何变化。 - 删除从不处理组,检查最后几个时期是否还有足够的未处理观测识别时间效应。 - 给早处理组加入一条不同的处理前趋势,说明插补方法也依赖平行趋势。 - 把噪声标准差增大到 1.5,区分估计偏误与抽样不确定性。 ::warning{title="教学简化"} 这里的插补模型只含单位和时期固定效应,没有构造正式标准误、有效权重或识别检验。真实应用应使用经过验证的实现,并按处理分配层级处理聚类、少量组和重复抽样问题。 :: ## 分层作业 ### 本科生:审计一张事件研究图 找一篇 2023 年后的政策论文,只根据正文和附录回答:处理何时开始、谁从未处理、谁尚未处理、处理是否可逆、图中每个事件时间系数平均了哪些批次、标准误聚类在哪里。不要先评价系数显著性。 ### 研究生:比较两个 estimand 在同一合成数据上估计: 1. 所有处理观测的总体 ATT; 2. 实施后第一期的 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. 每个批次等权与每个个体等权的聚合。 解释为什么它们都可以“估计正确”却数值不同。再加入一个处理后才产生的文本变量,讨论将其作为 DML 控制为什么可能造成后处理偏误。 ## 一手文献与延伸阅读 1. Borusyak, K., Jaravel, X., & Spiess, J. (2024). [Revisiting Event Study Designs: Robust and Efficient Estimation](https://www.restud.com/revisiting-event-study-designs-robust-and-efficient-estimation/){rel=""nofollow""}. *Review of Economic Studies*. DOI: [10.1093/restud/rdae007](https://doi.org/10.1093/restud/rdae007){rel=""nofollow""}. 2. Roth, J., Sant’Anna, P. H. C., Bilinski, A., & Poe, J. (2023). [What’s Trending in Difference-in-Differences? A Synthesis of the Recent Econometrics Literature](https://doi.org/10.1016/j.jeconom.2023.03.008){rel=""nofollow""}. *Journal of Econometrics*, 235(2), 2218–2244. 3. Spindler, M., Bach, P., Chernozhukov, V., Klaassen, S., Teichert-Kluge, J., & Vijaykumar, S. (2026). [Valid Inference for Treatment Effects under Multimodal Confounding](https://proceedings.mlr.press/v323/spindler26a.html){rel=""nofollow""}. *Proceedings of Machine Learning Research*, 323, 222–247. 4. Chernozhukov, V. et al. (2018). [Double/debiased machine learning for treatment and structural parameters](https://academic.oup.com/ectj/article/21/1/C1/5056401){rel=""nofollow""}. *The Econometrics Journal*, 21(1), C1–C68. 这是理解第三个案例正交矩条件的基础文献。 建议与[面板和时间序列](https://www.pengjiaxin.com/05-panel-and-time-series)、[估计与因果设计](https://www.pengjiaxin.com/06-estimation-and-causal-design)以及[浏览器回归实验](https://www.pengjiaxin.com/08-interactive-regression-labs)配套学习。 # 计量经济学:从数据到可检验的经济论证 ## 课程定位 计量经济学不是“把数据放进回归软件”。它是一套把经济理论转化为可观测变量、参数、估计量和不确定性陈述的语言。学习的核心顺序应当是: :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgUXVlc3Rpb25bIue7j+a1jumXrumimCJdIC0tPiBFc3RpbWFuZFsi55uu5qCH5Y+C5pWwIl0KICBFc3RpbWFuZCAtLT4gRGF0YVsi5pWw5o2u5LiO5rWL6YePIl0KICBEYXRhIC0tPiBNb2RlbFsi5qih5Z6L5LiO5YGH6K6+Il0KICBNb2RlbCAtLT4gSWRlbnRpZmljYXRpb25bIuivhuWIqyJdCiAgSWRlbnRpZmljYXRpb24gLS0+IEVzdGltYXRpb25bIuS8sOiuoSJdCiAgRXN0aW1hdGlvbiAtLT4gSW5mZXJlbmNlWyLmjqjmlq0iXQogIEluZmVyZW5jZSAtLT4gUm9idXN0bmVzc1si56iz5YGl5oCn5LiO6Kej6YeKIl0=" locale="zh"} 本科生先掌握概率、回归、推断和数据分析;研究生进一步学习渐近理论、矩估计、极大似然、面板、时间序列、非参数方法和因果识别。本课程是后续微观计量经济学的共同基础,但不把所有因果设计提前塞进一个章节。 ## 与微观计量经济学的关系 | 课程 | 主问题 | 典型工具 | | ------- | ---------------------- | ----------------------------- | | 计量经济学 | 如何估计参数并正确描述不确定性? | OLS、稳健标准误、MLE、GMM、面板、时间序列 | | 微观计量经济学 | 如何在微观数据中构造可信的因果反事实? | RCT、IV、DID、RDD、匹配、离散选择、因果机器学习 | | 宏观经济学 | 经济系统如何共同决定产出、价格、就业和增长? | 国民账户、AD–AS、增长模型、政策传导 | 一项实证研究通常需要三门课同时工作:宏观或微观理论提出机制,计量经济学提供估计与推断,微观计量提供识别设计。 ## 学习成果 完成课程后,你应能够: 1. 把经济问题写成目标参数,并区分总体参数、样本统计量和估计量。 2. 使用矩阵和几何语言解释 OLS,推导其有限样本与大样本性质。 3. 选择异方差稳健、聚类稳健或时间序列稳健的推断方式。 4. 解释遗漏变量偏误、测量误差、反向因果、选择偏误和样本选择。 5. 了解 IV、固定效应、动态模型、极大似然和 GMM 的适用条件。 6. 区分描述性预测、条件相关和因果效应。 7. 用 Python 或 R 完成数据清理、估计、诊断、表格和可重复报告。 8. 读一篇实证论文时,先审查识别与测量,再评价估计器和稳健性。 ## 本科生与研究生分层 | 层级 | 学习标准 | 扩展任务 | | --- | ------------------------------------ | ------------------------------- | | 本科生 | 能定义变量、解释 OLS、计算置信区间、识别常见偏误并完成基础实证报告。 | 比较不同标准误、函数形式和样本划分。 | | 研究生 | 能写出识别假设、渐近方差、估计对象和推断策略。 | 处理弱识别、有限样本、非线性、聚类结构、模型选择和外部有效性。 | ## 先修与诊断 需要掌握概率分布、期望方差、条件期望、线性代数、微积分和基础编程。开始前回答: | 问题 | 强答案应包含 | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | | 样本均值为什么是随机变量? | 它随重复抽样变化,因此有抽样分布、方差和极限性质。 | | 相关系数为零是否表示独立? | 一般不表示;在线性或特定分布条件下才有更强结论。 | | [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord,mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 很高是否说明因果关系可信? | 不说明;拟合优度与识别假设是不同问题。 | | 为什么要使用聚类标准误? | 同一组内误差可能相关,普通标准误会低估不确定性。 | | 控制变量是否越多越好? | 可能加入坏控制、碰撞变量或中介变量,改变目标参数。 | ## 贯穿例子:教育与工资 一个典型问题是教育年限是否提高工资。简单回归为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[w]{.mord.mathnormal style="margin-right:0.0269em;"}[a]{.mord.mathnormal}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[e]{.mord.mathnormal}[d]{.mord.mathnormal}[u]{.mord.mathnormal}[c]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[i]{.mord.mathnormal}[o]{.mord.mathnormal}[[n]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的回归含义是教育年限与工资对数的条件线性关系;要解释成教育的因果回报,还需要假设教育与潜在工资中的未观测能力、家庭背景和偏好没有共同变化,或者用更可信的设计处理内生性。 如果能力同时提高教育和工资,OLS 可能高估教育回报;如果教育选择与未观测因素方向复杂,偏误方向未必确定。加入可观测控制变量可以改变比较对象,但不能自动解决未观测混淆。 ## 课程章节 | 章节 | 主题 | 重点 | 页面 | | -- | ---------- | -------------------------------- | ------------------------------------------------------------------- | | 01 | 数据、概率与回归对象 | 变量、样本、条件期望、目标参数 | [进入第一章](https://www.pengjiaxin.com/01-data-and-regression) | | 02 | OLS 与几何解释 | 投影、偏误、FWL、函数形式 | [进入第二章](https://www.pengjiaxin.com/02-ols-and-geometry) | | 03 | 推断与稳健标准误 | t/F 检验、异方差、聚类、bootstrap | [进入第三章](https://www.pengjiaxin.com/03-inference-and-robustness) | | 04 | 内生性与工具变量 | IV、2SLS、弱工具与 LATE | [进入第四章](https://www.pengjiaxin.com/04-endogeneity-and-iv) | | 05 | 面板与时间序列 | 固定效应、动态、平稳性和预测 | [进入第五章](https://www.pengjiaxin.com/05-panel-and-time-series) | | 06 | 估计与因果设计 | MLE、GMM、实验、DID、RDD 的共同基础 | [进入第六章](https://www.pengjiaxin.com/06-estimation-and-causal-design) | | 07 | 可重复实证项目 | 数据字典、代码、表格、审计与写作 | [进入第七章](https://www.pengjiaxin.com/07-reproducible-project) | | 08 | 浏览器回归实验 | OLS、遗漏变量、稳健推断、IV、固定效应与 Bootstrap | [进入实验课](https://www.pengjiaxin.com/08-interactive-regression-labs) | | 09 | 前沿文献与现代计量 | 交错处理、稳健事件研究与多模态 DML 如何改变估计对象? | [进入前沿课](https://www.pengjiaxin.com/09-frontier-literature-2026) | ## 13 周路线 | 周次 | 本科生任务 | 研究生扩展 | | -: | ----------------- | ------------------------------------ | | 1 | 概率、抽样与变量定义 | 条件期望与投影定理 | | 2 | CEF、线性投影和相关 | 函数空间与最优预测 | | 3 | OLS 推导和解释 | 矩阵渐近与识别 | | 4 | 偏误、函数形式和 FWL | 高维控制与正则化直觉 | | 5 | t/F 检验和置信区间 | Wald、LM、LR 与局部渐近 | | 6 | 异方差、聚类和 bootstrap | 多维聚类、随机化推断 | | 7 | 内生性与 IV 直觉 | 2SLS、弱 IV、LIML、LATE | | 8 | 面板固定效应 | 动态面板与序列相关 | | 9 | 时间序列基础 | 单位根、协整和局部投影 | | 10 | 极大似然与 GMM 概览 | 识别、矩条件和过度识别 | | 11 | 浏览器回归实验 | 用 Python/R 复现 OLS、IV、固定效应与 Bootstrap | | 12 | 前沿文献与估计对象审计 | 交错 DID、插补估计与多模态 DML | | 13 | 研究报告与口头答辩 | 论文式写作、敏感性分析和研究设计评审 | ## 实证工作流检查清单 - 经济问题和目标参数写成一句完整的话。 - 每个变量有定义、单位、时间和观测范围。 - 模型假设与识别假设分开写。 - 估计量与标准误匹配数据的依赖结构。 - 系数有单位、数量级和置信区间解释。 - 主要结果有至少一种合理的稳健性检查。 - 没有把预测准确率当成因果识别证据。 - 数据、代码和输出表格可以被另一位研究者重新运行。 ## 推荐教材 - Wooldridge, *Introductory Econometrics*:本科生回归与应用的主线。 - Hayashi, *Econometrics*:研究生理论、渐近和 GMM 参考。 - Hansen, *Econometrics*:现代研究生计量学与在线教材。 - Angrist and Pischke, *Mostly Harmless Econometrics*:把计量工具连接到因果研究设计。 ## 内容支撑与计算约定 每个估计结果都应同时回答五个问题:目标参数是什么、识别来自哪里、估计量怎样构造、标准误为何匹配数据结构、结论对哪些设定敏感。公式推导以 Wooldridge、Hayashi 与 Hansen 的标准结果为基线;应用解释则以可重复的数据生成过程和模拟实验校验。 [浏览器回归实验](https://www.pengjiaxin.com/08-interactive-regression-labs)为同一问题同时提供 Python 与 R 实现。代码只使用当前站点已经接入的 Pyodide、webR 及其可用基础包,点击运行即可修改样本量、误差结构和处理强度。合成数据用于隔离统计机制,不应被误读为真实经验结论。 先完成本课程的估计与推断基础,再进入[微观计量经济学](https://www.pengjiaxin.com/../microeconometrics/),把“会估计”推进到“能构造可信反事实”。 ## Subjects 这里是中文内容入口。每个科目页会先说明学习路线,再进入具体章节。 # 🎓 经济学导论 (Intro to Economics) – 学习笔记 ## 🧭 课程描述 本课程专为初学者设计,旨在介绍经济学的基本思维方式和分析工具。课程分为两大部分:**微观经济学**(研究家庭和企业如何做出决策以及它们在特定市场中的相互交易)和**宏观经济学**(研究整体经济现象,包括通货膨胀、失业和经济增长)。我们的目标是帮助你像经济学家一样思考,从而能更好地理解你所生活的世界。 ## 🎯 学习成果 课程结束后,你应该能够: 1. 理解稀缺性、机会成本、边际思考等经济学核心概念。 2. 熟练运用“供给与需求”模型分析市场价格的形成与波动。 3. 评估政府干预(如税收、价格管制)对市场效率和福利的影响。 4. 理解企业的成本结构及不同市场类型(完全竞争、垄断)。 5. 掌握衡量宏观经济运行状况的关键指标(GDP、CPI、失业率)。 6. 理解长期经济增长的动力以及短期经济波动的 AD-AS 模型。 7. 分析货币政策和财政政策如何影响整体经济。 ## 从这里开始 这个科目现在按大学一学期经济学导论的常见顺序组织。前几章建立微观经济学的基本思维,后半部分进入宏观经济指标、宏观政策和开放经济。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgU2NhcmNpdHlbIueogOe8uuS4jumAieaLqSJdIC0tPiBNYXJrZXRzWyLluILlnLrkuI7ku7fmoLwiXQogIE1hcmtldHMgLS0+IFdlbGZhcmVbIuaViOeOh+S4juemj+WIqSJdCiAgV2VsZmFyZSAtLT4gTWFjcm9EYXRhWyJHRFDjgIHpgJrog4DjgIHlpLHkuJoiXQogIE1hY3JvRGF0YSAtLT4gUG9saWN5WyLotKfluIHkuI7otKLmlL/mlL/nrZYiXQogIFBvbGljeSAtLT4gT3Blblsi5byA5pS+57uP5rWOIl0KICBPcGVuIC0tPiBDYXNlc1si5qGI5L6L5YiG5p6QIl0=" locale="zh"} 这门课的学习方向是:先从个体选择进入市场,再从市场结果进入宏观指标和政策分析。做综合题时,先判断问题处在哪个层级,再选择对应模型。 ### 近年前沿:为什么入门模型还重要 近几年经济学研究越来越多地使用文本、平台数据和算法行为。比如 Ash & Hansen (2023) 讨论“文本算法在经济学中的应用”时,强调新闻、公告、评论、合同和社交媒体文本都可以成为经济数据,但算法给出的分类和摘要必须回到人工校验、理论假设和外部证据中验证。对刚入门的学生来说,这不是要你马上学习复杂机器学习,而是提醒你:经济学的第一步仍然是把现象翻译成可分析的问题。 同样,数字平台和算法定价研究也没有让供给、需求和市场势力过时。Johnson, Rhodes & Wildenbeest (2023) 研究平台在卖家使用定价算法时如何设计需求导流规则;Assad, Clark, Ershov & Xu (2023) 分析德国汽油市场的算法定价与竞争。这些前沿问题看起来很新,但落到导论课,问的仍然是:谁在决策、信息怎样流动、价格如何形成、市场力量会不会损害消费者福利。 | 前沿现象 | 入门课里的基础工具 | 学习提醒 | | ---------- | ---------- | --------------------- | | 文本成为经济数据 | 数据、指标和因果解释 | 先问变量代表什么,再相信算法结果。 | | 平台改变交易顺序 | 供给、需求、弹性 | 平台规则会移动需求,也会改变卖家激励。 | | 算法定价进入市场 | 市场结构、垄断与寡头 | 价格不是自动“公平”的结果,要看竞争环境。 | | ESG 和可持续披露 | GDP 局限、外部性 | 经济绩效不只看产出,还要看环境和社会成本。 | | 章节 | 主题 | 页面 | | -- | -------------- | --------------------------------------------------------------------- | | 01 | 经济学基础原理 | [打开章节](https://www.pengjiaxin.com/01-foundations) | | 02 | 需求与供给 | [打开章节](https://www.pengjiaxin.com/02-demand-and-supply) | | 03 | 弹性 | [打开章节](https://www.pengjiaxin.com/03-elasticity) | | 04 | 市场结构 | [打开章节](https://www.pengjiaxin.com/04-market-structures) | | 05 | GDP 与财富 | [打开章节](https://www.pengjiaxin.com/05-gdp-and-wealth) | | 06 | 通货膨胀与失业 | [打开章节](https://www.pengjiaxin.com/06-inflation-and-unemployment) | | 07 | 经济增长 | [打开章节](https://www.pengjiaxin.com/07-economic-growth) | | 08 | 货币与银行 | [打开章节](https://www.pengjiaxin.com/08-money-and-banking) | | 09 | 货币政策与 AD-AS 模型 | [打开章节](https://www.pengjiaxin.com/09-monetary-policy-and-ad-as) | | 10 | 财政政策 | [打开章节](https://www.pengjiaxin.com/10-fiscal-policy) | | 11 | 开放经济与汇率 | [打开章节](https://www.pengjiaxin.com/11-open-economy-and-exchange-rates) | | 12 | 综合复习与案例分析 | [打开章节](https://www.pengjiaxin.com/12-review-and-case-studies) | ## 🧩 课程结构概览 ### 第一部分:微观经济学基础 (Microeconomics) 🔍 | 章节 | 主题 | 核心概念 | | -- | -------- | --------------------------- | | 01 | 经济学基础原理 | 稀缺性、机会成本、生产可能性边界 (PPF)、比较优势 | | 02 | 市场是如何运行的 | 供给与需求、市场均衡、价格机制 | | 03 | 弹性及其应用 | 需求价格弹性、供给弹性、税收归宿 | | 04 | 市场结构 | 完全竞争、垄断、垄断竞争、寡头垄断 | ### 第二部分:宏观经济学 (Macroeconomics) 🌍 | 章节 | 主题 | 核心概念 | | -- | -------------- | -------------------- | | 05 | GDP 与财富 | GDP、最终产品、支出法、GDP 的局限 | | 06 | 通货膨胀与失业 | CPI、通胀率、实际工资、失业率、劳动力 | | 07 | 经济增长 | 生产率、资本、人力资本、技术进步、制度 | | 08 | 货币与银行 | 货币功能、存款、准备金、银行、中央银行 | | 09 | 货币政策与 AD-AS 模型 | 总需求、总供给、利率、产出缺口 | | 10 | 财政政策 | 政府支出、税收、乘数、自动稳定器、债务 | | 11 | 开放经济与汇率 | 净出口、汇率、购买力平价、资本流动 | | 12 | 综合复习与案例分析 | 模型选择、政策分析、经济学解释写作 | ## 📚 推荐教材 1. **N. Gregory Mankiw (曼昆)** – *Principles of Economics* (《经济学原理》) —— **最强烈推荐的入门读物** 2. **Paul Krugman & Robin Wells (克鲁格曼等)** – *Economics* (《经济学》) 3. **Daron Acemoglu, David Laibson, John List** – *Economics* # 第1章:经济学基础原理 (Foundations of Economics) 欢迎来到经济学的世界!很多人误以为经济学只是关于“赚钱”或者是“炒股”的学问。但实际上,经济学是一门研究**社会如何管理其稀缺资源**的社会科学。 在本章中,我们将抛开复杂的数学公式,从日常生活的例子出发,带你了解建立经济学思维方式的基石。 --- ## 学习目标 学完本章后,你应该能够: 1. 用生活中的选择解释稀缺性和权衡取舍。 2. 找出一个选择背后被放弃的最佳替代方案,也就是机会成本。 3. 用边际收益和边际成本判断“多做一点”是否值得。 4. 读懂生产可能性边界上、边界内和边界外的点分别代表什么。 5. 区分绝对优势和比较优势。 6. 解释为什么自愿交易可以让双方都受益。 --- ## 1. 核心概念:稀缺性 (Scarcity) **“天下没有免费的午餐。” (There ain't no such thing as a free lunch.)** ### 什么是稀缺性? 在这个世界上,人类的欲望是**无限**的,但能够满足这些欲望的资源(时间、金钱、自然资源、劳动力)却是**有限**的。这种资源的有限性,在经济学中被称为**稀缺性**。 因为稀缺性的存在,我们不能拥有想要的一切,因此社会和个人都**必须做出选择(权衡取舍)**。 > 💡 **生活中的例子:** > > - **个人的权衡**:作为一个学生,你今晚只有4个小时的空闲时间。你可以选择花这4小时复习明天的微积分考试,也可以选择打游戏,或者兼职打工赚钱。你选择去打工,就意味着你放弃了复习时间(可能导致成绩下降)和娱乐的快乐。 > - **社会的权衡**:一个国家(如著名的“大炮与黄油”的比喻)如果把更多的国家预算用于国防建设(大炮),那么剩下来能用于提高国内民生福利(黄油)的钱就少了。 --- ## 2. 机会成本 (Opportunity Cost) 既然我们必须做出选择,我们该如何衡量一个选择的“成本”? 在经济学中,某种东西的成本,**是为了得到它而放弃的其他东西的最高价值**。这就是**机会成本**。 ### 为什么机会成本如此重要? 我们在做决定时,往往只看到“账面上的金钱花费”,而忽略了“错失的潜在收益”。经济学要求我们把两者都算进去。 > 💡 **经典例子:上大学的真正成本是多少?** > 假设你考虑去读一个为期4年的全日制本科学位。你的账单可能如下: > > - 学费:每年 10,000 美元 × 4年 = 40,000 美元 > - 书本费:每年 1,000 美元 × 4年 = 4,000 美元 > - 住宿与伙食:每年 12,000 美元 × 4年 = 48,000 美元 > > 乍一看,成本好像是 92,000 美元。**但经济学家会纠正你:** > > 1. **住宿与伙食费**不能全算!因为哪怕你不上大学,你也得吃饭睡觉。只有当大学食堂比你自己做饭贵出的那一小部分,才能算作上大学的额外成本。 > 2. **你忽略了最大的一笔成本——放弃的工资!** 如果你不去上这4年大学,你大可以去全职工作(比如去麦当劳打工),假设每年能赚 30,000 美元。4年就是 120,000 美元。 > > 因此,上大学真正的“机会成本” = 学费 + 书本费 + **放弃的 120,000 美元潜在收入**。对于很多杰出运动员(如勒布朗·詹姆斯)或创业者(如比尔·盖茨)来说,他们不上大学去直接打球或创业的价值(数千万美元)太高了,也就是说他们上大学的**机会成本极大**,所以他们理性地选择了退学! --- ## 3. 理性人考虑边际量 (Marginal Thinking) 经济学假设大多数人是“理性的”。理性人为了达到目标,会尽最大努力。但他们在做决定时,并不总是面临“全有或全无”的选择,而是处于\*\*“边缘”或“增量”\*\*的调整。 - **边际变动 (Marginal Changes)**:对现有行动计划的微小增量调整。 - **边际收益 (Marginal Benefit, MB)**:多做一单位某件事带来的额外好处。 - **边际成本 (Marginal Cost, MC)**:多做一单位某件事带来的额外成本。 **决策法则**:只要**边际收益 > 边际成本**,理性人就会采取这项行动。 > 💡 **经典例子:航空公司为什么愿意以超低价出售最后一张机票?** > 假设一架拥有200个座位的飞机,飞一次的总成本是 100,000 美元。平均每个座位的成本是 500 美元 (100k / 200)。 > > 如果飞机马上要起飞了,还有10个空座位。此时有位乘客在登机口等候,但他只愿意付 200 美元买票。航空公司该把票卖给他吗?有人可能会说:“不行,成本是500美元,卖200美元亏本了!” > > **经济学家的视角(边际思考):** > 飞机起飞的机组人员工资、燃油费等(固定成本)已经是既定事实。多搭载这最后一名乘客的**边际成本(MC)**仅仅是一瓶可乐和一包花生的价钱(也许只有2美元)。 > 而多搭乘该乘客的**边际收益(MB)**是 200 美元。 > 因为 200美元(MB) > 2美元(MC),卖掉这张票显然是**有利可图的**! --- ## 4. 人们会对激励做出反应 (Incentives) 由于理性人通过比较成本和收益来做出决定,因此当成本或收益发生变化时,他们的行为也会随之改变。这就是所谓的“激励”。 这听起来像是一句废话,但政策制定者如果忽略了激励机制,往往会导致糟糕的结果。 > 💡 **生活中的例子:** > > - **苹果与梨**:当苹果的价格飙升时,吃苹果的成本变高,收益不变。所以人们会倾向于少买苹果,多买梨。同时,果园老板看到了苹果的高价(高收益的激励),会愿意雇佣更多工人去摘苹果。这就是市场价格对供求双方的激励作用。 > - **政策反作用(眼镜蛇效应)**:英国殖民印度时,为了减少德里的野生眼镜蛇数量,颁布了悬赏令:谁上交一条死蛇,就给一点奖金。起初,这确实激励了人们去抓蛇。但很快,聪明的人开始**在家里养殖眼镜蛇**来换取奖金。当政府发现后停止了赏金,养殖者就把失去价值的毒蛇全放归了野外。结果,政策不仅没减少毒蛇,反而使毒蛇数量变得比以前更多! > - **结论**:在分析任何一个问题或一项政策时,我们一定要思考:**“它将如何改变人们的激励?”** --- ## 5. 宏观画卷:生产可能性边界 (PPF) 前面的原理讨论的是个人决策。当我们把目光放宽到一个国家或经济体时,我们该如何直观地表示“稀缺性”和“机会成本”呢? 经济学家发明了一个非常基础但直观的模型:**生产可能性边界 (Production Possibilities Frontier, 简称 PPF)**。 它表示在**可用资源和技术给定**的情况下,一个经济体所能生产的两种物品各种组合的边界图。 为了简化,假设一个国家(比如“微积分国”)只生产两种产品:**电脑**和**汽车**。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgdGl0bGUgIueUn+S6p+WPr+iDveaAp+i+ueeVjCAoUFBGKSIKICB4LWF4aXMgIueUteiEkeaVsOmHjyAo5Y+wKSIgWzAsIDEwMDAsIDIwMDAsIDMwMDBdCiAgeS1heGlzICLmsb3ovabmlbDph48gKOi+hikiIDAgLS0+IDEwMDAKICBsaW5lIFsxMDAwLCA5MDAsIDYwMCwgMF0=" locale="zh"} - **边界上的点(效率)**:位于线上的任何一点表示国家充分利用了所有资源。想要生产更多的汽车,就**必须**减少电脑的生产。 - **边界外的点(不可能)**:在当前的资源和技术下,国家**无法**达成线外的生产水平(比如同时生产3000台电脑和1000辆汽车)。这完美体现了“稀缺性”。 - **边界内的点(低效/失业)**:如果国家在这个点上生产,说明有工人失业或者资源被闲置,经济是无效率的。 ### 经济增长如何表现? 如果该国发明了一种新的微芯片技术,使得生产电脑的速度翻倍(技术进步)。那么同样的资源,我们现在能生产更多的电脑。此时,PPF曲线会**向外扩张**。原来“不可能”达到的组合,现在变成了可能。这就是经济增长。 --- ## 6. 贸易能使每个人的状况变得更好 在体育比赛中,赢家对应着输家。但在市场经济和两国贸易中,并非如此。**贸易不是零和博弈**,贸易可以让双方都变得更好。 其核心在于**比较优势 (Comparative Advantage)**:每个人、每个国家都应该去生产他们放弃的机会成本更低的那种商品,然后进行交换。 > 💡 **趣味例子:迈克尔·乔丹应该自己修剪自家的草坪吗?** > 篮球巨星乔丹不仅篮球打得好,身体素质惊人的他也非常擅长剪草坪。他剪完自己的大花园只要两小时。 > 而邻居家的普通青年小明,剪同样大小的草坪需要花四个小时。 > > 乔丹剪草坪比小明快(这叫拥有**绝对优势**)。那乔丹是不是应该自己剪? > > 我们算算**机会成本**: > 这两小时里,乔丹大可以去接一个运动鞋广告代言,赚取 100,000 美元。所以乔丹剪草坪的机会成本是 10万美金! > 而小明的4小时,可能只能去麦当劳兼职赚 40 美元。小明剪草坪的机会成本仅为 40美金。 > > 显然,**小明在剪草坪上拥有比较优势(机会成本极低)**。 > 最聪明的做法(也是现实中的做法):乔丹不自己剪,花 100 美元雇佣小明来剪。 > > - 乔丹开心地去赚了十万美金(哪怕减去付给小明的100美金,他依然赚了$99,900)。 > - 小明开心地赚到了 100 美金(花4小时赚100元,比去麦当劳赚40元香得多)。 > **结果:双方通过“贸易(雇佣交换)”,状况都变得更好了!** --- ## 常见误区与考试陷阱 1. **只看现金支出。** 机会成本不只是你花出去的钱,还包括时间和被放弃的最佳选择。 2. **把平均成本当成边际成本。** 航空公司例子讨论的是“多带一名乘客”的额外成本,而不是整趟航班的平均成本。 3. **以为有效率就一定公平。** PPF 边界上的点说明资源被充分利用,但不说明分配是否公平。 4. **混淆绝对优势和比较优势。** 做得更快不等于机会成本更低。 5. **把贸易理解成一方赢一方输。** 自愿交易之所以发生,是因为双方都预期自己会变好。 --- ## 自测题 1. 你花 2 小时看电影,没有去做每小时 18 美元的兼职。这段电影时间的机会成本是什么? - **答案提示:** 看被放弃的最佳替代方案。至少包括 36 美元的工资,也可能包括工作经验等其他收益。 2. 一家面包店一天可以做 20 个蛋糕或 100 个面包。做 1 个蛋糕的机会成本是多少? - **答案提示:** 20 个蛋糕要放弃 100 个面包,所以 1 个蛋糕的机会成本是 5 个面包。 3. 为什么 PPF 边界内的点可能表示失业? - **答案提示:** 因为资源没有被充分利用,在不减少另一种产品的情况下仍有可能增加产出。 4. 如果一个人做所有事情都更快,别人还可能有比较优势吗? - **答案提示:** 可能。比较优势看的是机会成本,不是绝对速度。 --- ## 🎓 本章小结总结 1. 资源是**稀缺**的,不可避免要做出权衡取舍。 2. 一样东西的真正成本是你为了得到它而**放弃的最高价值(机会成本)**。 3. 理性的选择发生在于比较**边际收益与边际成本**。 4. 人们会对**激励**(价格、政策的变动)做出反应。 5. 经济学使用 **PPF模型** 来直观地说明稀缺性、效率、权衡取舍和经济增长。 6. 分工和**贸易**建立在比较优势基础上,能让所有人受益。 掌握了这些,你就已经成功踏入了像经济学家一样思考的大门。在下一章,我们将正式进入微观经济学最重要的工具:**供给与需求模型**。这也是整个经济学大厦的骨架。 # 第2章:需求与供给 (Demand and Supply) ## 2.0 引言:市场的两股力量 在经济学中,**市场 (Market)** 并不一定是一个物理存在的场所(如菜市场或超市),它指的是任何使买方(Buyer)和卖方(Seller)能够互动并进行交易的机制安排。无论你在淘宝上网购二手书、在股票交易所买入苹果公司股票,还是在一家咖啡馆里点一杯拿铁,你都身处市场之中。 描述市场运作核心的两股力量,就是**需求 (Demand)** 和 **供给 (Supply)**。你可以把它们想象成剪刀的两片刀刃,只有这两片刀刃相互咬合,才能“剪断”市场上的定价难题,决定商品最终能够以多少钱(Price)、卖出多少份(Quantity)。 本章我们将拆解这把“剪刀”,分别从买方和卖方的角度去理解他们做出决策的经济学逻辑。 --- ## 学习目标 学完本章后,你应该能够: 1. 准确定义需求、供给、需求量和供给量。 2. 解释为什么需求曲线向右下方倾斜、供给曲线向右上方倾斜。 3. 区分“沿着曲线移动”和“整条曲线移动”。 4. 判断需求或供给冲击对均衡价格和均衡数量的影响。 5. 解释短缺、过剩以及价格如何推动市场回到均衡。 6. 用比较静态分析讲清楚一条完整的因果链。 --- ## 2.1 需求 (Demand):买方的视角 ### 什么是需求? 在经济学中,**需求**与你的“愿望”或“渴望 (Want/Desire)”不同。你可能非常“渴望”拥有一架私人飞机,但如果你的银行账户里只有几千块钱,这种渴望就构不成经济学意义上的“需求”。 **需求 (Demand)** 指的是在特定时期内,在各种可能的价格水平下,消费者**愿意 (Willing)** 且**能够 (Able)** 购买的某种商品或服务的数量。 - **Willingness (购买意愿):** 消费者主观上想买。 - **Ability (购买能力):** 消费者客观上买得起。 ### 需求法则 (Law of Demand) 需求法则是经济学中最直观、也最广为人知的定律之一:**在其他条件不变的情况下 (Ceteris Paribus),某商品的价格越高,对其需求量就越小;反之,价格越低,需求量就越大。** 价格 (P, Price) 和 需求量 (Qd, Quantity Demanded) 之间呈现**反向相关 (inverse relationship)**。 > 💡 **生活中的例子:双十一打折** > > 为什么“双十一”或“黑色星期五”会有那么多人熬夜清空购物车?因为商品价格降低了(P↓),所以大家愿意并有能力购买的数量增加了(Qd↑)。这也是为什么商店在清理换季库存时总会挂出大红色的 "SALE"(打折)招牌。 ### 需求曲线 (The Demand Curve) 如果我们将价格和需求量画在图表上,我们就会得到一条**向下倾斜 (downward-sloping)** 的需求曲线(通常被标记为 `D`)。 > *说明:在经济学图表中,纵轴总是代表价格 (P),横轴总是代表数量 (Q)。* :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgICB0aXRsZSAi5biC5Zy66ZyA5rGC5puy57q/IChEZW1hbmQgQ3VydmUpIgogICAgeC1heGlzICLmlbDph48gKFF1YW50aXR5KSBRIiBbMCwgMTAsIDIwLCAzMCwgNDAsIDUwLCA2MF0KICAgIHktYXhpcyAi5Lu35qC8IChQcmljZSkgUCIgMCAtLT4gNjAKICAgIGxpbmUgWzUwLCA0MCwgMzAsIDIwLCAxMCwgMCwgMF0=" locale="zh"} *(注意:随价格降低,数量向右延伸,这表现了需求法则中量价负相关的特性。)* ### 需求量变动 vs 需求变动 (A Crucial Distinction) 许多初学者经常混淆这两个概念,但在考试和实际分析中,区分它们至关重要! **1. 需求量的变动 (Change in Quantity Demanded)** 这仅仅是因为商品**自身价格**发生变化而引起的。 在图表上表现为:**沿着同一条需求曲线的点在上下移动 (Movement ALONG the curve)**。 - *例子:* 星巴克拿铁今天半价(价格P下降)。于是你决定今天喝两杯而不是一杯。你的“需求量”增加了,但你依然在这条需求曲线上移动。 **2. 需求的变动 (Change in Demand)** 这是由商品价格**以外**的因素发生的改变。这意味着即便价格没变,人们买的数量也变了。 在图表上表现为:**整条需求曲线的平移 (SHIFT of the curve)**。 向右移动 (Rightward Shift) 代表需求增加,向左移动 (Leftward Shift) 代表需求减少。 > 🎯 **导致需求曲线移动的 5 个关键因素 (SPITE)** > > - **S - Substitutes & Complements (替代品与互补品的价格):** > - **替代品 (Substitutes):** 功能相近的产品(百事可乐和可口可乐)。如果可口可乐涨价,百事可乐哪怕不改价,需求也会向右移动(增加)。 > - **互补品 (Complements):** 经常搭配使用的产品(打印机和墨盒,热狗和热狗面包,游戏机和手柄)。如果PS5游戏机降价大促,不仅购买PS5的人增加了,对应游戏手柄或光盘的需求曲线也会向右移动。 > - **P - Population (人口/买家数量):** 市场里买家越多,整体需求越大。比如大学扩招新生,周边租房的需求就会大幅向右移动。 > - **I - Income (收入):** 当你的月薪翻倍,你可能会多买几杯星巴克(**正常品 Normal Good**,需求右移);但你可能会减少购买超市打折促销的廉价泡面(**劣等品 Inferior Good**,需求左移)。 > - **T - Tastes & Preferences (品味与偏好):** 某种商品突然变得流行。比如某部现象级动漫播出后,相关周边手办的需求会瞬间增加(曲线右移)。 > - **E - Expectations (预期):** 对未来的预测。如果你预期下个月汽油要大涨价,你今天就会跑去把油箱加满(今天的汽油需求曲线就向右平移了)。 --- ## 2.2 供给 (Supply):卖方的视角 ### 什么是供给? **供给**是指在特定时期内,各种可能的价格水平下,生产者或企业**愿意且能够销售**的某种商品或服务的数量。和需求一样,它也需要兼具意愿(想卖)和能力(能造出来)。 ### 供给法则 (Law of Supply) **在其他条件不变的情况下,物品的价格越高,供给量越大;价格越低,供给量越小。** 价格 (P) 与 供给量 (Qs, Quantity Supplied) 呈现**正向相关 (direct relationship)**。 这背后的逻辑是利润动机 (Profit Motive):如果苹果卖得越来越贵,农民就会觉得种苹果更有利可图,他们就会把原本种梨子的地改种苹果。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgICB0aXRsZSAi5biC5Zy65L6b57uZ5puy57q/IChTdXBwbHkgQ3VydmUpIgogICAgeC1heGlzICLmlbDph48gKFF1YW50aXR5KSBRIiBbMCwgMTAsIDIwLCAzMCwgNDAsIDUwLCA2MF0KICAgIHktYXhpcyAi5Lu35qC8IChQcmljZSkgUCIgMCAtLT4gNjAKICAgIGxpbmUgWzAsIDEwLCAyMCwgMzAsIDQwLCA1MCwgNjBd" locale="zh"} *(供给曲线S向上倾斜。价格越高,厂家愿意生产的数量越多。)* ### 供给量变动 vs 供给变动 和需求部分一样,这也有一对需要区分的概念: - **供给量的变动 (Change in Quantity Supplied):** 由商品**自身价格**变动引起。只在**曲线上滑动 (Movement)**。 - **供给的变动 (Change in Supply):** 由于非价格因素引起。表现为**曲线平移 (Shift)**。向右代表供给增加(成本变低,大家都愿意卖),向左代表供给减少。 > 🎯 **导致供给曲线移动的 5 个关键因素** > > - **资源价格与生产成本 (Resource Prices/Cost):** 芯片涨价了,生产手机的成本变高。在原有价格下,手机厂商变得无利可图,手机的供给量就会减少(供给曲线整体向左移动)。 > - **技术进步 (Technology):** 自动化机械臂和AI技术的引入使汽车生产效率翻倍,成本大幅度降低。福特汽车现在能够生产更多的汽车,汽车的供给曲线向右移动。 > - **政策的影响:税收补贴与法规 (Taxes, Subsidies & Regulations):** 政府对新能源车每辆补贴$5000(相当于成本降低,向右移动);或者政府对工厂排放的废气征收重税(相当于成本升高,向左移动)。 > - **卖方的数量 (Number of Sellers):** 几家大型咖啡连锁店同时入驻某商业街,这条街上的咖啡供给量(即使咖啡的价格本身并没有变化)整体增加了(向右移动)。 > - **卖方的预期 (Expectations):** 如果燕麦奶厂商预期下个月原材料可能会大幅降价,他们可能会选择当下暂缓部分生产,等下个月成本更低时再大量上市(今天的供给会减少)。 --- ## 2.3 市场均衡 (Market Equilibrium):当买卖双方相遇 现在,我们将代表买方(D曲线)和代表卖方(S曲线)合二为一。两条曲线的交点,就是那个充满魔力的状态:**市场均衡点 (Equilibrium Point)**。 在均衡状态下,**由于消费者的需求量 (Qd) 恰好等于生产者的供给量 (Qs)**,市场实现了**出清 (Market Clearing)**。 - 在这个交点对应的价格,称为 **均衡价格 (Equilibrium Price, [[]{.katex-mathml}[[[]{.strut style="height:0.6887em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} )**。 - 在这个交点对应的数量,称为 **均衡数量 (Equilibrium Quantity, [[]{.katex-mathml}[[[]{.strut style="height:0.8831em;vertical-align:-0.1944em;"}[[Q]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} )**。 在这个点上,既没有人觉得价格太高卖不出去东西,也没有人觉得抢不到东西。市场达到了和谐的暂态。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgICB0aXRsZSAi5biC5Zy65Z2H6KGhIChFcXVpbGlicml1bSkiCiAgICB4LWF4aXMgIuaVsOmHjyAoUXVhbnRpdHkpIFEiIFswLCAxMCwgMjAsIDMwLCA0MCwgNTAsIDYwXQogICAgeS1heGlzICLku7fmoLwgKFByaWNlKSBQIiAwIC0tPiA2MAogICAgbGluZSBbNTAsIDQwLCAzMCwgMjAsIDEwLCAwLCAwXQogICAgbGluZSBbMTAsIDIwLCAzMCwgNDAsIDUwLCA2MCwgNjBd" locale="zh"} *(在图表中,两条线在 P=30, Q=20 处相交,这是一个稳定的状态)* ### 为什么市场会自动趋向均衡? 看不见的手 (The Invisible Hand) 是如何运作的?假设一种情况发生在偏离均衡点的地方: **1. 过剩 (Surplus):当 价格 > 均衡价格** 假设最新的 iPhone 定价10万人民币一台。很多果粉觉得太贵了放弃购买(Qd降低),但由于利润诱人,苹果公司疯狂出货塞满仓库(Qs增加)。 此时,**Qs > Qd**。这就产生了**过剩**或**供过于求**。 *自然修正的过程:* 库克看着堆积如山的手机存货,只能宣布降价打折来吸引买家,随着打折清理库存,价格被迫不断下降,直到价格跌回到那个人人都觉得合理、并且正好让库存卖空的均衡价格点为止。 **2. 短缺 (Shortage):当 价格 < 均衡价格** 再假设著名的网红烘焙店搞活动,所有的半熟芝士蛋糕只卖 1 块钱(这大大低于均衡价格)。在 1 块钱的价格下,买家疯抢(Qd激增),但老板觉得卖 1 块钱甚至无法覆盖包装盒成本因此只做了 10 个(Qs极少)。 此时,**Qd > Qs**。这就产生了**短缺**或**供不应求**。 *自然修正的过程:* 很快就会有黄牛入场,把原价的蛋糕炒作到 50 块,或者排队的顾客愿意付更高的小费加塞。老板一看这么多顾客拿着钞票抢购,便顺理成章地提高了蛋糕标价,增加产量。价格上升的过程中,一部分穷酸学生退出了排队,直到市场重新在中间的高价状态达成平衡。 > 💡 **总结案例:网约车与“动态调价”系统 (Surge Pricing)** > 下大雨的时候,大家都不想淋雨搭公交,打车的需求急剧增加(D向右移动);同时,司机觉得下雨天开车不安全、不想出车,路上的出租车变少了(S向左移动)。 > 需求上升 + 供给下降 = **极其严重的短缺**。 > 为了强行让这个失衡的市场恢复均衡,Uber 或滴滴的算法就会开启“雨天动态加价 2.5倍”。高昂的价格(P↑)能劝退一部分认为不划算宁愿等雨停的乘客(减少需求量),同时也会吸引待在家里的司机立刻出发接单(增加供给量)。最终价格锁定在一个能让有车可接、有客可拉的新的均衡点。 --- ## 2.4 当曲线移动:比较静态分析初步 经济学家经常做的一件事叫做**比较静态分析 (Comparative Statics)**。意思是,改变一个外在因素导致曲线移动,然后比较一下“旧均衡”和“新均衡”分别是什么样。我们在下表做一个快速的沙盘推演: | 市场情景设定 | 对曲线的影响 | 对均衡的影响 (新均衡点) | | :----------------------------------------------------- | :------------------------------------- | :--------------------------------------------------------------------------------- | | **年轻人都开始追求健康减肥** :br *(目标市场:含糖奶茶)* | **奶茶需求(D) ⬇️ (向左移)**:br 大家突然集体厌恶高糖饮料。 | 🎯 **价格 (P*) 下跌*\* :br 🎯 **数量 (Q*) 下降*\* :br*(奶茶店只能降价甚至关店)* | | **突发台风摧毁大片甘蔗农田** :br*(目标市场:白糖)* | **白糖供给(S) ⬇️ (向左移)**:br 原材料被毁,产出急剧减少。 | 🎯 **价格 (P*) 上升*\* :br 🎯 **数量 (Q*) 下降*\* :br*(白糖贵了并且更少了)* | | **新电池技术使笔记本电脑成本降低一半** :br*(目标市场:笔记本电脑)* | **电脑供给(S) ⬆️ (向右移)**:br 厂家可以在同样价钱下造更多。 | 🎯 **价格 (P*) 下跌*\* :br 🎯 **数量 (Q*) 上升*\* :br*(又便宜货又多,消费者狂喜)* | | **国家发放大量旅游消费券(发钱)** :br*(目标市场:酒店住宿)* | **酒店需求(D) ⬆️ (向右移)**:br 因为大家手上有了额外收入。 | 🎯 **价格 (P*) 上升*\* :br 🎯 **数量 (Q*) 上升*\* :br*(酒店天天爆满且趁机大幅涨价)* | :model-curve-chart{props64="eyJ0aXRsZSI6IumcgOaxguWPs+enu+WmguS9leaUueWPmOW4guWcuuWdh+ihoSIsInN1YnRpdGxlIjoi5Lul6YWS5bqX5L2P5a6/5biC5Zy65Li65L6L77ya5peF5ri45raI6LS55Yi45o+Q6auY6LSt5Lmw5oSP5oS/77yM5L6b57uZ5puy57q/5pqC5pe25LiN5Y+Y44CCIiwieExhYmVsIjoi5pWw6YePIFEiLCJ5TGFiZWwiOiLku7fmoLwgUCIsImhlaWdodCI6MzkwLCJtaW5YIjoxMCwibWF4WCI6ODAsIm1pblkiOjIwLCJtYXhZIjoxMDAsInNlcmllcyI6W3sibmFtZSI6IuWOn+mcgOaxgiBEMCIsImNvbG9yIjoiIzI1NjNlYiIsInBvaW50cyI6W3sieCI6MjAsInkiOjgwfSx7IngiOjQwLCJ5Ijo2MCwibGFiZWwiOiJFMCJ9LHsieCI6NjAsInkiOjQwfV19LHsibmFtZSI6IuaWsOmcgOaxgiBEMSIsImNvbG9yIjoiI2RjMjYyNiIsInBvaW50cyI6W3sieCI6MzAsInkiOjkwfSx7IngiOjUwLCJ5Ijo3MCwibGFiZWwiOiJFMSJ9LHsieCI6NzAsInkiOjUwfV19LHsibmFtZSI6IuS+m+e7mSBTIiwiY29sb3IiOiIjMGY3NjZlIiwicG9pbnRzIjpbeyJ4IjoyMCwieSI6NDB9LHsieCI6NDAsInkiOjYwfSx7IngiOjUwLCJ5Ijo3MH0seyJ4Ijo2MCwieSI6ODB9XX1dLCJtYXJrZXJzIjpbeyJ4Ijo0MCwieSI6NjAsImxhYmVsIjoi5pen5Z2H6KGhIiwiY29sb3IiOiIjNjQ3NDhiIn0seyJ4Ijo1MCwieSI6NzAsImxhYmVsIjoiUCDkuIrljYfvvIxRIOS4iuWNhyIsImNvbG9yIjoiI2RjMjYyNiJ9XSwiY2FwdGlvbiI6Iuivu+WbvuaXtuWFiOeci+WTquadoeabsue6v+enu+WKqO+8jOWGjeavlOi+g+aXp+S6pOeCueWSjOaWsOS6pOeCueOAgui/memHjOmcgOaxguWPs+enu+S9v+aWsOWdh+ihoeWQjOaXtuWvueW6lOabtOmrmOS7t+agvOWSjOabtOWkmuaIkOS6pOmHj+OAgiJ9"} 这张图把表格里的“酒店需求上升”画成了从 `D0` 到 `D1` 的移动。供给曲线没有变,所以分析重点不是“价格沿着需求曲线走”,而是重新寻找供给与新需求的交点。做题时要把话说完整:外部因素让需求曲线右移,新的均衡价格上升,新的均衡数量也上升。 如果需求和供给**同时**发生变动呢?这里面其实有一个隐藏的规则:当两股力量同时作用时,均衡价格和数量中至少有一个方向是\*\*不确定 (Ambiguous / indeterminate)\*\*的,取决于谁的变动幅度更大。这将在你在解题时成为一个非常有意思的分析挑战! --- ## 常见误区与考试陷阱 1. **销量上升就说“需求增加”。** 如果是商品自身价格下降导致买得更多,那是需求量沿曲线移动,不是需求曲线右移。 2. **忘记“其他条件不变”。** 需求法则和供给法则都默认其他因素暂时不变。 3. **移动错曲线。** 生产成本变化通常移动供给曲线;收入、偏好、相关品价格变化通常移动需求曲线。 4. **把短缺理解成“供给太少”。** 短缺是指在某个价格下,需求量大于供给量。 5. **以为价格和数量方向永远都确定。** 当需求和供给同时移动时,价格或数量中常常有一个方向不确定。 --- ## 自测题 1. 咖啡降价后,人们买了更多咖啡。这是需求曲线移动,还是沿需求曲线移动? - **答案提示:** 是沿需求曲线移动,因为变化来自咖啡自身价格。 2. 新机器让笔记本电脑生产成本下降。电脑市场会怎样变化? - **答案提示:** 供给曲线右移,均衡价格倾向于下降,均衡数量倾向于上升。 3. 如果政府规定的最高租金低于市场均衡租金,会出现什么问题? - **答案提示:** 会出现短缺,因为低价下想租房的人多于愿意出租的房源。 4. 如果需求上升,同时供给下降,哪个结果可以确定? - **答案提示:** 价格会上升;数量方向不确定,要看两条曲线移动幅度谁更大。 --- ### 📝 结语 需求与供给模型是经济学的通用语(Lingua Franca)。这把剪刀只要挥舞得当,你可以用来分析世界上所有自由市场化物品的现象——从房租的走势,到原油价格的跌宕,甚至劳动力市场中特定岗位的工资水平。 掌握了这个基础,接下来的下一章我们将稍微拔高难度,讨论一个经常导致企业利润误判的问题——价格变化到底有多“敏感”?(提示:我们需要引入**弹性 Elasticity** 这个大杀器了)。 # 第3章:弹性 (Elasticity) —— 对价格有多“敏感”? ## 3.0 引言:为什么高铁票很少打折,而奶茶却天天促销? 在上一章我们学到了“需求法则”:价格下降,买的人就会变多。但这引发了商家的一个终极灵魂拷问: > *如果我把商品降价10%,销量是会增加一丁点(比如2%),还是会暴涨(比如50%)?* 如果是前者,降价就是在亏钱;如果是后者,降价就能让我赚得盆满钵满。 为了衡量这种“究竟能涨多少/跌多少”的**反应程度(敏感度)**,经济学家发明了一个强大的工具:**弹性 (Elasticity)**。 在本章,我们将重点探讨最核心的概念——**需求的价格弹性 (Price Elasticity of Demand, 简称 PED)**,并学习如何利用它来做商业决策。 --- ## 学习目标 学完本章后,你应该能够: 1. 计算并解释需求价格弹性。 2. 判断需求是富有弹性、缺乏弹性,还是单位弹性。 3. 用替代品、收入占比、必需品/奢侈品和时间解释弹性的大小。 4. 根据弹性判断涨价或降价对总收益的影响。 5. 区分需求价格弹性、收入弹性、交叉价格弹性和供给价格弹性。 --- ## 3.1 什么是需求的价格弹性 (PED)? **需求的价格弹性 (PED)** 衡量的是:当商品的价格发生一定比例的变化时,消费者购买的数量会发生**多大比例**的变化。 它的计算公式非常直白: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[价格变化的百分比]{.mord.cjk_fallback}[ (% ]{.mord}[[\Delta]{.mord style="color:#cc0000;"}]{.mord.text style="color:#cc0000;"}[P)]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[需求量变化的百分比]{.mord.cjk_fallback}[ (% ]{.mord}[[\Delta]{.mord style="color:#cc0000;"}]{.mord.text style="color:#cc0000;"}[Qd)]{.mord}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} *(注意:因为价格和需求量总是反向变动,算出来的数值技术上是个负数,但在经济学中我们通常只看它的**绝对值**。)* ### 解读这个数字 - **如果结果 > 1:** 说明数量变化的幅度 **大于** 价格变化的幅度。这叫 **富有弹性 (Elastic)**。消费者对价格**非常敏感**。 - **如果结果 < 1:** 说明数量变化的幅度 **小于** 价格变化的幅度。这叫 **缺乏弹性 (Inelastic)**。消费者对价格**不敏感**。 - **如果结果 = 1:** 我们称之为 **单位弹性 (Unit Elastic)**,降价10%,销量正好涨10%。 --- ## 3.2 图形上的弹性:陡峭 vs. 平坦 在图表上,需求曲线的斜率可以直观地展示弹性的特征。 ### 1. 缺乏弹性的需求曲线 (Inelastic Demand) 曲线非常**陡峭 (Steep)**。价格发生巨大变化,数量只有微小变动。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgICB0aXRsZSAi57y65LmP5by55oCnIChJbmVsYXN0aWMpIC0g5L6L5aaC77ya5pWR5ZG96I2vIgogICAgeC1heGlzICLmlbDph48gKFEpIiBbMCwgMSwgMiwgMywgNCwgNV0KICAgIHktYXhpcyAi5Lu35qC8IChQKSIgMCAtLT4gNTAKICAgIGxpbmUgWzUwLCA0NSwgNDAsIDM1LCAzMCwgMjVd" locale="zh"} > 💡 **本土案例:胰岛素 或 春运高铁票** > 对于糖尿病人来说,胰岛素是刚需。即使胰岛素涨价一倍,患者无论如何也得买,需求量只会下降一点点。同理,春节回老家过年的高铁票,就算取消一切折扣,外地打工人该买还是得买。这时候,需求就是“缺乏弹性”的。 ### 2. 富有弹性的需求曲线 (Elastic Demand) 曲线非常**平坦 (Flat)**。价格轻微变动,数量就会发生巨大变化。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgICB0aXRsZSAi5a+M5pyJ5by55oCnIChFbGFzdGljKSAtIOS+i+Wmgu+8mue9kee6ouWltuiMtiIKICAgIHgtYXhpcyAi5pWw6YePIChRKSIgWzAsIDEwLCAyMCwgMzAsIDQwLCA1MF0KICAgIHktYXhpcyAi5Lu35qC8IChQKSIgMCAtLT4gNTAKICAgIGxpbmUgWzMwLCAyOCwgMjYsIDI0LCAyMiwgMjBd" locale="zh"} > 💡 **本土案例:喜茶等高端现制茶饮** > 假如一条商业街上有喜茶、奈雪、霸王茶姬等多家奶茶店。如果其中一家突然涨价 30%,消费者立刻会觉得“没必要喝这么贵的”,转头去买隔壁的品牌。微小的涨价会导致客流量断崖式下跌,这种需求就是“富有弹性”的。 --- ## 3.3 决定弹性的四大关键因素 (SPLT) 为什么有些东西大家非买不可,有些东西稍微一涨价大家就不买了?主要看以下四个因素: ### 1. S - Substitutes (替代品的数量) - **替代品多 = 富有弹性。** 如果一种商品很容易被替代,它的弹性就大。比如白心火龙果涨价了,人们马上改吃红心火龙果或者苹果。 - **替代品少 = 缺乏弹性。** 比如食盐。炒菜必须放盐,而且没有别的调料能替代它的咸味。哪怕盐价翻倍,你每个月还是得消费那么多盐。 ### 2. P - Proportion of Income (占收入的比例) - **占比大 = 富有弹性。** 比如买一辆汽车或者在三亚订五星级度假酒店。这要花掉很多钱,一旦涨价,消费者会非常敏锐地感受到肉痛,从而取消购买。 - **占比小 = 缺乏弹性。** 比如牙签、抽纸、买菜用的塑料袋。一盒牙签从 2块钱涨到 4块钱(涨幅100%),你大概率根本不会在意,照买不误。 ### 3. L - Luxury vs. Necessity (奢侈品还是必需品) - **必需品 = 缺乏弹性。** 大米、水电费、治疗慢性病的药物。涨价也得用。 - **奢侈品 = 富有弹性。** 买只名牌包包,或者出国旅游。一旦价格超出预算,人们可以毫不犹豫地把这笔预算砍掉。 ### 4. T - Time (时间的长短) - **时间短 = 缺乏弹性。** 比如今天早上你必须开车去签一个几百万的合同,路上发现加油站涨价了,你也只能咬牙加满。 - **时间长 = 富有弹性。** 如果汽油在此后的一整年里都维持天价,人们就有时间去买新能源车(如比亚迪、特斯拉),或者干脆搬到离地铁站更近的地方。长期来看,消费者总能找到替代方案。 --- ## 3.4 企业的终极武器:总收益测试 (Total Revenue Test) 作为商学院的学生,这是最实用的一节:**我到底该不该降价?** 企业的**总收益 (Total Revenue, TR) = 价格 (P) × 数量 (Q)**。 我们直接看测试规则: **情况 A:如果你的产品【缺乏弹性】(如:景区矿泉水、唯一的高速公路过路费)** - **策略:** 你应该 **涨价 (Raise Price)**! - **原因:** 虽然涨价会赶走一小部分客户(Q小幅下降),但留下来的大多数客户支付了高得多的价格(P大幅上升)。 - **结果:** P的增加抵消了Q的减少,**总收益上升**。 **情况 B:如果你的产品【富有弹性】(如:美妆、零食、快消服装)** - **策略:** 你应该 **降价打折 (Lower Price)**! - **原因:** 虽然你单件赚得少了(P小幅下降),但降价会吸引巨量的新客户涌入蜂抢(Q大幅上升)。 - **结果:** Q的增加填补了P的减少(薄利多销),**总收益上升**。 > 💡 **商业实战案例:“百亿补贴”与直播带货的逻辑** > 为什么李佳琦或疯狂小杨哥的直播间总是强调“全网最低价”并销售化妆品、零食、纸巾?因为这些产品往往具有大量的替代品,属于**富有弹性**的商品。通过直播间拿到的极致低价,能瞬间激发出惊人的销量(Qd的暴涨),最终让品牌方和主播实现总收益的最大化。你几乎不会在直播间看到主播用“全网最低价”去带货百草枯、骨折钢钉这类的极端刚需品。 ### 计算例题:健身房该不该涨价? 假设一家健身房把月卡从 40 美元涨到 44 美元,价格上涨 10%。会员数从 1000 人降到 970 人,数量下降 3%。 用绝对值计算: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1686em;vertical-align:-0.7416em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[10%]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[3%]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7416em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.3.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} PED 小于 1,说明需求缺乏弹性。 再看总收益: - 涨价前:40 美元 × 1000 人 = 40,000 美元; - 涨价后:44 美元 × 970 人 = 42,680 美元。 虽然流失了一些会员,但价格上涨带来的收入增加超过了会员流失的损失,所以总收益上升。注意,这不等于利润一定上升,因为还要看成本、口碑和长期流失率,但它说明了弹性如何影响收入判断。 --- ## 3.5 其他类型的弹性 (快速速览) 除了分析“自家价格”对“自家销量”的影响,经济学家还用弹性分析其他指标: 1. **需求的收入弹性 (Income Elasticity of Demand):** 衡量你的**工资**变动如何影响需求量。 - **正数:** 正常品 (Normal goods) - 比如牛排、健身房年卡。 - **负数:** 劣等品 (Inferior goods) - 比如廉价的泡面、二手衣服。如果你加薪了,你会减少购买这些。 2. **交叉价格弹性 (Cross-Price Elasticity of Demand):** 衡量**竞争对手/互补品**的价格变动对你的影响。 - **正数:** 替代品 (Substitutes)。瑞幸咖啡涨价,库迪咖啡的销量就会涨。 - **负数:** 互补品 (Complements)。网球拍涨价了,网球的销量就会随之下降。 3. **供给的价格弹性 (Price Elasticity of Supply, PES):** 衡量**工厂/生产者**对价格的反应速度。这主要取决于**生产的难易程度**。比如梵高真迹,哪怕价格飞上天,供给量也不能增加(完全无弹性);而塑料梳子,只要价格稍微上涨一点,义乌的工厂马上能机器一响黄金万两,向市场涌入千万把梳子(富有弹性)。 --- ## 常见误区与考试陷阱 1. **不用百分比,直接用价格差或数量差。** 弹性比较的是百分比变化,不是绝对变化。 2. **把斜率等同于弹性。** 斜率受坐标单位影响,弹性是无单位的比例概念。 3. **忘记总收益测试。** 缺乏弹性时涨价会提高总收益;富有弹性时降价会提高总收益。 4. **忽略时间。** 短期缺乏弹性的商品,长期可能因为替代方案出现而变得更有弹性。 5. **交叉价格弹性的正负号记反。** 替代品为正,互补品为负。 --- ## 自测题 1. 价格上涨 5%,需求量下降 15%。需求是富有弹性还是缺乏弹性? - **答案提示:** PED = 15% / 5% = 3,大于 1,所以富有弹性。 2. 如果需求缺乏弹性,涨价后总收益通常怎样变化? - **答案提示:** 总收益上升,因为数量下降幅度小于价格上升幅度。 3. 为什么食盐的需求通常缺乏弹性? - **答案提示:** 它价格占收入比例小、用途基础、替代品少。 4. 茶叶涨价后,咖啡销量上升。茶和咖啡的交叉价格弹性是什么符号? - **答案提示:** 正号,因为它们是替代品。 --- ### 📝 结语 弹性理论是“定价策略”的祖师爷。一个优秀的管理者,在策划下一次“双十一”促销或者制定新品发布价格之前,必然要在心里盘算这笔账:我的核心受众对我将要调整的这几块钱,到底痛不痛? 从下一章开始,我们将走出针对单一产品的微观视角,去看看当不同类型的企业聚集在一起时,会形成怎样的**市场结构 (Market Structures)**——你是处在大家拼得你死我活的“完全竞争”中,还是处于可以为所欲为的“垄断”王座上? # 第4章:市场结构 (Market Structures) —— 为什么有些行业卷到死,有些却能躺着赚钱? ## 4.0 引言:“内卷”与“躺赢”的经济学解释 如果仔细观察商业世界,你会发现一个非常残酷的现象:开一家街边餐饮店或咖啡馆,每天起早贪黑,利润却薄得可怜,撑不过一年的比比皆是;而同样是做生意,你老家的自来水公司或者国家电网却从来不需要打广告,更不担心没有客户,甚至每年光靠收固定费用就能实现巨额营收。 为什么会有这种天壤之别?答案在于它们所处的**市场结构 (Market Structures)** 不同。 在经济学中,我们根据行业里**竞争的激烈程度**,将所有的商业形态划分在一个光谱上。光谱的最左端是极致的“内卷”,最右端是绝对的“躺赢”。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgICBBW+WujOWFqOernuS6iVxu5p6B6Ie05YaF5Y23XSAtLT4gQlvlnoTmlq3nq57kuolcbueZvuiKsem9kOaUvl0KICAgIEIgLS0+IENb5a+h5aS0XG7npZ7ku5nmiZPmnrZdCiAgICBDIC0tPiBEW+WehOaWrVxu54us5a2k5rGC6LSlXQogICAgCiAgICBzdHlsZSBBIGZpbGw6I2ZmY2NjYyxzdHJva2U6IzMzMyxzdHJva2Utd2lkdGg6MnB4CiAgICBzdHlsZSBEIGZpbGw6I2NjZTVmZixzdHJva2U6IzMzMyxzdHJva2Utd2lkdGg6MnB4" locale="zh"} 本章我们将逐一拆解这四种经典的市场结构。 --- ## 学习目标 学完本章后,你应该能够: 1. 比较完全竞争、垄断竞争、寡头垄断和垄断的核心特征。 2. 解释产品差异化和进入壁垒如何影响定价权。 3. 判断企业是价格接受者还是价格制定者。 4. 根据市场结构推测企业常见竞争策略。 5. 说明为什么寡头市场必须考虑竞争对手反应。 --- ## 4.1 完全竞争 (Perfect Competition):极致的“内卷” 在光谱的最左端,是竞争最惨烈的**完全竞争市场**。这是一种理论上的极端理想状态。 ### 核心特征: 1. **无数个买家和卖家:** 市场大到没有任何一个人或商家能影响整体局势。 2. **产品同质化 (Homogeneous Products):** 每家卖的东西**完全一模一样**,没有任何区别。 3. **自由进出 (Free Entry and Exit):** 开店和关店没有任何门槛。 4. **价格接受者 (Price Taker):** 商家**没有任何定价权**。市场定多少钱,你就只能卖多少钱。 > 💡 **本土案例:山东寿光的大白菜农** > 想象一下农贸市场里的白菜批发商。老李家种的白菜和老张家种的白菜,在消费者眼里没有任何区别(同质化)。如果今天整个批发市场的大白菜行情是 1块钱一斤。老李要是敢标价 1块1,他一颗都卖不出去,因为买家立刻就会去隔壁老张那里买。老李唯一能做的,就是“接受”这1块钱的市价(Price Taker)。 > *结局:在完全竞争下,如果有利润,立刻就会有无数新人冲进来包地种白菜,供给增加导致价格下跌,直到所有的利润都被“卷”没(经济利润为零)。老板们赚到的仅仅是辛苦钱。* --- ## 4.2 垄断 (Monopoly):独孤求败的霸主 光谱的最右端,是完全竞争的反面。这是一种几乎没有压力的存在。 ### 核心特征: 1. **只有一个卖家:** 他就是整个行业。 2. **没有替代品 (No Close Substitutes):** 消费者别无选择。 3. **极高的准入门槛 (High Barriers to Entry):** 别人根本进不来。原因可能是政府特许、拥有专利、或者控制了所有自然资源。 4. **价格制定者 (Price Maker):** 企业凭借强大的市场支配力,可以直接决定商品标价,以追求利润最大化。 > 💡 **本土案例:国家电网、12306 与 专利抗癌药****中国铁路 (12306)** 是一个典型的自然垄断。你想从北京坐高铁去上海,除了买中国铁路的票,绝无别家可选(没有任何替代的高铁公司)。建设一条横跨大半个中国的高铁线路需要惊人的资本、土地审批和基建能力,这构成了极高的**资金与行政准入门槛**,民营企业根本不可能再修一条平行的高铁跟它竞争。因此,垄断企业拥有极强的定价权(虽然在中国,这类关乎民生的垄断企业很大程度上受政府价格管制,但在纯粹的自由市场中,垄断者往往会榨取极高的利润)。 --- ## 4.3 垄断竞争 (Monopolistic Competition):品牌与流量的战场 这是我们在日常生活中最常遇到的市场结构,它结合了前两者的部分特征。 ### 核心特征: 1. **众多的卖家与买家:** 市场上有很多竞争者,进出门槛不高。 2. **产品差异化 (Product Differentiation):** 这是最关键的一点!大家卖的东西**属于同一类,但在细节上有区别**(口味、包装、品牌故事)。 3. **拥有一点定价权:** 因为差异化,商家有底气稍微定高一点价格。 > 💡 **本土案例:步行街上的“奶茶大战”** > 看看你们大学门口或商业广场的奶茶街。那里有几十家店:喜茶、奈雪、霸王茶姬、茶百道、蜜雪冰城。 > 它们竞争极度激烈(新店开张和倒闭每天都在发生),但它们**并不是完全同质化**的:喜茶主打真果肉和高级感,霸王茶姬主打国风和原叶鲜奶茶,蜜雪冰城主打极致下沉的便宜。 > 因为有“品牌忠诚度”这种东西的存在,如果霸王茶姬稍微涨价1块钱,它的铁粉依然会买单(不像卖大白菜的老李一涨价就死)。它们通过**铺天盖地的营销、联名(比如和动漫IP联名)、包装设计**来制造差异化,从而在这个血海中杀出一条生路。 --- ## 4.4 寡头垄断 (Oligopoly):神仙打架与暗中默契 在这个市场里,没有成百上千的小玩家,只有几个巨无霸。 ### 核心特征: 1. **少数几个庞大的卖家 (A Few Large Dominant Firms):** 这些巨头占据了市场的绝大份额。 2. **极高的进入门槛:** 需要海量资金、技术或规模效应。 3. **相互依存 (Mutual Interdependence):** 一家巨头的决策,会极其严重地影响另一家巨头。因此,他们在做决策前,必须死死盯着对手(这里引入了高级经济学中的**博弈论 Game Theory**)。 > 💡 **本土案例:三大运营商 与 美团饿了么** > 中国的通信市场是典型的寡头垄断——**中国移动、中国联通、中国电信**。由于架设全国基站网络的成本是天文数字,几十年来场内一直只有这三个玩家。 > 寡头之间最怕的就是**价格战 (Price War)**。如果联通突然宣布“流量终身免费”,移动和电信为了生存必须立刻跟进,最终导致三家集体利润暴跌。所以寡头们通常有一种暗中的默契(甚至是非法的明确串谋/卡特尔),在暗中维持一个稳定的甚至偏高的定价水平,大家一起稳稳赚钱,避免两败俱伤。同样的例子还有中石油与中石化,或是早期外卖大战中烧掉数百亿后最终形成双寡头格局的美团与饿了么。 --- ## 4.5 从传统市场结构到数字平台:现在这门课发展到了哪里 传统教材把市场结构讲成“卖家数量、进入壁垒、产品差异、定价权”的组合,这仍然是基础。但近年的数字经济研究提醒我们:在平台市场里,企业的定价权不只来自“有几家卖家”,还来自搜索排序、推荐算法、数据积累、网络效应和平台规则。 举个简单例子。在线下商场里,一家奶茶店和隔壁奶茶店竞争,差异化主要来自口味、位置和品牌。但在外卖平台上,消费者先看到谁、优惠券发给谁、配送费怎么显示、评价如何排序,都会改变需求流向。平台本身不一定直接卖奶茶,却能通过规则改变每家店的实际竞争环境。 :chart-js-figure{props64="eyJ0eXBlIjoibGluZSIsInRpdGxlIjoi5biC5Zy65pSv6YWN5Yqb5LuO5ZOq6YeM5p2lIiwic3VidGl0bGUiOiLkvKDnu5/ooYzkuJrmm7Tkvp3otZbop4TmqKHlkozov5vlhaXlo4HlnpLvvJvmlbDlrZflubPlj7Dov5jkvJrlj6DliqDmlbDmja7jgIHmjqjojZDlkozpu5jorqTpgInpobnjgIIiLCJoZWlnaHQiOjM0MCwiZGF0YSI6eyJsYWJlbHMiOlsi5a6M5YWo56ue5LqJIiwi5Z6E5pat56ue5LqJIiwi5a+h5aS0Iiwi5pWw5a2X5bmz5Y+w5a+h5aS0Iiwi5bmz5Y+w55Sf5oCBIl0sImRhdGFzZXRzIjpbeyJsYWJlbCI6Iue7j+WFuOWumuS7t+adgyIsImRhdGEiOlsxLDMsNyw4LDddLCJib3JkZXJDb2xvciI6IiMyNTYzZWIiLCJiYWNrZ3JvdW5kQ29sb3IiOiJyZ2JhKDM3LCA5OSwgMjM1LCAwLjEyKSIsInRlbnNpb24iOjAuMzUsImZpbGwiOnRydWV9LHsibGFiZWwiOiLmlbDmja7kuI7nrpfms5XmnYPlipsiLCJkYXRhIjpbMCwxLDMsNyw5XSwiYm9yZGVyQ29sb3IiOiIjZGMyNjI2IiwiYmFja2dyb3VuZENvbG9yIjoicmdiYSgyMjAsIDM4LCAzOCwgMC4xMCkiLCJ0ZW5zaW9uIjowLjM1LCJmaWxsIjp0cnVlfV19LCJvcHRpb25zIjp7InNjYWxlcyI6eyJ5Ijp7Im1pbiI6MCwibWF4IjoxMCwidGl0bGUiOnsiZGlzcGxheSI6dHJ1ZSwidGV4dCI6IuebuOWvueW8uuW6piJ9fSwieCI6eyJ0aXRsZSI6eyJkaXNwbGF5Ijp0cnVlLCJ0ZXh0Ijoi5biC5Zy65b2i5oCBIn19fX0sImNhcHRpb24iOiLov5nlvKDlm77kuI3mmK/kuKXmoLzkvLDorqHlgLzvvIzogIzmmK/luK7liqnkvaDnkIbop6PvvJrmlbDlrZflubPlj7DorqnluILlnLrlipvph4/lpJrkuobkuIDmnaHmlbDmja7lkoznrpfms5XpgJrpgZPjgIIifQ=="} ### 论文精读:平台和算法定价怎样改写市场结构 先把 fundamental 写出来。传统寡头模型里,每家企业选择价格或产量,利润可以简化为: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这里的关键是相互依存:你的需求不仅取决于自己的价格 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,还取决于竞争对手价格 [[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}. 这就是为什么寡头企业要考虑对手反应。 数字平台把这个函数改了一层。平台会通过排序、推荐、补贴、配送费展示和评价系统影响需求,所以利润更像: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[A]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 表示平台分配需求的规则。这个小小的 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 很重要:它说明平台不只是一个“市场场所”,而是会改变需求曲线本身的制度安排。 这就是 Johnson, Rhodes and Wildenbeest (2023, DOI: 10.3386/w30630) 这类算法定价论文要解决的问题。基础寡头理论告诉我们,企业之间可能通过重复博弈形成默契;平台经济的问题是,如果卖家用算法自动定价,而平台又控制需求分配,算法之间的互动会不会更容易维持高价?读这类论文时,你应该把它拆成三层: 1. **卖家层**:卖家不再手动调价,而是使用定价算法根据状态更新价格。 2. **平台层**:平台通过搜索、排序或推荐把消费者流量分给不同卖家。 3. **市场结果层**:价格是否更高,价格调整是否更同步,消费者剩余是否下降。 Assad et al. (2023, DOI: 10.1093/qje/qjad038) 研究德国汽油市场中的算法定价,适合和本章寡头垄断放在一起读。传统课堂会说寡头害怕价格战,也可能形成默契;这篇论文让学生看到,当价格软件进入高频市场,企业之间的价格反应速度、同步性和利润结果都可能变化。它不是在证明“算法一定合谋”,而是在问算法是否改变了寡头竞争的动态过程。 Tang and Xu (2025, DOI: 10.1111/jems.12630) 则更适合放在进入壁垒和市场势力的部分。数字技术采用可能提高效率,也可能强化市场权力。为什么?因为数据、自动化和推荐系统会降低强企业服务用户的边际成本,也会让它们更好地锁定用户需求。读这类论文时,不能只写“数字技术提高生产率”,还要问它是否改变了进入门槛、消费者搜索成本和企业定价权。 把这些论文和本章四种市场结构对应起来,可以得到更系统的讲义框架: | Fundamental 概念 | 平台市场中的具体问题 | 读论文时要找的证据 | | -------------- | ---------------------- | ---------------------- | | 产品差异化 | 推荐系统让消费者看到的产品集合不同 | 搜索排序、曝光量和点击转化如何影响需求。 | | 进入壁垒 | 新商家进入平台后是否能获得流量 | 平台是否控制默认排序、评价积累和数据访问。 | | 寡头互动 | 算法是否让价格反应更快、更同步 | 高频价格数据、算法采用时点、价格离散度变化。 | | 市场势力 | 平台或头部卖家是否提高佣金/价格而不失去用户 | 价格、利润率、用户流失率和替代平台使用情况。 | 所以,今天学市场结构时要保留三层判断: 1. **经典结构层**:卖家数量、产品差异、进入壁垒和定价权。 2. **平台规则层**:平台是否控制搜索、推荐、支付、评价、数据和处罚。 3. **算法互动层**:价格是否由自动化规则更新,算法之间是否通过市场反馈形成稳定高价。 如果你以后写外卖、网约车、直播电商、在线旅游或算法定价,不要只说“这是寡头市场”。更好的写法是:它在经典市场结构上接近寡头或垄断竞争,但平台规则 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 改变了需求分配,算法定价又改变了企业之间的动态反应。这样才算真正把基础微观经济学和前沿论文接起来。 --- ## 引导案例:大学门口咖啡店能涨价吗? 假设学校门口有一家咖啡店,想把拿铁从 20 元涨到 24 元。我们用市场结构来分析。 1. **先判断市场结构。** 这大概率是垄断竞争:咖啡店很多,但每家有位置、口味、装修、座位和品牌差异。 2. **看差异化够不够。** 如果它离图书馆最近、座位舒服、很多学生习惯在那里自习,它就有一点定价权。 3. **看替代品强不强。** 如果隔壁三家店味道差不多还更便宜,涨价后学生很容易转身走人。 4. **推测策略。** 店家可能不会单纯涨价,而是搭配会员积分、新品、学习区座位等方式,强化差异化。 这个案例说明:企业能不能涨价,不只看成本,也要看竞争者数量、产品差异和消费者转换成本。 --- ## 常见误区与考试陷阱 1. **以为垄断一定违法。** 有些垄断来自专利、自然垄断或政府特许,并不一定违法。 2. **把垄断竞争误认为垄断。** 垄断竞争有很多企业,也容易进入,只是每家有一点差异化。 3. **以为完全竞争下企业没有会计利润。** 教材说的是长期经济利润趋于零,不等于账面利润一定为零。 4. **忽略进入壁垒。** 当前卖家数量重要,未来有没有新竞争者也同样重要。 5. **忘记寡头的相互依存。** 寡头企业做决策时,必须预判竞争对手会如何反击。 --- ## 自测题 1. 为什么小麦农户通常是价格接受者? - **答案提示:** 小麦高度同质化,单个农户规模很小,买家可以轻松换供应商。 2. 为什么专利药企业可以定高价? - **答案提示:** 专利形成法律进入壁垒,短期内阻止同类药品竞争。 3. 餐饮市场为什么通常属于垄断竞争,而不是完全竞争? - **答案提示:** 餐厅会通过口味、位置、服务、装修和品牌形成差异。 4. 为什么寡头企业不敢随便打价格战? - **答案提示:** 对手可能迅速跟进降价,最终大家利润都下降,市场份额却未必增加。 --- ## 总结:市场结构光谱对比卡 为了应付考试或者做商业分析,你可以快速参考这张核心对比表: | 市场特征 | 完全竞争 (Perfect Competition) | 垄断竞争 (Monopolistic Comp.) | 寡头垄断 (Oligopoly) | 彻底垄断 (Monopoly) | | :--------- | :------------------------- | :------------------------ | :--------------- | :-------------- | | **卖家数量** | 无数 (无数小店/农户) | 很多 (众多品牌店) | 极少 (少数大厂) | 唯一 (一家通吃) | | **产品差异** | 完全一样 (同质化) | 有差异 (打品牌) | 同质或差异均可 | 独一无二 (无可替代) | | **准入门槛** | 极低 / 没有限制 | 低 (开个小吃店) | 很高 (造大飞机) | 极高 / 无法进入 | | **商家的定价权** | 0% (只能被动接受) | 有一点点 (靠情怀溢价) | 较强 (但怕对手打价格战) | 100% (我说了算) | | **最典型的行为** | 拼产量,赚辛苦费 | 拼命打广告、搞联名 | 博弈论,暗中形成默契 | 限制产量、定高价 | ### 📝 结语 作为未来的创业者或投资人,看懂这四种结构至关重要。巴菲特常说投资要寻找有“护城河 (Moats)”的公司,翻译成经济学语言,其实就是**寻找那些能够在残酷的“完全竞争”或“垄断竞争”泥潭中,成功建立极高准入门槛,从而向“寡头”甚至“垄断”右侧靠拢的优质企业**。 到这里,我们已经涵盖了经济学在**微观 (Micro)** 层面的核心玩法:供给、需求、弹性和企业竞争。 准备好深呼吸了吗?下一章开始,我们要将视角拉远,飞出个体企业的报表,去俯瞰整座山川——我们将进入**宏观经济学 (Macroeconomics)** 的世界,第一站:衡量一个国家总财富的终极指标——**GDP (国内生产总值)**。 # 第5章:GDP (国内生产总值) —— 衡量国家财富的终极账本 ## 5.0 引言:从“微观企业”到“宏观经济”的视角跳跃 在过去的四章里,我们是一群在地面上用放大镜观察经济学的人:我们在研究一杯奶茶的价格、一家工厂的成本、或者几家快递公司如何打商战。这叫做**微观经济学 (Microeconomics)**。 从本章开始,我们将坐上直升机,飞到几万米的高空俯瞰整片森林——我们不再关心单杯奶茶卖多少钱,我们关心的是**整个国家所有行业在一年内制造了多少财富、国家整体的失业率是多少、以及全国的物价是不是在失控上涨**。这就叫做**宏观经济学 (Macroeconomics)**。 在宏观经济学的仪表盘上,最重要的那个“总分”指示器,就是 **GDP (Gross Domestic Product, 国内生产总值)**。 --- ## 学习目标 学完本章后,你应该能够: 1. 准确定义 GDP,并解释定义中每个关键词。 2. 区分最终产品和中间产品,避免重复计算。 3. 使用支出法公式:`GDP = C + I + G + (X - M)`。 4. 区分名义 GDP 和实际 GDP。 5. 说明为什么比较生活水平时常用人均实际 GDP。 6. 识别 GDP 作为福利指标的主要局限。 --- ## 5.1 什么是 GDP?(严谨的拆解) **GDP(国内生产总值)** 的官方定义是: > **在一个国家的地理领土范围内 (Domestic),在一定时期内 (通常是一年),所生产出来的所有最终产品与服务 (Final Goods and Services) 的市场总价值 (Market Value)。** 这句话里的每一个词都是考点,我们来逐一拆解: 1. **市场总价值 (Market Value):** 我们不能把10万辆汽车和10万个苹果直接相加。数字是没有意义的,我们必须把它们都换算成货币(比如人民币或美元)。 2. **最终产品 (Final Goods):** 必须是卖给**最终消费者**的东西。 - *错误示范:* 汽车厂买了一块钢板(中间产品)花了500块,然后把钢板做成汽车卖了10万。如果你把钢板的500和汽车的10万都加进GDP,你就犯了\*\*“重复计算 (Double Counting)”\*\*的错误。 - *正确做法:* 只计算那辆最终卖给消费者的汽车(10万)。那500块的钢板价值已经包含在汽车售价里了。 3. **所生产的 (Produced):** 必须是**当年新创造**的价值。 - *例子:* 你今年买了一套10年前建好的二手房。这套房子的总价**不计入**今年的GDP(因为它10年前被造出来的时候已经算过一次了)。但是,你付给二手房中介的“2万元中介费”,属于今年新提供的服务价值,这2万元要计入今年的GDP。 - 类似地,在闲鱼上交易二手iPhone,或者在股市里炒股(资金转移),都不计入GDP,因为没有创造“新的”商品或服务。 4. **地理领土范围内 (Domestic):**强调的是“Where(在哪里生产)”,而不是“Who(谁生产的)”。 - *例子:* 美国的苹果公司在中国郑州富士康园区生产的iPhone,计入**中国**的GDP(因为在中国领土上制造了就业和生产)。 - 中国企业比亚迪在巴西建厂造的车,计入**巴西**的GDP,不计入中国的GDP。 --- ## 5.2 GDP 是怎么算出来的?(支出法) 想象一个国家就是一个巨大的超市。要知道这个超市一年制造了多少价值,最简单的办法就是看**这一年大家在这个超市里总共花了多少钱去买东西**。 这就是计算 GDP 最经典的方法:**支出法 (The Expenditure Approach)**。 经济学家将全社会的支出分成了四大“金主爸爸”: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### 1. C: 消费 (Consumption) - 普通老百姓 这是GDP中最大的一块(在中国和美国都是绝对大头)。 - 包括:你买的牛肉面、新衣服、交的房租、看电影买的票、去医院看病的钱。 ### 2. I: 投资 (Investment) - 企业老板与房地产 *注意:这里的“投资”不是指你买股票或买比特币!在经济学里,投资特指购买用于未来生产的实物资产。* - 包括:工厂老板买了一台新的数控机床、企业盖了一栋新厂房、以及**老百姓购买全新的一手商品房**(买新房在经济学上被视作投资,而不是日常消费)。如果工厂造了一批鞋子今年没卖出去,堆在仓库里,这也会作为“存货投资”计入当年的I当中。 ### 3. G: 政府购买 (Government Purchases) - 国家政府 也就是各级政府花出去的钱(必须是换取了实际的产品或服务的钱)。 - 包括:政府修高铁、建跨海大桥的工程款;购买战斗机和坦克的钱;给公立学校老师和警察发放的工资。 - *不包括:* 政府发给老百姓的养老金、贫困补贴或消费券。这种钱学名叫做**转移支付 (Transfer Payments)**,因为政府发这笔钱时并没有得到任何实物回报,这笔钱只有等到老百姓把它花在超市里,才会通过 (C消费) 计入GDP。 ### 4. (X - M): 净出口 (Net Exports) - 外国人 也就是 出口(Exports) 减去 进口(Imports)。 - **出口 (X):** 中国工厂造的假发卖到了非洲,因为是在中国境内生产的,要加进中国的GDP。 - **进口 (M):** 你买了一台原装进口的德国相机,算在了你的消费(C)里。但这台相机不是中国制造的,所以我们要在算总账时把它扣除掉,这就是为什么要减去M。 --- ## 例题:这些交易算不算 GDP? 假设以下事情都发生在中国境内的同一年: | 交易 | 是否计入 GDP | 原因 | | :----------------- | :------- | :------------------ | | 家庭购买一套新建商品房 | 计入,属于投资 | 新房是当年新生产的住宅资本 | | 家庭购买一套 10 年前建成的二手房 | 不计入房屋总价 | 房子在 10 年前建成时已经算过 | | 房产中介收取二手房佣金 | 计入,属于服务 | 中介服务是今年新提供的 | | 面包店购买面粉做面包 | 不单独计入 | 面粉是中间产品,价值会包含在面包售价里 | | 消费者购买最终面包 | 计入,属于消费 | 面包是最终产品 | | 政府发放养老金 | 不直接计入 | 这是转移支付,不是政府购买当期产出 | 考试时可以按三个问题判断:是不是**本国境内**生产?是不是**当年新生产**?是不是**最终产品或服务**? --- ## 5.3 名义 GDP vs 实际 GDP (剥离通货膨胀的虚假繁荣) 这是宏观经济学中极其容易被忽悠的一个陷阱。 假设某国(比如我们叫它“苹果国”)只生产苹果,且只算一年的账: - **第1年:** 生产了 100个苹果,每个卖 1块钱。`第1年的 GDP = 100元`。 - **第2年:** 依然只生产了 100个苹果。但是因为严重通货膨胀,每个苹果涨价到了 2块钱。`第2年的 GDP = 200元`。 如果你只看总数字(从100元到200元),你会觉得这个国家经济增长了100%!太棒了! 但现实是残酷的:他们**生产的实物依然只有100个苹果**,老百姓的生活水平根本没有变好,全都是物价上涨制造的幻觉。 为了解决这个问题,经济学家引入了两个概念: 1. **名义 GDP (Nominal GDP):** 用**当年的真实价格**算出来的GDP。它包含了通货膨胀的水分(比如上面的200元)。 2. **实际 GDP (Real GDP):** 强制使用某个“过去的基准年”的固定价格来计算。它**剔除了价格上涨因素,只衡量真实生产出物品数量的增加**。 **结论:** 当我们在新闻上听到“今年我国GDP增长了5.2%”时,国家统计局公布的**永远是经过通胀调整后的“实际 GDP (Real GDP) 增长率”**。只有实际GDP增长,才意味着这个国家真的生产出了比去年更多的肉、车子、和房子。 --- ## 5.4 人均 GDP 与 老百姓的幸福感 如果印度的总GDP超过了瑞士,是不是意味着印度人比瑞士人更富裕?当然不是。印度的总分高,单纯是因为有14亿人在干活。 要衡量普通老百姓的真实生活水平,我们必须看: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[人均实际]{.mord.cjk_fallback}[ GDP (Real GDP per capita)]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[国家总人口]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[实际]{.mord.cjk_fallback}[ GDP]{.mord}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这是目前衡量一个国家\*\*“生活标准 (Standard of Living)”\*\* 最好的单一指标。人均GDP高的国家(如挪威、美国、新加坡),通常拥有更长的平均寿命、更好的医疗条件以及更高的受教育程度。 ### 🚨 但 GDP 不是万能的(GDP的不计入项) 虽然GDP很强大,但它却有着致命的盲区(这是考试经常出题的地方)。以下这些能提高我们幸福感的东西,**统统是不计入GDP的**: 1. **非市场交易与家务劳动:** 如果你花500块钱请保洁阿姨打扫卫生,计入GDP;如果你自己在家辛辛苦苦打扫了一天,不计入GDP。所以有人开玩笑说:“如果你跟你家的保洁阿姨结婚了,国家的GDP就会下降。” 2. **地下经济 (Underground Economy):** 无论是违法的(毒品交易、走私),还是合法的(街头摆摊不开发票、付现金逃税),因为政府追踪不到,都没法算进GDP。 3. **环境污染与资源破坏:** 假设一家化工厂年产值100亿(增加GDP),但它把当地的河水全部严重污染了。老百姓因此得病遭受的痛苦,并不会在GDP中变成“负数”被扣除。 4. **闲暇时间 (Leisure Time):** 如果全国人民决定不再周末双休,改为全年无休007工作,国家的GDP一定会暴涨。但老百姓会更幸福吗?绝对不会。GDP无法衡量人们在周末陪伴家人的快乐。 --- ## 常见误区与考试陷阱 1. **把二手商品交易计入当年 GDP。** 二手商品在首次生产时已经计入,当年只计算相关新服务。 2. **重复计算中间产品。** 面粉、钢板等中间投入的价值已经包含在最终产品价格里。 3. **把买股票当成 GDP 中的投资。** 买股票只是金融资产转手,不是新增实物资本。 4. **用名义 GDP 判断真实增长。** 名义 GDP 上升可能只是因为价格上涨。 5. **把 GDP 等同于幸福。** GDP 衡量市场产出,不直接衡量分配、闲暇、健康、环境和安全感。 --- ## 自测题 1. 一辆德国生产的汽车进口到中国销售,对中国 GDP 有什么影响? - **答案提示:** 购买会进入消费,但同时作为进口被扣除,所以不增加中国 GDP。 2. 为什么新建厂房算投资,买股票不算 GDP 中的投资? - **答案提示:** 新厂房是新增实物资本;股票交易只是已有金融资产的所有权转移。 3. 如果名义 GDP 增长 8%,物价上涨 5%,实际 GDP 大约增长多少? - **答案提示:** 粗略估算为 3%,即名义增长率减去通胀率。 4. 为什么污染治理支出可能让 GDP 上升,但不一定说明福利提高? - **答案提示:** 治理支出是市场活动,会计入 GDP;但原先污染造成的损害没有被充分扣除。 --- ### 📝 结语 GDP 就像是一个国家体检报告上的“体重和肌肉量”指标,它极其重要,能直观反映出一个国家的体量和生产力引擎有多强。但它并不是健康和幸福的唯一标准。 当你赚的钱越来越多(GDP增长)时,你面临的另一个威胁就会悄然降临——手里的钱变得越来越不值钱。在下一章,我们将深入这只会吞噬国家财富的隐形怪兽:**通货膨胀 (Inflation) 与生活成本**。 # 第6章:通货膨胀与失业 []{#第6章通货膨胀与失业} ## 6.0 为什么 GDP 之后要看通胀和失业 GDP 告诉我们一个经济体一年生产了多少东西,但它不能直接回答两个很现实的问题:东西是不是越来越贵?工作是不是越来越难找? 如果 GDP 在增长,但物价涨得更快,普通人的生活压力仍然可能变大。如果 GDP 数据看起来还可以,但很多人找不到工作,社会感受也不会好。因此,宏观经济学通常会把 **通货膨胀** 和 **失业** 放在 GDP 之后一起学习。 可以这样理解:GDP 像发动机排量,通胀像仪表盘上的温度,失业像有多少人没有被这台发动机带动起来。只看发动机大小,不看温度和就业,判断就会偏。 ## 学习目标 学完本章后,你应该能够: 1. 用 CPI 计算通胀率。 2. 区分名义收入和实际购买力。 3. 解释为什么意外通胀比预期内通胀更麻烦。 4. 计算失业率和劳动参与率。 5. 区分摩擦性、结构性和周期性失业。 6. 说明通胀与失业的短期权衡为什么不能长期固定存在。 --- ## 6.1 价格水平与通货膨胀 **价格水平**指的是整个经济中商品和服务价格的总体水平。**通货膨胀**指价格水平持续上升的速度。 最常见的指标是 **消费者价格指数(CPI)**。它会选取一篮子普通消费者经常购买的商品和服务,例如食品、住房、交通、医疗、通信等,然后观察这一篮子东西的总价格如何变化。 通胀率的计算公式是: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[通胀率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[上期]{.mord.cjk_fallback}[ CPI]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[本期]{.mord.cjk_fallback}[ CPI]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[上期]{.mord.cjk_fallback}[ CPI]{.mord}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[100%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 比如 CPI 从 120 上升到 126,通胀率就是: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[120]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[126]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[120]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[100%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[5%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这表示同样一篮子商品和服务,比上一期贵了 5%。 ### 通胀、反通胀和通缩 这三个词很容易混: - **通胀**:价格水平在上升; - **反通胀**:通胀率下降,但仍然是正的,也就是价格还在涨,只是涨慢了; - **通缩**:价格水平下降。 例如通胀率从 8% 降到 4%,这叫反通胀,不叫通缩。因为价格仍然在上涨。 ## 6.2 名义变量与实际变量 一旦存在通胀,我们就必须区分 **名义值** 和 **实际值**。 - **名义收入**:直接用当期货币金额表示的收入; - **实际收入**:扣除物价变化之后的购买力。 如果你的工资涨了 3%,但物价涨了 6%,你拿到的钱变多了,可是能买到的东西反而少了。经济学关心实际值,是因为实际值更接近生活感受。 这个区分不仅适用于工资,也适用于利率、GDP、储蓄收益和投资回报。 一个常用的粗略判断是: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[实际增长率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[[名义增长率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[[通胀率]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果工资上涨 5%,物价上涨 7%,实际工资大约下降 2%。 ## 6.3 通胀的成本 温和且稳定的通胀不一定可怕。真正麻烦的是通胀过高、波动太大,或者超出了人们预期。 通胀可能带来的问题包括: - 货币购买力下降,家庭预算变得不稳定; - 企业需要频繁调价,长期合同更难签; - 储蓄者和借款人之间会发生意外的利益转移; - 价格信号变得模糊,企业和消费者更难判断真实供求; - 如果通胀失控,人们可能不愿意持有本国货币。 所以政策讨论中经常强调“稳定预期”。如果大家都预期通胀在 2% 左右,合同和工资可以提前调整;如果通胀突然变成 10%,很多安排就会被打乱。 举个例子:员工签合同时以为今年通胀 2%,结果实际通胀 9%,那他的固定工资购买力就被明显侵蚀。固定利率借款人反而可能受益,因为未来还的钱变得“不值钱”了。意外通胀的麻烦就在于它会重新分配利益,而且很多人事先没有准备。 ## 6.4 失业率如何计算 成年人在劳动力市场中大致可以分为三类: - **就业者**:有工作的人; - **失业者**:没有工作,但正在积极找工作的人; - **非劳动力人口**:没有工作,也没有积极找工作的人。 劳动力等于: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[劳动力]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[[就业者]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[[失业者]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 失业率等于: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[失业率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[劳动力]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[失业者]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[100%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 劳动参与率等于: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[劳动参与率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[成年人口]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[劳动力]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[100%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这里有一个容易忽略的点:如果一个人找工作找累了,暂时放弃寻找,他就不再被统计为失业者,而是退出劳动力。因此,只看失业率有时不够,还要看劳动参与率、就业人数和岗位空缺。 ## 计算例题:CPI 与失业率 ### A. CPI 假设某学生生活篮子去年花费 1000 元,今年花费 1080 元。 [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[通胀率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1080]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[1000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[100%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[8%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果你的生活费从 500 元涨到 525 元,名义上增加 5%。但物价涨了 8%,你的实际购买力大约下降 3%。 ### B. 失业率 假设某经济体有: - 就业者 9000 万人; - 正在找工作的失业者 1000 万人; - 不在劳动力中的成年人 5000 万人。 劳动力为: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[9000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[10000]{.mord}[[ ]{.mord}[万人]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 失业率为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[10000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[100%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[10%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 成年人口为: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[9000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1000]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[5000]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[15000]{.mord}[[ ]{.mord}[万人]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 劳动参与率为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[15000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[10000]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[100%]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[66.7%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果其中 200 万失业者灰心退出找工作,官方失业人数会下降,劳动力也会下降,失业率看起来可能变好。但这并不代表就业真实改善,因为有人只是退出统计口径了。 ## 6.5 三类失业 失业不是一种原因造成的。 - **摩擦性失业**:找工作需要时间。毕业生找第一份工作、员工换城市工作,都可能出现这种失业。 - **结构性失业**:劳动者的技能、地区或行业与岗位需求不匹配。 - **周期性失业**:经济衰退时总需求不足,企业减少招聘甚至裁员。 摩擦性失业通常是正常现象。结构性失业更需要教育培训和产业调整。周期性失业则和宏观经济波动关系更大。 ## 6.6 通胀与失业的短期权衡 短期内,刺激总需求可能降低失业,但如果经济已经接近产能上限,也可能推高通胀。政策制定者经常要在稳就业和稳物价之间权衡。 这个思路常和 **菲利普斯曲线** 联系在一起。但请注意,关键词是“短期”。长期看,劳动者和企业会调整预期,失业水平更多取决于劳动市场结构、生产率、教育水平和制度环境。靠持续制造高通胀来压低失业,通常行不通。 ## 常见误区与考试陷阱 1. **把价格水平高和通胀高混为一谈。** 通胀是价格上涨速度,不是价格绝对水平。 2. **把反通胀说成通缩。** 通胀从 6% 降到 3%,价格仍然在上涨。 3. **只看名义工资。** 判断生活水平要比较工资涨幅和物价涨幅。 4. **把灰心退出找工作的人算作失业者。** 按统计定义,他们不再属于劳动力。 5. **把所有失业都当成经济衰退造成。** 摩擦性、结构性、周期性失业原因不同,政策也不同。 ## 自测题 1. CPI 从 150 上升到 159,通胀率是多少? - **答案提示:** `(159 - 150) / 150 × 100% = 6%`。 2. 工资上涨 4%,物价上涨 7%,实际工资怎样变化? - **答案提示:** 实际工资大约下降 3%,钱变多但购买力下降。 3. 为什么灰心丧气、停止找工作的人不计入失业者? - **答案提示:** 失业者必须没有工作且正在积极找工作。 4. 哪一类失业最接近经济衰退造成的失业? - **答案提示:** 周期性失业,因为它来自总需求不足。 5. 为什么意外通胀比预期内通胀更麻烦? - **答案提示:** 工资、合同、贷款和储蓄安排都是按原有预期做的,突然变化会打乱利益分配。 ## 本章小结与过渡 通胀衡量价格水平上升速度,失业衡量劳动力资源没有被充分使用的程度。理解这两个指标,必须分清名义和实际,也要搞清楚劳动力统计口径。 下一章我们把目光从短期压力转向长期问题:为什么有些国家几十年后明显变富,而有些国家长期停滞?这就是**经济增长**。 # 第7章:经济增长 []{#第7章经济增长} ## 7.0 增长为什么重要 通胀和失业更多反映短期压力,**经济增长**关注的是长期生活水平。一个国家能不能持续提高居民收入、改善公共服务、减少贫困,最终都离不开长期增长。 增长率看起来只是一个小数字,但长期差别很大。年均增长 2% 的经济体,大约 35 年翻一倍;年均增长 4% 的经济体,大约 18 年就能翻一倍。这就是复利的力量。 所以,经济增长不是宏观经济学中的“背景知识”,而是理解生活水平差距的核心。短期政策可以帮助经济少摔跤,但长期增长决定下一代人的住房、医疗、教育、交通和选择空间。 ## 学习目标 学完本章后,你应该能够: 1. 说明为什么比较生活水平时常用人均实际 GDP。 2. 定义生产率,并解释它与工资和产出的关系。 3. 识别经济增长的主要来源:资本、人力资本、技术、自然资源和制度。 4. 解释资本边际收益递减。 5. 说明为什么技术和思想可以支撑长期增长。 6. 从生产率和激励角度评价增长政策。 --- ## 7.1 人均实际 GDP 比较生活水平时,经济学家通常看 **人均实际 GDP**: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[人均实际]{.mord.cjk_fallback}[ GDP]{.mord}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[人口]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[实际]{.mord.cjk_fallback}[ GDP]{.mord}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 总 GDP 增长可能只是因为人口变多。人均实际 GDP 更关心的是:平均到每个人身上,社会能提供多少真实产出。 当然,这个指标并不完美。它不能直接反映收入分配、闲暇时间、环境质量、家庭劳动和社会公平。但作为衡量长期物质生活水平的起点,它仍然很重要。 ### 70 法则 估算一个变量翻倍需要多久,可以用一个简单规则: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[翻倍时间]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[增长率]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[70]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果年增长率是 2%,大约 35 年翻倍;如果年增长率是 5%,大约 14 年翻倍。长期增长率哪怕只差几个百分点,几十年后也会拉开巨大差距。 ## 7.2 生产率是关键 长期生活水平主要取决于 **生产率**。简单说,生产率就是单位劳动时间能生产多少东西。 生产率提高,意味着同样的劳动时间可以创造更多产出。它通常来自几个方面: - **物质资本**:机器、厂房、道路、港口、通信网络等; - **人力资本**:教育、培训、健康和经验; - **技术进步**:更好的生产方法、更好的产品和更高效的组织方式; - **自然资源**:土地、能源、矿产和气候条件; - **制度环境**:产权保护、合同执行、稳定规则和有效治理。 长期增长不是简单地“多干活”。更重要的是用更好的工具、更好的知识和更好的制度来工作。 ## 7.3 资本积累与边际收益递减 投资会增加资本存量。更多机器、更好设备、更完善的基础设施,通常能提高产出。 但资本也有 **边际收益递减**。第一台机器可能让一个小作坊发生巨大变化;第一百台机器的新增作用可能就小得多。 这解释了为什么一些较落后的经济体在起步阶段可以增长很快:它们只要补上基础设施和设备,生产率就能明显提高。但长期看,单靠资本堆积不够,还需要技术进步、教育改善和制度支持。 ## 计算例题:两个国家的增长路径 假设甲国和乙国的人均实际 GDP 起点都是 10,000 美元。 - 甲国年均增长 2%; - 乙国年均增长 4%。 用 70 法则: - 甲国大约 35 年翻倍; - 乙国大约 17.5 年翻倍。 大约 35 年后: - 甲国人均实际 GDP 约为 20,000 美元; - 乙国已经翻了两次,约为 40,000 美元。 这个例子不是说一个国家可以随便选择增长率,而是提醒你:生产率差异会复利放大。每年差一点,几十年后差很多。 ## 7.4 技术进步不只是高科技 技术进步并不只意味着芯片、人工智能或实验室。只要能用更少资源生产同样东西,或者用同样资源生产更好的东西,都可以算技术进步。 例如: - 更高效的物流系统; - 更耐旱的农作物品种; - 更安全的电子支付; - 更合理的企业管理流程; - 更少浪费的生产线安排。 机器只能在一个地方使用,想法却可以扩散。一个好方法被更多企业采用,就可能带来整个行业的效率提升。集装箱运输、条形码、移动支付这样的技术或组织创新,影响的往往不只是一个企业,而是整条供应链。 ## 7.5 制度与激励 人们是否愿意学习、储蓄、投资和创新,取决于他们是否相信努力会得到回报。 如果产权不稳定、合同难以执行、腐败严重,企业和个人就不愿意做长期投入。反过来,如果规则相对清晰、竞争相对公平、预期比较稳定,社会更容易形成投资和创新的动力。 制度还会影响竞争。如果新企业容易进入市场、融资、招聘并挑战老企业,好想法就更容易扩散。若老企业可以依靠行政关系阻挡竞争,生产率提升就会慢下来。 ## 7.6 增长政策 促进增长的政策,最终都要落到提高生产率上: - 改善基础教育和职业培训; - 保护产权,降低交易成本; - 建设真正有用的基础设施; - 鼓励研发和技术扩散; - 维护金融体系稳定; - 让有能力的企业更容易进入市场和参与竞争。 难点不在于列出这些方向,而在于具体政策是否符合本国条件。没有需求的“形象工程”不会因为叫基础设施就自动创造增长;教育支出真正重要的是有没有形成技能;创新政策真正重要的是有没有奖励有效试错,而不是制造补贴套利。 ## 常见误区与考试陷阱 1. **用总 GDP 比较生活水平。** 人口规模会让总 GDP 产生误导。 2. **以为增长意味着所有人同等受益。** 人均实际 GDP 是平均数,可能掩盖收入分配差距。 3. **以为资本越多,新增产出永远一样多。** 资本存在边际收益递减。 4. **把技术进步理解成只有高科技。** 管理、物流、农业和组织方式的改进也属于技术进步。 5. **只列政策,不讲机制。** 好答案要说明政策如何提高生产率或改善激励。 ## 自测题 1. 为什么比较生活水平时要看人均实际 GDP? - **答案提示:** 它同时排除了价格上涨和人口规模影响,更接近平均真实产出。 2. 如果经济年均增长 3.5%,大约多少年翻倍? - **答案提示:** 70 / 3.5 = 20,大约 20 年。 3. 什么是资本的边际收益递减? - **答案提示:** 当资本越来越多时,在其他条件不变或增长较慢的情况下,新增一单位资本带来的额外产出会下降。 4. 为什么技术进步可以带来长期增长? - **答案提示:** 好想法可以复制和扩散,不像一台机器只能在一个地方使用。 5. 制度环境如何影响投资意愿? - **答案提示:** 产权、合同和规则稳定,人们才更愿意储蓄、学习、投资和创新。 ## 本章小结与过渡 经济增长是人均真实产出的长期提高。它的核心是生产率,而生产率又来自资本、教育、技术、自然资源和制度环境。增长政策本质上就是生产率政策。 下一章我们学习把储蓄转化为投资、让现代交易顺畅运转的制度:**货币与银行**。 # 第8章:货币与银行 []{#第8章货币与银行} ## 8.0 为什么货币很重要 货币看起来很普通,因为我们每天都在用它。但从经济学角度看,货币是一种非常重要的制度安排。 如果没有货币,交易就要靠物物交换。你想买面包,就得找到一个既有面包、又刚好想要你手里东西的人。这样的交易成本非常高。货币把这个问题大大简化了:只要大家都愿意接受货币,交易就容易得多。 想象一下大学校园:学生买午饭,不需要拿课堂笔记去换三明治;咖啡店老板收了钱,又可以用钱付工资、房租和原材料。货币让陌生人之间的合作变得简单。 ## 学习目标 学完本章后,你应该能够: 1. 解释货币的三种功能。 2. 区分现金、活期存款和更广义的货币。 3. 读懂简单的银行资产负债表。 4. 说明部分准备金制度下银行如何影响货币供给。 5. 描述中央银行的主要职责。 6. 解释为什么银行体系高度依赖信心。 --- ## 8.1 货币的三种功能 货币主要有三种功能: - **交易媒介**:买卖东西时被普遍接受; - **计价单位**:商品价格、工资、债务都可以用它表示; - **价值储藏**:今天的购买力可以保存到未来。 如果通胀很高,货币作为价值储藏的功能就会变弱。极端情况下,人们甚至不愿意持有本国货币,交易媒介功能也会受损。比如恶性通胀时期,商家可能更愿意收外币、黄金或实物,而不是本国纸币。 ## 8.2 什么算货币 现实中的货币不只是纸币和硬币。 常见的货币层次包括: - **现金**:公众手中的纸币和硬币; - **活期存款**:可以随时支付和转账的银行存款; - **更广义的货币**:储蓄存款、货币市场基金等流动性较强的资产。 现代经济里的大部分货币,其实是银行账户上的数字,而不是钱包里的纸币。 这里有一个关键词叫 **流动性**:一种资产能否方便、快速、低成本地变成支付手段。现金流动性最高;房子很值钱,但卖房需要时间和成本,所以流动性低。 ## 8.3 银行的资产负债表 银行的基本业务是连接储蓄者和借款者。 从资产负债表看: - **资产**:贷款、准备金、债券等; - **负债**:客户存款和银行自己的借款; - **权益**:银行股东投入的资本。 对客户来说,存款是资产;但对银行来说,存款是负债,因为客户有权取走。贷款则是银行的资产,因为借款人未来要还本付息。 这点初学者很容易觉得反直觉。其实同一笔钱在不同人的账上方向相反:你的存款是你对银行的债权,所以是你的资产;银行欠你这笔钱,所以是银行的负债。 ## 例题:一张简化的银行资产负债表 假设校园银行的资产负债表如下: | 资产 | 金额 | 负债与权益 | 金额 | | :------- | ------------: | :---------- | ------------: | | 准备金 | 20,000 元 | 存款 | 90,000 元 | | 贷款 | 80,000 元 | 股东权益 | 10,000 元 | | **资产合计** | **100,000 元** | **负债与权益合计** | **100,000 元** | 逐项理解: - 银行留有 20,000 元准备金,用于应付取款和清算; - 银行发放了 80,000 元贷款,所以借款人未来要还银行钱; - 客户有 90,000 元存款,所以银行欠客户这笔钱; - 股东权益 10,000 元是银行的资本缓冲。 如果其中 5,000 元贷款坏账,资产从 100,000 元降到 95,000 元。存款负债仍是 90,000 元,于是股东权益从 10,000 元降到 5,000 元。权益就是吸收损失的垫子。 ## 8.4 准备金与信用创造 银行不会把所有存款都锁在保险柜里。它会留下一部分作为 **准备金**,其余部分发放贷款。这就是部分准备金制度。 当银行发放贷款时,借款人账户上会出现一笔存款。借款人把钱花出去后,收款人可能又把钱存入另一家银行,另一家银行再继续放贷。这样一轮轮下去,银行体系就能扩大货币供给。 在非常简化的模型里: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[货币乘数]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[准备金率]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果准备金率是 10%,简单货币乘数就是 10。也就是说,在最简模型中,新增 1000 元准备金最多可以支持 10000 元存款。 但现实中银行不能无限创造货币。它还受准备金、资本监管、信用风险、借款人需求、还款能力和央行政策影响。 ## 8.5 中央银行 **中央银行**负责管理货币和金融体系。不同国家名称不同,例如美国的美联储、英国的英格兰银行、中国的中国人民银行。 中央银行通常关注: - 物价稳定; - 就业和产出稳定; - 金融稳定; - 支付清算系统安全。 它影响经济的主要方式,是影响利率、银行流动性、市场预期和金融条件。 在金融危机中,中央银行还可能扮演“最后贷款人”角色:当本来有偿付能力的银行短期缺流动性时,央行提供紧急流动性,避免恐慌扩散。 ## 8.6 银行挤兑与信心 银行有一个天然特点:存款往往可以很快取出,但贷款通常期限较长,不能马上收回。 如果大量储户同时要求取钱,即使银行长期资产质量不错,也可能陷入流动性危机。这就是银行挤兑。 存款保险、中央银行最后贷款人制度、银行资本监管,都是为了降低这类风险。银行体系运行的基础,不只是资产,更是信心。 银行挤兑的可怕之处在于它会自我实现:如果我相信别人都会去取钱,我也会想先去取;当足够多人这样想,危机就真的发生了。 ## 常见误区与考试陷阱 1. **以为货币就是现金。** 现代经济中大量货币是银行存款。 2. **不看资产负债表的主体。** 存款对客户是资产,对银行是负债。 3. **以为银行把所有存款都贷出去。** 银行必须持有准备金,并满足监管和风险要求。 4. **把货币乘数当成机械公式。** 简化模型帮助理解机制,现实还受贷款需求、风险、资本和央行政策影响。 5. **以为只有资不抵债的银行才会被挤兑。** 长期资产不错但短期缺现金,也可能发生流动性危机。 ## 自测题 1. 为什么货币比物物交换更有效率? - **答案提示:** 货币避免了“双重需求巧合”,大家不必刚好互相需要对方的东西。 2. 为什么客户存款对银行来说是负债? - **答案提示:** 银行欠客户这笔钱,客户有权取走。 3. 如果准备金率是 20%,简单货币乘数是多少? - **答案提示:** 1 / 0.20 = 5。 4. 银行贷款为什么会影响货币供给? - **答案提示:** 贷款会创造存款,存款再流转和再存入,银行体系中货币供给会扩大。 5. 银行体系为什么特别依赖信心? - **答案提示:** 银行无法同时把所有长期贷款立即变成现金,大规模取款会造成流动性危机。 ## 本章小结与过渡 货币让交易更顺畅,银行让储蓄转化为贷款和投资,中央银行维护货币和金融系统稳定。银行体系能够创造信用,但受到准备金、资本、风险、监管和信心约束。 下一章我们继续追问:中央银行如何利用货币和利率影响整个经济?这就是**货币政策与 AD-AS 模型**。 # 第9章:货币政策与 AD-AS 模型 []{#第9章货币政策与-ad-as-模型} ## 9.0 从货币到宏观经济 上一章讨论了货币和银行。这一章进一步问:中央银行怎样通过货币政策影响通胀、产出和就业? 入门宏观经济学常用 **总需求-总供给模型** 来分析这个问题,也就是 AD-AS 模型。 这个模型和普通供求图很像,但坐标轴不同: - 纵轴是整体价格水平; - 横轴是实际 GDP。 它帮助我们判断经济波动到底是需求不足、需求过热,还是供给端出了问题。分析政策前,先判断冲击类型,这是本章最重要的习惯。 ## 学习目标 学完本章后,你应该能够: 1. 定义总需求,并说出它的四个组成部分。 2. 区分短期总供给和长期总供给。 3. 用产出缺口描述衰退和经济过热。 4. 区分需求冲击和供给冲击。 5. 解释利率变化如何影响总需求。 6. 说明货币政策的滞后和局限。 --- ## 9.1 总需求 **总需求(AD)** 表示在不同价格水平下,经济中所有部门计划购买的总产出。 它由四部分构成: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中,`C` 是消费,`I` 是投资,`G` 是政府购买,`NX` 是净出口。 总需求曲线通常向右下方倾斜。价格水平越高,真实购买力越低,货币需求和利率可能上升,出口竞争力也可能下降,因此总支出会减少。 实际分析中,只要家庭、企业、政府或海外买家在同一价格水平下改变了计划支出,总需求曲线就会移动。 ## 9.2 总供给 **总供给(AS)** 表示企业在不同价格水平下愿意生产多少总产出。 短期和长期要分开看: - **短期总供给(SRAS)** 通常向右上方倾斜,因为工资和部分价格具有黏性; - **长期总供给(LRAS)** 通常是一条垂直线,因为长期产出取决于劳动、资本、技术和制度,而不是单纯的价格水平。 实际产出与潜在产出之间的差距,叫 **产出缺口**。 - **负产出缺口**:实际 GDP 低于潜在 GDP,通常伴随较高失业; - **正产出缺口**:实际 GDP 高于可持续产能,通常伴随更强通胀压力。 ## 9.3 需求冲击与供给冲击 **需求冲击** 是总支出发生变化。例如消费者信心下降、房地产市场降温、企业投资减少,都会让总需求左移。 **供给冲击** 是生产成本或生产能力发生变化。例如能源价格上涨、供应链中断、自然灾害、技术进步,都可能影响总供给。 两类冲击的政策含义不同。需求不足时,刺激政策可能有效;负面供给冲击则更难处理,因为它可能同时带来产出下降和物价上升。 ### 快速判断表 | 情景 | 曲线变化 | 产出变化 | 价格水平变化 | 政策难度 | | :------ | :----------- | :--- | :------ | :----- | | 消费者信心下降 | AD 左移 | 下降 | 下降或涨幅放缓 | 相对容易稳定 | | 投资热潮 | AD 右移 | 上升 | 上升 | 可能过热 | | 油价大涨 | SRAS 左移 | 下降 | 上升 | 更难处理 | | 生产率提高 | SRAS/LRAS 右移 | 上升 | 下降或稳定 | 好的供给扩张 | ## 引导案例:是需求不足,还是供给冲击? 假设某国出现“实际 GDP 下降,同时通胀上升”。很多同学第一反应是:GDP 下降,那就降息刺激。 但按 AD-AS 模型要先判断: 1. GDP 下降且价格上升,不像普通的需求下降; 2. 这更像负面供给冲击,例如能源价格大涨或供应链中断; 3. 降息能刺激需求,但可能让通胀更严重; 4. 加息能压通胀,但可能让产出下降更明显。 所以负面供给冲击难处理,因为稳物价和稳产出之间会发生冲突。 :model-curve-chart{props64="eyJ0aXRsZSI6Iui0n+mdouS+m+e7meWGsuWHu++8muS6p+WHuuS4i+mZjeS9huS7t+agvOS4iuWNhyIsInN1YnRpdGxlIjoi6IO95rqQ5Lu35qC85LiK5Y2H5oiW5L6b5bqU6ZO+5Lit5pat5Lya5o6o6auY5LyB5Lia5oiQ5pys77yM5L2/55+t5pyf5oC75L6b57uZ5puy57q/5ZCR5bem56e75Yqo44CCIiwieExhYmVsIjoi5a6e6ZmF5Lqn5Ye6IFkiLCJ5TGFiZWwiOiLku7fmoLzmsLTlubMgUCIsImhlaWdodCI6MzkwLCJtaW5YIjo2NSwibWF4WCI6MTI1LCJtaW5ZIjo3MCwibWF4WSI6MTM1LCJzZXJpZXMiOlt7Im5hbWUiOiLmgLvpnIDmsYIgQUQiLCJjb2xvciI6IiMyNTYzZWIiLCJwb2ludHMiOlt7IngiOjc1LCJ5IjoxMjV9LHsieCI6MTAwLCJ5IjoxMDAsImxhYmVsIjoiRTAifSx7IngiOjEyMCwieSI6ODB9XX0seyJuYW1lIjoi5Y6f55+t5pyf5oC75L6b57uZIFNSQVMwIiwiY29sb3IiOiIjMGY3NjZlIiwicG9pbnRzIjpbeyJ4Ijo4MCwieSI6ODB9LHsieCI6MTAwLCJ5IjoxMDB9LHsieCI6MTIwLCJ5IjoxMjB9XX0seyJuYW1lIjoi5paw55+t5pyf5oC75L6b57uZIFNSQVMxIiwiY29sb3IiOiIjZGMyNjI2IiwicG9pbnRzIjpbeyJ4Ijo3MCwieSI6OTJ9LHsieCI6OTAsInkiOjExMiwibGFiZWwiOiJFMSJ9LHsieCI6MTEwLCJ5IjoxMzJ9XX0seyJuYW1lIjoi6ZW/5pyf5oC75L6b57uZIExSQVMiLCJjb2xvciI6IiM2NDc0OGIiLCJkYXNoZWQiOnRydWUsInNtb290aCI6ZmFsc2UsInBvaW50cyI6W3sieCI6MTAwLCJ5Ijo3NX0seyJ4IjoxMDAsInkiOjEzMn1dfV0sIm1hcmtlcnMiOlt7IngiOjEwMCwibGFiZWwiOiLmvZzlnKjkuqflh7rpmYTov5EiLCJjb2xvciI6IiM2NDc0OGIifSx7IngiOjkwLCJ5IjoxMTIsImxhYmVsIjoiWSDkuIvpmY3vvIxQIOS4iuWNhyIsImNvbG9yIjoiI2RjMjYyNiJ9XSwiY2FwdGlvbiI6IuWmguaenOeci+WIsOS6p+WHuuS4i+mZjeOAgeS7t+agvOWNtOS4iuWNh++8jOWFiOiAg+iZkeS+m+e7meS+p+WGsuWHu++8jOiAjOS4jeaYr+eugOWNleW9kuWboOS4uumcgOaxguS4jei2s+OAgiJ9"} 图里最重要的变化不是 `AD`,而是 `SRAS0` 移到 `SRAS1`。旧均衡在潜在产出附近,新均衡变成更低产出和更高价格,这就是“滞胀型”冲击的核心。货币政策在这种情况下会很难取舍:刺激需求可能稳住产出,却会继续推高价格;压低通胀又可能让产出缺口更大。 ## 9.4 利率如何影响总需求 中央银行通常通过影响短期利率来影响经济。 利率下降时: - 借钱成本降低; - 企业投资更有吸引力; - 家庭买房、买车等大额消费更容易; - 资产价格可能上升,财富效应增强; - 本币有时会走弱,从而支持净出口。 这些都会推动总需求上升。 反过来,利率上升会抑制借贷和支出,从而给总需求降温。这就是货币政策的 **利率传导渠道**。 ## 9.5 通胀目标 很多中央银行会设定一个较低且稳定的通胀目标。发达经济体常见目标大约是 2%,但不同国家的框架并不完全相同。 如果通胀明显过高,中央银行可能加息,压低总需求。如果经济疲弱且通胀偏低,中央银行可能降息,支持总需求。 通胀目标还会影响预期。如果家庭和企业相信央行会维持价格稳定,工资谈判和企业定价就不容易形成螺旋式上涨。 问题在于,政策效果有滞后。今天加息,可能几个月甚至更久之后才充分影响投资、消费和就业。 ## 9.6 货币政策的限制 货币政策很重要,但不能解决所有问题。 - 它不能直接修好供应链; - 它不能直接提高长期生产率; - 当利率已经很低时,降息空间有限; - 过度宽松可能推高资产价格和金融风险; - 政策传导需要时间,不能马上见效。 所以判断政策时,首先要问:当前经济面对的是需求问题,还是供给问题? ## 常见误区与考试陷阱 1. **把 AD-AS 图当成普通供求图。** AD-AS 的纵轴是价格水平,横轴是实际 GDP。 2. **忘记 SRAS 和 LRAS 不同。** 短期有工资和价格黏性,长期看生产能力。 3. **把所有衰退都看成需求不足。** 供给冲击也会让产出下降。 4. **以为降息一定能解决失业。** 如果问题来自供给端或通胀已经很高,政策取舍会更难。 5. **忽略政策滞后。** 货币政策通常不是今天做、明天见效。 ## 自测题 1. 总需求由哪四部分构成? - **答案提示:** 消费、投资、政府购买、净出口,即 `C + I + G + NX`。 2. 为什么长期总供给通常被画成垂直线? - **答案提示:** 长期产出由劳动、资本、技术和制度决定,不由价格水平本身决定。 3. 消费者信心下降会移动哪条曲线? - **答案提示:** 总需求 AD 左移,因为计划支出下降。 4. 为什么负面供给冲击比需求下降更难处理? - **答案提示:** 它会同时带来产出下降和价格上升,稳产出和稳物价之间冲突更明显。 5. 降息通常通过哪些渠道影响总需求? - **答案提示:** 降低借贷成本,刺激投资和耐用品消费,支撑资产价格,并可能影响汇率和净出口。 ## 本章小结与过渡 AD-AS 模型把通胀、产出和政策联系在一起。货币政策主要通过利率、信贷、流动性和预期影响总需求,但效果取决于冲击类型和政策时滞。 下一章学习另一类宏观稳定工具:政府通过支出和税收影响经济的**财政政策**。 # 第10章:财政政策 []{#第10章财政政策} ## 10.0 财政政策是什么 **财政政策** 是政府通过支出和税收影响经济的政策。货币政策主要由中央银行执行,财政政策则体现在政府预算中。 财政政策既影响短期总需求,也影响长期公共服务、基础设施、人力资本和政府债务。 简单说,政府花多少钱、怎么收税、向谁转移支付,都会改变经济中的收入分配和总支出。财政政策之所以重要,是因为政府支出规模足以影响宏观经济,也因为预算本身体现了社会选择:钱花在哪,谁来付钱,谁得到支持。 ## 学习目标 学完本章后,你应该能够: 1. 区分财政政策和货币政策。 2. 解释政府支出、税收和转移支付如何影响总需求。 3. 计算并解释简单的财政乘数。 4. 说明自动稳定器为什么反应快。 5. 区分财政赤字和政府债务。 6. 从需求、激励、分配和可持续性角度评价财政政策。 --- ## 10.1 政府支出与税收 政府支出包括: - 教育、医疗、交通等公共服务; - 基础设施建设; - 公务人员工资; - 国防和公共安全; - 养老金、失业救济等转移支付。 税收则是政府收入来源,也会影响行为。所得税、消费税、财产税、企业所得税,对劳动、消费、投资和企业经营的激励影响不同。 注意和 GDP 支出法的区别: - 政府购买商品和服务会进入 `G`; - 转移支付不直接进入 `G`,因为它只是把购买力转给居民,并不是政府购买当期产出。 但转移支付仍然是财政政策,因为拿到钱的人可能会消费,从而影响总需求。 ## 10.2 扩张性与紧缩性财政政策 **扩张性财政政策** 会提高总需求,通常包括增加政府支出、减税、增加转移支付,或者几者结合。 **紧缩性财政政策** 会降低总需求,通常包括减少支出、增税、减少转移支付,或者几者结合。 经济衰退时,政府可能采用扩张性财政政策来托底需求。通胀压力较大或债务风险上升时,政府可能需要收紧财政。 用 AD-AS 模型看: - 扩张性财政政策使 AD 右移; - 紧缩性财政政策使 AD 左移。 最终主要影响产出还是价格,要看经济有没有闲置资源。 ## 10.3 财政乘数 财政支出变化对 GDP 的影响,可能大于最初的支出变化。这就是 **乘数效应**。 例如,政府新增 100 亿元基建支出,施工企业获得收入,工人工资增加,工人又去消费,商家收入增加,进一步带动更多支出。最终 GDP 增加可能超过最初的 100 亿元。 乘数大小取决于很多因素: - 经济中是否有闲置资源; - 居民拿到新增收入后愿意消费多少; - 新增需求有多少流向进口商品; - 中央银行是否用加息抵消财政刺激; - 项目执行是否及时、有效。 经济低迷、资源闲置时,乘数通常更大;经济已经过热时,财政刺激更可能推高价格。 ## 计算例题:一轮轮支出如何放大 假设政府新增 100 亿元防洪工程支出。施工企业拿到收入后支付工资和材料款。假设居民每拿到 1 元新增收入,会消费其中 0.8 元,储蓄 0.2 元。 前几轮可以这样看: | 轮次 | 新增支出 | | :------------ | -------: | | 政府初始支出 | 100.0 亿元 | | 第一批收入者消费 80% | 80.0 亿元 | | 下一批收入者再消费 80% | 64.0 亿元 | | 再下一批继续消费 80% | 51.2 亿元 | 每一轮都变小,因为总有人会储蓄、纳税或购买进口品。总影响大于最初 100 亿元,但不会无限大。 在最简模型中: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[乘数]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果边际消费倾向 `MPC = 0.8`,乘数为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.8]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[5.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 现实中的乘数往往比这个公式更复杂、更小,但公式帮助我们理解核心机制:一个人的支出会变成另一个人的收入。 ## 10.4 自动稳定器 有些财政反应不需要新政策就会自动发生。 经济衰退时,居民和企业收入下降,税收自然减少;失业人数增加,失业救济等支出自然上升。这些机制会在一定程度上托住家庭收入,缓和经济下滑。 这类机制叫 **自动稳定器**。它的优点是反应快,不需要每次都经过新的立法或预算谈判。 常见例子包括: - 累进所得税在收入下降时自动少收税; - 失业救济在失业增加时自动增加支出; - 低收入补助在家庭收入下降时自动扩大覆盖。 ## 10.5 赤字与债务 如果某一年政府支出大于收入,就会出现 **财政赤字**。历年赤字累积下来,就形成 **政府债务**。 债务不一定坏。经济危机、战争、公共卫生事件或高回报基础设施投资,都可能需要政府举债。 但债务也不是没有上限。债务越高,未来利息负担越重;如果市场怀疑政府偿债能力,融资成本也会上升。 判断债务要问: - 借来的钱用在了什么地方? - 政府支付的利率有多高? - 经济增长速度是否足以支撑债务? - 政府是否有可信的税收和预算能力? 关键问题不是“能不能借债”,而是“借来的钱是否提高未来能力,以及未来是否还得起”。 ## 10.6 挤出效应 政府大量借款,可能推高资金需求和利率,进而减少私人投资。这叫 **挤出效应**。 但挤出效应并不是任何时候都一样强。经济萧条时,大量资源闲置,私人投资本来就弱,财政扩张不一定明显挤出私人部门。经济接近充分就业时,挤出效应就更需要重视。 有时还可能出现 **挤入效应**:如果公共投资提高了私人部门生产率,比如修建真正有用的港口、道路或通信网络,私人投资反而可能增加。 ## 常见误区与考试陷阱 1. **混淆财政政策和货币政策。** 财政政策是政府预算,货币政策是中央银行的利率和流动性工具。 2. **把所有政府支出都当作 GDP 中的 G。** 转移支付影响收入,但不是政府购买当期产出。 3. **以为乘数永远很大。** 乘数取决于闲置资源、进口、储蓄、税收和央行反应。 4. **把赤字和债务混为一谈。** 赤字是某一年的流量,债务是过去累积下来的存量。 5. **简单说债务永远坏或永远无所谓。** 可持续性取决于增长、利率、制度和资金用途。 ## 自测题 1. 财政政策和货币政策有什么区别? - **答案提示:** 财政政策使用政府支出、税收和转移支付;货币政策主要使用利率、流动性和信贷条件。 2. 政府支出增加 200 亿元,GDP 最终增加 300 亿元,乘数是多少? - **答案提示:** 300 / 200 = 1.5。 3. 自动稳定器为什么有用? - **答案提示:** 它随收入和失业自动变化,不需要等待新立法,反应更快。 4. 什么情况下挤出效应更可能明显? - **答案提示:** 经济接近充分就业,政府借款与私人投资争夺资金时。 5. 为什么政府债务既可能合理,也可能带来风险? - **答案提示:** 债务可以用于危机应对和高回报投资,但也会带来未来利息负担和信心风险。 ## 本章小结与过渡 财政政策既是宏观稳定工具,也是公共资源配置工具。好的财政分析不仅问“能不能刺激经济”,还要问钱花得是否有效、分配是否公平、债务是否可持续。 下一章我们把经济放到世界市场中,看贸易、汇率和资本流动如何影响国内 GDP、物价和政策选择。 # 第11章:开放经济与汇率 []{#第11章开放经济与汇率} ## 11.0 为什么要看开放经济 现实中的经济体大多不是封闭的。一个国家会和其他国家交易商品、服务、资金、技术和信息。 这意味着国内经济不仅受本国消费、投资和政策影响,也会受全球需求、汇率、国际利率、资本流动和贸易规则影响。 开放经济宏观学要回答的是:一个国家和世界其他地区发生联系后,GDP、价格、就业和政策会怎样变化。 比如本币贬值可能帮助出口企业,但会推高进口能源和零部件成本;国外经济衰退可能减少本国出口订单;海外利率上升可能吸引资金流出。这些都说明,开放经济既看贸易,也看金融。 ## 学习目标 学完本章后,你应该能够: 1. 定义出口、进口和净出口。 2. 说明净出口如何进入 GDP 和总需求。 3. 区分名义汇率和实际汇率。 4. 预测本币升值和贬值的常见影响。 5. 解释购买力平价的直觉和局限。 6. 从成因和可持续性角度评价贸易逆差。 --- ## 11.1 出口、进口与净出口 **出口** 是本国向外国出售商品和服务。**进口** 是本国从外国购买商品和服务。 **净出口** 等于: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[[出口]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[[进口]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 它也是 GDP 支出法的一部分: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果出口大于进口,净出口为正;如果进口大于出口,净出口为负。 不过,进口并不是“坏事”。进口让消费者和企业获得外国商品、服务和投入品。GDP 中减去进口,是为了只计算本国境内生产,而不是说贸易本身有害。 ## 11.2 名义汇率与实际汇率 **名义汇率** 是两种货币之间的兑换比例。例如,1 美元可以兑换多少人民币,或者 1 英镑可以兑换多少美元。 **实际汇率** 则进一步考虑两国价格水平,衡量本国产品相对于外国产品的价格。 实际汇率更直接影响贸易。如果本国产品相对变便宜,出口可能增加,进口可能减少;如果本国产品相对变贵,出口竞争力可能下降。 简单说: - 名义汇率告诉你货币怎么换; - 实际汇率告诉你考虑物价后,本国产品相对贵还是便宜。 ## 11.3 升值与贬值 一国货币 **升值**,意味着它相对其他货币更值钱。 本币升值通常会带来: - 进口商品更便宜; - 出国旅游、留学成本下降; - 出口商品对外国买家来说更贵; - 净出口可能下降; - 进口商品带来的通胀压力可能下降。 一国货币 **贬值**,则意味着它相对其他货币变便宜。 本币贬值通常会带来: - 进口商品更贵; - 出口商品更有价格竞争力; - 净出口可能上升; - 进口型通胀压力可能增加。 实际效果取决于消费者和企业对价格变化有多敏感。短期内,很多订单和合同已经签好,贸易数量可能调整得比较慢。 ## 引导案例:本币贬值会发生什么? 假设人民币相对美元贬值。 可以一步步看: 1. **出口企业:** 中国商品对美国买家更便宜,出口订单可能增加。 2. **进口企业:** 从美国进口的零部件、设备或原材料变贵,成本上升。 3. **消费者:** 进口电子产品、留学、境外旅游可能变贵。 4. **通胀:** 进口商品和进口投入品涨价,可能传导到国内价格。 5. **净出口:** 如果出口数量增加、进口数量减少的幅度足够大,净出口可能改善。 注意关键词是“可能”。结果取决于弹性、合同、企业产能和买家是否真的会转向本国产品。 ## 11.4 购买力平价 **购买力平价(PPP)** 的基本思想是:长期看,汇率应该使不同国家一篮子商品的价格大致相当。 它背后的直觉是套利。如果同样的可贸易商品在一个国家特别便宜,人们就有动力从那里买,再卖到更贵的地方。这个过程会推动价格和汇率逐渐接近。 但现实中,PPP 更像长期趋势,不是短期精确公式。运输成本、关税、非贸易品、产品差异、资本流动、政策风险,都会让汇率长期偏离购买力平价。 课堂上常用“同款汉堡在不同国家多少钱”来解释 PPP。这个例子很直观,但不能把它当作短期汇率预测公式。 ## 11.5 资本流动 国家之间不仅交易商品,也交易金融资产。 如果外国投资者想买本国股票、债券、房地产或企业股权,他们需要本国货币,这会影响汇率。利率、增长预期、风险水平、政治稳定性,都会影响资本流入和流出。 所以汇率有时会在贸易数据变化不大的情况下剧烈波动,因为金融市场预期变了。 例如投资者突然认为某国更安全,资金流入会增加,对该国货币需求上升;如果投资者担心政治风险,资金可能迅速流出,本币就会承压。 ## 11.6 如何看贸易逆差 贸易逆差并不自动代表经济失败。 一个国家进口多,可能是因为居民购买力强,也可能是因为吸引了大量外国资本流入。外国资本流入会让本国可以投资或消费超过当期收入。 但如果长期逆差主要用于消费,而不是提高未来生产能力,就可能带来风险。如果投资者失去信心,资本流入减少,汇率和金融市场都可能承压。 所以更好的问题不是“有没有逆差”,而是“逆差由什么造成,是否可持续”。 举例: - 如果逆差用于高回报投资,未来产出能力可能提高; - 如果逆差主要用于当期消费,长期偿付压力可能更大; - 如果顺差来自国内需求长期疲弱,也不一定代表经济健康。 ## 常见误区与考试陷阱 1. **因为 GDP 要减进口,就认为进口一定不好。** 减进口只是为了计算本国产出。 2. **混淆升值和贬值。** 升值是本币能换更多外币,贬值是能换到的外币减少。 3. **以为贬值一定立刻改善净出口。** 贸易数量反应可能很慢,进口成本可能先上升。 4. **把 PPP 当成短期预测工具。** 购买力平价更适合长期比较。 5. **忽略资本流动。** 汇率变化常常来自金融投资预期,而不只是贸易。 ## 自测题 1. 净出口如何进入 GDP? - **答案提示:** 出口增加本国产出,进口要扣除,因为进口品在国外生产。 2. 名义汇率和实际汇率有什么区别? - **答案提示:** 名义汇率是货币兑换比例;实际汇率还考虑两国物价水平。 3. 本币贬值为什么可能改善净出口? - **答案提示:** 出口对外国人更便宜,进口对本国人更贵,如果数量反应足够大,净出口会上升。 4. 本币贬值为什么可能推高通胀? - **答案提示:** 进口商品和进口原材料用本币计价会变贵。 5. 为什么购买力平价更适合长期分析? - **答案提示:** 运输成本、关税、非贸易品、产品差异和资本流动都会让短期汇率偏离 PPP。 ## 本章小结与过渡 开放经济把国内市场和世界市场连在一起。汇率变化会影响进出口、通胀和企业成本,资本流动也会影响金融稳定。分析开放经济时,不能只看贸易,还要看资金和预期。 最后一章将把整门课串起来,练习如何选择模型,并把经济学解释写得清楚、有因果、有取舍。 # 第12章:综合复习与案例分析 []{#第12章综合复习与案例分析} ## 12.0 经济学导论到底训练什么 学完一门经济学导论,最重要的不是记住多少术语,而是学会一种分析问题的方式。 遇到一个经济现象时,不要急着给结论。先问几个问题: 1. 谁在做选择? 2. 他们面对什么约束? 3. 激励发生了什么变化? 4. 应该用哪个模型分析? 5. 谁受益,谁受损? 6. 效率、公平和稳定之间有没有冲突? 这一章用几个简单案例,把前面学过的工具串起来。 ## 学习目标 学完本章后,你应该能够: 1. 为常见微观和宏观问题选择合适模型。 2. 把供求、弹性、市场结构、AD-AS 和开放经济工具用于案例分析。 3. 用激励和约束解释政策效果。 4. 同时讨论效率、公平、稳定和可持续性之间的取舍。 5. 写出有机制、有因果链的经济学段落,而不是堆概念。 --- ## 12.1 先选对工具 不同问题适合不同工具。 | 问题类型 | 优先使用的工具 | 重点看什么 | | :----------- | :------------ | :------------- | | 某个商品价格为什么变了? | 供给与需求 | 哪条曲线移动了? | | 价格变化后数量会变多少? | 弹性 | 买方或卖方对价格敏不敏感? | | 企业为什么能涨价? | 市场结构 | 竞争者多少?进入壁垒高不高? | | 国家长期为什么变富? | 人均实际 GDP 与生产率 | 人均真实产出是否提高? | | 为什么通胀或失业变化? | AD-AS | 是需求冲击还是供给冲击? | | 央行该不该调利率? | 货币政策与 AD-AS | 产出缺口、通胀和冲击类型 | | 政府该不该增支或减税? | 财政政策 | 乘数、时滞、债务和分配 | | 汇率变化有什么影响? | 开放经济模型 | 出口、进口、资本流动和通胀 | 模型不是答案本身,而是帮助你组织答案的工具。 ## 12.2 案例一:对含糖饮料征税 假设政府对含糖饮料征税,目标是减少糖分摄入并改善公共健康。 从供求角度看,税收会提高消费者支付的价格,同时降低生产者实际收到的价格。税负最终由谁承担,取决于供给和需求弹性。 如果消费者对价格不敏感,税负更多落在消费者身上;如果生产者很难转向其他产品,生产者也可能承担较大部分。 这个政策可能减少含糖饮料消费,但也可能对低收入消费者影响更大。因此,完整分析不能只说“税收能减少消费”,还要讨论公平性和替代品问题。 ### 答题框架 1. **模型:** 用供求模型和税收楔子分析。 2. **机制:** 税收提高消费者支付价格,降低生产者净收入。 3. **弹性:** 缺乏弹性的一方承担更多税负。 4. **政策目标:** 可能减少含糖饮料消费。 5. **取舍:** 低收入消费者可能受到更大影响。 6. **评价:** 还要看健康收益、税收用途、替代品以及分配影响。 ## 12.3 案例二:经济衰退 假设消费者信心突然下降,家庭减少大额消费,企业也推迟投资。 这会让总需求左移。短期内,企业销售下降,产出减少,就业压力上升,通胀可能回落。 政策上,中央银行可能降息,政府可能增加支出或减税。但政策是否有效,要看产出缺口有多大、通胀压力是否仍然存在、财政空间是否足够,以及政策能否及时落地。 ### 答题框架 1. **模型:** 用 AD-AS。 2. **冲击:** 消费者信心下降导致消费和投资减少,AD 左移。 3. **短期结果:** 实际 GDP 下降,失业上升,通胀压力减弱。 4. **政策选择:** 降息、增加政府支出、减税、自动稳定器发挥作用。 5. **限制:** 政策有时滞,也可能受到债务、通胀或传导不畅限制。 ## 12.4 案例三:本币贬值 如果本币贬值,本国出口商品对外国买家来说更便宜,进口商品对本国消费者来说更贵。 出口企业可能受益,依赖进口原材料的企业成本可能上升,普通消费者也可能感受到进口商品涨价。 最终影响取决于贸易结构、价格弹性、企业能否转嫁成本,以及贬值是否引发通胀预期变化。 ### 答题框架 1. **模型:** 用开放经济模型和弹性分析。 2. **相对价格:** 本国产品对外国人更便宜,外国产品对本国人更贵。 3. **受益与受损:** 出口商可能受益,进口商和消费者可能受损。 4. **宏观影响:** 净出口可能上升,但进口型通胀也可能上升。 5. **条件:** 贸易数量是否充分反应价格变化,决定净出口是否明显改善。 ## 12.5 例题:房租管制 假设某城市为了缓解住房负担,规定租金不得高于某一水平,而且这个上限低于市场均衡租金。 先用供给与需求: 1. 低于均衡的租金上限降低了合法租金; 2. 租金更低,想租房的人增加; 3. 房东出租和维护房屋的激励下降; 4. 结果是住房短缺。 再做评价: - **公平收益:** 抢到受管制住房的租客支付更低租金; - **效率成本:** 可能出现排队、关系分配、维护下降和资源错配; - **政策设计:** 可以结合增加住房供给、定向补贴、土地和规划改革。 强答案不是简单说“房租管制好”或“房租管制坏”,而是讲清机制和取舍。 ## 12.6 如何写出像样的经济学解释 好的经济学解释不是堆概念,而是讲清楚机制。 比较弱的写法是: > 需求下降,价格下降,GDP 下降。 更好的写法是: > 当消费者信心下降时,家庭会推迟购买汽车、家电等耐用品,企业看到销售预期变差,也会减少投资。这样总需求左移,短期内企业减少生产和招聘,实际 GDP 和就业都会受到压力。如果中央银行降息,借贷成本下降,消费和投资可能恢复,但效果取决于家庭和企业对利率变化是否敏感。 后者更清楚,因为它解释了“为什么会这样”。 ### 写作公式 卡住时,可以按这个顺序写: 1. 说清楚冲击或政策; 2. 说明使用哪个模型; 3. 指出哪条曲线、激励或约束发生变化; 4. 推导价格、数量、产出、通胀、就业或福利如何变化; 5. 补充一个限制条件或取舍。 ## 12.7 全课主线 这门课可以用一条线串起来: `稀缺 -> 选择 -> 市场 -> 激励 -> 企业 -> 宏观指标 -> 政策 -> 开放经济` 微观经济学帮助我们理解个人、企业和市场。宏观经济学帮助我们理解整体经济的波动和增长。真正有用的分析,往往要把两个层面连起来。 比如油价上涨既是微观问题,也是宏观问题: - 它改变燃油市场的供求; - 它影响消费者预算和交通成本; - 它可能让 SRAS 左移,推高整体物价; - 它还可能影响央行政策和汇率。 ## 常见误区与考试陷阱 1. **先下结论,再找模型。** 应该先选工具,再推结论。 2. **堆概念但没有机制。** 写了“弹性”不够,要说明谁对价格敏感、结果如何。 3. **忽略分配影响。** 政策常常让一部分人受益、另一部分人受损。 4. **不分短期和长期。** 价格、工资、企业进入和技术调整都需要时间。 5. **一个模型打天下。** 供求很重要,但不是所有问题都只是单一市场价格问题。 ## 自测题 1. 分析房租管制时,应该先用哪个模型? - **答案提示:** 先用供给与需求,尤其是低于均衡的价格上限。 2. 分析油价上涨时,应该考虑需求冲击还是供给冲击? - **答案提示:** 宏观上通常把油价上涨看成负面供给冲击;在石油市场本身,也可用供求分析。 3. 为什么政策分析不能只看效率,也要看公平? - **答案提示:** 政策可能提高总剩余,却让弱势群体受损;也可能改善分配但带来效率成本。 4. 什么样的解释比单纯罗列概念更有说服力? - **答案提示:** 能讲清“冲击或政策 -> 激励/曲线 -> 行为 -> 结果 -> 取舍”的因果链。 5. 为什么分析时要区分短期和长期? - **答案提示:** 价格、工资、进入退出、技术和行为调整速度不同,短期和长期结论可能不一样。 ## 本章小结与课程收束 经济学导论不是答案库,而是一套思考工具。学会这些工具后,面对价格、就业、通胀、增长、汇率和政策争论时,你至少能先把问题拆开,而不是只凭直觉判断。 到这里,你已经掌握一门导论课的核心工具:稀缺性与机会成本、供给与需求、弹性、市场结构、GDP、通胀、失业、增长、货币、货币政策、财政政策和开放经济分析。下一步就是练习:拿真实新闻做题,问自己“这个问题应该用哪个模型解释?” # 第一章:国民账户与宏观指标 []{#第一章国民账户与宏观指标} ## 学习目标 学完本章后,你应能够: - 解释 GDP 的生产、收入和支出三种核算方式为何在账户上相等; - 区分最终产品、中间产品、存量、流量、名义量和实际量; - 用一个小型两商品经济计算名义 GDP、实际 GDP 和 GDP 平减指数; - 解释 CPI 与 GDP 平减指数的覆盖范围差异; - 正确阅读失业率、劳动参与率和就业率; - 说明 GDP 作为福利指标的优点和盲点。 ## 1. 先问“测量对象是什么” 宏观指标不是经济现实本身,而是对某一类经济活动的规则化记录。在打开数据之前,先写下四件事: 1. **对象:** 生产、收入、价格、就业、财富,还是金融交易? 2. **时间:** 一个月、一个季度、一年,还是某一时点? 3. **单位:** 货币、人数、小时、指数,还是比例? 4. **覆盖范围:** 国内、国民、市场交易、家庭生产,还是政府活动? :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgRmlybXNbIuS8geS4mueUn+S6pyJdIC0tPiBJbmNvbWVbIuW3pei1hOOAgeWIqea2puOAgeeojuaUtiJdCiAgSW5jb21lIC0tPiBTcGVuZGluZ1si5raI6LS544CB5oqV6LWE44CB5pS/5bqc6LSt5Lmw44CB5YeA5Ye65Y+jIl0KICBTcGVuZGluZyAtLT4gRmlybXMKICBIb3VzZWhvbGRzWyLlrrbluq3kvpvnu5nlirPliqgiXSAtLT4gSW5jb21lCiAgR292ZXJubWVudFsi5pS/5bqc5b6B56iO5LiO6LSt5LmwIl0gLS0+IFNwZW5kaW5n" locale="zh"} 同一笔市场生产可以从生产者、收入接受者和支出者三个角度被记录。核算恒等式并不意味着经济学上的因果关系已经确定;它只说明同一笔交易在不同账户中的记录必须一致。 ## 2. GDP 的三种核算方法 ### 2.1 支出法 最常用的支出恒等式是: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:居民消费; - [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:固定资本投资、住宅投资和存货投资; - [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:政府购买的商品与服务,不包括单纯的转移支付; - [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:出口; - [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:进口。 这里的投资不是购买股票或债券,而是新增生产能力或库存。股票交易可能改变资产所有权,但不直接构成本期新生产。 ### 2.2 生产法 生产法把各行业的增加值相加: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[增加值]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[[产出价值]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[[中间投入价值]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 扣除中间投入是为了避免重复计算。例如,小麦卖给面包厂、面粉卖给面包店、面包卖给消费者时,GDP 应记录最终面包价值,或者记录每个环节的增加值,但不能把每次交易额全部相加。 ### 2.3 收入法 生产活动创造的价值最终表现为劳动报酬、营业盈余、混合收入和生产税净额。收入法的具体分类取决于统计制度,但核心思想是:生产创造的价值必须流向某些收入项目。 ## 3. 名义 GDP、实际 GDP 与平减指数 看下面的两商品经济: | 商品 | 基期价格 | 基期数量 | 当期价格 | 当期数量 | | -- | ---: | ---: | ---: | ---: | | 面包 | £2 | 100 | £3 | 120 | | 咖啡 | £4 | 50 | £5 | 60 | ### 3.1 名义 GDP 名义 GDP 使用当期价格和当期数量: [[[]{.katex-mathml}[[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[G]{.mord.mathnormal}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[o]{.mord.mathnormal.mtight}[mina]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[3]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[120]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[5]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[60]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£660.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### 3.2 实际 GDP 以基期价格计算当期数量: [[[]{.katex-mathml}[[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[G]{.mord.mathnormal}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[2]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[120]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[4]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[60]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£480.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1.1461em;vertical-align:-0.247em;"}[G]{.mord.mathnormal}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8991em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[2]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[100]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[4]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[50]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[£400.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 实际 GDP 增长率为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[400]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[480]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[400]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[20%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### 3.3 GDP 平减指数 GDP 平减指数是: [[[]{.katex-mathml}[[[]{.strut style="height:1.1383em;vertical-align:-0.247em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[G]{.mord.mathnormal.mtight}[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[P]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8913em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.5133em;vertical-align:-0.9872em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[G]{.mord.mathnormal}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.0448em;margin-right:0.05em;"}]{.vlist style="height:0.8309em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.2791em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[G]{.mord.mathnormal}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:-0.1389em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}[o]{.mord.mathnormal.mtight}[mina]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8491em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2481em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.5261em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9872em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[480]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[660]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[137.5.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 它表示按照 GDP 所覆盖的一篮子国内最终产品,价格水平相对基期上升了约 37.5%。现实统计通常采用链式加权,以减少固定权重在结构变化时带来的偏差;学生应理解方向和口径,不要把这个教学例子的固定篮子当成现实统计制度。 ## 4. CPI 与 GDP 平减指数不是同一个指标 | 特征 | CPI | GDP 平减指数 | | ----- | -------------- | ----------------- | | 篮子 | 代表性居民消费篮子 | 国内生产的最终产品篮子 | | 进口消费品 | 通常包括 | 不包括进口,因为进口不属于国内生产 | | 出口品 | 不包括居民消费篮子中的出口 | 包括国内生产后出口的最终品 | | 权重 | 通常基于消费结构,调整有滞后 | 随国内产出结构变化 | | 常见用途 | 生活成本、工资和福利调整 | 国内产出价格与实际 GDP 转换 | 如果油价上升,一个能源进口国的 CPI 可能明显上升,而 GDP 平减指数的反应取决于国内生产结构和贸易价格。两者方向可能相同,但不必相等。 ## 5. 失业、就业与劳动市场 设劳动年龄人口分为就业者、失业者和不在劳动力中的人口: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[劳动力]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[[就业者]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[[失业者]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 失业率为: [[[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[劳动力]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[失业者]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 劳动参与率为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[参与率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[劳动年龄人口]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[劳动力]{.mord.cjk_fallback}]{.mord.text}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 一个人从失业状态退出劳动力市场,可能让失业率下降,但就业人数并没有增加。因此读宏观劳动力数据时,至少同时查看失业率、参与率、就业人口、工作时长和工资。 ### 一个数字例子 某地区劳动年龄人口为 1,000 万,其中就业 600 万、失业 50 万、不在劳动力中 350 万: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[劳动力]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[650]{.mord}[[万]{.mord.cjk_fallback}]{.mord.text}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[650]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[50]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9444em;vertical-align:-0.1944em;"}[7.7%]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[[参与率]{.mord.cjk_fallback}]{.mord.text}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[[,]{.mpunct}]{.mord}[000]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[650]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[65%.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果 10 万名失业者停止寻找工作,失业者变成 40 万、劳动力变成 640 万,失业率约为 6.25%,但就业人数仍为 600 万。指标变好看不等于劳动市场真正改善。 ## 6. 存量、流量与财富 宏观学习中最容易混淆的一组概念是: | 概念 | 类型 | 例子 | | ---- | -- | ---------------- | | GDP | 流量 | 一年内生产的最终产品价值 | | 资本存量 | 存量 | 某一时点的机器、建筑和基础设施 | | 投资 | 流量 | 一年内新增资本和库存 | | 政府赤字 | 流量 | 某一年度支出减收入 | | 政府债务 | 存量 | 历年借款累积的未偿还余额 | | 财富 | 存量 | 家庭或国家在某一时点的资产减负债 | 存量由过去的流量累积而来,但还会受到折旧、重估、灾害和汇率变化影响。研究生分析资产负债表时,不能简单地把某一期赤字机械地加到债务上而忽略估值变化。 ## 7. GDP 与福利:为什么需要补充指标 GDP 适合衡量市场生产和宏观活动规模,但不完整衡量福利。它通常没有充分反映: - 家庭照料和无偿劳动; - 闲暇、健康和教育质量; - 环境损害与自然资本消耗; - 收入和财富分配; - 犯罪、灾害和防御性支出; - 产品质量、数字服务和地下经济的测量误差。 这不是说 GDP “没有用”,而是说使用它回答问题时要限定问题。分析生活水平时,至少结合人均实际 GDP、收入分配、就业质量、健康、教育和环境指标。 ## 研究生扩展:测量与识别 研究生应进一步追问: 1. 价格指数的权重如何构造,链式指数如何处理新产品和质量变化? 2. GDP 修订、季节调整和基准年变化会如何影响实时政策判断? 3. 潜在产出和产出缺口是直接观察量,还是依赖模型的估计量? 4. 失业率变化来自就业流、失业流还是劳动力退出? 5. 用宏观时间序列比较国家时,汇率、购买力平价和人口结构如何影响解释? ## 自测题 1. 为什么二手房交易通常不计入当期 GDP,但中介服务费可能计入? 2. 当进口消费品价格上涨时,CPI 与 GDP 平减指数可能如何不同? 3. GDP 增长而人均 GDP 下降是否可能?需要什么人口变化? 4. 为什么政府转移支付不直接计入 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,但受益者消费可能进入 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ? 5. 写出一个例子,说明宏观指标改善而某一群体福利下降。 ## 小结与下一章 本章的核心不是记住一组缩写,而是把每个宏观数字放回“对象—时间—单位—覆盖范围”的测量框架。下一章将从账户转向机制:家庭如何消费和储蓄,企业如何投资,以及这些决策如何构成短期总需求。 # 第二章:消费、投资与凯恩斯交叉 []{#第二章消费投资与凯恩斯交叉} ## 本章问题 在短期内,为什么一个家庭减少消费、企业推迟投资或政府增加购买,会让总产出发生超过初始冲击的变化?凯恩斯交叉模型提供了第一个清晰答案:一方的支出是另一方的收入,而收入变化又会反馈到消费。 ## 学习目标 - 写出计划支出与实际产出的定义; - 推导简单封闭经济中的均衡产出和政府购买乘数; - 解释边际消费倾向、储蓄悖论和进口泄漏; - 区分自主消费、收入诱发消费、计划投资和意外库存变化; - 说明利率、预期、信用约束和不确定性为何使简单乘数只是基准。 ## 1. 从支出和收入的循环开始 在一个没有政府和国外部门的简单经济中,家庭消费、企业投资和企业收入相互连接: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果企业计划出售的产品没有被购买,库存意外增加,企业会减少下一期生产;如果计划支出超过当前产出,库存下降,企业会扩大生产。短期均衡要求计划支出等于实际产出: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这里的 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是实际产出, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是计划总支出。二者相等是一个均衡条件,不代表经济已经达到充分就业或社会最优。 ## 2. 消费函数与储蓄 最简单的线性消费函数是: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[c]{.mord.mathnormal}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是自主消费, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是边际消费倾向, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是可支配收入。若不考虑税收, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,则储蓄为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[−]{.mord}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[)]{.mclose}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 平均消费倾向 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[/]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与边际消费倾向 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 不同。低收入时,自主消费可能使平均消费倾向高于 1;随着收入增加,平均消费倾向可以下降,即使边际消费倾向保持不变。 ### 跨期选择的提醒 更高层次的消费理论会把当前消费与未来消费联系起来: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[max]{.mop}[]{.mspace style="margin-right:0.1667em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:1em;"}[[s.t.]{.mord}]{.mord.text}[]{.mspace style="margin-right:1em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.1297em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.1297em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 因此,利率、预期收入、借贷约束和不确定性都会影响当前消费。凯恩斯交叉把消费函数当作给定,是为了先学习总需求反馈,而不是说现实消费只由当期收入决定。 ## 3. 均衡产出推导 加入政府购买 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和一次性税收 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 整理得: [[[]{.katex-mathml}[[[]{.strut style="height:0.7387em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[G]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 政府购买乘数为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[G]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 税收乘数为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.8769em;vertical-align:-0.7693em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[c]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 同样规模的政府购买和税收变化具有不同的产出效应,因为政府购买直接进入计划支出,而税收先改变可支配收入,再通过消费反馈。 ### 数值例子 若 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.8]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,政府购买增加 10,模型预测产出增加: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Δ]{.mord}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[0.8]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[50.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 第一轮支出增加 10,第二轮收入增加后消费增加 8,第三轮消费增加 6.4,后续逐渐衰减: [[[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[10]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[8]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[6.4]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[5.12]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.3669em;"}[⋯]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[50.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这就是乘数的经济直觉。每一轮都会有 20% 的收入进入储蓄而不是下一轮消费,因此级数收敛。 ## 4. 为什么现实乘数通常不同 | 泄漏或反馈 | 对乘数的影响 | | ------ | -------------------------- | | 比例税 | 收入增加后税收增加,降低消费反馈。 | | 进口 | 一部分支出流向国外,不形成国内收入。 | | 利率上升 | 更高的总需求可能推高利率,挤出私人投资和耐用品消费。 | | 预期变化 | 家庭可能预期未来税收或债务负担,降低当前消费。 | | 供给瓶颈 | 需求增加可能更多体现为价格上涨而不是实际产出增加。 | | 金融约束 | 无法借贷的家庭和企业对收入冲击更敏感。 | | 货币政策反应 | 央行如何应对通胀和产出,会改变乘数。 | 因此,在政策备忘录中写“乘数为 5”是不完整的。必须说明模型的短期、闲置资源、利率、税收、进口和政策反应假设。 ## 5. 计划投资与预期 企业投资既受当前利率影响,也受未来销售、现金流、技术和不确定性影响。一个简单的投资函数可以写为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[I]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[b]{.mord.mathnormal}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 当央行提高利率时,投资下降的直接机制清楚;但如果加息同时提高了金融机构的风险溢价,企业融资成本上升可能比无风险利率变化更大。研究生分析还要关注投资不可逆性和等待价值:不确定性上升可能让企业暂缓投资,而不是线性减少投资。 ## 6. 储蓄悖论 在个体层面,增加储蓄可能是理性的;在存在闲置产能的短期宏观经济中,如果所有家庭同时减少消费,而投资和政府支出不变,收入可能下降,最终总储蓄未必增加。这不是说储蓄没有价值,而是说明微观合成需要考虑收入反馈和时间跨度。 ## 研究生扩展:从凯恩斯交叉到 IS 曲线 当利率进入投资函数,商品市场均衡变成: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[(]{.mopen}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 利率下降提高投资和均衡产出,因此商品市场均衡点形成一条向右下方倾斜的 IS 曲线。后续加入货币市场后,利率不再外生给定,财政扩张可能通过利率反馈产生挤出效应。 研究生应问三个问题: 1. 这条曲线描述的是结构关系、约化形式,还是一组均衡条件? 2. 货币政策规则、预期和金融摩擦如何改变曲线斜率? 3. 如何用数据区分消费冲击、投资冲击和政策冲击? ## 自测题 1. 为什么政府购买乘数通常大于税收乘数的绝对值? 2. 如果边际消费倾向为 0.6,政府购买增加 50,简单模型中的产出变化是多少? 3. 进口为什么是开放经济中的乘数泄漏? 4. “储蓄悖论”是否意味着家庭不应该储蓄?请区分个体与宏观层次。 5. 写出一个会使乘数变小的现实机制,并说明方向。 ## 下一章 本章把利率当作外生或简单进入投资。下一章将讨论货币、银行资产负债表和中央银行,解释利率如何成为宏观政策的核心传导变量。 # 第三章:货币、银行与货币政策 []{#第三章货币银行与货币政策} ## 本章问题 货币不仅是纸币和硬币。它是被广泛接受的支付媒介、计价单位和价值储藏工具,也是银行资产负债表与中央银行政策框架中的关键对象。本章要回答:银行如何创造存款,央行如何影响利率,金融条件又如何传导到消费、投资和就业? ## 学习目标 - 区分货币的功能、货币层次和银行准备金; - 从资产负债表解释贷款与存款的同时变化; - 理解中央银行资产负债表、政策利率和公开市场操作; - 解释利率、信用、资产价格和汇率的传导; - 说明货币政策受到零利率下限、金融摩擦、预期和供给冲击的限制。 ## 1. 货币的三种功能 货币作为交换媒介降低了物物交换的双重需求巧合;作为计价单位使债务、工资和价格可以比较;作为价值储藏工具使购买力可以跨期转移。某种资产是否“像货币”,取决于流动性、接受程度、价值稳定性和制度安排。 不要把货币与财富混为一谈。银行存款是持有者的资产,同时是银行的负债;一项资产能否成为货币,除了价值,还取决于它能否在交易中被迅速、低成本地使用。 ## 2. 银行资产负债表 一个简化银行资产负债表为: | 资产 | 负债与资本 | | ------ | ----- | | 现金和准备金 | 客户存款 | | 贷款 | 银行借款 | | 债券 | 股东资本 | 当银行批准一笔 £100 的新贷款时,典型的复式记账同时增加: - 资产端的贷款 £100; - 负债端的借款人存款 £100。 贷款偿还、坏账、资本约束和流动性需求会改变这一过程。现代银行体系不是简单的“先收集存款再机械放贷”,但它仍然必须受到资本、流动性、监管、风险评估和央行支付系统的约束。 ## 3. 准备金与货币乘数:作为基准而非定律 传统教材常用准备金率 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 推出存款乘数 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。如果银行体系每一轮都把超额资金贷出,公众不持有现金,且贷款全部回到银行体系,那么初始准备金增加可能支持更大的存款总量。 现实中,货币扩张取决于: - 银行是否愿意贷款; - 借款人是否有合格项目和偿付能力; - 家庭是否愿意持有存款而非现金; - 银行资本和流动性约束; - 央行支付系统和监管制度; - 金融危机中的风险偏好与资产负债表修复。 因此,研究生不应把“货币乘数”当成一个稳定的政策参数。它更适合作为理解资产负债表扩张的入门模型。 ## 4. 中央银行如何实施政策 中央银行通常通过政策利率、公开市场操作、准备金工具、资产购买、前瞻指引和流动性工具影响金融条件。现代框架下,央行通过支付系统和准备金市场控制短期利率,再影响其他利率和资产价格。 一个简化的货币政策规则可以写为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8095em;vertical-align:-0.15em;"}[[i]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.822em;vertical-align:-0.0833em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[π]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.8095em;vertical-align:-0.15em;"}[[i]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是名义利率, [[]{.katex-mathml}[[[]{.strut style="height:0.6887em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是中性实际利率, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是通胀, [[]{.katex-mathml}[[[]{.strut style="height:0.6887em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是目标通胀, [[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9357em;vertical-align:-0.247em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是产出缺口。这个规则不是央行的机械承诺,而是把“对通胀和产出缺口反应”形式化。 ## 5. 利率传导链 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgUG9saWN5WyLmlL/nrZbliKnnjociXSAtLT4gTWFya2V0WyLluILlnLrliKnnjofkuI7ph5Hono3mnaHku7YiXQogIE1hcmtldCAtLT4gQ3JlZGl0WyLotLfmrL7jgIHlgLrliLjkuI7kv6HnlKjliKnlt64iXQogIE1hcmtldCAtLT4gQXNzZXRbIui1hOS6p+S7t+agvOS4juaxh+eOhyJdCiAgQ3JlZGl0IC0tPiBTcGVuZFsi5raI6LS55LiO5oqV6LWEIl0KICBBc3NldCAtLT4gU3BlbmQKICBTcGVuZCAtLT4gT3V0cHV0WyLkuqflh7rkuI7lsLHkuJoiXQogIE91dHB1dCAtLT4gSW5mbGF0aW9uWyLpgJrog4DkuI7pooTmnJ8iXQogIEluZmxhdGlvbiAtLT4gUG9saWN5" locale="zh"} 传导不是瞬时的,也不是对所有家庭和企业相同。浮动利率借款者、资产负债表脆弱的企业和依赖外币融资的经济体可能对利率变化更敏感。 ## 6. 实际利率与预期 近似 Fisher 关系为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6331em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8095em;vertical-align:-0.15em;"}[[i]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[E]{.mord.mathbb}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 家庭和企业的消费、投资决策通常更关心实际融资成本,而不是名义政策利率本身。如果通胀预期上升速度快于名义利率,实际利率可能下降,金融条件未必收紧。 ## 7. 货币政策的限制 | 限制 | 机制 | | -------- | ---------------------------- | | 零利率或有效下限 | 传统降息空间有限,政策转向资产购买、指引或财政协同。 | | 供给冲击 | 加息可以压制需求,却不能直接修复能源、芯片或劳动力供给。 | | 金融传导阻塞 | 银行不良资产、信用利差或风险厌恶会削弱政策利率传导。 | | 预期失锚 | 家庭和企业不相信目标,通胀和工资设定会自我强化。 | | 汇率与资本流动 | 开放经济中,利差和风险溢价会改变汇率与资本流。 | 高质量政策分析要写出工具、传导、时滞和副作用,而不是只说“加息抑制通胀”。 ## 研究生扩展 研究生可以进一步学习: - 央行损失函数与最优政策; - 新凯恩斯菲利普斯曲线和通胀预期; - 资产负债表渠道、金融加速器与银行资本; - 货币政策冲击的 VAR、局部投影和高频识别; - 非线性、异质性主体和财政—货币政策互动。 这些扩展都要求先说明“政策冲击”如何定义。观察到利率变化并不自动意味着观察到了外生货币政策冲击,因为利率也会响应经济信息。 ## 自测题 1. 新贷款为什么可以同时增加银行资产和客户存款? 2. 为什么准备金率乘数不能直接预测现实经济中的贷款增长? 3. 名义利率上升但实际利率下降是否可能?需要什么通胀预期变化? 4. 写出一个金融渠道削弱货币政策传导的例子。 5. 为什么供给冲击下央行面临稳定通胀与稳定产出的权衡? ## 下一章 下一章把货币政策放进 AD–AS 和菲利普斯曲线框架,进一步分析需求冲击、供给冲击、通胀和失业之间的短期关系。 # 第四章:AD–AS、通货膨胀与失业 []{#第四章adas通货膨胀与失业} ## 1. 为什么需要 AD–AS 凯恩斯交叉重点说明支出如何决定产出;货币市场重点说明利率如何形成。AD–AS 把两者放在价格水平也会调整的框架里,回答三个问题: 1. 为什么总需求变化会影响产出和价格? 2. 为什么供给冲击可能同时造成通胀和产出下降? 3. 为什么短期菲利普斯曲线不能被解释为永久的通胀—失业交换? ## 学习目标 - 区分总需求曲线、短期总供给和长期总供给; - 判断需求冲击、成本冲击、预期冲击和生产率冲击的方向; - 解释产出缺口、自然失业率与通胀预期; - 说明政策反应如何改变冲击的实际结果; - 识别“相关的通胀—失业关系”与“可利用的政策权衡”之间的差异。 ## 2. AD 曲线的含义 总需求曲线描述在其他条件给定时,不同价格水平对应的商品市场和货币市场共同均衡产出。价格水平下降可能通过实际货币余额、利率和汇率渠道提高支出,因此 AD 通常向右下方倾斜。 但“价格下降使产出上升”不是普遍的因果定律。资产负债表修复、债务通缩、银行约束和预期恶化可能削弱甚至逆转这种传导。图形是模型结果,必须说明模型假设。 ## 3. 短期与长期总供给 短期内,工资、合同、价格和生产能力不能同时完全调整,企业可能在给定成本结构下响应需求变化。长期内,资本、劳动、技术、制度和预期都会调整,经济的产出更受生产能力约束。 长期总供给通常画成潜在产出附近的垂直线。潜在产出不是“最大产出”,而是在给定技术、制度和资源下,通胀压力相对稳定时的可持续产出水平。 ## 4. 冲击分析 | 冲击 | 短期典型结果 | 需要继续问的问题 | | ------ | ----------------- | -------------------- | | 消费信心下降 | AD 左移,产出下降,通胀压力减弱 | 央行是否降息?家庭是否受债务约束? | | 政府购买增加 | AD 右移,产出和价格上升 | 闲置产能有多少?财政乘数多大? | | 能源价格上涨 | SRAS 左移,价格上升、产出下降 | 政策稳定通胀还是稳定产出?冲击持续多久? | | 生产率提高 | 长期供给能力上升,成本压力下降 | 收益如何分配?投资和就业如何调整? | | 通胀预期上升 | 短期成本和定价压力上升 | 政策可信度是否能重新锚定预期? | ### 一次供给冲击的写作示范 当能源价格上升时,企业每单位产出的成本增加,短期总供给左移。初始结果可能是价格水平上升和实际产出下降。若央行通过加息压制二阶需求效应,通胀可能更快下降,但产出恢复更慢;若政府补贴能源,居民实际收入受到的冲击减小,但财政成本、需求刺激和长期价格信号需要纳入分析。 不要写成“政府应该补贴,所以问题解决”。应分别讨论目标、工具、时滞、融资、分配和退出机制。 ## 5. 菲利普斯曲线与预期 短期菲利普斯曲线把通胀与经济活动或失业联系起来。一个简化的新凯恩斯式表达是: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[E]{.mord.mathbb}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[κ]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是产出缺口, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是成本或供给冲击。这个式子说明: - 通胀不只由当前需求决定; - 预期通胀会影响工资和价格设定; - 供给冲击可以在没有需求过热时推高通胀; - [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[κ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 反映通胀对经济闲置程度的敏感性。 如果家庭和企业预期通胀持续上升,央行需要通过可信的政策反应改变预期,而不只是一次性改变利率。 ## 6. 自然失业率与滞后效应 自然失业率并不是“永远不可能降低的失业率”,而是与搜寻匹配、技能、制度、行业结构和通胀稳定条件相关的基准。长期需求刺激可能提高就业,也可能在瓶颈和预期调整后主要表现为通胀。 宏观政策还可能有滞后:识别冲击需要时间,政策制定有内部滞后,工具影响支出有外部滞后。因此政策分析不能只比较“宣布前”和“宣布后”两个时点。 ## 研究生扩展:识别宏观冲击 宏观数据中的政策变量往往是内生的:央行在经济恶化时降息,看到降息后不能直接说降息造成衰退。研究生可学习: - 高频金融市场识别; - 叙事法和外生政策变化; - VAR 中的符号限制与短期限制; - 局部投影和异质冲击响应; - 结构模型中的参数识别和模型比较。 每一种方法都必须说明冲击如何被定义,以及哪些反应被排除在冲击本身之外。 ## 自测题 1. 为什么需求扩张在闲置产能较多时更可能增加实际产出? 2. 为什么供给冲击可能同时提高通胀和失业? 3. 预期通胀为何会进入工资与价格设定? 4. 说“存在菲利普斯曲线”是否等于说政策可以永久降低失业? 5. 如何区分一个利率变化是政策冲击还是央行对经济信息的反应? ## 下一章 下一章把财政政策从简单乘数扩展到自动稳定器、债务动态、融资成本和财政可持续性。 # 第五章:财政政策、债务与稳定化 []{#第五章财政政策债务与稳定化} ## 1. 财政政策的两类任务 财政政策同时承担短期稳定和长期公共职能: - 在衰退时支持总需求和就业; - 在过热时减轻需求压力; - 提供公共品、社会保险和收入再分配; - 投资基础设施、人力资本和生产率; - 维持债务融资能力和宏观金融稳定。 同一项政策可能在不同时间尺度上有不同效果。公共投资在短期增加需求,在长期还可能提高供给能力;临时转移支付和永久减税对消费的反馈也可能不同。 ## 学习目标 - 区分扩张性、紧缩性和自动稳定财政政策; - 解释支出乘数、税收乘数和预算乘数的差异; - 推导债务—GDP 比率的动态条件; - 讨论利息成本、增长率、初级余额和通胀对债务的影响; - 评价财政政策的时机、组成、分配和可持续性。 ## 2. 自动稳定器与主动政策 自动稳定器不需要每次衰退都经过新的立法。例如,失业救济在失业上升时增加,累进所得税在收入下降时减少税收,二者会自动缓和可支配收入变化。 主动财政政策则包括新的公共支出、税率变化或临时转移支付。它可能更有针对性,但也面临识别、立法、执行和退出时滞。 | 政策 | 衰退时的方向 | 主要限制 | | ------ | ------------- | --------------- | | 失业保险 | 增加转移支付,支持消费 | 覆盖率、持续时间和劳动供给激励 | | 基础设施投资 | 增加需求并可能提高长期供给 | 项目准备、施工瓶颈和选择偏差 | | 临时减税 | 提高部分家庭可支配收入 | 边际消费倾向和预期持续时间 | | 定向补贴 | 支持受冲击群体 | 识别目标人群和财政成本 | | 紧缩支出 | 降低总需求、改善财政余额 | 可能加深衰退,乘数随周期变化 | ## 3. 乘数与挤出 在简单模型里,政府购买增加推动产出,产出增加又提高消费。加入利率后,需求扩张可能推高利率,降低投资,形成挤出效应。开放经济中,进口泄漏也会使国内乘数变小。 因此,财政乘数不是一个固定常数。它取决于: - 经济是否存在闲置产能; - 货币政策是否配合; - 家庭是否受流动性约束; - 政策是临时还是永久; - 支出投向的进口含量和供给瓶颈; - 金融市场对债务可持续性的反应。 ## 4. 债务动态 令 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为名义公共债务, [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为名义 GDP, [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0502em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为债务率。令 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为实际利率, [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为实际增长率, [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为占 GDP 比例的初级盈余(盈余为正)。在小增长率近似下: [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[Δ]{.mord}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果实际利率高于增长率,既有债务会产生正的滚动压力;如果增长率高于实际利率,债务率可能在不大的初级赤字下稳定,但不能把这种差异当作永远不变的免费午餐。 ### 数值例子 若初始债务率为 80%,实际利率为 4%,实际增长率为 2%,初级赤字为 GDP 的 1%(所以 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.0833em;"}[−]{.mord}[1%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ),则: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[Δ]{.mord}[b]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[0.04]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0.02]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.80]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[−]{.mord}[0.01]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.026.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 债务率约上升 2.6 个百分点。这里没有考虑估值变化、金融危机和一次性项目;实际预测需要更完整的预算约束。 ## 5. 财政可持续性不是单一阈值 债务可持续性要回答:在合理的利率、增长、初级余额、通胀和政策反应下,政府是否有能力偿付债务并避免爆炸性债务路径。需要结合: - 债务期限和利率重定价速度; - 本币与外币债务; - 投资者基础和金融市场深度; - 潜在增长与税基; - 社会保险承诺和人口结构; - 银行与主权之间的反馈。 “债务率超过某个百分比就一定危机”是过度简化。阈值取决于制度、增长、利率、货币主权和资产负债表结构。 ## 6. 财政政策的分配维度 评价财政政策不能只看总产出。要问:谁获得支出,谁承担税收,政策如何影响代际、地区、收入、年龄和资产持有者?高通胀时期的补贴可能保护消费,却也会扩大需求;削减支出可能改善赤字,却对公共服务使用者产生集中成本。 ## 研究生扩展 研究生可进一步研究: - Ricardian equivalence 的假设与现实限制; - 期限结构、主权风险溢价和财政主导; - 代际账户与生命周期财政分析; - 财政乘数的状态依赖与局部投影估计; - 财政规则、独立财政机构和债务上限; - 气候转型、养老金和隐性负债。 ## 政策备忘录模板 1. 说明冲击和政策目标; 2. 区分短期稳定与长期供给; 3. 计算直接预算成本和可能的乘数反馈; 4. 展示债务率和融资成本的敏感性; 5. 讨论分配效果和执行约束; 6. 给出退出、评估和替代方案。 ## 自测题 1. 自动稳定器为什么不等同于主动财政刺激? 2. 什么因素会让财政乘数在衰退时变大? 3. [[]{.katex-mathml}[[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 时债务率动态面临什么压力? 4. 为什么债务率本身不能单独判断危机风险? 5. 写一个财政政策同时影响总需求和长期供给的例子。 ## 下一章 下一章从跨期视角分析资本积累、技术进步、生产率和长期生活水平。 # 第六章:经济增长、生产率与发展 []{#第六章经济增长生产率与发展} ## 1. 长期问题与短期问题不同 短期宏观学关注产出围绕潜在水平的波动;增长理论关注潜在产出本身如何随资本、劳动、技术和制度变化。短期需求刺激不能自动创造长期生产率,长期改革也不一定能立刻解决衰退。 ## 学习目标 - 区分总量增长、人均增长和生产率增长; - 推导 Solow 模型中的资本积累与稳态; - 理解储蓄率、人口增长、折旧和技术进步的作用; - 使用增长核算拆分资本、劳动和全要素生产率; - 讨论趋同、制度、人力资本和内生增长。 ## 2. 生产函数与资本积累 一个常见的生产函数为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1141em;vertical-align:-0.25em;"}[[K]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[A]{.mord.mathnormal}[L]{.mord.mathnormal}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[−]{.mbin.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是资本, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是劳动, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是劳动增强型技术。除以有效劳动 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}[L]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 后,令 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[/]{.mord}[(]{.mopen}[A]{.mord.mathnormal}[L]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 、 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[/]{.mord}[(]{.mopen}[A]{.mord.mathnormal}[L]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,得到: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7144em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 资本的动态为: [[[]{.katex-mathml}[[[]{.strut style="height:0.9313em;"}[[[[[[]{.pstrut style="height:3em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[˙]{.mord}]{.accent-body style="left:-0.1389em;"}]{style="top:-3.2634em;"}]{.vlist style="height:0.9313em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[s]{.mord.mathnormal}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[)]{.mclose}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[s]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是储蓄率, [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是人口增长率, [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是技术增长率, [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是折旧率。 稳态满足: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[s]{.mord.mathnormal}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[)]{.mclose}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 储蓄提高会把经济带到更高的资本水平,但在没有持续技术进步时,边际报酬递减意味着人均增长最终停止。技术进步改变的是有效劳动和长期增长路径。 ## 3. 一个直觉例子 国家 A 和 B 有相同技术与人口增长率,但 A 的储蓄率更高。A 可以拥有更高的稳态人均资本和产出,但不一定拥有更高的长期人均增长率。若 B 能持续提高技术、教育或制度质量,B 可能在水平上追赶甚至超过 A。 这说明“投资更多”与“增长更快”要区分时间跨度:资本积累产生过渡增长,技术进步决定持续增长。 ## 4. 黄金律资本水平 如果目标是最大化稳态消费,储蓄率不应被当作越高越好。黄金律条件要求资本的边际产出与有效劳动增长和折旧成本相平衡,直觉是:额外资本的产出必须足以覆盖维持它的成本。 过低储蓄会使资本不足;过高储蓄会把过多产出用于投资,压低当前消费。政策评价需要把当前代与未来代、风险和分配纳入,而不能只看总产出。 ## 5. 增长核算 对生产函数取对数微分,可得到近似增长分解: [[[]{.katex-mathml}[[[]{.strut style="height:0.6776em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[Y]{.mord.mathnormal.mtight style="margin-right:0.2222em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[K]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[)]{.mclose}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[L]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 因此,全要素生产率增长 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[A]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是扣除资本和劳动投入贡献后剩余的生产增长。它可能反映技术,也可能混入产能利用、测量误差、管理、制度、资源重新配置和模型错设。 不要把增长核算残差直接称为“技术进步”。研究生报告应说明生产函数、投入质量、资本利用率和测量限制。 ## 6. 人力资本、制度与发展 长期发展差异不仅由机器数量解释。教育质量、健康、法治、产权、竞争、基础设施、金融中介、政治稳定和技术扩散都会影响生产率。 制度变量常常与历史、地理、政治和选择过程共同决定,简单相关分析不能自动识别制度的因果效应。微观计量和发展经济学方法可以帮助评估教育、健康、现金转移和基础设施项目,但需要清楚的反事实设计。 ## 7. 趋同与异质性 条件趋同意味着控制储蓄率、人口增长、技术、制度和人力资本后,较低初始收入经济体可能增长更快;它不等于所有国家无条件趋同。跨国比较还要处理购买力平价、人口结构、数据质量和测量误差。 ## 研究生扩展 - 内生增长与知识的非竞争性; - 创新、研发和创造性破坏; - 多部门结构转型与资源错配; - 气候约束下的绿色增长与自然资本; - 长期面板、历史制度与因果识别。 ## 自测题 1. 为什么储蓄率提高会提高稳态水平,却不一定提高长期增长率? 2. 人均 GDP 增长能否在劳动生产率不变时发生? 3. 增长核算中的残差为什么不能直接等同于技术? 4. “贫穷国家增长更快”需要哪些条件才可能成立? 5. 写出一个微观政策通过生产率影响宏观增长的例子。 ## 下一章 开放经济会把国内储蓄、投资、贸易、资本流动和汇率放进同一个约束中。下一章讨论这些联系如何限制宏观政策选择。 # 第七章:开放经济、汇率与国际收支 []{#第七章开放经济汇率与国际收支} ## 1. 一个国家为什么不能只看国内市场 开放经济中的消费、投资、政府支出和生产会与世界其他地区发生联系。进口是国内支出的组成部分,却不是国内生产;出口是国外对本国生产的支出。资本流动还会改变国内投资、利率和汇率。 ## 学习目标 - 写出净出口和经常账户的基本关系; - 区分名义汇率、实际汇率、升值和贬值; - 解释购买力平价的含义与限制; - 讨论资本流动、利差和风险溢价; - 用“不可能三角”分析汇率制度、资本自由流动和货币政策的关系。 ## 2. 国民收入恒等式与经常账户 开放经济支出恒等式为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 国民储蓄为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 因此: [[[]{.katex-mathml}[[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 在忽略净要素收入和转移的简化下,储蓄超过国内投资的部分对应净出口;国内投资超过储蓄需要国外融资。 这是一种账户恒等式,不是说贸易顺差必然“好”、逆差必然“坏”。福利分析要回到消费、投资、生产率、分配、融资风险和跨期资源配置。 ## 3. 汇率的定义 若名义汇率 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 定义为一单位外币兑换的本币数量,则 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 上升表示本币贬值;若定义反过来,方向会相反。写作时一定要先写单位。 实际汇率可写为: [[[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0517em;vertical-align:-0.686em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3657em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.6887em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是外国价格水平, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是本国价格水平。实际汇率描述的是国外商品相对于国内商品的价格,不只是货币市场报价。 ## 4. 升值、贬值与贸易 本币贬值通常提高进口品本币价格、降低本国产品的外币价格,可能提高出口、抑制进口。但贸易量的响应取决于需求弹性、合同期限、生产能力、进口投入和企业定价。 短期内,进口账单可能先上升,之后贸易量才调整,形成所谓 J 曲线可能性。若出口和进口需求足够有弹性,贬值改善净出口的条件通常更容易满足;若进口是生产必需品,贬值也可能提高国内成本和通胀。 ## 5. 购买力平价 绝对购买力平价主张汇率应使可比商品篮子价格相等: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0463em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.989em;margin-right:0.05em;"}]{.vlist style="height:0.6147em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 相对购买力平价关注通胀差异与汇率变化的长期关系。现实中,运输成本、非贸易品、质量差异、市场分割、贸易壁垒和价格黏性都会造成偏离。因此 PPP 更适合作为长期基准,而不是短期交易规则。 ## 6. 资本流动与风险溢价 资本流入可以支持国内投资,也会让经济更容易受到全球利率和风险偏好变化影响。投资者关注的不只是本国无风险利率,还包括汇率预期、主权风险、流动性和资本管制。 一个简化的未覆盖利率平价关系为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8095em;vertical-align:-0.15em;"}[[i]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[i]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[E]{.mord.mathbb}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[\[]{.mopen}[Δ]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[[风险溢价]{.mord.cjk_fallback}]{.mord.text}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 研究生需要问:汇率预期如何测量?风险溢价是否随危机状态变化?资本流动是原因还是对未来增长的反应? ## 7. 不可能三角 一个经济体通常不能同时完全实现: 1. 固定汇率; 2. 资本自由流动; 3. 独立货币政策。 固定汇率和资本自由流动下,国内利率需要跟随外部利率,货币政策自主性受限。若希望保持独立货币政策,通常需要允许汇率浮动或限制资本流动。现实制度往往是不同程度的管理汇率和宏观审慎政策组合,而不是三个角点的纯粹选择。 ## 8. 开放经济政策案例 面对外部需求下降,一个小型开放经济可能: - 让汇率贬值以改善竞争力; - 降息支持国内需求,但要考虑资本流出; - 通过财政政策稳定就业,但要考虑债务与进口泄漏; - 使用外汇储备或资本措施缓解流动性压力; - 通过结构政策提高出口多样性和生产率。 每项工具都有分配和金融稳定后果。不要只根据净出口一列判断政策是否成功。 ## 研究生扩展 - 开放经济 DSGE 与国际风险分担; - 货币错配、外币债务和突然停止; - 全球价值链、进口中间品和贸易弹性; - 汇率传递、通胀和企业定价货币; - 外汇干预的高频识别和事件研究。 ## 自测题 1. 为什么 [[]{.katex-mathml}[[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[N]{.mord.mathnormal style="margin-right:0.109em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是恒等式而不是因果结论? 2. 若汇率定义为本币/外币, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 上升表示什么? 3. 为什么贬值不一定立刻改善贸易余额? 4. PPP 偏离的三个现实原因是什么? 5. 用不可能三角解释固定汇率下货币政策自主性为何受限。 ## 下一章 最后一章把本课程变成一个研究任务:从宏观事实出发,选择机制、数据和可检验的识别设计。 # 第八章:宏观研究项目与政策分析 []{#第八章宏观研究项目与政策分析} ## 项目目标 一个合格的宏观研究项目不应只是下载一张 GDP 图表,再给出一段政策观点。它需要把事实、机制、测量、识别和不确定性连接起来。本章提供一套本科生可以完成、研究生可以扩展的项目流程。 ## 1. 从宽泛主题到可研究问题 | 宽泛主题 | 可研究问题 | | ---- | --------------------------------- | | 通货膨胀 | 能源价格冲击后,通胀上升有多少来自直接成本,有多少来自需求与预期? | | 财政政策 | 某类地方公共投资是否提高短期就业,并在中期改善生产率? | | 货币政策 | 利率冲击如何影响住房投资与家庭消费? | | 经济增长 | 人力资本、资本深化和生产率对某经济体增长的相对贡献是什么? | | 开放经济 | 汇率贬值如何传递到进口价格、消费价格和出口数量? | 问题必须明确单位、时间、结果变量、冲击或政策、比较对象和证据来源。 ## 2. 研究设计流程 :mermaid-diagram{code64="Zmxvd2NoYXJ0IFRECiAgUXVlc3Rpb25bIueglOeptumXrumimCJdIC0tPiBGYWN0c1si5a6P6KeC5LqL5a6e5LiO5rWL6YePIl0KICBGYWN0cyAtLT4gTWVjaGFuaXNtWyLnkIborrrmnLrliLYiXQogIE1lY2hhbmlzbSAtLT4gRGF0YVsi5pWw5o2u5LiO5Y+Y6YeP5a2X5YW4Il0KICBEYXRhIC0tPiBEZXNpZ25bIuivhuWIq+aIlumihOa1i+iuvuiuoSJdCiAgRGVzaWduIC0tPiBFc3RpbWF0ZVsi5Lyw6K6h5LiO6K+K5patIl0KICBFc3RpbWF0ZSAtLT4gU3RyZXNzWyLnqLPlgaXmgKfkuI7mlY/mhJ/mgKciXQogIFN0cmVzcyAtLT4gTWVtb1si5pS/562W5ZCr5LmJ5LiO6ZmQ5Yi2Il0=" locale="zh"} ### 变量字典 至少记录:名称、定义、单位、频率、来源、转换、缺失值、修订状态和理论角色。例如,“通胀”要说明是 CPI 同比、环比年化、核心 CPI 还是 GDP 平减指数。 ### 基线与替代解释 先画出没有冲击或没有政策的基线,再提出替代解释。若只画政策发生后的趋势,无法知道没有政策时会发生什么。 ## 3. 本科生项目要求 本科生可以选择一个简单的描述性或准实验项目: 1. 选一个国家或地区和 10–20 年的季度或年度数据; 2. 描述产出、价格、就业、利率或汇率的趋势与转折; 3. 用本课程的一个模型提出机制; 4. 做相关性、滞后关系或事件窗口分析,但明确不把相关当成因果; 5. 进行至少一种替代定义和一种敏感性分析; 6. 交付数据字典、代码、图表和 1,500–2,500 字报告。 ## 4. 研究生项目要求 研究生应进一步明确目标参数和识别策略。例如,若要研究货币政策冲击,需要说明利率变化中哪一部分被视为外生,如何避免把央行对经济信息的反应误当成冲击。可使用: - 高频事件窗口; - 外生能源或贸易冲击; - 面板数据与事件研究; - VAR 或局部投影; - 结构模型与校准/估计; - 状态依赖和异质性分析。 报告应包括识别假设、估计对象、推断方法、稳健性、外部有效性和政策含义,建议长度为 4,000–6,000 字。 ## 5. 结果解释模板 每个主要结果使用四句话: 1. **统计结果:** 系数、置信区间或冲击响应的数量级是什么? 2. **经济含义:** 这相当于多少实际产出、就业或价格变化? 3. **识别边界:** 结果依赖哪些假设,哪些替代解释仍可能存在? 4. **政策边界:** 结果能支持什么决策,不能支持什么决策? ## 6. 评分标准 | 维度 | 本科生要求 | 研究生要求 | | -- | ------------ | ------------------ | | 问题 | 清楚、可完成、有明确变量 | 有目标参数和理论贡献 | | 数据 | 定义正确、图表可复现 | 处理修订、测量误差和频率问题 | | 模型 | 能正确解释机制和方向 | 能说明结构假设、识别和动态反馈 | | 估计 | 描述统计与基本推断 | 合适的推断、稳健性和状态/异质性分析 | | 写作 | 区分事实、机制和观点 | 明确外部有效性、局限与可证伪性 | ## 7. 最终检查清单 - 每个变量都有定义、单位、频率和来源。 - 结果变量与理论模型中的对象一致。 - 图表标出时间、单位和是否经过转换。 - 基线、冲击和比较组被明确区分。 - 没有把恒等式误写成因果关系。 - 没有把模型预测直接写成政策效果。 - 代码从原始数据到最终表格可以重新运行。 - 报告同时讨论统计不确定性和模型不确定性。 宏观经济学的成熟答案不是“我支持刺激”或“我反对加息”,而是说明在什么冲击、什么时间跨度、什么约束和什么证据下,某项政策可能改善哪个目标,又可能牺牲什么。 # 第九章:宏观经济学浏览器交互实验 []{#第九章宏观经济学浏览器交互实验} 本章把前八章中的五个核心机制变成可以修改、运行和解释的计算实验。每个实验都提供 Python 与 R 两种实现;两段代码使用相同参数和随机种子,结果应在舍入误差范围内一致。 代码的作用是把模型假设变得可见。它不能替代制度背景、真实数据清理或因果识别。每次运行后都要回答三件事: 1. 哪个参数是模型设定,哪个量是数据或模拟结果? 2. 参数变化通过哪条方程改变结果? 3. 若换成真实宏观数据,哪些识别与测量问题会出现? ## 学习成果 完成本章后,你应能够: - 计算开放经济中的财政乘数并做参数敏感性分析; - 用 Taylor 型规则区分通胀、产出缺口和中性利率的贡献; - 递推债务率并解释利率—增长差与初级余额的作用; - 模拟 Solow 模型的过渡动态和条件收敛; - 用局部投影回归估计一个外生冲击的动态响应; - 比较 Python 与 R 输出,检查实现是否忠实于同一经济模型。 ::tip{title="如何运行"} 点击单元右上角的“运行”按钮。首次运行会在浏览器中加载 Pyodide 或 webR;之后可以显示代码,修改参数,再次运行。所有计算都在本地浏览器完成。 :: ## 实验一:财政乘数不是一个固定常数 ### 模型 考虑带比例税和进口的凯恩斯交叉: [[[]{.katex-mathml}[[[]{.strut style="height:4.2em;vertical-align:-1.85em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[,]{.mpunct}]{.mord}]{style="top:-4.51em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[,]{.mpunct}]{.mord}]{style="top:-3.01em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[t]{.mord.mathnormal}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[mY]{.mord.mathnormal style="margin-right:0.2222em;"}[.]{.mord}]{.mord}]{style="top:-1.51em;"}]{.vlist style="height:2.35em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.85em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 把外生支出合并后,政府支出乘数为: [[[]{.katex-mathml}[[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[G]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2574em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[t]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 边际消费倾向越高,收入反馈越强;税率和进口倾向越高,支出漏出越大。下面比较不同参数组合。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCnRheF9yYXRlID0gMC4yMAppbXBvcnRfcmF0ZSA9IDAuMTUKY29uc3VtcHRpb25fcHJvcGVuc2l0aWVzID0gbnAubGluc3BhY2UoMC40MCwgMC45MCwgMTEpCgptdWx0aXBsaWVycyA9IDEgLyAoCiAgICAxIC0gY29uc3VtcHRpb25fcHJvcGVuc2l0aWVzICogKDEgLSB0YXhfcmF0ZSkgKyBpbXBvcnRfcmF0ZQopCgpmb3IgYzEsIHZhbHVlIGluIHppcChjb25zdW1wdGlvbl9wcm9wZW5zaXRpZXMsIG11bHRpcGxpZXJzKToKICAgIHByaW50KGYiYzE9e2MxOi4yZn0gIG11bHRpcGxpZXI9e3ZhbHVlOi4zZn0iKQoKcGx0LnBsb3QoY29uc3VtcHRpb25fcHJvcGVuc2l0aWVzLCBtdWx0aXBsaWVycywgbWFya2VyPSJvIikKcGx0LnhsYWJlbCgiTWFyZ2luYWwgcHJvcGVuc2l0eSB0byBjb25zdW1lIikKcGx0LnlsYWJlbCgiR292ZXJubWVudC1zcGVuZGluZyBtdWx0aXBsaWVyIikKcGx0LnRpdGxlKCJMZWFrYWdlcyBtYWtlIHRoZSBtdWx0aXBsaWVyIHN0YXRlLWRlcGVuZGVudCIpCnBsdC5ncmlkKGFscGhhPTAuMykKcGx0LnNob3coKQ== layout: vertical locale: zh packages: numpy, matplotlib title: Python:财政乘数敏感性 --- :: ::web-r --- code64: dGF4X3JhdGUgPC0gMC4yMAppbXBvcnRfcmF0ZSA8LSAwLjE1CmNvbnN1bXB0aW9uX3Byb3BlbnNpdGllcyA8LSBzZXEoMC40MCwgMC45MCwgYnkgPSAwLjA1KQoKbXVsdGlwbGllcnMgPC0gMSAvICgKICAxIC0gY29uc3VtcHRpb25fcHJvcGVuc2l0aWVzICogKDEgLSB0YXhfcmF0ZSkgKyBpbXBvcnRfcmF0ZQopCgpyZXN1bHQgPC0gZGF0YS5mcmFtZSgKICBjMSA9IGNvbnN1bXB0aW9uX3Byb3BlbnNpdGllcywKICBtdWx0aXBsaWVyID0gcm91bmQobXVsdGlwbGllcnMsIDMpCikKcHJpbnQocmVzdWx0KQoKcGxvdCgKICBjb25zdW1wdGlvbl9wcm9wZW5zaXRpZXMsCiAgbXVsdGlwbGllcnMsCiAgdHlwZSA9ICJiIiwKICB4bGFiID0gIk1hcmdpbmFsIHByb3BlbnNpdHkgdG8gY29uc3VtZSIsCiAgeWxhYiA9ICJHb3Zlcm5tZW50LXNwZW5kaW5nIG11bHRpcGxpZXIiLAogIG1haW4gPSAiTGVha2FnZXMgbWFrZSB0aGUgbXVsdGlwbGllciBzdGF0ZS1kZXBlbmRlbnQiCikKZ3JpZCgp layout: vertical locale: zh title: R:财政乘数敏感性 --- :: ### 结果解释 若把 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[c]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 从 0.60 提高到 0.80,乘数上升,并不意味着现实政策必然产生同样变化。模型没有显式包含供给瓶颈、利率反应、债务风险、预期和政策执行时滞。研究生扩展应进一步问:参数是校准值还是估计值?乘数是否随衰退、零利率下限或汇率制度而变化? ### 修改任务 - 把进口倾向改为 0 和 0.35,比较封闭经济与高度开放经济。 - 把税率从 0.20 改为 0.40,解释自动稳定器为何降低短期波动。 - 令政府支出增加 100 亿元,计算不同参数下的产出变化区间。 ## 实验二:Taylor 型规则如何组织政策信息 ### 模型 一个教学用政策规则可以写为: [[[]{.katex-mathml}[[[]{.strut style="height:0.8095em;vertical-align:-0.15em;"}[[i]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[π]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9805em;vertical-align:-0.2861em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[y]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.35em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.9357em;vertical-align:-0.247em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是中性实际利率, [[]{.katex-mathml}[[[]{.strut style="height:0.6887em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是通胀目标, [[]{.katex-mathml}[[[]{.strut style="height:0.8623em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[y]{.mord.mathnormal style="margin-right:0.0359em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[\~]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.35em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是产出缺口。规则是政策讨论的基准,不是中央银行的机械承诺。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCmluZmxhdGlvbiA9IG5wLmFycmF5KFsyLjAsIDIuNCwgMy4xLCA0LjIsIDUuMCwgNC42LCAzLjgsIDMuMF0pCm91dHB1dF9nYXAgPSBucC5hcnJheShbLTEuNSwgLTAuOCwgMC4yLCAxLjEsIDEuNSwgMC44LCAwLjEsIC0wLjRdKQoKdGFyZ2V0ID0gMi4wCm5ldXRyYWxfcmVhbF9yYXRlID0gMS4wCnBoaV9waSA9IDEuNQpwaGlfeSA9IDAuNQoKcG9saWN5X3JhdGUgPSAoCiAgICBuZXV0cmFsX3JlYWxfcmF0ZQogICAgKyBpbmZsYXRpb24KICAgICsgcGhpX3BpICogKGluZmxhdGlvbiAtIHRhcmdldCkKICAgICsgcGhpX3kgKiBvdXRwdXRfZ2FwCikKCmZvciBwZXJpb2QsIHZhbHVlcyBpbiBlbnVtZXJhdGUoemlwKGluZmxhdGlvbiwgb3V0cHV0X2dhcCwgcG9saWN5X3JhdGUpLCBzdGFydD0xKToKICAgIHBpLCBnYXAsIHJhdGUgPSB2YWx1ZXMKICAgIHByaW50KGYidD17cGVyaW9kfTogaW5mbGF0aW9uPXtwaTouMWZ9LCBnYXA9e2dhcDouMWZ9LCBydWxlIHJhdGU9e3JhdGU6LjJmfSIpCgpwbHQucGxvdChwb2xpY3lfcmF0ZSwgbWFya2VyPSJvIiwgbGFiZWw9IlRheWxvci10eXBlIHJ1bGUiKQpwbHQucGxvdChpbmZsYXRpb24sIG1hcmtlcj0icyIsIGxhYmVsPSJJbmZsYXRpb24iKQpwbHQuYXhobGluZSh0YXJnZXQsIGNvbG9yPSJibGFjayIsIGxpbmVzdHlsZT0iLS0iLCBsYWJlbD0iSW5mbGF0aW9uIHRhcmdldCIpCnBsdC54bGFiZWwoIlBlcmlvZCIpCnBsdC55bGFiZWwoIlBlcmNlbnQiKQpwbHQubGVnZW5kKCkKcGx0LmdyaWQoYWxwaGE9MC4zKQpwbHQuc2hvdygp layout: vertical locale: zh packages: numpy, matplotlib title: Python:政策利率分解 --- :: ::web-r --- code64: aW5mbGF0aW9uIDwtIGMoMi4wLCAyLjQsIDMuMSwgNC4yLCA1LjAsIDQuNiwgMy44LCAzLjApCm91dHB1dF9nYXAgPC0gYygtMS41LCAtMC44LCAwLjIsIDEuMSwgMS41LCAwLjgsIDAuMSwgLTAuNCkKCnRhcmdldCA8LSAyLjAKbmV1dHJhbF9yZWFsX3JhdGUgPC0gMS4wCnBoaV9waSA8LSAxLjUKcGhpX3kgPC0gMC41Cgpwb2xpY3lfcmF0ZSA8LSAoCiAgbmV1dHJhbF9yZWFsX3JhdGUKICArIGluZmxhdGlvbgogICsgcGhpX3BpICogKGluZmxhdGlvbiAtIHRhcmdldCkKICArIHBoaV95ICogb3V0cHV0X2dhcAopCgpyZXN1bHQgPC0gZGF0YS5mcmFtZSgKICBwZXJpb2QgPSBzZXFfYWxvbmcoaW5mbGF0aW9uKSwKICBpbmZsYXRpb24gPSBpbmZsYXRpb24sCiAgb3V0cHV0X2dhcCA9IG91dHB1dF9nYXAsCiAgcnVsZV9yYXRlID0gcm91bmQocG9saWN5X3JhdGUsIDIpCikKcHJpbnQocmVzdWx0KQoKbWF0cGxvdCgKICBjYmluZChwb2xpY3lfcmF0ZSwgaW5mbGF0aW9uKSwKICB0eXBlID0gImIiLAogIHBjaCA9IGMoMSwgMiksCiAgbHR5ID0gMSwKICB4bGFiID0gIlBlcmlvZCIsCiAgeWxhYiA9ICJQZXJjZW50IiwKICBtYWluID0gIlRheWxvci10eXBlIHJ1bGUiCikKYWJsaW5lKGggPSB0YXJnZXQsIGx0eSA9IDIpCmxlZ2VuZCgKICAidG9wcmlnaHQiLAogIGxlZ2VuZCA9IGMoIlJ1bGUgcmF0ZSIsICJJbmZsYXRpb24iLCAiVGFyZ2V0IiksCiAgbHR5ID0gYygxLCAxLCAyKSwKICBwY2ggPSBjKDEsIDIsIE5BKQop layout: vertical locale: zh title: R:政策利率分解 --- :: ### 结果解释 规则利率上升可以来自当前通胀上升,也可以来自通胀偏离目标或正产出缺口。解释真实政策时还要考虑中性利率不可观测、金融稳定、汇率、预测而非当前通胀,以及政策传导时滞。 ### 修改任务 - 把 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[ϕ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[π]{.mord.mathnormal.mtight style="margin-right:0.0359em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 改为 0.8,判断规则是否满足“通胀上升时实际利率也上升”的 Taylor 原则。 - 把产出缺口全部设为 0,分离通胀项的贡献。 - 设计一次供给冲击:通胀上升而产出缺口下降,解释政策权衡。 ## 实验三:债务可持续性是一条路径 ### 模型 令 [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为期初政府债务占 GDP 比例, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为初级盈余占 GDP 比例(盈余取正),则离散时间债务动态近似为: [[[]{.katex-mathml}[[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[r]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[b]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 当 [[]{.katex-mathml}[[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 时,既有债务的机械负担上升;但最终路径仍取决于初始债务、初级余额、增长、利率和冲击持续时间。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCnllYXJzID0gMjAKaW5pdGlhbF9kZWJ0ID0gMC44MAoKZGVmIGRlYnRfcGF0aChyZWFsX3JhdGUsIGdyb3d0aCwgcHJpbWFyeV9iYWxhbmNlKToKICAgIHBhdGggPSBbaW5pdGlhbF9kZWJ0XQogICAgZm9yIF8gaW4gcmFuZ2UoeWVhcnMpOgogICAgICAgIG5leHRfZGVidCA9ICgxICsgcmVhbF9yYXRlKSAvICgxICsgZ3Jvd3RoKSAqIHBhdGhbLTFdIC0gcHJpbWFyeV9iYWxhbmNlCiAgICAgICAgcGF0aC5hcHBlbmQobmV4dF9kZWJ0KQogICAgcmV0dXJuIG5wLmFycmF5KHBhdGgpCgpiYXNlbGluZSA9IGRlYnRfcGF0aChyZWFsX3JhdGU9MC4wMiwgZ3Jvd3RoPTAuMDI1LCBwcmltYXJ5X2JhbGFuY2U9MC4wMDUpCmFkdmVyc2UgPSBkZWJ0X3BhdGgocmVhbF9yYXRlPTAuMDQsIGdyb3d0aD0wLjAxLCBwcmltYXJ5X2JhbGFuY2U9LTAuMDEpCmFkanVzdG1lbnQgPSBkZWJ0X3BhdGgocmVhbF9yYXRlPTAuMDMsIGdyb3d0aD0wLjAyLCBwcmltYXJ5X2JhbGFuY2U9MC4wMikKCmZvciBuYW1lLCBwYXRoIGluIHsKICAgICJiYXNlbGluZSI6IGJhc2VsaW5lLAogICAgImFkdmVyc2UiOiBhZHZlcnNlLAogICAgImFkanVzdG1lbnQiOiBhZGp1c3RtZW50LAp9Lml0ZW1zKCk6CiAgICBwcmludChmIntuYW1lOjEwc306IHllYXIgMTA9ezEwMCpwYXRoWzEwXTouMWZ9JSwgeWVhciAyMD17MTAwKnBhdGhbMjBdOi4xZn0lIikKCnBsdC5wbG90KDEwMCAqIGJhc2VsaW5lLCBsYWJlbD0iQmFzZWxpbmUiKQpwbHQucGxvdCgxMDAgKiBhZHZlcnNlLCBsYWJlbD0iQWR2ZXJzZSByLWcgYW5kIGRlZmljaXQiKQpwbHQucGxvdCgxMDAgKiBhZGp1c3RtZW50LCBsYWJlbD0iUHJpbWFyeS1zdXJwbHVzIGFkanVzdG1lbnQiKQpwbHQueGxhYmVsKCJZZWFyIikKcGx0LnlsYWJlbCgiRGVidC10by1HRFAgcmF0aW8gKCUpIikKcGx0LmxlZ2VuZCgpCnBsdC5ncmlkKGFscGhhPTAuMykKcGx0LnNob3coKQ== layout: vertical locale: zh packages: numpy, matplotlib title: Python:债务率情景分析 --- :: ::web-r --- code64: eWVhcnMgPC0gMjAKaW5pdGlhbF9kZWJ0IDwtIDAuODAKCmRlYnRfcGF0aCA8LSBmdW5jdGlvbihyZWFsX3JhdGUsIGdyb3d0aCwgcHJpbWFyeV9iYWxhbmNlKSB7CiAgcGF0aCA8LSBudW1lcmljKHllYXJzICsgMSkKICBwYXRoWzFdIDwtIGluaXRpYWxfZGVidAogIGZvciAocGVyaW9kIGluIDE6eWVhcnMpIHsKICAgIHBhdGhbcGVyaW9kICsgMV0gPC0gKAogICAgICAoMSArIHJlYWxfcmF0ZSkgLyAoMSArIGdyb3d0aCkgKiBwYXRoW3BlcmlvZF0KICAgICAgLSBwcmltYXJ5X2JhbGFuY2UKICAgICkKICB9CiAgcGF0aAp9CgpiYXNlbGluZSA8LSBkZWJ0X3BhdGgoMC4wMiwgMC4wMjUsIDAuMDA1KQphZHZlcnNlIDwtIGRlYnRfcGF0aCgwLjA0LCAwLjAxLCAtMC4wMSkKYWRqdXN0bWVudCA8LSBkZWJ0X3BhdGgoMC4wMywgMC4wMiwgMC4wMikKCnJlc3VsdCA8LSBkYXRhLmZyYW1lKAogIHNjZW5hcmlvID0gYygiYmFzZWxpbmUiLCAiYWR2ZXJzZSIsICJhZGp1c3RtZW50IiksCiAgeWVhcl8xMCA9IHJvdW5kKDEwMCAqIGMoYmFzZWxpbmVbMTFdLCBhZHZlcnNlWzExXSwgYWRqdXN0bWVudFsxMV0pLCAxKSwKICB5ZWFyXzIwID0gcm91bmQoMTAwICogYyhiYXNlbGluZVsyMV0sIGFkdmVyc2VbMjFdLCBhZGp1c3RtZW50WzIxXSksIDEpCikKcHJpbnQocmVzdWx0KQoKbWF0cGxvdCgKICAwOnllYXJzLAogIDEwMCAqIGNiaW5kKGJhc2VsaW5lLCBhZHZlcnNlLCBhZGp1c3RtZW50KSwKICB0eXBlID0gImwiLAogIGx0eSA9IDEsCiAgY29sID0gYygiYmxhY2siLCAicmVkIiwgImJsdWUiKSwKICB4bGFiID0gIlllYXIiLAogIHlsYWIgPSAiRGVidC10by1HRFAgcmF0aW8gKCUpIiwKICBtYWluID0gIkRlYnQgZHluYW1pY3MgYXJlIHBhdGgtZGVwZW5kZW50IgopCmxlZ2VuZCgKICAidG9wbGVmdCIsCiAgbGVnZW5kID0gYygiQmFzZWxpbmUiLCAiQWR2ZXJzZSIsICJBZGp1c3RtZW50IiksCiAgY29sID0gYygiYmxhY2siLCAicmVkIiwgImJsdWUiKSwKICBsdHkgPSAxCik= layout: vertical locale: zh title: R:债务率情景分析 --- :: ### 结果解释 不要把某个债务率阈值当作普遍安全线。债务币种、期限、投资者结构、中央银行制度、税收能力、潜在增长和支出质量都会影响风险。代码只展示会计动态;正式可持续性分析还要加入随机冲击、期限结构、或有负债和政策反应函数。 ## 实验四:Solow 模型的过渡动态 ### 模型 在不显式加入人口与技术增长的教学版本中: [[[]{.katex-mathml}[[[]{.strut style="height:0.9028em;vertical-align:-0.2083em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0315em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9614em;vertical-align:-0.247em;"}[s]{.mord.mathnormal}[A]{.mord.mathnormal}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0315em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[)]{.mclose}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0315em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 稳态满足 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[s]{.mord.mathnormal}[A]{.mord.mathnormal}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[∗]{.mord.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,即: [[[]{.katex-mathml}[[[]{.strut style="height:0.7387em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.6779em;vertical-align:-0.95em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[δ]{.mord.mathnormal style="margin-right:0.0379em;"}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[s]{.mord.mathnormal}[A]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[1/]{.mord.mtight}[(]{.mopen.mtight}[1]{.mord.mtight}[−]{.mbin.mtight}[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}[)]{.mclose.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.7279em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBtYXRwbG90bGliLnB5cGxvdCBhcyBwbHQKCmFscGhhID0gMC4zMwp0ZWNobm9sb2d5ID0gMS4wCmRlcHJlY2lhdGlvbiA9IDAuMDYKcGVyaW9kcyA9IDYwCgpkZWYgc29sb3dfcGF0aChpbml0aWFsX2NhcGl0YWwsIHNhdmluZ19yYXRlKToKICAgIHBhdGggPSBbaW5pdGlhbF9jYXBpdGFsXQogICAgZm9yIF8gaW4gcmFuZ2UocGVyaW9kcyk6CiAgICAgICAgb3V0cHV0ID0gdGVjaG5vbG9neSAqIHBhdGhbLTFdICoqIGFscGhhCiAgICAgICAgcGF0aC5hcHBlbmQoc2F2aW5nX3JhdGUgKiBvdXRwdXQgKyAoMSAtIGRlcHJlY2lhdGlvbikgKiBwYXRoWy0xXSkKICAgIHJldHVybiBucC5hcnJheShwYXRoKQoKbG93X2luaXRpYWwgPSBzb2xvd19wYXRoKGluaXRpYWxfY2FwaXRhbD0xLjAsIHNhdmluZ19yYXRlPTAuMjIpCmhpZ2hfaW5pdGlhbCA9IHNvbG93X3BhdGgoaW5pdGlhbF9jYXBpdGFsPTEyLjAsIHNhdmluZ19yYXRlPTAuMjIpCmhpZ2hfc2F2aW5nID0gc29sb3dfcGF0aChpbml0aWFsX2NhcGl0YWw9MS4wLCBzYXZpbmdfcmF0ZT0wLjMyKQoKc3RlYWR5XzIyID0gKDAuMjIgKiB0ZWNobm9sb2d5IC8gZGVwcmVjaWF0aW9uKSAqKiAoMSAvICgxIC0gYWxwaGEpKQpzdGVhZHlfMzIgPSAoMC4zMiAqIHRlY2hub2xvZ3kgLyBkZXByZWNpYXRpb24pICoqICgxIC8gKDEgLSBhbHBoYSkpCnByaW50KGYic3RlYWR5IHN0YXRlIHdpdGggcz0wLjIyOiB7c3RlYWR5XzIyOi4zZn0iKQpwcmludChmInN0ZWFkeSBzdGF0ZSB3aXRoIHM9MC4zMjoge3N0ZWFkeV8zMjouM2Z9IikKCnBsdC5wbG90KGxvd19pbml0aWFsLCBsYWJlbD0iTG93IGluaXRpYWwgaywgcz0wLjIyIikKcGx0LnBsb3QoaGlnaF9pbml0aWFsLCBsYWJlbD0iSGlnaCBpbml0aWFsIGssIHM9MC4yMiIpCnBsdC5wbG90KGhpZ2hfc2F2aW5nLCBsYWJlbD0iTG93IGluaXRpYWwgaywgcz0wLjMyIikKcGx0LmF4aGxpbmUoc3RlYWR5XzIyLCBjb2xvcj0iYmxhY2siLCBsaW5lc3R5bGU9Ii0tIiwgYWxwaGE9MC42KQpwbHQueGxhYmVsKCJQZXJpb2QiKQpwbHQueWxhYmVsKCJDYXBpdGFsIHBlciB3b3JrZXIiKQpwbHQubGVnZW5kKCkKcGx0LmdyaWQoYWxwaGE9MC4zKQpwbHQuc2hvdygp layout: vertical locale: zh packages: numpy, matplotlib title: Python:资本深化与条件收敛 --- :: ::web-r --- code64: YWxwaGEgPC0gMC4zMwp0ZWNobm9sb2d5IDwtIDEuMApkZXByZWNpYXRpb24gPC0gMC4wNgpwZXJpb2RzIDwtIDYwCgpzb2xvd19wYXRoIDwtIGZ1bmN0aW9uKGluaXRpYWxfY2FwaXRhbCwgc2F2aW5nX3JhdGUpIHsKICBwYXRoIDwtIG51bWVyaWMocGVyaW9kcyArIDEpCiAgcGF0aFsxXSA8LSBpbml0aWFsX2NhcGl0YWwKICBmb3IgKHBlcmlvZCBpbiAxOnBlcmlvZHMpIHsKICAgIG91dHB1dCA8LSB0ZWNobm9sb2d5ICogcGF0aFtwZXJpb2RdXmFscGhhCiAgICBwYXRoW3BlcmlvZCArIDFdIDwtICgKICAgICAgc2F2aW5nX3JhdGUgKiBvdXRwdXQKICAgICAgKyAoMSAtIGRlcHJlY2lhdGlvbikgKiBwYXRoW3BlcmlvZF0KICAgICkKICB9CiAgcGF0aAp9Cgpsb3dfaW5pdGlhbCA8LSBzb2xvd19wYXRoKDEuMCwgMC4yMikKaGlnaF9pbml0aWFsIDwtIHNvbG93X3BhdGgoMTIuMCwgMC4yMikKaGlnaF9zYXZpbmcgPC0gc29sb3dfcGF0aCgxLjAsIDAuMzIpCgpzdGVhZHlfMjIgPC0gKDAuMjIgKiB0ZWNobm9sb2d5IC8gZGVwcmVjaWF0aW9uKV4oMSAvICgxIC0gYWxwaGEpKQpzdGVhZHlfMzIgPC0gKDAuMzIgKiB0ZWNobm9sb2d5IC8gZGVwcmVjaWF0aW9uKV4oMSAvICgxIC0gYWxwaGEpKQpwcmludChyb3VuZChjKHN0ZWFkeV9zMjIgPSBzdGVhZHlfMjIsIHN0ZWFkeV9zMzIgPSBzdGVhZHlfMzIpLCAzKSkKCm1hdHBsb3QoCiAgMDpwZXJpb2RzLAogIGNiaW5kKGxvd19pbml0aWFsLCBoaWdoX2luaXRpYWwsIGhpZ2hfc2F2aW5nKSwKICB0eXBlID0gImwiLAogIGx0eSA9IDEsCiAgY29sID0gYygiYmxhY2siLCAicmVkIiwgImJsdWUiKSwKICB4bGFiID0gIlBlcmlvZCIsCiAgeWxhYiA9ICJDYXBpdGFsIHBlciB3b3JrZXIiLAogIG1haW4gPSAiU29sb3cgdHJhbnNpdGlvbiBkeW5hbWljcyIKKQphYmxpbmUoaCA9IHN0ZWFkeV8yMiwgbHR5ID0gMikKbGVnZW5kKAogICJib3R0b21yaWdodCIsCiAgbGVnZW5kID0gYygiTG93IGssIHM9MC4yMiIsICJIaWdoIGssIHM9MC4yMiIsICJMb3cgaywgcz0wLjMyIiksCiAgY29sID0gYygiYmxhY2siLCAicmVkIiwgImJsdWUiKSwKICBsdHkgPSAxCik= layout: vertical locale: zh title: R:资本深化与条件收敛 --- :: ### 结果解释 具有相同结构参数的经济体会向同一稳态靠近,这叫条件收敛。提高储蓄率提高稳态产出水平,但在外生技术进步模型中不会永久提高人均产出的长期增长率。跨国比较还要处理技术、制度、人力资本、人口和测量差异。 ## 实验五:用局部投影估计冲击响应 ### 识别与估计 局部投影在每个预测期 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 分别估计: [[[]{.katex-mathml}[[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[s]{.mord.mathnormal}[h]{.mord.mathnormal}[oc]{.mord.mathnormal}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0315em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7917em;vertical-align:-0.2083em;"}[[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0556em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[y]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.2083em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[+]{.mbin.mtight}[h]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[h]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 描述结果变量在第 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 期对冲击的响应。只有当 [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[s]{.mord.mathnormal}[h]{.mord.mathnormal}[oc]{.mord.mathnormal}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0315em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 在给定控制后可视为外生时,它才有因果解释。下面的冲击由随机数生成,因此外生性在模拟中成立。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCmltcG9ydCBzdGF0c21vZGVscy5hcGkgYXMgc20KaW1wb3J0IG1hdHBsb3RsaWIucHlwbG90IGFzIHBsdAoKcm5nID0gbnAucmFuZG9tLmRlZmF1bHRfcm5nKDIwMjYpCnNhbXBsZV9zaXplID0gNTAwCm1heF9ob3Jpem9uID0gOAoKc2hvY2sgPSBybmcubm9ybWFsKHNpemU9c2FtcGxlX3NpemUpCm5vaXNlID0gcm5nLm5vcm1hbChzY2FsZT0wLjgsIHNpemU9c2FtcGxlX3NpemUpCm91dHB1dCA9IG5wLnplcm9zKHNhbXBsZV9zaXplKQoKZm9yIHBlcmlvZCBpbiByYW5nZSgxLCBzYW1wbGVfc2l6ZSk6CiAgICBvdXRwdXRbcGVyaW9kXSA9ICgKICAgICAgICAwLjcwICogb3V0cHV0W3BlcmlvZCAtIDFdCiAgICAgICAgKyAwLjkwICogc2hvY2tbcGVyaW9kXQogICAgICAgICsgbm9pc2VbcGVyaW9kXQogICAgKQoKcmVzcG9uc2VzID0gW10Kc3RhbmRhcmRfZXJyb3JzID0gW10KZm9yIGhvcml6b24gaW4gcmFuZ2UobWF4X2hvcml6b24gKyAxKToKICAgIGluZGV4ID0gbnAuYXJhbmdlKDEsIHNhbXBsZV9zaXplIC0gaG9yaXpvbikKICAgIGRlcGVuZGVudCA9IG91dHB1dFtpbmRleCArIGhvcml6b25dCiAgICByZWdyZXNzb3JzID0gc20uYWRkX2NvbnN0YW50KAogICAgICAgIG5wLmNvbHVtbl9zdGFjayhbc2hvY2tbaW5kZXhdLCBvdXRwdXRbaW5kZXggLSAxXV0pCiAgICApCiAgICBtb2RlbCA9IHNtLk9MUyhkZXBlbmRlbnQsIHJlZ3Jlc3NvcnMpLmZpdChjb3ZfdHlwZT0iSEMxIikKICAgIHJlc3BvbnNlcy5hcHBlbmQobW9kZWwucGFyYW1zWzFdKQogICAgc3RhbmRhcmRfZXJyb3JzLmFwcGVuZChtb2RlbC5ic2VbMV0pCgpyZXNwb25zZXMgPSBucC5hcnJheShyZXNwb25zZXMpCnN0YW5kYXJkX2Vycm9ycyA9IG5wLmFycmF5KHN0YW5kYXJkX2Vycm9ycykKZm9yIGgsIGJldGEsIHNlIGluIHppcChyYW5nZShtYXhfaG9yaXpvbiArIDEpLCByZXNwb25zZXMsIHN0YW5kYXJkX2Vycm9ycyk6CiAgICBwcmludChmImg9e2h9OiByZXNwb25zZT17YmV0YTouM2Z9LCByb2J1c3Qgc2U9e3NlOi4zZn0iKQoKcGx0LnBsb3QocmFuZ2UobWF4X2hvcml6b24gKyAxKSwgcmVzcG9uc2VzLCBtYXJrZXI9Im8iKQpwbHQuZmlsbF9iZXR3ZWVuKAogICAgcmFuZ2UobWF4X2hvcml6b24gKyAxKSwKICAgIHJlc3BvbnNlcyAtIDEuOTYgKiBzdGFuZGFyZF9lcnJvcnMsCiAgICByZXNwb25zZXMgKyAxLjk2ICogc3RhbmRhcmRfZXJyb3JzLAogICAgYWxwaGE9MC4yNQopCnBsdC5heGhsaW5lKDAsIGNvbG9yPSJibGFjayIsIGxpbmV3aWR0aD0xKQpwbHQueGxhYmVsKCJIb3Jpem9uIikKcGx0LnlsYWJlbCgiUmVzcG9uc2Ugb2Ygb3V0cHV0IikKcGx0LnRpdGxlKCJMb2NhbC1wcm9qZWN0aW9uIGltcHVsc2UgcmVzcG9uc2UiKQpwbHQuZ3JpZChhbHBoYT0wLjMpCnBsdC5zaG93KCk= layout: vertical locale: zh packages: numpy, statsmodels, matplotlib title: Python:局部投影冲击响应 --- :: ::web-r --- code64: c2V0LnNlZWQoMjAyNikKc2FtcGxlX3NpemUgPC0gNTAwCm1heF9ob3Jpem9uIDwtIDgKCnNob2NrIDwtIHJub3JtKHNhbXBsZV9zaXplKQpub2lzZSA8LSBybm9ybShzYW1wbGVfc2l6ZSwgc2QgPSAwLjgpCm91dHB1dCA8LSBudW1lcmljKHNhbXBsZV9zaXplKQoKZm9yIChwZXJpb2QgaW4gMjpzYW1wbGVfc2l6ZSkgewogIG91dHB1dFtwZXJpb2RdIDwtICgKICAgIDAuNzAgKiBvdXRwdXRbcGVyaW9kIC0gMV0KICAgICsgMC45MCAqIHNob2NrW3BlcmlvZF0KICAgICsgbm9pc2VbcGVyaW9kXQogICkKfQoKcmVzcG9uc2VzIDwtIG51bWVyaWMobWF4X2hvcml6b24gKyAxKQpzdGFuZGFyZF9lcnJvcnMgPC0gbnVtZXJpYyhtYXhfaG9yaXpvbiArIDEpCgpmb3IgKGhvcml6b24gaW4gMDptYXhfaG9yaXpvbikgewogIGluZGV4IDwtIDI6KHNhbXBsZV9zaXplIC0gaG9yaXpvbikKICBkYXRhX2ggPC0gZGF0YS5mcmFtZSgKICAgIGRlcGVuZGVudCA9IG91dHB1dFtpbmRleCArIGhvcml6b25dLAogICAgc2hvY2sgPSBzaG9ja1tpbmRleF0sCiAgICBsYWdnZWRfb3V0cHV0ID0gb3V0cHV0W2luZGV4IC0gMV0KICApCiAgbW9kZWwgPC0gbG0oZGVwZW5kZW50IH4gc2hvY2sgKyBsYWdnZWRfb3V0cHV0LCBkYXRhID0gZGF0YV9oKQogIHJlc3BvbnNlc1tob3Jpem9uICsgMV0gPC0gY29lZihtb2RlbClbInNob2NrIl0KICBzdGFuZGFyZF9lcnJvcnNbaG9yaXpvbiArIDFdIDwtIHN1bW1hcnkobW9kZWwpJGNvZWZmaWNpZW50c1sic2hvY2siLCAiU3RkLiBFcnJvciJdCn0KCnJlc3VsdCA8LSBkYXRhLmZyYW1lKAogIGhvcml6b24gPSAwOm1heF9ob3Jpem9uLAogIHJlc3BvbnNlID0gcm91bmQocmVzcG9uc2VzLCAzKSwKICBzdGFuZGFyZF9lcnJvciA9IHJvdW5kKHN0YW5kYXJkX2Vycm9ycywgMykKKQpwcmludChyZXN1bHQpCgpwbG90KAogIDA6bWF4X2hvcml6b24sCiAgcmVzcG9uc2VzLAogIHR5cGUgPSAiYiIsCiAgeGxhYiA9ICJIb3Jpem9uIiwKICB5bGFiID0gIlJlc3BvbnNlIG9mIG91dHB1dCIsCiAgbWFpbiA9ICJMb2NhbC1wcm9qZWN0aW9uIGltcHVsc2UgcmVzcG9uc2UiCikKYWJsaW5lKGggPSAwLCBsdHkgPSAyKQ== layout: vertical locale: zh title: R:局部投影冲击响应 --- :: ### 研究生审计 这个 R 示例使用普通标准误,Python 示例使用 HC1;真实局部投影中的残差跨期重叠,通常需要 HAC、Bootstrap 或其他适合时间依赖的推断。还应说明冲击来自叙事识别、高频意外、符号限制、外部工具还是递归排序。图形本身不能证明冲击外生。 ## 综合作业 从五个实验中选择一个,提交一份 800—1200 字分析: 1. 写出模型、参数和结果变量; 2. 复现基准代码并保存输出; 3. 修改至少两个参数,解释变化方向; 4. 指出模型省略的三个现实机制; 5. 说明若使用真实数据,需要什么数据、识别和标准误; 6. 比较 Python 与 R 结果,解释任何差异。 ## 进一步阅读 - Blanchard, *Macroeconomics*:短期波动、政策和开放经济基线; - Romer, *Advanced Macroeconomics*:增长、消费、政策与动态模型; - Jordà (2005), “Estimation and Inference of Impulse Responses by Local Projections”; - IMF, *Fiscal Monitor* 方法附录:债务动态与情景分析; - Taylor (1993), “Discretion versus Policy Rules in Practice”。 [返回课程首页](https://www.pengjiaxin.com/) · [进入宏观研究项目](https://www.pengjiaxin.com/08-macro-research-project) # 第十章:前沿文献与当代宏观案例(2023—2026) []{#第十章前沿文献与当代宏观案例20232026} 宏观经济学最容易出现两种学习偏差:一种是只记住“需求增加会推高产出和价格”之类的方向判断,另一种是看到一篇新论文就把其中的数值当成普遍规律。本章用三组近期研究训练一种更严格的读法:先确定研究对象,再拆解模型机制,随后核对证据,最后说明结论能够外推到哪里。 本章材料来自截至 **2026 年 7 月 31 日** 对期刊、NBER、Brookings 等一手来源的定向检索。它是课程更新,不是穷尽式系统综述。凡是论文报告的经验结论,均明确写成“作者发现”或“论文估计”;网页中的模拟只用于解释机制,不复现论文数据,也不构成现实政策预测。 ## 学习目标 完成本章后,你应能够: 1. 把疫情后通胀拆成相对价格冲击、部门短缺、劳动力市场紧张、工资和预期等不同渠道; 2. 解释为什么菲利普斯曲线可能在劳动力市场极度紧张时变陡; 3. 用任务份额与任务层面的成本节约讨论 AI 对总生产率的数量级; 4. 区分恒等式、结构模型、估计分解和政策反事实; 5. 比较彼此并不完全一致的论文,而不是强行选出一个“唯一正确”的故事。 ## 案例一:疫情后通胀不能只用一个“产出缺口”解释 ### 1. 研究问题 Bernanke 与 Blanchard(2023)追问:美国 2021—2022 年的通胀上升,主要来自过热的总需求和工资—价格循环,还是来自能源、食品、供应链与部门错配?二人在 2024 年又与十个中央银行团队把相近框架应用到 11 个经济体,以检验美国经验是否具有外部有效性。 这比“通胀是需求拉动还是成本推动”更具体。研究者必须同时解释价格、工资、短期与长期通胀预期,并允许冲击经由不同速度传导。 ### 2. 模型读法 可以把论文的思路简化为以下教学框架: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[b]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 表示能源、食品和部门短缺等相对价格冲击, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 表示劳动力市场紧张, [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 表示工资压力, [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[a]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[b]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[c]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[d]{.mord.mathnormal}[(]{.mopen}[L]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 表示这些变量可能通过若干滞后进入通胀。模型不是说各项永远可以机械相加,而是要求研究者明确每一项的时间顺序。 例如,港口拥堵先抬高少数商品的边际成本;商品短缺扩大后,价格指数上升;若家庭和企业仍相信中期通胀会回到目标,工资追赶可能有限。相反,如果劳动力市场持续紧张、工资重新议价且预期脱锚,初始相对价格冲击就更可能转化为持续通胀。 ### 3. 论文报告了什么 Bernanke 与 Blanchard 的美国分析认为,2021—2022 年大部分初始通胀上升与商品价格、能源食品以及部门短缺直接推高价格有关;劳动力市场并非最初来源,但随着相对价格冲击消退,职位空缺相对于失业人数的高水平对工资和价格的持续压力变得更重要。2024 年的 11 个经济体比较得到大体相似的时间顺序,但能源冲击、短缺和工资传导的相对重要性因国家而异。 ### 4. 本科生应掌握的解释 不要把“供给冲击”理解成一条永久左移的短期总供给曲线。至少要区分: - **一次性价格水平冲击**:某类价格上升后稳定,通胀率会先升后降; - **持续成本冲击**:能源或投入价格不断上涨,通胀率持续受压; - **二轮效应**:工资、利润率和预期把初始冲击传播到其他价格; - **需求放大**:财政转移、宽松金融条件或被压抑需求使有限供给面对更强购买力。 因此,“通胀来自供给”不推出“货币政策毫无作用”;它只说明加息不能生产芯片或天然气,并且政策需要权衡通胀持续性与压低需求的产出成本。 ### 5. 研究生延伸与证据边界 分解结果依赖模型设定、冲击变量、滞后长度和反事实路径。职位空缺—失业比也是劳动力市场紧张的代理变量,不是完全外生的处理。跨国结果更不能在忽略工资制度、能源结构、财政响应和价格管制的情况下直接平均。高质量研究生报告应至少比较替代紧张度指标、样本期、预期测量和结构突变。 ## 案例二:为什么菲利普斯曲线可能是非线性的 ### 1. 从失业率转向匹配紧张度 Benigno 与 Eggertsson(2023)提出一条非线性新凯恩斯菲利普斯曲线,并用职位空缺与失业人数之比 [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 衡量劳动力市场紧张度。直觉是:当失业者很多、岗位很少时,再增加一个岗位未必显著推高工资;当每个失业者对应很多岗位时,企业之间争夺工人,新增需求的工资和价格效应会快速放大。 教学上可把通胀压力近似写成: [[[]{.katex-mathml}[[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9614em;vertical-align:-0.247em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0359em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[e]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0281em;vertical-align:-0.2458em;"}[κ]{.mord.mathnormal}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4542em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[γ]{.mord.mathnormal.mtight style="margin-right:0.0556em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.7823em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2458em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7335em;vertical-align:-0.1944em;"}[[s]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 当 [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 较低时,导数 [[]{.katex-mathml}[[[]{.strut style="height:1.1778em;vertical-align:-0.2458em;"}[κγ]{.mord.mathnormal style="margin-right:0.0556em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4542em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[γ]{.mord.mathnormal.mtight style="margin-right:0.0556em;"}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.932em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2458em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 较小;当 [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 很高时,同样的紧张度变化带来更大的通胀变化。这就是“曲线在极端紧张区间变陡”的含义。 ### 2. 这对政策有什么改变 在线性模型里,从紧张度 0.8 降到 0.6 与从 1.8 降到 1.6 的边际通胀效果相同。非线性模型则允许后者更大。因此,如果政策能主要减少职位空缺而不是大量增加失业,通胀可能明显下降而失业上升有限。 但这是一项模型条件下的政策含义,不是保证。岗位空缺能否平稳下降,取决于匹配效率、企业招聘行为、劳动供给和政策可信度。论文把 2020 年代通胀更多归因于劳动力短缺,而 Bernanke—Blanchard 更强调初期相对价格冲击;两者并非简单互斥,它们对**冲击起点与后期持续机制**赋予了不同权重。 ### 3. 阅读争论的方法 面对两篇结论不同的论文,按四步比较: 1. 两篇论文解释的是通胀峰值、累计通胀,还是回落的“最后一公里”? 2. 劳动力紧张、短缺和预期分别怎样测量? 3. 哪些关系由数据识别,哪些来自模型函数形式? 4. 更换国家、时期或政策制度后,关键参数是否可能变化? ## 案例三:AI 会让宏观生产率提高多少 ### 1. 从“技术很强”到可计算的宏观对象 Acemoglu(2025,2024 年在线发表)用任务模型与 Hulten 定理讨论 AI。核心提醒是:某项技术在个别任务上提高效率,不等于整个经济以同样比例提高生产率。 设 AI 可影响的任务份额为 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,这些任务的平均成本节约为 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,能被企业真正吸收并转化为生产率的比例为 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。一个非常粗略的课堂近似是: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[Δ]{.mord}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[q]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若只有 20% 的任务在研究期内可被有效辅助,任务成本平均下降 25%,其中 60% 转化为净生产率增益,则十年累计 TFP 增益的机械估算为 [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.20]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[0.25]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.60]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8056em;vertical-align:-0.0556em;"}[3%]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。这个数字是课堂情景,不是论文估计;它的作用是迫使我们写出假设。 ### 2. 论文结论的准确读法 Acemoglu 汇总任务暴露和任务层生产率证据后,估计未来十年 AI 带来的 TFP 增益上限约为 0.66%,较偏好的估计低于约 0.53%。论文同时提醒,早期实验往往集中在较容易学习、结果容易评价的任务;复杂、依赖情境且缺乏明确反馈的任务可能更难自动化。 这里的“较小”是相对于一些宏大预测而言,并不等于 AI 对所有行业或劳动者都无关紧要。即使总量效应有限,行业、职业和收入分配效应仍可能很大;提高低技能劳动者在部分任务上的效率,也不必然缩小资本收入与劳动收入之间的差距。 ### 3. 研究生扩展 研究生应把公式扩展为任务异质性: [[[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[Δ]{.mord}[]{.mspace style="margin-right:0.1667em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2421em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[J]{.mord.mathnormal.mtight style="margin-right:0.0962em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[ω]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是任务在成本中的权重, [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是可被 AI 有效影响的程度, [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[g]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是任务层成本节约。随后讨论新任务创造、质量变化、调整成本、市场势力、劳动再配置和社会价值未被简单成本节约公式覆盖的部分。 ## 浏览器实验:非线性通胀与 AI 任务聚合 下面的模拟把两个机制放在同一页。第一部分比较线性与非线性菲利普斯曲线;第二部分计算不同任务暴露情景下的 TFP 数量级。参数是教学设定,不拟合任何国家,也不复现上述论文。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgp0aWdodG5lc3MgPSBucC5hcnJheShbMC4zLCAwLjYsIDAuOSwgMS4yLCAxLjUsIDEuOF0pCmV4cGVjdGVkX2luZmxhdGlvbiA9IDIuMApzdXBwbHlfc2hvY2sgPSAwLjgKCmxpbmVhcl9pbmZsYXRpb24gPSBleHBlY3RlZF9pbmZsYXRpb24gKyBzdXBwbHlfc2hvY2sgKyAwLjU1ICogdGlnaHRuZXNzCm5vbmxpbmVhcl9pbmZsYXRpb24gPSBleHBlY3RlZF9pbmZsYXRpb24gKyBzdXBwbHlfc2hvY2sgKyAwLjMyICogdGlnaHRuZXNzICoqIDIuMgoKcHJpbnQoInRpZ2h0bmVzcyB8IGxpbmVhciBpbmZsYXRpb24gfCBub25saW5lYXIgaW5mbGF0aW9uIikKZm9yIHRoZXRhLCBsaW5lYXIsIG5vbmxpbmVhciBpbiB6aXAoCiAgICB0aWdodG5lc3MsIGxpbmVhcl9pbmZsYXRpb24sIG5vbmxpbmVhcl9pbmZsYXRpb24KKToKICAgIHByaW50KGYie3RoZXRhOjkuMWZ9IHwge2xpbmVhcjoxNi4yZn0gfCB7bm9ubGluZWFyOjE5LjJmfSIpCgpoaWdoX3RvX21lZGl1bSA9IG5vbmxpbmVhcl9pbmZsYXRpb25bLTFdIC0gbm9ubGluZWFyX2luZmxhdGlvblstMl0KbG93X3RvX2xvd2VyID0gbm9ubGluZWFyX2luZmxhdGlvblsxXSAtIG5vbmxpbmVhcl9pbmZsYXRpb25bMF0KcHJpbnQoZiJcbk5vbmxpbmVhciBjaGFuZ2UgZnJvbSAxLjUgdG8gMS44OiB7aGlnaF90b19tZWRpdW06LjJmfSBwcCIpCnByaW50KGYiTm9ubGluZWFyIGNoYW5nZSBmcm9tIDAuMyB0byAwLjY6IHtsb3dfdG9fbG93ZXI6LjJmfSBwcCIpCgpzY2VuYXJpb3MgPSB7CiAgICAiY2F1dGlvdXMiOiAoMC4xMCwgMC4xNSwgMC41MCksCiAgICAidGVhY2hpbmcgYmFzZWxpbmUiOiAoMC4yMCwgMC4yNSwgMC42MCksCiAgICAiYnJvYWQgYWRvcHRpb24iOiAoMC4zNSwgMC4zMCwgMC43NSksCn0KcHJpbnQoIlxuQUkgdGFzayBhZ2dyZWdhdGlvbiBzY2VuYXJpb3MiKQpmb3IgbmFtZSwgKHRhc2tfc2hhcmUsIHNhdmluZywgcGFzc190aHJvdWdoKSBpbiBzY2VuYXJpb3MuaXRlbXMoKToKICAgIHRmcF9nYWluID0gdGFza19zaGFyZSAqIHNhdmluZyAqIHBhc3NfdGhyb3VnaAogICAgcHJpbnQoZiJ7bmFtZToxN3N9OiBjdW11bGF0aXZlIFRGUCBnYWluID0gezEwMCAqIHRmcF9nYWluOi4yZn0lIik= layout: vertical locale: zh packages: numpy title: Python:非线性菲利普斯曲线与任务聚合 --- :: ::web-r --- code64: dGlnaHRuZXNzIDwtIGMoMC4zLCAwLjYsIDAuOSwgMS4yLCAxLjUsIDEuOCkKZXhwZWN0ZWRfaW5mbGF0aW9uIDwtIDIuMApzdXBwbHlfc2hvY2sgPC0gMC44CgpsaW5lYXJfaW5mbGF0aW9uIDwtIGV4cGVjdGVkX2luZmxhdGlvbiArIHN1cHBseV9zaG9jayArIDAuNTUgKiB0aWdodG5lc3MKbm9ubGluZWFyX2luZmxhdGlvbiA8LSBleHBlY3RlZF9pbmZsYXRpb24gKyBzdXBwbHlfc2hvY2sgKyAwLjMyICogdGlnaHRuZXNzXjIuMgoKY29tcGFyaXNvbiA8LSBkYXRhLmZyYW1lKAogIHRpZ2h0bmVzcyA9IHRpZ2h0bmVzcywKICBsaW5lYXIgPSByb3VuZChsaW5lYXJfaW5mbGF0aW9uLCAyKSwKICBub25saW5lYXIgPSByb3VuZChub25saW5lYXJfaW5mbGF0aW9uLCAyKQopCnByaW50KGNvbXBhcmlzb24pCgpoaWdoX2NoYW5nZSA8LSBub25saW5lYXJfaW5mbGF0aW9uWzZdIC0gbm9ubGluZWFyX2luZmxhdGlvbls1XQpsb3dfY2hhbmdlIDwtIG5vbmxpbmVhcl9pbmZsYXRpb25bMl0gLSBub25saW5lYXJfaW5mbGF0aW9uWzFdCnByaW50KGMoaGlnaF9yYW5nZV9jaGFuZ2UgPSBoaWdoX2NoYW5nZSwgbG93X3JhbmdlX2NoYW5nZSA9IGxvd19jaGFuZ2UpKQoKc2NlbmFyaW9zIDwtIGRhdGEuZnJhbWUoCiAgbmFtZSA9IGMoImNhdXRpb3VzIiwgInRlYWNoaW5nIGJhc2VsaW5lIiwgImJyb2FkIGFkb3B0aW9uIiksCiAgdGFza19zaGFyZSA9IGMoMC4xMCwgMC4yMCwgMC4zNSksCiAgdGFza19zYXZpbmcgPSBjKDAuMTUsIDAuMjUsIDAuMzApLAogIHBhc3NfdGhyb3VnaCA9IGMoMC41MCwgMC42MCwgMC43NSkKKQpzY2VuYXJpb3MkdGZwX2dhaW5fcGVyY2VudCA8LSB3aXRoKAogIHNjZW5hcmlvcywKICAxMDAgKiB0YXNrX3NoYXJlICogdGFza19zYXZpbmcgKiBwYXNzX3Rocm91Z2gKKQpwcmludChzY2VuYXJpb3Mp layout: vertical locale: zh title: R:非线性菲利普斯曲线与任务聚合 --- :: ### 实验审计 - 把供给冲击从 0.8 改为 0,观察它只改变曲线水平还是也改变斜率。 - 把非线性指数从 2.2 改为 1,解释模型退化成什么形式。 - 让三个 AI 情景保持相同任务份额,只改变转化比例,说明组织调整为何是宏观参数的一部分。 - 不要把模拟输出与论文的 0.66% 直接比较;两者使用的任务定义、证据和校准完全不同。 ## 分层教学任务 ### 本科生任务 选择一个国家 2021—2024 年的通胀经历,制作四列时间线:总体通胀、能源/食品通胀、职位空缺—失业比、工资增长。写 800 字说明哪个渠道先变化、哪个渠道更持久,以及图形相关性为什么还不是因果识别。 ### 研究生任务 在 Bernanke—Blanchard 分解与非线性菲利普斯曲线之间设计一个可区分的经验检验。必须写出目标参数、数据频率、结构突变、内生性来源和至少两个替代紧张度指标。若使用局部投影或 VAR,要说明冲击如何识别,而不是只报告脉冲响应图。 ### 课堂讨论 > 如果初始通胀主要来自相对价格冲击,而后期持续性主要来自劳动力紧张,中央银行应在何时收紧?答案必须同时讨论政策时滞、预期、分配后果和误判成本。 ## 一手文献与延伸阅读 1. Bernanke, B. S., & Blanchard, O. (2023). [What Caused the U.S. Pandemic-Era Inflation?](https://www.brookings.edu/articles/what-caused-the-u-s-pandemic-era-inflation/){rel=""nofollow""} Brookings Papers / Hutchins Center Working Paper. 页面提供全文与复现材料。 2. Bernanke, B. S., & Blanchard, O. (2024). [An Analysis of Pandemic-Era Inflation in 11 Economies](https://www.brookings.edu/articles/an-analysis-of-pandemic-era-inflation-in-11-economies/){rel=""nofollow""}. Hutchins Center Working Paper 91. 3. Benigno, P., & Eggertsson, G. B. (2023). [It’s Baaack: The Surge in Inflation in the 2020s and the Return of the Non-Linear Phillips Curve](https://www.nber.org/papers/w31197){rel=""nofollow""}. NBER Working Paper 31197. DOI: [10.3386/w31197](https://doi.org/10.3386/w31197){rel=""nofollow""}. 4. Acemoglu, D. (2025). [The Simple Macroeconomics of AI](https://academic.oup.com/economicpolicy/article-abstract/40/121/13/7728473){rel=""nofollow""}. *Economic Policy*, 40(121), 13–58. DOI: [10.1093/epolic/eiae042](https://doi.org/10.1093/epolic/eiae042){rel=""nofollow""}. 继续学习时,可将本章与[通胀与失业](https://www.pengjiaxin.com/04-ad-as-inflation-unemployment)、[增长与生产率](https://www.pengjiaxin.com/06-growth-productivity)和[浏览器政策实验](https://www.pengjiaxin.com/09-interactive-policy-labs)配套阅读。 # 宏观经济学:从国民账户到增长与政策 ## 课程定位 宏观经济学研究的不是一个抽象的“平均人”,而是把家庭、企业、政府、金融机构和国外部门的决策放在同一个相互联系的系统里,解释产出、就业、通货膨胀、利率、汇率、增长和危机为什么会共同变化。 这门课按一条清晰的学习链组织: :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsi5Zu95rCR6LSm5oi35LiO5pWw5o2uIl0gLS0+IEJbIua2iOi0ueOAgeaKlei1hOS4juaAu+mcgOaxgiJdCiAgQiAtLT4gQ1si6LSn5biB44CB6ZO26KGM5LiO5Yip546HIl0KICBDIC0tPiBEWyJBRC1BU+OAgemAmuiDgOS4juWwseS4miJdCiAgRCAtLT4gRVsi6LSi5pS/5LiO6LSn5biB5pS/562WIl0KICBFIC0tPiBGWyLlop7plb/jgIHnlJ/kuqfnjofkuI7lj5HlsZUiXQogIEYgLS0+IEdbIuW8gOaUvue7j+a1juS4juaxh+eOhyJdCiAgRyAtLT4gSFsi5a6P6KeC56CU56m26aG555uuIl0=" locale="zh"} 本科生需要掌握概念、图形、基本方程和政策传导;研究生还需要说明动态假设、预期、识别策略、异质性、一般均衡反馈和模型与数据之间的对应关系。本课程中的“研究生扩展”不是把公式写得更复杂,而是要求你明确哪些结论由哪些假设产生。 ## 学习成果 完成课程后,你应能够: 1. 解释 GDP、国民收入、消费、投资、政府购买、净出口、通货膨胀和失业率的定义与测量边界。 2. 区分名义量与实际量、存量与流量、水平与增长率,并识别常见的统计口径错误。 3. 用凯恩斯交叉、IS–LM 或现代利率—产出框架解释短期总需求变化。 4. 用 AD–AS 框架分析需求冲击、供给冲击、预期变化和政策响应。 5. 解释货币创造、银行资产负债表、中央银行工具、利率传导和金融条件。 6. 计算并解释财政乘数、债务动态、实际利率、增长分解和汇率变化。 7. 讨论长期增长中的资本积累、人力资本、技术、制度和生产率。 8. 区分描述性宏观事实、理论机制、政策反事实和因果识别证据。 9. 使用 Python 或 R 对宏观数据进行可重复的整理、可视化、估计和稳健性检查。 10. 写出一份同时说明机制、时间跨度、分配后果与不确定性的宏观政策分析。 ## 本科生与研究生两条学习路径 | 学习层级 | 必须达到的标准 | 建议的研究生扩展 | | ---- | -------------------------------------- | ------------------------------- | | 本科生 | 会读国民账户和宏观图形;能推导基础乘数;能解释政策冲击的方向、时滞和副作用。 | 用数据检验一个宏观事实,并讨论测量误差和替代解释。 | | 研究生 | 在掌握本科内容的基础上,能写出动态模型的状态变量、冲击和识别假设。 | 讨论预期、一般均衡、异质性主体、结构估计或局部投影等研究方法。 | 研究生学习者不应跳过基础模型。凯恩斯交叉、货币市场和增长模型是阅读 DSGE、VAR、局部投影和宏观劳动研究的语言基础。 ## 先修准备 ### 概念准备 在开始第一章前,先确认自己能够区分: | 概念对 | 要点 | | ------- | ------------------------------ | | GDP 与财富 | GDP 是一段时期的生产流量;财富是某一时点的资产净值存量。 | | 名义与实际 | 名义量包含价格变化;实际量尽量隔离价格后比较数量或购买力。 | | 储蓄与投资 | 宏观账户中的投资是新增资本品和库存变化,不等同于购买股票。 | | 失业率与就业率 | 分母不同;退出劳动力市场会改变失业率而不一定改善就业。 | | 赤字与债务 | 赤字是某期流量;债务是累积存量。 | | 相关与因果 | 两个宏观变量共同波动不等于其中一个造成另一个。 | ### 数学与数据准备 需要掌握一次函数、对数增长率、百分比变化、求和符号、矩阵乘法和基本微积分。宏观数据还要求你注意频率、季节调整、基期、链式价格指数、修订和缺失值。 ### 诊断自测 | 问题 | 强答案应注意什么 | | ------------------------------------------ | --------------------------------- | | 名义 GDP 增长 8%,GDP 平减指数增长 5%,实际 GDP 是否增长 8%? | 不应把价格增长计入实际产出;小增长率近似为实际增长约 3%。 | | 政府增加支出一定会让产出增加同样多吗? | 要看乘数、税收、进口、利率、供给约束和预期。 | | 央行降息一定会降低通胀吗? | 短期可能刺激需求;最终效果取决于产出缺口、预期、供给和政策可信度。 | | 经济增长一定意味着所有人的福利都提高吗? | 需要观察分配、闲暇、环境、公共品和家庭生产等 GDP 未覆盖部分。 | | 贸易逆差是否等于国家“亏损”? | 要区分经常账户、资本流动、储蓄—投资恒等式和福利含义。 | ::legacy-spoiler{title="自测提示"} 宏观分析的第一步永远是定义变量和时间跨度。对政策问题,还要分清短期稳定目标与长期供给能力;对数据问题,要先确认统计口径,再讨论机制。 :: ## 贯穿案例:一次能源价格冲击 假设一个能源进口国突然面对能源价格上升。不要只写“通胀上升”,而要按层次分析: 1. **国民账户层面:** 能源进口价格上升可能恶化贸易条件,居民实际购买力下降,企业成本上升。 2. **供给侧:** 单位产出成本提高,短期总供给向左移动;产出下降、价格水平上升的风险同时存在。 3. **需求侧:** 实际收入下降会减少消费;如果政府补贴能源,财政支出增加,需求下降可能被部分抵消。 4. **货币政策:** 央行面对通胀与产出之间的权衡;加息可能压制需求,但不能直接增加能源供给。 5. **分配层面:** 低收入家庭能源支出占比更高,统一补贴与定向转移支付的分配效果不同。 6. **长期层面:** 投资、能源替代、技术创新和基础设施会改变未来供给弹性。 这一案例提醒我们:同一个冲击可以同时进入多个方程。高质量回答要标出每条传导的时间跨度、受影响的主体和可能的反作用。 :chart-js-figure{props64="eyJ0eXBlIjoibGluZSIsInRpdGxlIjoi6IO95rqQ5Yay5Ye755qE56S65oSP5oCn5a6P6KeC6Lev5b6EIiwic3VidGl0bGUiOiLnpLrmhI/lm77nlKjkuo7nkIbop6PlhrLlh7vmlrnlkJHvvIzkuI3ku6Pooajku7vkvZXlhbfkvZPlm73lrrbnmoTlrp7pmYXmlbDmja7jgIIiLCJoZWlnaHQiOjM0MCwiZGF0YSI6eyJsYWJlbHMiOlsi5Yay5Ye75YmNIiwiMeacnyIsIjLmnJ8iLCIz5pyfIiwiNOacnyIsIjXmnJ8iXSwiZGF0YXNldHMiOlt7ImxhYmVsIjoi5Lu35qC85rC05bmz5oyH5pWwIiwiZGF0YSI6WzEwMCwxMDQsMTA2LDEwNywxMDYsMTA1XSwiYm9yZGVyQ29sb3IiOiIjYjQ1MzA5IiwiYmFja2dyb3VuZENvbG9yIjoicmdiYSgxODAsIDgzLCA5LCAwLjEyKSIsInRlbnNpb24iOjAuMjV9LHsibGFiZWwiOiLlrp7pmYXkuqflh7rmjIfmlbAiLCJkYXRhIjpbMTAwLDk4LDk3LDk4LDk5LDEwMF0sImJvcmRlckNvbG9yIjoiIzI1NjNlYiIsImJhY2tncm91bmRDb2xvciI6InJnYmEoMzcsIDk5LCAyMzUsIDAuMTIpIiwidGVuc2lvbiI6MC4yNX1dfSwib3B0aW9ucyI6eyJzY2FsZXMiOnsieCI6eyJ0aXRsZSI6eyJkaXNwbGF5Ijp0cnVlLCJ0ZXh0Ijoi6LCD5pW06Zi25q61In19LCJ5Ijp7InRpdGxlIjp7ImRpc3BsYXkiOnRydWUsInRleHQiOiLmjIfmlbDvvIjlhrLlh7vliY09MTAw77yJIn19fX0sImNhcHRpb24iOiLnn63mnJ/kvpvnu5nlhrLlh7vlj6/og73lhYjpgKDmiJDku7fmoLzkuIrljYflkozkuqflh7rkuIvpmY3vvJvlkI7nu63ot6/lvoTlj5blhrPkuo7pooTmnJ/jgIHmlL/nrZblkozkvpvnu5nosIPmlbTjgIIifQ=="} ## 一个可计算的乘数例子 在最简单的封闭经济模型中,假设消费函数为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5782em;vertical-align:-0.0391em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 商品市场均衡为: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 代入可得: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0908em;vertical-align:-0.7693em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[c]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[1]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7693em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[(]{.mopen}[[C]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[c]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[I]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[G]{.mord.mathnormal}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 因此,在其他条件不变且利率不变的短期近似下,政府购买乘数为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。如果边际消费倾向 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.75]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,政府购买增加 20 亿,模型中的产出增加为 80 亿。 ::pyodide --- code64: ZGVmIGZpc2NhbF9tdWx0aXBsaWVyKG1wYywgY2hhbmdlX2luX2dvdmVybm1lbnRfc3BlbmRpbmcpOgogICAgbXVsdGlwbGllciA9IDEgLyAoMSAtIG1wYykKICAgIGNoYW5nZV9pbl9vdXRwdXQgPSBtdWx0aXBsaWVyICogY2hhbmdlX2luX2dvdmVybm1lbnRfc3BlbmRpbmcKICAgIHJldHVybiBtdWx0aXBsaWVyLCBjaGFuZ2VfaW5fb3V0cHV0CgptdWx0aXBsaWVyLCBvdXRwdXRfY2hhbmdlID0gZmlzY2FsX211bHRpcGxpZXIoMC43NSwgMl8wMDBfMDAwXzAwMCkKcHJpbnQoZiLotKLmlL/kuZjmlbDvvJp7bXVsdGlwbGllcjouMmZ9IikKcHJpbnQoZiLmqKHlnovpooTmtYvnmoTkuqflh7rlj5jljJbvvJp7b3V0cHV0X2NoYW5nZSAvIDFfMDAwXzAwMF8wMDA6LjFmfSDljYHkur/lhYMiKQ== layout: vertical locale: zh title: 计算简单财政乘数 --- :: 这个结果不是政策承诺。开放经济中的进口、税收、利率上升、供给瓶颈、预期变化和债务约束都会使实际乘数不同。研究生分析还要说明乘数是结构参数、局部近似还是从历史数据中估计的对象。 ## 课程章节 | 章节 | 主题 | 核心问题 | 页面 | | -- | ----------- | ------------------------------------ | ------------------------------------------------------------------- | | 01 | 国民账户与宏观指标 | GDP、通胀、就业和财富如何测量? | [进入第一章](https://www.pengjiaxin.com/01-national-accounts) | | 02 | 消费、投资与凯恩斯交叉 | 总需求如何决定短期产出? | [进入第二章](https://www.pengjiaxin.com/02-consumption-investment) | | 03 | 货币、银行与利率 | 货币如何创造,央行如何影响金融条件? | [进入第三章](https://www.pengjiaxin.com/03-money-and-monetary-policy) | | 04 | AD–AS、通胀与失业 | 需求冲击与供给冲击如何产生不同结果? | [进入第四章](https://www.pengjiaxin.com/04-ad-as-inflation-unemployment) | | 05 | 财政政策与债务 | 稳定经济的财政空间和代价是什么? | [进入第五章](https://www.pengjiaxin.com/05-fiscal-policy-and-debt) | | 06 | 增长、生产率与发展 | 为什么长期生活水平会分化? | [进入第六章](https://www.pengjiaxin.com/06-growth-productivity) | | 07 | 开放经济与汇率 | 贸易、资本流动和货币政策如何相互制约? | [进入第七章](https://www.pengjiaxin.com/07-open-economy) | | 08 | 宏观研究项目 | 如何从事实、模型和数据形成可检验的政策论证? | [进入第八章](https://www.pengjiaxin.com/08-macro-research-project) | | 09 | 浏览器交互实验 | 如何用 Python 与 R 检验乘数、政策规则、债务、增长和冲击响应? | [进入实验课](https://www.pengjiaxin.com/09-interactive-policy-labs) | | 10 | 前沿文献与当代案例 | 疫情后通胀、非线性菲利普斯曲线与 AI 生产率怎样连接模型和证据? | [进入前沿课](https://www.pengjiaxin.com/10-frontier-literature-2026) | ## 13 周学习路径 | 周次 | 本科生重点 | 研究生扩展 | 产出 | | -: | --------- | ----------------- | -------------- | | 1 | 国民账户和变量定义 | 账户恒等式与测量误差 | 指标字典 | | 2 | GDP、通胀和失业 | 价格指数、修订和潜在产出 | 数据审计 | | 3 | 消费和储蓄 | 跨期选择与预期收入 | 消费函数练习 | | 4 | 投资和乘数 | 利率、资本调整和不确定性 | 凯恩斯交叉推导 | | 5 | 货币和银行 | 资产负债表、金融摩擦 | 银行案例 | | 6 | 货币政策 | 规则、预期和传导时滞 | 政策备忘录 | | 7 | AD–AS | 供给冲击、通胀预期 | 冲击图解 | | 8 | 财政政策 | 债务动态与财政可持续性 | 债务计算 | | 9 | 增长模型 | Solow、内生增长与分解 | 增长分解 | | 10 | 开放经济 | 汇率制度与资本流动 | 汇率案例 | | 11 | 交互实验与实证 | 乘数、债务、Solow 与局部投影 | Python/R 可重复脚本 | | 12 | 前沿文献与证据争论 | 通胀分解、非线性与 AI 任务模型 | 文献证据矩阵 | | 13 | 综合项目 | 机制、识别和敏感性分析 | 宏观研究报告 | ## 宏观分析写作模板 面对一项政策或新闻材料,按以下顺序写作: 1. **定义问题:** 变量、主体、冲击和时间跨度是什么? 2. **给出基线:** 在没有冲击时,模型或事实基线是什么? 3. **解释机制:** 冲击通过哪个市场、价格、预期或约束传导? 4. **区分短期与长期:** 哪些变量可以调整,哪些存在滞后? 5. **讨论政策:** 政策工具改变了什么,是否引入新的扭曲或分配后果? 6. **说明证据:** 哪些观察支持该机制,哪些替代解释仍然可能? 7. **写出限制:** 模型忽略了什么,结论对哪些假设敏感? ## 推荐教材与工具 - 曼昆:《宏观经济学》:适合本科生建立概念和图形直觉。 - Blanchard, *Macroeconomics*:适合把短期波动、政策和开放经济连起来。 - Romer, *Advanced Macroeconomics*:适合研究生进入增长、消费、投资和动态一般均衡。 - Carlin and Soskice, *Macroeconomics: Institutions, Instability, and the Financial System*:适合连接制度、金融和宏观稳定。 数据练习可以使用现有 Pyodide、webR 和 Chart.js 组件;研究生项目应把数据字典、代码、模型设定、图表和限制说明放在同一份可复现材料中。 ## 内容支撑与使用边界 课程中的恒等式、模型与政策结论分为三层:国民账户恒等式负责定义和核算;凯恩斯交叉、Solow、AD–AS 等模型负责澄清机制;回归、事件研究或局部投影负责把机制带回数据。恒等式不自动提供因果解释,模型参数也不能不经估计就直接当作现实数值。 建议把 Blanchard 或曼昆作为本科主教材,把 Romer 与 Carlin–Soskice 作为研究生扩展,并在实证项目中同时报告数据来源、样本区间、变量单位、识别假设和敏感性分析。[浏览器交互实验](https://www.pengjiaxin.com/09-interactive-policy-labs)使用合成数据帮助理解机制,不替代真实数据审计或正式因果识别。 # 第一章:微观计量与因果推断导论 []{#第一章微观计量与因果推断导论} > **贯穿问题:** 接受大学教育的人收入更高,究竟是教育产生了回报,还是本来更有优势的人更容易进入大学? 微观计量经济学不从“该跑哪个模型”开始,而从四个对象开始: :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgUFsi56CU56m25Lq6576kIl0gLS0+IERbIuWkhOeQhiBEIl0KICBEIC0tPiBZWyLnu5PmnpwgWSJdCiAgWSAtLT4gRVsi55uu5qCH5Y+C5pWwIl0KICBFIC0tPiBJWyLlj43kuovlrp7mnaXmupAiXQ==" locale="zh"} ## 学习目标 完成本章后,你应能: 1. 用潜在结果写出一个因果问题; 2. 区分 ATE、ATT、ITT 与局部效应; 3. 把观察差异拆成处理效应与选择偏误; 4. 说明随机化解决了什么、没有解决什么; 5. 在看回归结果前完成一页识别审计。 ## 1. 同一个人有两个潜在结果 令 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[{]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 表示是否接受处理: - [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:个体 [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 接受处理时的结果; - [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:同一个体不接受处理时的结果; - 个体处理效应: [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 实际只能观察 [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 因果推断的困难不是缺少一列数据,而是同一个人在同一时点不可能同时处于两种状态。研究设计的任务,是用其他单位、其他时间或制度边界构造可信的缺失反事实。 ## 2. 先决定要估计谁的效应 | 参数 | 定义 | 适合回答 | | ---- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------- | | ATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 对目标总体普遍实施会怎样? | | ATT | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 已接受处理者因处理改变了多少? | | ITT | 按随机分配 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord,mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 比较结果 | 提供政策或鼓励本身有何影响? | | LATE | 被工具变量改变处理状态者的平均效应 | 外生鼓励影响到的边际人群怎样? | | CATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord,mathnormal}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 哪类人受益更多? | “教育回报是多少”不是完整问题。至少要补上人群、教育版本、比较状态、结果和时间窗口。 ## 3. 为什么均值差通常不是因果效应 观察到的组间差异可以写成: [[[]{.katex-mathml}[[[]{.strut style="height:2.3263em;vertical-align:-1.5763em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[观察差异]{.mord.cjk_fallback.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.4237em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.102em;"}[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[]]{.mclose}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.898em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.5763em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3263em;vertical-align:-1.5763em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[ATT]{.mord.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.4237em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.102em;"}[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]]{.mclose}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.898em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.5763em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.3263em;vertical-align:-1.5763em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[选择偏误]{.mord.cjk_fallback.mtight}]{.mord.text.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.4237em;"}[[]{.pstrut style="height:3em;"}[[[[[[]{.pstrut style="height:3em;"}[[]{.brace-left style="height:0.548em;"}[]{.brace-center style="height:0.548em;"}[]{.brace-right style="height:0.548em;"}]{.stretchy style="height:0.548em;min-width:1.6em;"}]{.svg-align style="top:-2.102em;"}[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[]]{.mclose}]{.mord}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.898em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}]{style="top:-3em;"}]{.vlist style="height:0.75em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.5763em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.minner.munder}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 最后一项问的是:即使所有人都没有接受处理,两组是否本来就会不同。能力、家庭资源、健康动机和企业管理质量都可能造成这种差异。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgQVsi5pyq6KeC5rWL6IO95YqbIl0gLS0+IERbIuaYr+WQpuS4iuWkp+WtpiJdCiAgQSAtLT4gWVsi5pS25YWlIl0KICBEIC0tPiBZ" locale="zh"} 只比较大学生和非大学生时,路径 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[←]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 仍然开放。样本再大,也只会更精确地估计这个混合差异。 ## 4. 最小案例:自选择与随机分配 下面保持每个人的潜在收入不变,只改变教育如何分配。第一种情形让能力较高者更容易上大学;第二种情形随机分配。代码直接展示“同一处理效应、不同识别设计”会得到怎样的答案。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjAxKQpuID0gNjAwMAoKYWJpbGl0eSA9IHJuZy5ub3JtYWwoc2l6ZT1uKQp5MCA9IDM1ICsgOCAqIGFiaWxpdHkgKyBybmcubm9ybWFsKHNjYWxlPTYsIHNpemU9bikKdGF1ID0gNiArIDIgKiBhYmlsaXR5CgojIOinguWvn+aAp+WIhumFje+8muiDveWKm+i2iumrmO+8jOaOpeWPl+aVmeiCsueahOamgueOh+i2iuWkpwpwX2NvbGxlZ2UgPSAxIC8gKDEgKyBucC5leHAoLTEuNCAqIGFiaWxpdHkpKQpkX3NlbGVjdGVkID0gcm5nLmJpbm9taWFsKDEsIHBfY29sbGVnZSkKeV9zZWxlY3RlZCA9IHkwICsgZF9zZWxlY3RlZCAqIHRhdQoKIyDpmo/mnLrliIbphY3vvJrlpITnkIbkuI7og73lipvni6znq4sKZF9yYW5kb20gPSBybmcuYmlub21pYWwoMSwgMC41LCBzaXplPW4pCnlfcmFuZG9tID0geTAgKyBkX3JhbmRvbSAqIHRhdQoKZGVmIG1lYW5fZGlmZmVyZW5jZSh5LCBkKToKICAgIHJldHVybiB5W2QgPT0gMV0ubWVhbigpIC0geVtkID09IDBdLm1lYW4oKQoKdHJ1ZV9hdGUgPSB0YXUubWVhbigpCnRydWVfYXR0X3NlbGVjdGVkID0gdGF1W2Rfc2VsZWN0ZWQgPT0gMV0ubWVhbigpCm5haXZlX3NlbGVjdGVkID0gbWVhbl9kaWZmZXJlbmNlKHlfc2VsZWN0ZWQsIGRfc2VsZWN0ZWQpCnJhbmRvbWl6ZWRfZGlmZmVyZW5jZSA9IG1lYW5fZGlmZmVyZW5jZSh5X3JhbmRvbSwgZF9yYW5kb20pCgpwcmludChmIlRydWUgQVRFOiAgICAgICAgICAgICAgICAgICAgICAgICB7dHJ1ZV9hdGU6Ni4yZn0iKQpwcmludChmIlRydWUgQVRUIGFtb25nIHNlbGVjdGVkIHN0dWRlbnRzOiB7dHJ1ZV9hdHRfc2VsZWN0ZWQ6Ni4yZn0iKQpwcmludChmIk5haXZlIG9ic2VydmF0aW9uYWwgZGlmZmVyZW5jZTogICB7bmFpdmVfc2VsZWN0ZWQ6Ni4yZn0iKQpwcmludChmIlJhbmRvbWl6ZWQgZGlmZmVyZW5jZTogICAgICAgICAgICB7cmFuZG9taXplZF9kaWZmZXJlbmNlOjYuMmZ9IikKcHJpbnQoZiJTZWxlY3Rpb24gY29tcG9uZW50IChhcHByb3guKTogICAge25haXZlX3NlbGVjdGVkIC0gdHJ1ZV9hdHRfc2VsZWN0ZWQ6Ni4yZn0iKQ== layout: vertical locale: zh packages: numpy title: Python:选择偏误如何改变教育回报 --- :: 读数时只问三件事: 1. 随机差异是否接近 ATE,而不是精确等于 ATE?有限样本仍有随机误差。 2. 观察差异为何高于 ATT?处理组即使不上大学,潜在收入也更高。 3. 随机化是否自动解决流失、干扰和处理版本?没有;它主要解决基线可交换性。 ## 5. 识别假设分三层 | 层次 | 问题 | 例子 | | -- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | | 设计 | 处理为何近似外生? | 随机抽签、阈值、分期实施 | | 测量 | [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是否对应研究概念? | “获得奖学金”不等于“完成学位” | | 推广 | 样本效应适用于谁? | 候补名单附近学生不代表全部申请者 | 常见条件包括一致性、无干扰(SUTVA 的一部分)、可交换性和正值性。它们不是一份机械清单:每个条件都要翻译成具体制度风险。 ## 6. 一页研究设计审计 在运行模型前填完: 1. **人群:** 谁可能进入研究,谁实际进入样本? 2. **处理:** 起始时间、强度和版本是什么? 3. **比较状态:** “未处理”到底意味着什么? 4. **结果:** 测量窗口是否在处理之后且对两组一致? 5. **参数:** ATE、ATT、ITT、LATE 还是 CATE? 6. **分配机制:** 谁在何时决定处理? 7. **反事实:** 哪些单位或时期承担比较角色? 8. **最大威胁:** 哪一条路径会让比较失真? 9. **证伪证据:** 哪个安慰剂或平衡检查最有信息? ## 7. 常见误区 - **“控制变量很多,所以是因果。”** 控制质量取决于因果位置,不取决于数量。 - **“随机实验没有偏误。”** 不遵从、流失、干扰和选择性报告仍会破坏解释。 - **“显著就是重要。”** 还需报告效应尺度、区间、基准风险和决策成本。 - **“平均有效,所以人人有效。”** ATE 可以掩盖零效应、负效应和资源约束。 ## 课堂任务 选择“就业培训是否提高一年后收入”: 1. 分别把处理定义为“获得培训名额”“实际参加”“完成课程”; 2. 为每个定义写出合适的 estimand; 3. 画出动机、报名、参加、就业和收入的 DAG; 4. 指出一个可诊断风险和一个只能依赖制度知识的风险。 ## 核心阅读 - Imbens & Rubin, [*Causal Inference for Statistics, Social, and Biomedical Sciences*](https://doi.org/10.1017/CBO9781139025751){rel=""nofollow""}。 - Hernán & Robins, [*Causal Inference: What If*](https://www.hsph.harvard.edu/miguel-hernan/causal-inference-book/){rel=""nofollow""}(开放教材)。 - Cunningham, [*Causal Inference: The Mixtape*](https://mixtape.scunning.com/){rel=""nofollow""}(开放教材)。 下一章:[线性回归与 OLS](https://www.pengjiaxin.com/../02-ols/)。 # 第二章:线性回归与 OLS []{#第二章线性回归与-ols} > **案例:** 工资对受教育年限的回归系数,是教育回报,还是教育与能力共同选择的结果? OLS 最擅长回答“在指定线性比较下, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 如何共同变化”。只有当研究设计支持时,这个线性投影才有因果含义。 ## 学习目标 你应能: 1. 区分线性投影、条件均值与因果效应; 2. 用遗漏变量偏误公式判断偏误方向; 3. 用 FWL 定理解释“控制变量”做了什么; 4. 识别混淆变量、精度变量、坏控制和碰撞点; 5. 报告稳健标准误、置信区间与经济量级。 ## 1. OLS 究竟估计什么 总体线性投影写为 [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0519em;vertical-align:-0.25em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[(]{.mopen}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是在所有线性函数中使均方误差最小的系数。它自动具有描述意义;要解释为处理效应,还需类似 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[d]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[d]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 的条件可交换性,以及一致性、重叠和正确的比较范围。 ## 2. 遗漏变量偏误:先判断方向 真实模型若为 [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[A]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ε]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 却遗漏 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,简单回归系数满足 [[[]{.katex-mathml}[[[]{.strut style="height:1.1489em;vertical-align:-0.1944em;"}[[[[[[[]{.pstrut style="height:3em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9544em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.1944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[Cov]{.mord.mathrm style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[A]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若能力 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[A]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 同时提高受教育年限和工资,则两项都为正,教育系数向上偏。这个公式不能证明真实世界偏误大小,但能迫使研究者写出方向逻辑。 ## 3. FWL:控制就是先剥离可预测部分 Frisch–Waugh–Lovell 定理给出三步: 1. 用控制变量 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 回归 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,取得残差 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 2. 用 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 回归 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,取得残差 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. 回归 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 所得斜率与完整多元回归中的 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 系数相同。因此 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 来自“控制变量相同的人之间仍剩下的 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 差异”。如果剩余差异很少,重叠差、标准误大,模型也会依赖外推。 ## 4. 哪些变量该控制 | 变量角色 | 是否通常控制 | 原因 | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---------- | | 同时影响 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的处理前混淆变量 | 是 | 关闭后门路径 | | 只预测 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的处理前变量 | 可选 | 常提高精度 | | 处理后的中介变量 | 否,若目标是总效应 | 会截断部分效应 | | 由 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord,mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与未观测因素共同造成的碰撞点 | 否 | 条件化会打开伪路径 | | 与研究人群几乎无重叠的变量组合 | 不能靠回归解决 | 系数来自函数形式外推 | 例如评估培训对工资的总效应时,培训后取得的证书可能是机制,不应作为普通“控制变量”放入主回归。 ## 5. 可运行案例:能力遗漏与 FWL 代码生成一个真实教育效应为 1.5 的世界。能力同时影响教育与工资;研究者先看朴素回归,再加入能力,并用 FWL 复核。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjAyKQpuID0gMzAwMAphYmlsaXR5ID0gcm5nLm5vcm1hbChzaXplPW4pCmZhbWlseSA9IHJuZy5ub3JtYWwoc2l6ZT1uKQplZHVjYXRpb24gPSAxMiArIDEuMiAqIGFiaWxpdHkgKyAwLjQgKiBmYW1pbHkgKyBybmcubm9ybWFsKHNjYWxlPTEuNSwgc2l6ZT1uKQp3YWdlID0gMTAgKyAxLjUgKiBlZHVjYXRpb24gKyA0LjAgKiBhYmlsaXR5ICsgcm5nLm5vcm1hbChzY2FsZT00ICsgMC4yICogZWR1Y2F0aW9uLCBzaXplPW4pCgpkZWYgb2xzX2hjMSh5LCB4KToKICAgIGJldGEgPSBucC5saW5hbGcubHN0c3EoeCwgeSwgcmNvbmQ9Tm9uZSlbMF0KICAgIHJlc2lkdWFsID0geSAtIHggQCBiZXRhCiAgICBicmVhZCA9IG5wLmxpbmFsZy5pbnYoeC5UIEAgeCkKICAgIHNjb3JlID0geCAqIHJlc2lkdWFsWzosIE5vbmVdCiAgICBtZWF0ID0gc2NvcmUuVCBAIHNjb3JlCiAgICBuX29icywgayA9IHguc2hhcGUKICAgIHZjb3YgPSAobl9vYnMgLyAobl9vYnMgLSBrKSkgKiBicmVhZCBAIG1lYXQgQCBicmVhZAogICAgcmV0dXJuIGJldGEsIG5wLnNxcnQobnAuZGlhZyh2Y292KSkKCnhfbmFpdmUgPSBucC5jb2x1bW5fc3RhY2soW25wLm9uZXMobiksIGVkdWNhdGlvbl0pCnhfZnVsbCA9IG5wLmNvbHVtbl9zdGFjayhbbnAub25lcyhuKSwgZWR1Y2F0aW9uLCBhYmlsaXR5XSkKYl9uYWl2ZSwgc2VfbmFpdmUgPSBvbHNfaGMxKHdhZ2UsIHhfbmFpdmUpCmJfZnVsbCwgc2VfZnVsbCA9IG9sc19oYzEod2FnZSwgeF9mdWxsKQoKIyBGV0zvvJrliIbliKvku47mlZnogrLlkozlt6XotYTkuK3liaXnprvluLjmlbDpobnkuI7og73lipsKY29udHJvbHMgPSBucC5jb2x1bW5fc3RhY2soW25wLm9uZXMobiksIGFiaWxpdHldKQplZHVjYXRpb25fcmVzaWQgPSBlZHVjYXRpb24gLSBjb250cm9scyBAIG5wLmxpbmFsZy5sc3RzcShjb250cm9scywgZWR1Y2F0aW9uLCByY29uZD1Ob25lKVswXQp3YWdlX3Jlc2lkID0gd2FnZSAtIGNvbnRyb2xzIEAgbnAubGluYWxnLmxzdHNxKGNvbnRyb2xzLCB3YWdlLCByY29uZD1Ob25lKVswXQpiX2Z3bCA9IChlZHVjYXRpb25fcmVzaWQgQCB3YWdlX3Jlc2lkKSAvIChlZHVjYXRpb25fcmVzaWQgQCBlZHVjYXRpb25fcmVzaWQpCgpwcmludChmIlRydWUgY2F1c2FsIGVmZmVjdDogICAgICAgICAgICAgICAgMS41MDAiKQpwcmludChmIk5haXZlIE9MUzogICAgICAgICAgICAgICAgICAgICAgICAge2JfbmFpdmVbMV06LjNmfSAoSEMxIFNFIHtzZV9uYWl2ZVsxXTouM2Z9KSIpCnByaW50KGYiT0xTIGNvbnRyb2xsaW5nIGZvciBhYmlsaXR5OiAgICAgICB7Yl9mdWxsWzFdOi4zZn0gKEhDMSBTRSB7c2VfZnVsbFsxXTouM2Z9KSIpCnByaW50KGYiRldMIHJlc2lkdWFsLW9uLXJlc2lkdWFsIGVzdGltYXRlOiB7Yl9md2w6LjNmfSIp layout: vertical locale: zh packages: numpy title: Python:遗漏变量偏误、稳健标准误与 FWL --- :: 这里“加入能力后接近真值”是因为模拟中能力被完整测量且模型设定正确。真实数据里的测量误差、未观测动机和学校选择仍可能存在。 ## 6. 推断与报告 最少报告: - 系数、稳健或聚类标准误、95% 置信区间; - [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}、 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的单位和变换; - 样本量、缺失值处理与控制变量选择依据; - 处理分配层级与误差相关层级; - 经济量级,例如增加一年教育对应工资百分比变化,而不只给 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 值。 异方差稳健标准误修正的是方差估计,不会修复遗漏变量、反向因果或测量误差。 ## 7. 快速诊断 1. **支持集:** 处理组和比较组在 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 上是否重叠? 2. **函数形式:** 连续变量是否需要非线性或分段关系? 3. **影响点:** 结论是否由少数极端观测驱动? 4. **标准误:** 处理是否按学校、企业或地区分配? 5. **控制顺序:** 控制是否在处理前测量? 6. **敏感性:** 未观测混淆需要多强才能解释结果? ## 常见误区 - 把高 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 当作因果可信度; - 逐步回归后只保留显著控制变量; - 控制处理后结果,仍把系数称为总效应; - 对数因变量的系数直接说成精确百分比,忽略近似条件; - 只换标准误,不重新审查识别设计。 ## 课堂任务 为“远程办公对生产率的影响”列出: 1. 两个处理前混淆变量; 2. 一个可能的坏控制; 3. 一个需要聚类的层级; 4. 一个能暴露函数形式问题的图; 5. 一句话说明 OLS 系数在什么假设下才是因果效应。 ## 核心阅读 - Wooldridge, [*Econometric Analysis of Cross Section and Panel Data*](https://mitpress.mit.edu/9780262232586/econometric-analysis-of-cross-section-and-panel-data/){rel=""nofollow""}。 - Angrist & Pischke, [*Mostly Harmless Econometrics*](https://www.mostlyharmlesseconometrics.com/){rel=""nofollow""}。 - Cinelli, Ferwerda & Hazlett (2020), [“Sensemakr: Sensitivity Analysis Tools for OLS”](https://doi.org/10.1111/rssa.12537){rel=""nofollow""}。 上一章:[因果推断导论](https://www.pengjiaxin.com/../01-intro/)|下一章:[工具变量法](https://www.pengjiaxin.com/../03-iv/)。 # 第三章:工具变量法 []{#第三章工具变量法} > **案例:** 随机发送培训补贴券会提高参训率,但不是所有收到券的人都会参加。我们能识别谁的培训效应? 工具变量(IV)不是“与处理相关的额外变量”,而是一种利用外生鼓励构造处理变动的研究设计。 ## 学习目标 你应能: 1. 画出工具 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 、处理 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与结果 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的因果路径; 2. 解释相关性、独立性、排除限制与单调性; 3. 用 Wald 比率计算 LATE; 4. 区分 ITT、第一阶段、LATE 和 ATE; 5. 识别弱工具、无效工具和“很多工具”的风险。 ## 1. 最小结构 [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 第一阶段 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 说明工具是否改变处理;约化式比较工具对结果的影响。单一二元工具下, [[[]{.katex-mathml}[[[]{.strut style="height:0.8206em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[W]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[a]{.mord.mathnormal.mtight}[l]{.mord.mathnormal.mtight style="margin-right:0.0197em;"}[d]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[]]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[]]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2408em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[first stage]{.mord}]{.mord.text}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[ITT on ]{.mord}]{.mord.text}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 分母接近零时,微小样本噪声会被放大;“第一阶段显著”也不等于工具有效。 ## 2. 四个核心条件 | 条件 | 在补贴券案例中的含义 | 不能仅靠数据证明的风险 | | ---- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | | 相关性 | 收到券确实提高参训概率 | 鼓励太弱 | | 独立性 | 发券近似随机或在 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 条件下外生 | 发券名单按未测需求选择 | | 排除限制 | 券只通过培训影响收入 | 券还提供现金、信息或心理激励 | | 单调性 | 不存在“收到券反而不参加、没收到却参加”的反抗者 | 不同鼓励版本引发相反反应 | 此外还需一致性、无干扰和清楚的处理版本。若一个人的券影响同事参训,简单 SUTVA 会失效。 :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgWlsi6ZqP5py66KGl6LS05Yi4IFoiXSAtLT4gRFsi5a6e6ZmF5Z+56K6tIEQiXQogIEQgLS0+IFlbIuaUtuWFpSBZIl0KICBVWyLliqjmnLogVSJdIC0tPiBECiAgVSAtLT4gWQ==" locale="zh"} 有效工具允许 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 同时影响 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,但要求 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 不通过其他路径进入 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 ## 3. LATE 对应哪些人 按 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[(]{.mopen}[1]{.mord}[))]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 划分: | 类型 | 未获鼓励 | 获得鼓励 | 是否贡献第一阶段 | | ----- | ---: | ---: | -------- | | 从不接受者 | 0 | 0 | 否 | | 顺从者 | 0 | 1 | 是 | | 总会接受者 | 1 | 1 | 否 | | 反抗者 | 1 | 0 | 单调性排除 | 在异质性效应下,Wald/2SLS 识别顺从者的平均效应。换一个工具,顺从者人群也会改变,因此估计值不同不一定互相矛盾。 ## 4. 可运行案例:随机鼓励与不完全遵从 模拟中工具完全随机、没有直接效应,也没有反抗者。总会参加者原本收入较高,所以“参训者对未参训者”的朴素比较有偏;Wald 比率应接近顺从者真实效应。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjAzKQpuID0gMTIwMDAKeiA9IHJuZy5iaW5vbWlhbCgxLCAwLjUsIHNpemU9bikKCiMgMD3ku47kuI3lj4LliqDvvIwxPemhuuS7juiAhe+8jDI95oC75Lya5Y+C5YqgCmtpbmQgPSBybmcuY2hvaWNlKFswLCAxLCAyXSwgc2l6ZT1uLCBwPVswLjI1LCAwLjYwLCAwLjE1XSkKZCA9ICgoa2luZCA9PSAyKSB8ICgoa2luZCA9PSAxKSAmICh6ID09IDEpKSkuYXN0eXBlKGludCkKCmJhc2VsaW5lX3NoaWZ0ID0gbnAuc2VsZWN0KFtraW5kID09IDAsIGtpbmQgPT0gMSwga2luZCA9PSAyXSwgWy0yLjAsIDAuMCwgNS4wXSkKdGF1ID0gbnAuc2VsZWN0KFtraW5kID09IDAsIGtpbmQgPT0gMSwga2luZCA9PSAyXSwgWzIuMCwgNC4wLCA3LjBdKQp5MCA9IDQwICsgYmFzZWxpbmVfc2hpZnQgKyBybmcubm9ybWFsKHNjYWxlPTYsIHNpemU9bikKeSA9IHkwICsgZCAqIHRhdSArIHJuZy5ub3JtYWwoc2NhbGU9Miwgc2l6ZT1uKQoKaXR0X3kgPSB5W3ogPT0gMV0ubWVhbigpIC0geVt6ID09IDBdLm1lYW4oKQpmaXJzdF9zdGFnZSA9IGRbeiA9PSAxXS5tZWFuKCkgLSBkW3ogPT0gMF0ubWVhbigpCndhbGQgPSBpdHRfeSAvIGZpcnN0X3N0YWdlCm5haXZlID0geVtkID09IDFdLm1lYW4oKSAtIHlbZCA9PSAwXS5tZWFuKCkKdHJ1ZV9sYXRlID0gdGF1W2tpbmQgPT0gMV0ubWVhbigpCgpwcmludChmIkZpcnN0IHN0YWdlOiAgICAgICAgICAgICAgICAgICAge2ZpcnN0X3N0YWdlOi4zZn0iKQpwcmludChmIklUVCBlZmZlY3Qgb24gb3V0Y29tZTogICAgICAgICAge2l0dF95Oi4zZn0iKQpwcmludChmIldhbGQgLyBJViBlc3RpbWF0ZTogICAgICAgICAgICAge3dhbGQ6LjNmfSIpCnByaW50KGYiVHJ1ZSBjb21wbGllciBlZmZlY3QgKExBVEUpOiAgICB7dHJ1ZV9sYXRlOi4zZn0iKQpwcmludChmIk5haXZlIHRyZWF0ZWQtY29udHJvbCBjb250cmFzdDoge25haXZlOi4zZn0iKQ== layout: vertical locale: zh packages: numpy title: Python:ITT、第一阶段与 LATE --- :: 把顺从者比例从 0.60 改为 0.05:Wald 估计会明显不稳定。这正是弱工具的有限样本直觉。 ## 5. 2SLS 不是两次普通回归的故事 2SLS 可理解为: 1. 用 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 提取 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 中由工具解释的部分; 2. 用这部分外生变动解释 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 3. 方差必须按 2SLS 公式一次性计算,不能直接采用第二步 OLS 的普通标准误。 多工具、多内生变量或聚类设计中,应使用成熟软件并报告弱识别稳健推断,而不是手工拼接两步回归。 ## 6. 诊断与报告 最低报告: - 工具的制度来源与时间顺序; - 第一阶段系数、方向、区间和样本; - 约化式与 2SLS/LATE; - 排除限制可能失败的具体路径; - 顺从者是谁、估计能推广到谁; - 与处理分配层级一致的聚类标准误; - 弱工具稳健区间或 Anderson–Rubin 类检验。 不要只报告“第一阶段 [[]{.katex-mathml}[[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[F]{.mord.mathnormal style="margin-right:0.1389em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[10]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ”。阈值是经验规则,且在异方差、聚类、多工具和多个内生变量下需要更合适的统计量。 ## 7. 常见误区 - 把“相关且显著”当作工具有效; - 在第二阶段加入处理后的变量,改变排除限制含义; - 把 LATE 写成所有人的 ATE; - 通过尝试许多工具后只保留结果最好的一个; - 第一阶段很弱时仍用常规正态近似区间。 ## 课堂任务 评估“到培训中心的距离”作为培训参与的工具: 1. 写出它为何相关; 2. 列出两条可能违反排除限制的路径; 3. 说明顺从者可能是谁; 4. 提出一个负向结果或安慰剂检验; 5. 判断换成“随机短信提醒”后 estimand 是否仍相同。 ## 核心阅读 - Angrist, Imbens & Rubin (1996), [“Identification of Causal Effects Using Instrumental Variables”](https://doi.org/10.1080/01621459.1996.10476902){rel=""nofollow""}。 - Imbens & Angrist (1994), [“Identification and Estimation of Local Average Treatment Effects”](https://doi.org/10.2307/2951620){rel=""nofollow""}。 - Andrews, Stock & Sun (2019), [“Weak Instruments in Instrumental Variables Regression”](https://doi.org/10.1146/annurev-economics-080218-025643){rel=""nofollow""}。 上一章:[线性回归与 OLS](https://www.pengjiaxin.com/../02-ols/)|下一章:[面板数据方法](https://www.pengjiaxin.com/../04-panel/)。 # 第四章:面板数据方法 []{#第四章面板数据方法} > **案例:** 采用数字管理系统的企业生产率更高,是系统有效,还是管理能力强的企业更早采用? 面板数据重复观察同一单位。它的优势不是“样本量更大”,而是能比较同一个体、企业或地区在不同时点的变化。 ## 学习目标 你应能: 1. 区分 pooled OLS、固定效应(FE)、随机效应(RE)与一阶差分; 2. 用组内变换解释 FE 消除了什么; 3. 判断哪些变量因没有组内变化而无法识别; 4. 识别时间变化混淆、动态面板偏误与序列相关; 5. 选择与单位和处理分配匹配的聚类层级。 ## 1. 基本模型与反事实 [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:单位不随时间变化的特征,如长期管理文化; - [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:所有单位共同经历的时间冲击,如宏观衰退; - [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:在控制这些成分后, [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的单位内变化与 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的变化关系。 双向固定效应依赖的关键条件可写成严格外生性: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 它比“当期无相关”更强:当期冲击不能反过来影响未来处理。企业因本期生产率骤降而下期购买软件时,这一条件值得怀疑。 ## 2. 组内变换做了什么 只考虑单位固定效应时,从每个变量中减去单位均值: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9701em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[(]{.mopen}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1944em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0701em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[γ]{.mord.mathnormal style="margin-right:0.0556em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[[]{.pstrut style="height:3em;"}[ε]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.1667em;"}]{style="top:-3em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 被消除。因此: - 从未改变处理状态的单位不直接识别 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; - 性别、出生地等时间不变变量的主效应与单位 FE 共线; - 测量误差在去均值后可能更严重; - 时间变化的需求、政策预期和共同趋势仍需处理。 ## 3. FE、RE 与一阶差分如何选 | 方法 | 使用的变化 | 核心风险 | 适合场景 | | ---------- | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | | pooled OLS | 单位间 + 单位内 | [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[α]{.mord,mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord,mathnormal,mtight}]{.sizing,reset-size6,size3,mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t,vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与处理相关 | 纯描述或可交换性可信 | | 单位 FE | 单位内 | 时间变化混淆 | 多期、单位特征稳定 | | 双向 FE | 单位内且净化共同时间冲击 | 异质趋势、交错处理 | 非吸收式处理或效应同质性合理 | | 一阶差分 | 相邻期变化 | 差分放大噪声、序列结构 | 较短面板或冲击以变化表达 | | RE | 单位间 + 单位内 | 要求随机效应与解释变量不相关 | 模型假设有强制度依据 | Hausman 检验不能替代研究设计:不拒绝 RE 只表示样本没有提供足够反证,不会证明零相关假设。 ## 4. 可运行案例:企业采用数字系统 高质量企业更早采用系统,因此 pooled OLS 把企业质量混入系统效应。双向去均值同时移除企业质量与共同年份冲击。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjA0KQpuX2Zpcm1zLCBuX3llYXJzID0gMjQwLCA4CnF1YWxpdHkgPSBybmcubm9ybWFsKHNpemU9bl9maXJtcykKYWRvcHRpb25feWVhciA9IG5wLmNsaXAoCiAgICBucC5yaW50KDUgLSAxLjMgKiBxdWFsaXR5ICsgcm5nLm5vcm1hbChzY2FsZT0xLjIsIHNpemU9bl9maXJtcykpLAogICAgMSwgbl95ZWFycwopLmFzdHlwZShpbnQpCgp5ZWFyID0gbnAuYXJhbmdlKG5feWVhcnMpCmQgPSAoeWVhcltOb25lLCA6XSA+PSBhZG9wdGlvbl95ZWFyWzosIE5vbmVdKS5hc3R5cGUoZmxvYXQpCmNvbW1vbl9zaG9jayA9IG5wLmFycmF5KFstMS4wLCAtMC4zLCAwLjIsIDAuOCwgMC40LCAxLjIsIDEuOCwgMi4xXSkKdHJ1ZV9lZmZlY3QgPSAyLjAKeSA9ICgKICAgIDIwCiAgICArIDQuMCAqIHF1YWxpdHlbOiwgTm9uZV0KICAgICsgY29tbW9uX3Nob2NrW05vbmUsIDpdCiAgICArIHRydWVfZWZmZWN0ICogZAogICAgKyBybmcubm9ybWFsKHNjYWxlPTEuOCwgc2l6ZT0obl9maXJtcywgbl95ZWFycykpCikKCiMg5b+955Wl5LyB5Lia5byC6LSo5oCn5ZKM5bm05Lu95Yay5Ye755qEIHBvb2xlZCBPTFMKeV92ZWMsIGRfdmVjID0geS5yYXZlbCgpLCBkLnJhdmVsKCkKeF9wb29sID0gbnAuY29sdW1uX3N0YWNrKFtucC5vbmVzKHlfdmVjLnNpemUpLCBkX3ZlY10pCnBvb2xlZCA9IG5wLmxpbmFsZy5sc3RzcSh4X3Bvb2wsIHlfdmVjLCByY29uZD1Ob25lKVswXVsxXQoKIyDlj4zlkJHljrvlnYflgLzvvJrlj5jph48gLSDljZXkvY3lnYflgLwgLSDml7bpl7TlnYflgLwgKyDmgLvlnYflgLwKeV90dyA9IHkgLSB5Lm1lYW4oYXhpcz0xLCBrZWVwZGltcz1UcnVlKSAtIHkubWVhbihheGlzPTAsIGtlZXBkaW1zPVRydWUpICsgeS5tZWFuKCkKZF90dyA9IGQgLSBkLm1lYW4oYXhpcz0xLCBrZWVwZGltcz1UcnVlKSAtIGQubWVhbihheGlzPTAsIGtlZXBkaW1zPVRydWUpICsgZC5tZWFuKCkKdHdmZSA9IChkX3R3LnJhdmVsKCkgQCB5X3R3LnJhdmVsKCkpIC8gKGRfdHcucmF2ZWwoKSBAIGRfdHcucmF2ZWwoKSkKCnN3aXRjaGVycyA9ICgoZC5zdW0oYXhpcz0xKSA+IDApICYgKGQuc3VtKGF4aXM9MSkgPCBuX3llYXJzKSkuc3VtKCkKcHJpbnQoZiJUcnVlIHRyZWF0bWVudCBlZmZlY3Q6ICAgICAgIHt0cnVlX2VmZmVjdDouM2Z9IikKcHJpbnQoZiJQb29sZWQgT0xTIGVzdGltYXRlOiAgICAgICAgIHtwb29sZWQ6LjNmfSIpCnByaW50KGYiVHdvLXdheSBGRSBlc3RpbWF0ZTogICAgICAgICB7dHdmZTouM2Z9IikKcHJpbnQoZiJGaXJtcyB3aXRoIHdpdGhpbiB2YXJpYXRpb246IHtzd2l0Y2hlcnN9IC8ge25fZmlybXN9Iik= layout: vertical locale: zh packages: numpy title: Python:pooled OLS 与双向固定效应 --- :: FE 接近真值,是因为模拟没有遗漏的时间变化混淆。若高质量企业同时在采用当年更换管理团队,FE 仍会把两者混在一起。 ## 5. 推断:为什么常按单位聚类 同一企业的误差通常跨期相关。把每个“企业—年份”当独立观测会夸大有效样本量。一般原则是: 1. 先问处理在哪个层级分配; 2. 再问误差在哪个层级相关; 3. 聚类数很少时使用小样本修正、随机化推断或 wild cluster bootstrap; 4. 双向相关时考虑多维聚类。 聚类标准误只修正推断,不会修复共同冲击、反向因果或处理前趋势。 ## 6. 动态面板与滞后结果 若模型含 [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[ρ]{.mord.mathnormal}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[,]{.mpunct.mtight}[t]{.mord.mathnormal.mtight}[−]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 去均值后的滞后结果与去均值误差机械相关,短面板中产生 Nickell 偏误。增加单位数不能消除固定 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 下的偏误;需根据数据结构考虑差分 GMM、系统 GMM 或更透明的动态设计,并审查工具膨胀。 ## 7. 诊断清单 - 每个单位有多少期?是否为不平衡面板? - 处理有多少单位内变化?变化是否集中在少数单位? - 处理前结果是否预测未来处理? - 是否存在单位特定趋势或同步政策? - 流失是否与过去结果、处理相关? - 标准误是否按真实分配层级聚类? - 吸收式且交错采用的处理是否应转入现代 DID 估计? ## 课堂任务 研究“远程办公制度对员工离职率”的企业面板: 1. 写出一个时间不变混淆和一个时间变化混淆; 2. 解释员工 FE 与企业 FE 分别比较什么; 3. 判断员工跳槽造成的样本构成变化; 4. 设计一个处理前预测检验; 5. 说明聚类应放在哪个层级。 ## 核心阅读 - Wooldridge, [*Econometric Analysis of Cross Section and Panel Data*](https://mitpress.mit.edu/9780262232586/econometric-analysis-of-cross-section-and-panel-data/){rel=""nofollow""}。 - Arellano (1987), [“Computing Robust Standard Errors for Within-Groups Estimators”](https://doi.org/10.1111/j.1468-0262.1987.tb00232.x){rel=""nofollow""}。 - Petersen (2009), [“Estimating Standard Errors in Finance Panel Data Sets”](https://doi.org/10.1093/rfs/hhn053){rel=""nofollow""}。 上一章:[工具变量法](https://www.pengjiaxin.com/../03-iv/)|下一章:[双重差分法](https://www.pengjiaxin.com/../05-did/)。 # 第五章:双重差分法 []{#第五章双重差分法} > **案例:** 一个城市在 2025 年推出低排放区,污染下降了;若其他城市同期也下降,政策净效应是多少? 双重差分(DID)用“处理组相对比较组的变化”构造未处理反事实。它的可信度来自趋势比较,而不是在回归里同时放入组固定效应和时间固定效应。 ## 学习目标 你应能: 1. 手算二组二期 DID; 2. 用潜在结果表述平行趋势; 3. 区分水平差异、趋势差异与政策效应; 4. 正确阅读事件研究中的处理前与处理后系数; 5. 识别交错实施下传统 TWFE 的不当比较。 ## 1. 二组二期的最小设计 [[[]{.katex-mathml}[[[]{.strut style="height:0.8206em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[I]{.mord.mathnormal.mtight style="margin-right:0.0785em;"}[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1062em;vertical-align:-0.2861em;"}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[,]{.mpunct.mtight}[p]{.mord.mathnormal.mtight}[os]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1062em;vertical-align:-0.2861em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[,]{.mpunct.mtight}[p]{.mord.mathnormal.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1062em;vertical-align:-0.2861em;"}[(]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}[,]{.mpunct.mtight}[p]{.mord.mathnormal.mtight}[os]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1062em;vertical-align:-0.2861em;"}[[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[[ˉ]{.mord}]{.accent-body style="left:-0.25em;"}]{style="top:-3.2523em;"}]{.vlist style="height:0.8201em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[C]{.mord.mathnormal.mtight style="margin-right:0.0715em;"}[,]{.mpunct.mtight}[p]{.mord.mathnormal.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 如果处理组污染下降 8,比较组同期下降 3,DID 为 [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。处理组原本污染更高并不自动破坏 DID;关键是没有政策时,两组的**变化**是否可比。 回归形式: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[r]{.mord.mathnormal style="margin-right:0.0278em;"}[e]{.mord.mathnormal}[a]{.mord.mathnormal}[t]{.mord.mathnormal}[e]{.mord.mathnormal}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[×]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[os]{.mord.mathnormal}[[t]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 在最简单的二组二期情形,交互项系数等于手算 DID。 ## 2. 平行趋势究竟假设什么 [[[]{.katex-mathml}[[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[os]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[os]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[p]{.mord.mathnormal.mtight}[r]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[e]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[G]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[C]{.mord.mathnormal style="margin-right:0.0715em;"}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 它关于处理组**未处理潜在结果**,而这一结果在政策后不可观察。处理前趋势图只能发现明显不一致,不能证明政策后反事实平行。 支持平行趋势的证据应组合: - 政策前多期趋势与制度叙述; - 比较组没有受到同一政策或溢出; - 政策时点不是由短期结果冲击触发; - 样本构成和测量规则没有同时改变; - 负向结果、伪政策时点与替代比较组结论一致。 ## 3. 可运行案例:相同水平不重要,不同趋势很重要 代码构造两种世界。两组起点不同,但第一种世界的未处理趋势平行;第二种世界中处理组本来就改善得更慢。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjA1KQpuX3Blcl9ncm91cCwgcGVyaW9kcyA9IDE4MDAsIDYKdGltZSA9IG5wLmFyYW5nZShwZXJpb2RzKQpwb3N0ID0gdGltZSA+PSAzCnRydWVfZWZmZWN0ID0gLTIuMAoKZGVmIG1ha2VfcGFuZWwoZGlmZmVyZW50aWFsX3RyZW5kKToKICAgIGdyb3VwID0gbnAucmVwZWF0KFswLCAxXSwgbl9wZXJfZ3JvdXApCiAgICB1bml0X2xldmVsID0gcm5nLm5vcm1hbChzY2FsZT0yLjUsIHNpemU9Z3JvdXAuc2l6ZSkKICAgIG91dGNvbWVzID0gbnAuZW1wdHkoKGdyb3VwLnNpemUsIHBlcmlvZHMpKQogICAgZm9yIHQgaW4gdGltZToKICAgICAgICB1bnRyZWF0ZWQgPSAoCiAgICAgICAgICAgIDEyCiAgICAgICAgICAgICsgMyAqIGdyb3VwCiAgICAgICAgICAgICsgMC44ICogdAogICAgICAgICAgICArIGRpZmZlcmVudGlhbF90cmVuZCAqIGdyb3VwICogdAogICAgICAgICAgICArIHVuaXRfbGV2ZWwKICAgICAgICAgICAgKyBybmcubm9ybWFsKHNjYWxlPTEuNSwgc2l6ZT1ncm91cC5zaXplKQogICAgICAgICkKICAgICAgICBvdXRjb21lc1s6LCB0XSA9IHVudHJlYXRlZCArIHRydWVfZWZmZWN0ICogZ3JvdXAgKiBwb3N0W3RdCiAgICByZXR1cm4gZ3JvdXAsIG91dGNvbWVzCgpkZWYgZGlkX2Zyb21fdHdvX3BlcmlvZHMoZ3JvdXAsIHksIHByZV90PTIsIHBvc3RfdD01KToKICAgIHRyZWF0ZWRfY2hhbmdlID0geVtncm91cCA9PSAxLCBwb3N0X3RdLm1lYW4oKSAtIHlbZ3JvdXAgPT0gMSwgcHJlX3RdLm1lYW4oKQogICAgY29udHJvbF9jaGFuZ2UgPSB5W2dyb3VwID09IDAsIHBvc3RfdF0ubWVhbigpIC0geVtncm91cCA9PSAwLCBwcmVfdF0ubWVhbigpCiAgICByZXR1cm4gdHJlYXRlZF9jaGFuZ2UgLSBjb250cm9sX2NoYW5nZQoKZzEsIHlfcGFyYWxsZWwgPSBtYWtlX3BhbmVsKGRpZmZlcmVudGlhbF90cmVuZD0wLjApCmcyLCB5X3Zpb2xhdGlvbiA9IG1ha2VfcGFuZWwoZGlmZmVyZW50aWFsX3RyZW5kPTAuNSkKCnByZV9nYXBfY2hhbmdlX3BhcmFsbGVsID0gKAogICAgKHlfcGFyYWxsZWxbZzEgPT0gMSwgMl0ubWVhbigpIC0geV9wYXJhbGxlbFtnMSA9PSAwLCAyXS5tZWFuKCkpCiAgICAtICh5X3BhcmFsbGVsW2cxID09IDEsIDBdLm1lYW4oKSAtIHlfcGFyYWxsZWxbZzEgPT0gMCwgMF0ubWVhbigpKQopCnByZV9nYXBfY2hhbmdlX3Zpb2xhdGlvbiA9ICgKICAgICh5X3Zpb2xhdGlvbltnMiA9PSAxLCAyXS5tZWFuKCkgLSB5X3Zpb2xhdGlvbltnMiA9PSAwLCAyXS5tZWFuKCkpCiAgICAtICh5X3Zpb2xhdGlvbltnMiA9PSAxLCAwXS5tZWFuKCkgLSB5X3Zpb2xhdGlvbltnMiA9PSAwLCAwXS5tZWFuKCkpCikKCnByaW50KGYiVHJ1ZSBwb2xpY3kgZWZmZWN0OiAgICAgICAgICAgICAgICAgICAge3RydWVfZWZmZWN0Oi4zZn0iKQpwcmludChmIkRJRCB3aXRoIHBhcmFsbGVsIHVudHJlYXRlZCB0cmVuZHM6ICAgIHtkaWRfZnJvbV90d29fcGVyaW9kcyhnMSwgeV9wYXJhbGxlbCk6LjNmfSIpCnByaW50KGYiRElEIHdpdGggZGlmZmVyZW50aWFsIHRyZW5kOiAgICAgICAgICAge2RpZF9mcm9tX3R3b19wZXJpb2RzKGcyLCB5X3Zpb2xhdGlvbik6LjNmfSIpCnByaW50KGYiUHJlLXBlcmlvZCBnYXAgY2hhbmdlIChwYXJhbGxlbCk6ICAgICAgIHtwcmVfZ2FwX2NoYW5nZV9wYXJhbGxlbDouM2Z9IikKcHJpbnQoZiJQcmUtcGVyaW9kIGdhcCBjaGFuZ2UgKHZpb2xhdGlvbik6ICAgICAge3ByZV9nYXBfY2hhbmdlX3Zpb2xhdGlvbjouM2Z9Iik= layout: vertical locale: zh packages: numpy title: Python:平行趋势与趋势违背 --- :: 在违背情形中,DID 同时包含政策效应与原有趋势差。加入更多观测不会消除这种设计偏误。 ## 4. 事件研究怎样读 设首次处理时间为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,事件时间 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6984em;vertical-align:-0.0833em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} : [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[α]{.mord.mathnormal style="margin-right:0.0037em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0037em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.4882em;vertical-align:-1.4382em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[[[[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[]{.mrel.mtight}]{.mord.mtight}]{.inner}[]{.fix}]{.rlap.mtight}]{.thinbox.mtight}]{.mord.vbox.mtight}]{.mrel.mtight}[]{.mspace.nobreak.mtight}[=]{.mrel.mtight}]{.mrel.mtight}[−]{.mord.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8479em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4382em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[1]{.mord.mathbf}[{]{.mopen}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[G]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[}]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - [[]{.katex-mathml}[[[]{.strut style="height:0.7335em;vertical-align:-0.0391em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:处理前系数,用于暴露预趋势、预期效应或时点错误; - [[]{.katex-mathml}[[[]{.strut style="height:0.8304em;vertical-align:-0.136em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}:相对基准期的动态效应; - 省略期通常为 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[k]{.mord.mathnormal style="margin-right:0.0315em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[−]{.mord}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,所有系数都相对它解释。 “处理前系数不显著”不等于平行趋势成立:检验可能低功效,且研究者可能在看图后调整窗口。 ## 5. 交错实施为何需要现代估计 若不同组在不同时间接受永久处理,传统 TWFE 可能让已处理组充当后来处理组的比较组。在处理效应随组别或时间异质时,系数可能是难解释甚至带负权重的组合。 更清楚的流程是: 1. 定义组别—时间效应 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 2. 只使用尚未处理或从未处理的有效比较组; 3. 先估计各 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,再按明确权重聚合; 4. 分别展示日历时间、事件时间和组别异质性。 2024 年 *Review of Economic Studies* 的 [Borusyak、Jaravel 与 Spiess](https://academic.oup.com/restud/article/91/6/3253/7601390){rel=""nofollow""} 进一步系统化了交错事件研究的稳健且高效估计。 ## 6. 诊断与报告 - 处理何时宣布、何时开始、何时真正执行? - 比较组在每一期是谁?是否已受处理? - 政策是否引发迁移、提前反应或跨地区溢出? - 结果定义、采样频率和样本构成是否同期变化? - 标准误是否按政策分配层级聚类? - 事件研究是否给出同时置信带或多重检验说明? - 聚合权重是否对应政策问题? ## 常见误区 - 把水平不相等误判为 DID 不可用; - 用一个不显著的处理前联合检验“证明”平行趋势; - 控制政策影响的中介变量; - 交错实施仍只报告一个 TWFE 系数; - 把处理前趋势校正当作无假设修复。 ## 课堂任务 为最低工资政策设计 DID: 1. 定义处理组、比较组、宣布期与执行期; 2. 写出未处理潜在结果下的平行趋势; 3. 指出一个可能的跨地区溢出; 4. 设计一个不应受最低工资影响的负向结果; 5. 说明分期上调时如何构造 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[A]{.mord.mathnormal}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[T]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 ## 核心阅读 - Callaway & Sant’Anna (2021), [“Difference-in-Differences with Multiple Time Periods”](https://doi.org/10.1016/j.jeconom.2020.12.001){rel=""nofollow""}。 - Sun & Abraham (2021), [“Estimating Dynamic Treatment Effects in Event Studies with Heterogeneous Treatment Effects”](https://doi.org/10.1016/j.jeconom.2020.09.006){rel=""nofollow""}。 - Borusyak, Jaravel & Spiess (2024), [“Revisiting Event-Study Designs”](https://doi.org/10.1093/restud/rdae007){rel=""nofollow""}。 上一章:[面板数据方法](https://www.pengjiaxin.com/../04-panel/)|下一章:[断点回归设计](https://www.pengjiaxin.com/../06-rdd/)。 # 第六章:断点回归设计 []{#第六章断点回归设计} > **案例:** 考试成绩达到 80 分即可获得奖学金。阈值两侧学生的后续入学率跳跃,能否解释为奖学金效应? 断点回归(RDD)依赖一个简单直觉:若其他决定因素在阈值处平滑变化,紧邻阈值两侧的结果跳跃可归因于处理资格的跳跃。 ## 学习目标 你应能: 1. 区分运行变量、阈值、资格与实际处理; 2. 写出 sharp RDD 的局部目标参数; 3. 用局部线性回归解释带宽的偏差—方差权衡; 4. 诊断排序、操纵、协变量不连续与结果测量变化; 5. 区分 sharp、fuzzy、kink 与 donut RDD。 ## 1. 识别对象是阈值处的局部效应 令运行变量为 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,阈值为 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,sharp 设计中 [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord.mathbf}[{]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若两个潜在结果的条件均值在 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[c]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 处连续,则 [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[R]{.mord.mathnormal.mtight style="margin-right:0.0077em;"}[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}[D]{.mord.mathnormal.mtight style="margin-right:0.0278em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.6382em;vertical-align:-0.8882em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[↓]{.mrel.mtight}[c]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3479em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[lim]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8882em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.6382em;vertical-align:-0.8882em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}[↑]{.mrel.mtight}[c]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3479em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[lim]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6944em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8882em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这估计阈值附近单位的效应。它不能自动推广到成绩 50 分或 100 分的学生。 ## 2. 局部线性模型 在带宽 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 内常估计: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[∣]{.mord}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[∣]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[h]{.mord.mathnormal}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 两侧允许不同斜率; [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是阈值处截距跳跃。实践中常使用三角核,使距离阈值更近的观测权重更高。 | 带宽 | 优点 | 风险 | | -- | --------- | ------------- | | 小 | 更接近局部随机比较 | 样本少、方差大 | | 大 | 精度更高 | 函数形式偏误、混入远端单位 | 应报告数据驱动带宽,同时展示合理替代带宽,而不是挑选最显著者。 ## 3. 可运行案例:奖学金阈值 模拟中未处理结果随成绩平滑变化,奖学金在 80 分处产生真实 5 分提升。代码用三角核局部线性回归比较不同带宽。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjA2KQpuID0gOTAwMAp4ID0gcm5nLnVuaWZvcm0oLTIwLCAyMCwgc2l6ZT1uKSAgIyDlt7LlsIbpmIjlgLwgODAg5Lit5b+D5YyW5Li6IDAKZCA9ICh4ID49IDApLmFzdHlwZShmbG9hdCkKdHJ1ZV9qdW1wID0gNS4wCnkwID0gNzAgKyAwLjQ1ICogeCArIDAuMDE4ICogeCoqMiArIDAuMDAyICogeCoqMyArIHJuZy5ub3JtYWwoc2NhbGU9NC4wLCBzaXplPW4pCnkgPSB5MCArIHRydWVfanVtcCAqIGQKCmRlZiBsb2NhbF9saW5lYXJfcmRkKGJhbmR3aWR0aCk6CiAgICBrZWVwID0gbnAuYWJzKHgpIDw9IGJhbmR3aWR0aAogICAgeGssIGRrLCB5ayA9IHhba2VlcF0sIGRba2VlcF0sIHlba2VlcF0KICAgIHdlaWdodHMgPSAxIC0gbnAuYWJzKHhrKSAvIGJhbmR3aWR0aAogICAgZGVzaWduID0gbnAuY29sdW1uX3N0YWNrKFtucC5vbmVzKHhrLnNpemUpLCB4aywgZGssIGRrICogeGtdKQogICAgcm9vdF93ID0gbnAuc3FydCh3ZWlnaHRzKQogICAgYmV0YSA9IG5wLmxpbmFsZy5sc3RzcShkZXNpZ24gKiByb290X3dbOiwgTm9uZV0sIHlrICogcm9vdF93LCByY29uZD1Ob25lKVswXQogICAgcmV0dXJuIGJldGFbMl0sIHhrLnNpemUKCnByaW50KGYiVHJ1ZSBkaXNjb250aW51aXR5OiB7dHJ1ZV9qdW1wOi4yZn0iKQpmb3IgaCBpbiBbMi41LCA1LjAsIDEwLjAsIDE4LjBdOgogICAgZXN0aW1hdGUsIHVzZWQgPSBsb2NhbF9saW5lYXJfcmRkKGgpCiAgICBwcmludChmIkJhbmR3aWR0aCB7aDo0LjFmfTogZXN0aW1hdGU9e2VzdGltYXRlOjYuM2Z9LCBvYnNlcnZhdGlvbnM9e3VzZWR9Iik= layout: vertical locale: zh packages: numpy title: Python:局部线性 RDD 与带宽敏感性 --- :: 带宽变化时估计会波动;这不是要求所有结果完全相同,而是检查结论是否由一个任意窗口驱动。 ## 4. 设计有效性的证据链 ### 运行变量能否被精确操纵 若学生知道评分规则并能把 79.9 调整到 80.0,阈值两侧可能不再可比。应结合: - 运行变量密度与堆积; - 制度上谁能看到、修改或复核分数; - 阈值附近个体特征是否跳跃; - 报名、缺失或样本进入是否在阈值处改变。 密度检验不显著不能证明无操纵;行政流程证据同样重要。 ### 其他政策是否共享阈值 若 80 分同时决定奖学金、宿舍和导师资格,结果跳跃是政策束的效应,不能单独归因于现金奖学金。 ### 结果是否按同一规则测量 阈值以上学生若被更频繁追踪,结果缺失本身也可能跳跃。 ## 5. Sharp、fuzzy 与其他设计 | 设计 | 阈值改变什么 | 目标 | | --------------- | ---------- | ------------------ | | sharp RDD | 处理从 0 跳到 1 | 阈值处局部处理效应 | | fuzzy RDD | 处理概率跳跃 | 阈值附近顺从者 LATE | | regression kink | 处理强度斜率改变 | 阈值处边际效应 | | donut RDD | 删除最靠近阈值观测 | 对 heaping/操纵的敏感性分析 | fuzzy RDD 的 Wald 比率是“结果跳跃 / 处理概率跳跃”,因此继承 IV 的排除限制、单调性与弱第一阶段问题。 ## 6. 推断与报告 最低报告: - 阈值规则、运行变量精度与是否可操纵; - 原始散点或分箱图,但估计不依赖视觉拟合; - 主带宽、核函数、局部多项式阶数和偏差校正区间; - 两侧样本量与有效观测; - 密度、处理前协变量和伪阈值检查; - 局部 estimand 与外推边界。 不要使用高阶全局多项式跨越整个运行变量范围;它容易在边界产生不稳定形状和虚假跳跃。 ## 课堂任务 评估“年龄满 65 岁获得医疗福利”: 1. 明确运行变量的时间单位; 2. 列出同时在 65 岁发生的其他制度变化; 3. 设计一个处理前协变量连续性检查; 4. 说明为何 64 岁 11 个月与 65 岁 1 个月仍可能受季节影响; 5. 判断估计能否推广到 40 岁人群。 ## 核心阅读 - Cattaneo, Idrobo & Titiunik, [*A Practical Introduction to Regression Discontinuity Designs*](https://doi.org/10.1017/9781108684606){rel=""nofollow""}。 - Cattaneo, Jansson & Ma (2020), [“Simple Local Polynomial Density Estimators”](https://doi.org/10.1080/01621459.2019.1635480){rel=""nofollow""}。 - Gelman & Imbens (2019), [“Why High-Order Polynomials Should Not Be Used in Regression Discontinuity Designs”](https://doi.org/10.1080/07350015.2017.1366909){rel=""nofollow""}。 上一章:[双重差分法](https://www.pengjiaxin.com/../05-did/)|下一章:[匹配与倾向得分](https://www.pengjiaxin.com/../07-matching/)。 # 第七章:匹配、倾向得分与加权 []{#第七章匹配倾向得分与加权} > **案例:** 主动报名就业培训的人更有动机,也可能更缺乏工作机会。怎样只用处理前信息构造可比人群? 匹配和加权不能把观察研究变成随机实验。它们只在“所有重要混淆都已被测量”时,重新组织已有样本中的比较。 ## 学习目标 你应能: 1. 写出条件无混杂与重叠假设; 2. 区分 ATE、ATT 对应的匹配与权重; 3. 把倾向得分当作设计工具而非结果预测器; 4. 用标准化差异、权重分布和有效样本量诊断设计; 5. 解释修剪、截尾和双重稳健估计的目标变化。 ## 1. 两个不可缺少的条件 ### 条件无混杂 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[))]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[⊥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 给定处理前协变量 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 后,处理分配与潜在结果独立。这个条件无法由观察数据证明;变量选择必须来自制度知识和因果图。 ### 重叠 [[[]{.katex-mathml}[[[]{.strut style="height:0.6835em;vertical-align:-0.0391em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 每类 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 人群都要有接受与未接受处理的可能。若某些高风险者必然接受培训,就没有同类未培训者可构造反事实。 ## 2. 倾向得分的角色 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若无混杂基于 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 成立,则在适当条件下基于 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 调整也能平衡 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。但: - 预测处理越准,不一定因果设计越好; - AUC 很高可能意味着两组几乎不重叠; - 结果变量不应参与设计阶段的倾向得分调参; - 处理后变量不能因“预测力强”就放入模型。 ## 3. estimand 决定权重 | 目标 | 处理组权重 | 对照组权重 | 解释 | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | ----------- | | ATE | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1/]{.mord}[\[]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 重建总体 | | ATT | 1 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[/]{.mord}[\[]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 让对照组像已处理者 | | overlap effect | [[]{.katex-mathml}[[[]{.strut style="height:0.7278em;vertical-align:-0.0833em;"}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 强调最有共同支持的人群 | 极端倾向得分会产生大权重。修剪或截尾能降低方差,却也改变目标人群;必须报告规则和新 estimand。 ## 4. 可运行案例:自愿培训与 IPW 模拟中报名同时受技能与就业障碍影响。两者都被观察,且真实倾向得分已知,因此 IPW 可以恢复 ATE;代码同时展示加权前后的协变量平衡与有效样本量。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjA3KQpuID0gNzAwMApza2lsbCA9IHJuZy5ub3JtYWwoc2l6ZT1uKQpiYXJyaWVyID0gcm5nLm5vcm1hbChzaXplPW4pCgpsb2dpdF9wID0gLTAuMyArIDAuOSAqIGJhcnJpZXIgLSAwLjYgKiBza2lsbApwID0gMSAvICgxICsgbnAuZXhwKC1sb2dpdF9wKSkKZCA9IHJuZy5iaW5vbWlhbCgxLCBwKQoKdHJ1ZV9lZmZlY3QgPSAzLjAKeTAgPSAyMCArIDIuNSAqIHNraWxsIC0gMi4wICogYmFycmllciArIDAuNyAqIHNraWxsICogYmFycmllcgp5ID0geTAgKyB0cnVlX2VmZmVjdCAqIGQgKyBybmcubm9ybWFsKHNjYWxlPTMsIHNpemU9bikKCm5haXZlID0geVtkID09IDFdLm1lYW4oKSAtIHlbZCA9PSAwXS5tZWFuKCkKaXB3X2F0ZSA9ICgKICAgIG5wLnN1bShkICogeSAvIHApIC8gbnAuc3VtKGQgLyBwKQogICAgLSBucC5zdW0oKDEgLSBkKSAqIHkgLyAoMSAtIHApKSAvIG5wLnN1bSgoMSAtIGQpIC8gKDEgLSBwKSkKKQoKd2VpZ2h0cyA9IGQgLyBwICsgKDEgLSBkKSAvICgxIC0gcCkKZXNzID0gd2VpZ2h0cy5zdW0oKSAqKiAyIC8gbnAuc3VtKHdlaWdodHMgKiogMikKCmRlZiBzdGFuZGFyZGl6ZWRfZGlmZmVyZW5jZSh4LCBncm91cCwgdz1Ob25lKToKICAgIGlmIHcgaXMgTm9uZToKICAgICAgICBtMSwgbTAgPSB4W2dyb3VwID09IDFdLm1lYW4oKSwgeFtncm91cCA9PSAwXS5tZWFuKCkKICAgICAgICB2MSwgdjAgPSB4W2dyb3VwID09IDFdLnZhcigpLCB4W2dyb3VwID09IDBdLnZhcigpCiAgICBlbHNlOgogICAgICAgIGRlZiB3bShtYXNrKToKICAgICAgICAgICAgd3cgPSB3W21hc2tdCiAgICAgICAgICAgIG1lYW4gPSBucC5zdW0od3cgKiB4W21hc2tdKSAvIG5wLnN1bSh3dykKICAgICAgICAgICAgdmFyID0gbnAuc3VtKHd3ICogKHhbbWFza10gLSBtZWFuKSAqKiAyKSAvIG5wLnN1bSh3dykKICAgICAgICAgICAgcmV0dXJuIG1lYW4sIHZhcgogICAgICAgIG0xLCB2MSA9IHdtKGdyb3VwID09IDEpCiAgICAgICAgbTAsIHYwID0gd20oZ3JvdXAgPT0gMCkKICAgIHJldHVybiAobTEgLSBtMCkgLyBucC5zcXJ0KCh2MSArIHYwKSAvIDIpCgpwcmludChmIlRydWUgQVRFOiAgICAgICAgICAgICAgICAgICAgICAgICB7dHJ1ZV9lZmZlY3Q6LjNmfSIpCnByaW50KGYiTmFpdmUgdHJlYXRlZC1jb250cm9sIGNvbnRyYXN0OiAgIHtuYWl2ZTouM2Z9IikKcHJpbnQoZiJOb3JtYWxpemVkIElQVyBlc3RpbWF0ZTogICAgICAgICAge2lwd19hdGU6LjNmfSIpCnByaW50KGYiU2tpbGwgU01EIGJlZm9yZSAvIGFmdGVyOiAgICAgICAgIHtzdGFuZGFyZGl6ZWRfZGlmZmVyZW5jZShza2lsbCwgZCk6LjNmfSAvIHtzdGFuZGFyZGl6ZWRfZGlmZmVyZW5jZShza2lsbCwgZCwgd2VpZ2h0cyk6LjNmfSIpCnByaW50KGYiQmFycmllciBTTUQgYmVmb3JlIC8gYWZ0ZXI6ICAgICAgIHtzdGFuZGFyZGl6ZWRfZGlmZmVyZW5jZShiYXJyaWVyLCBkKTouM2Z9IC8ge3N0YW5kYXJkaXplZF9kaWZmZXJlbmNlKGJhcnJpZXIsIGQsIHdlaWdodHMpOi4zZn0iKQpwcmludChmIkVmZmVjdGl2ZSBzYW1wbGUgc2l6ZTogICAgICAgICAgICB7ZXNzOi4wZn0gb2Yge259IikKcHJpbnQoZiJMYXJnZXN0IGFuYWx5c2lzIHdlaWdodDogICAgICAgICAge3dlaWdodHMubWF4KCk6LjFmfSIp layout: vertical locale: zh packages: numpy title: Python:IPW、平衡与有效样本量 --- :: 这里使用“真实”倾向得分是为了隔离加权机制;代码按处理状态分别归一化权重(Hájek 形式),以降低有限样本中极端权重造成的波动。实际研究必须估计 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,并把模型选择、缺失值处理和权重诊断纳入不确定性审计。 ## 5. 匹配不是按显著性筛变量 常见设计: - 最近邻匹配:直观,但结果依赖距离、替换与匹配顺序; - 卡尺匹配:拒绝距离过远的配对,会改变目标样本; - 精确/粗化精确匹配:保证关键变量分层内可比; - Mahalanobis 距离:适合少量连续协变量; - 倾向得分匹配:降维方便,但同一得分下单个协变量仍可能失衡。 匹配后必须重新检查每个关键协变量的标准化差异和分布,而不是只报告倾向得分均值。 ## 6. 双重稳健的准确含义 增广 IPW 同时使用倾向得分模型 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与结果模型 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[d]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。在常见条件下,只要其中一个 nuisance model 正确设定,估计仍可一致;它不意味着: - 两个错误模型会互相修复; - 未观测混淆不再重要; - 重叠不足可以被算法解决。 交叉拟合可降低灵活机器学习造成的过拟合偏误,详见[第十一章](https://www.pengjiaxin.com/../11-ml-causal/)。 ## 7. 诊断与报告 1. 协变量是否全部在处理前测量? 2. 变量选择是否由 DAG 与制度机制决定? 3. 倾向得分分布是否有共同支持? 4. 每个关键变量的加权后 SMD 是否接近零? 5. 最大权重、权重分位数与有效样本量是多少? 6. 修剪了谁,目标人群怎样改变? 7. 是否进行未观测混淆敏感性分析? “SMD < 0.1”是常用经验门槛,不是有效性的证明;还要检查分布尾部、非线性和交互项。 ## 常见误区 - 用结果显著性选择倾向得分模型; - 匹配后仍按原始独立样本公式计算标准误; - 删除无法匹配的处理者后仍声称估计原总体 ATE; - 把未观测混淆写成一句泛泛“研究局限”; - 把极端权重只当软件问题,而不重审目标人群。 ## 课堂任务 为“参加创业辅导是否提高企业存续率”设计 ATT 匹配: 1. 列出五个处理前混淆变量; 2. 指出一个不应控制的处理后变量; 3. 说明共同支持不足时删掉哪些企业; 4. 选择一个平衡图和一个敏感性分析; 5. 用一句话重新定义修剪后的 ATT。 ## 核心阅读 - Rosenbaum & Rubin (1983), [“The Central Role of the Propensity Score”](https://doi.org/10.1093/biomet/70.1.41){rel=""nofollow""}。 - Imbens (2004), [“Nonparametric Estimation of Average Treatment Effects”](https://doi.org/10.1162/003465304323023651){rel=""nofollow""}。 - Stuart (2010), [“Matching Methods for Causal Inference”](https://doi.org/10.1214/09-STS313){rel=""nofollow""}。 上一章:[断点回归设计](https://www.pengjiaxin.com/../06-rdd/)|下一章:[离散选择模型](https://www.pengjiaxin.com/../08-discrete-choice/)。 # 第八章:离散选择模型 []{#第八章离散选择模型} > **案例:** 学生选择汽车、公交、地铁还是自行车。票价下降会改变多少选择概率,而不是“选择增加几个单位”? 当结果是 0/1、类别或有序等级时,线性回归可能给出超出 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[\[]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的概率。离散选择模型直接刻画选择概率,但结构解释仍依赖效用、信息和选择集合假设。 ## 学习目标 你应能: 1. 从潜在效用推导二元选择概率; 2. 区分 Logit 系数、优势比、预测概率与边际效应; 3. 解释多项 Logit 的 IIA; 4. 识别选择集合、内生价格与尺度归一化问题; 5. 用概率和政策变化表达结果。 ## 1. 二元选择的潜在效用 [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.2222em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord.mathbf}[{]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.2222em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[ε]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 为 logistic 分布: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0519em;vertical-align:-0.25em;"}[Λ]{.mord}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.3918em;vertical-align:-0.9629em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[exp]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.0448em;margin-right:0.05em;"}]{.vlist style="height:0.7337em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2769em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[exp]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4413em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.7519em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2587em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4289em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9629em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 若误差为标准正态,则得到 Probit。两者通常产生相近概率,但误差方差归一化不同,原始系数不能直接横向比较。 ## 2. 系数不是概率变化 连续变量 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的 Logit 边际效应: [[[]{.katex-mathml}[[[]{.strut style="height:2.263em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[1]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[p]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[\[]{.mopen}[1]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[p]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 它随 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 改变。应报告: - 平均边际效应(AME); - 代表性或政策相关人群的预测概率; - 离散变量从 0 改为 1 的概率差; - 置信区间,而不只报告优势比。 例如 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[exp]{.mop}[(]{.mopen}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.5]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 表示优势乘以 1.5,不表示概率增加 50% 或 50 个百分点。 ## 3. 可运行案例:助学金与大学入学概率 模拟中入学取决于标准化成绩、是否获得助学金和通勤负担。代码用 Newton–Raphson 估计 Logit,并把成绩系数转成平均边际效应。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjA4KQpuID0gNTAwMApzY29yZSA9IHJuZy5ub3JtYWwoc2l6ZT1uKQpncmFudCA9IHJuZy5iaW5vbWlhbCgxLCAwLjQ1LCBzaXplPW4pCmNvbW11dGUgPSBybmcubm9ybWFsKHNpemU9bikKeCA9IG5wLmNvbHVtbl9zdGFjayhbbnAub25lcyhuKSwgc2NvcmUsIGdyYW50LCBjb21tdXRlXSkKYmV0YV90cnVlID0gbnAuYXJyYXkoWy0wLjM1LCAxLjEwLCAwLjgwLCAtMC42MF0pCgpkZWYgbG9naXN0aWMoeik6CiAgICByZXR1cm4gMSAvICgxICsgbnAuZXhwKC1ucC5jbGlwKHosIC0zMCwgMzApKSkKCnBfdHJ1ZSA9IGxvZ2lzdGljKHggQCBiZXRhX3RydWUpCnkgPSBybmcuYmlub21pYWwoMSwgcF90cnVlKQoKYmV0YSA9IG5wLnplcm9zKHguc2hhcGVbMV0pCmZvciBfIGluIHJhbmdlKDMwKToKICAgIHAgPSBsb2dpc3RpYyh4IEAgYmV0YSkKICAgIHcgPSBucC5tYXhpbXVtKHAgKiAoMSAtIHApLCAxZS04KQogICAgc2NvcmVfdmVjdG9yID0geC5UIEAgKHkgLSBwKQogICAgaW5mb3JtYXRpb24gPSB4LlQgQCAoeCAqIHdbOiwgTm9uZV0pCiAgICBzdGVwID0gbnAubGluYWxnLnNvbHZlKGluZm9ybWF0aW9uLCBzY29yZV92ZWN0b3IpCiAgICBiZXRhICs9IHN0ZXAKICAgIGlmIG5wLm1heChucC5hYnMoc3RlcCkpIDwgMWUtOToKICAgICAgICBicmVhawoKcF9oYXQgPSBsb2dpc3RpYyh4IEAgYmV0YSkKYW1lX3Njb3JlID0gYmV0YVsxXSAqIG5wLm1lYW4ocF9oYXQgKiAoMSAtIHBfaGF0KSkKCnByb2ZpbGVfbG93ID0gbnAuYXJyYXkoWzEsIC0xLjAsIDAsIDAuMF0pCnByb2ZpbGVfaGlnaCA9IG5wLmFycmF5KFsxLCAxLjAsIDEsIDAuMF0pCgpwcmludCgiVHJ1ZSBjb2VmZmljaWVudHM6ICAgICAiLCBucC5yb3VuZChiZXRhX3RydWUsIDMpKQpwcmludCgiRXN0aW1hdGVkIGNvZWZmaWNpZW50czoiLCBucC5yb3VuZChiZXRhLCAzKSkKcHJpbnQoZiJBdmVyYWdlIG1hcmdpbmFsIGVmZmVjdCBvZiBvbmUtU0Qgc2NvcmUgaW5jcmVhc2U6IHthbWVfc2NvcmU6LjNmfSIpCnByaW50KGYiUChlbnJvbCkgbG93LXNjb3JlLCBubyBncmFudDoge2xvZ2lzdGljKHByb2ZpbGVfbG93IEAgYmV0YSk6LjNmfSIpCnByaW50KGYiUChlbnJvbCkgaGlnaC1zY29yZSwgZ3JhbnQ6ICAge2xvZ2lzdGljKHByb2ZpbGVfaGlnaCBAIGJldGEpOi4zZn0iKQ== layout: vertical locale: zh packages: numpy title: Python:手工估计 Logit 与平均边际效应 --- :: 这个模拟把助学金设为外生。真实助学金通常按家庭收入、成绩或申请行为发放;若目标是助学金因果效应,还需随机化、RDD、IV 或可辩护的无混杂设计。 ## 4. 多项选择与随机效用 个体 [[]{.katex-mathml}[[[]{.strut style="height:0.6595em;"}[i]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对选项 [[]{.katex-mathml}[[[]{.strut style="height:0.854em;vertical-align:-0.1944em;"}[j]{.mord.mathnormal style="margin-right:0.0572em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的效用: [[[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4127em;vertical-align:-0.9857em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1864em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[exp]{.mop}[(]{.mopen}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ik]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[exp]{.mop}[(]{.mopen}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9857em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} [[]{.katex-mathml}[[[]{.strut style="height:0.9694em;vertical-align:-0.2861em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可包含: - 选项特征:票价、时间、可靠性; - 个体特征与选项的交互:收入 × 汽车; - 备选项常数:未测平均偏好。 所有效用都加同一常数不会改变选择,因此必须设基准选项;误差尺度也需要归一化。 ## 5. IIA:红公交与蓝公交 标准多项 Logit 的任意两项概率比 [[[]{.katex-mathml}[[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ik]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[P]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0361em;vertical-align:-0.2861em;"}[exp]{.mop}[(]{.mopen}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ij]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[V]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[ik]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 不依赖其他选项。若新增一条几乎相同的“蓝公交”线路,模型可能按比例从汽车和原公交吸走乘客,而现实中替代主要发生在两条公交之间。 可选扩展: - nested Logit:把相似选项放入同一巢; - mixed Logit:允许随机偏好并产生灵活替代; - conditional Logit:强调选项层属性; - panel choice:处理同一个人的重复选择。 ## 6. 结构与因果边界 票价系数不自动是需求因果效应。运营商可能在高需求线路定高价,未测服务质量同时影响价格与选择。需要: - 随机价格实验; - 成本或规则型工具变量; - 清楚的供需结构; - 对可用选择集合与缺失选项的建模。 政策反事实还要说明新票价是否改变拥挤、班次和长期居住选择。 ## 7. 诊断与报告 - 0/1 和类别编码是否正确,基准类是什么? - 是否存在完全或准完全分离? - 连续变量函数形式是否合理? - 报告的是概率、AME 还是优势比? - 选择集合是否对每个人真实可用? - 多项模型的替代模式是否符合制度逻辑? - 价格、时间和质量是否内生? - 样本外政策是否落在数据支持范围内? ## 课堂任务 设计一个通勤方式选择模型: 1. 列出两个个体属性和三个选项属性; 2. 说明收入为何要与汽车选项交互; 3. 用红/蓝公交说明 IIA 失败; 4. 指出票价内生的一条路径; 5. 把“地铁降价 10%”写成概率和福利反事实。 ## 核心阅读 - Train, [*Discrete Choice Methods with Simulation*](https://eml.berkeley.edu/books/choice2.html){rel=""nofollow""}(开放教材)。 - McFadden (1974), [“Conditional Logit Analysis of Qualitative Choice Behavior”](https://eml.berkeley.edu/reprints/mcfadden/zarembka.pdf){rel=""nofollow""}。 - McFadden & Train (2000), [“Mixed MNL Models for Discrete Response”](https://doi.org/10.1002/1099-1255\(200009/10\)15:5%3C447::AID-JAE570%3E3.0.CO;2-1){rel=""nofollow""}。 上一章:[匹配与倾向得分](https://www.pengjiaxin.com/../07-matching/)|下一章:[计数数据与受限因变量](https://www.pengjiaxin.com/../09-count-limited/)。 # 第九章:计数数据与受限因变量 []{#第九章计数数据与受限因变量} > **案例:** 一年就诊次数有大量 0;工作时长也有大量 0。两个“很多零”的结果,为什么不应自动使用同一个模型? 模型选择应由零值和边界的生成机制决定,而不是由直方图长得像什么决定。 ## 学习目标 你应能: 1. 区分计数、删失、截断、样本选择与角点解; 2. 解释 Poisson 条件均值和入射率比; 3. 诊断过度离散与结构零; 4. 判断何时使用负二项、hurdle、零膨胀、Tobit 或两部模型; 5. 把系数转换为条件均值和政策相关概率。 ## 1. 先辨认数据机制 | 观察现象 | 可能机制 | 典型模型 | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- | -------------------- | | [[]{.katex-mathml}[[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 次事件 | 给定暴露期内发生次数 | Poisson、负二项 | | 一部分人必然为 0,其他人再计数 | 两种潜在人群 | zero-inflated | | 先决定是否发生,再决定正值大小 | 两个决策过程 | hurdle / two-part | | 潜变量低于 0 都记为 0 | 审查或测量边界 | Tobit | | 低于阈值的个体根本不进入样本 | 截断 | truncated likelihood | | 结果只对就业者可见 | 样本选择 | 选择模型、界限或设计方法 | 零工作时长可能是最优劳动供给的角点,不一定存在一个“负的潜在工作时长”被机械审查。此时 two-part 往往比 Tobit 的单一潜变量假设更透明。 ## 2. Poisson 的核心是条件均值 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0519em;vertical-align:-0.25em;"}[exp]{.mop}[(]{.mopen}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 对连续变量 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} , [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是对数条件均值的半弹性; [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[exp]{.mop}[(]{.mopen}[[β]{.mord.mathnormal style="margin-right:0.0528em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0528em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是入射率比(IRR)。例如 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对应条件均值乘以 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[e]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1.22]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 完整 Poisson 分布要求 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Var]{.mord.mathrm}]{.mop}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 但 Poisson QMLE 在条件均值正确时,即使方差不等于均值也可一致;此时必须使用稳健方差。负二项模型进一步参数化过度离散。 ## 3. 可运行案例:过度离散下的 Poisson QMLE 模拟中未观测但与协变量独立的 frailty 使方差远大于均值,条件均值仍正确。Poisson 系数接近真值,但模型式标准误会失真,实际分析应使用 sandwich/cluster-robust 推断。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjA5KQpuID0gNjAwMApjaHJvbmljID0gcm5nLmJpbm9taWFsKDEsIDAuMzAsIHNpemU9bikKaW5zdXJlZCA9IHJuZy5iaW5vbWlhbCgxLCAwLjY1LCBzaXplPW4pCmhlYWx0aCA9IHJuZy5ub3JtYWwoc2l6ZT1uKQp4ID0gbnAuY29sdW1uX3N0YWNrKFtucC5vbmVzKG4pLCBjaHJvbmljLCBpbnN1cmVkLCBoZWFsdGhdKQpiZXRhX3RydWUgPSBucC5hcnJheShbLTAuMjAsIDAuNTUsIDAuMzAsIC0wLjI1XSkKCm11ID0gbnAuZXhwKHggQCBiZXRhX3RydWUpCmZyYWlsdHkgPSBybmcuZ2FtbWEoc2hhcGU9MS41LCBzY2FsZT0xIC8gMS41LCBzaXplPW4pCnkgPSBybmcucG9pc3NvbihtdSAqIGZyYWlsdHkpCgojIFBvaXNzb24gSVJMUwpiZXRhID0gbnAuemVyb3MoeC5zaGFwZVsxXSkKZm9yIF8gaW4gcmFuZ2UoNjApOgogICAgZXRhID0gbnAuY2xpcCh4IEAgYmV0YSwgLTE1LCAxNSkKICAgIG11X2hhdCA9IG5wLmV4cChldGEpCiAgICB3b3JraW5nX3kgPSBldGEgKyAoeSAtIG11X2hhdCkgLyBucC5tYXhpbXVtKG11X2hhdCwgMWUtMTApCiAgICByb290X3cgPSBucC5zcXJ0KG11X2hhdCkKICAgIGJldGFfbmV3ID0gbnAubGluYWxnLmxzdHNxKHggKiByb290X3dbOiwgTm9uZV0sIHdvcmtpbmdfeSAqIHJvb3RfdywgcmNvbmQ9Tm9uZSlbMF0KICAgIGlmIG5wLm1heChucC5hYnMoYmV0YV9uZXcgLSBiZXRhKSkgPCAxZS05OgogICAgICAgIGJldGEgPSBiZXRhX25ldwogICAgICAgIGJyZWFrCiAgICBiZXRhID0gYmV0YV9uZXcKCnByaW50KGYiT3V0Y29tZSBtZWFuIC8gdmFyaWFuY2U6IHt5Lm1lYW4oKTouM2Z9IC8ge3kudmFyKCk6LjNmfSIpCnByaW50KCJUcnVlIGNvZWZmaWNpZW50czogICAgICAiLCBucC5yb3VuZChiZXRhX3RydWUsIDMpKQpwcmludCgiUG9pc3NvbiBRTUxFIGVzdGltYXRlczogIiwgbnAucm91bmQoYmV0YSwgMykpCnByaW50KGYiQ2hyb25pYy1jb25kaXRpb24gSVJSOiAgIHtucC5leHAoYmV0YVsxXSk6LjNmfSIpCnByaW50KGYiU2hhcmUgb2Ygb2JzZXJ2ZWQgemVyb3M6IHsoeSA9PSAwKS5tZWFuKCk6LjNmfSIp layout: vertical locale: zh packages: numpy title: Python:Poisson IRLS、过度离散与 IRR --- :: “方差大于均值”提示 Poisson 分布不合适,却不自动否定其条件均值估计。应分别审查均值设定与推断。 ## 4. 大量零:三种不同解释 ### 普通计数过程 低事件率本来就会产生许多零;Poisson 可能已足够。 ### Hurdle / two-part 先建模 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[P]{.mord.mathnormal style="margin-right:0.1389em;"}[(]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,再建模 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7224em;vertical-align:-0.0391em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。适合“是否使用服务”与“使用多少”由不同决策控制的场景。 ### Zero-inflated 假设存在结构零类与普通计数类。它是强潜类别假设,需要实质机制支持;仅因为零很多而采用会过度解释。 非嵌套模型选择指标只能比较拟合,不能证明潜在机制。 ## 5. Tobit、截断与选择 Tobit I 型模型: [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.2222em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[max]{.mop}[(]{.mopen}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.2222em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 它把参与概率与正值大小绑定在同一 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和误差分布上。若是否工作由托育可得性决定,而工作后的时长由工资决定,这一限制通常过强。 还要区分: - **删失:** 个体在样本中,但结果只知道落在某边界; - **截断:** 边界外个体完全不在样本中; - **样本选择:** 结果可见性由另一个相关过程决定。 三者的似然和目标人群都不同。 ## 6. 暴露量与固定效应 计数常受观察时间影响。医院住院 10 天与 100 天的感染次数不能直接比较,应使用 offset: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0785em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[lo [g]{style="margin-right:0.0139em;"}]{.mop}[(]{.mopen}[[[exposure]{.mord}]{.mord.text}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4559em;margin-right:0.05em;"}]{.vlist style="height:0.2175em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2441em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 面板 Poisson 固定效应可处理单位不变异质性,但仍需严格外生性;不要因模型名有“固定效应”就忽略反向因果。 ## 7. 诊断与报告 - 结果是次数、率、金额还是潜变量? - 观察窗口和暴露量是否一致? - 零来自低发生率、结构状态还是参与决策? - 均值—方差关系如何,尾部是否由极端值驱动? - 报告 IRR 之外,是否给出典型人群预测均值? - 是否使用稳健或聚类标准误? - 模型比较是否包含机制解释、校准和样本外表现? - 删失、截断或选择规则是否被准确记录? ## 常见误区 - 看到过度离散就认定 Poisson 系数一定不一致; - 看到很多零就自动使用 zero-inflated 模型; - 把 Tobit 系数直接解释为观测结果的边际效应; - 忽略暴露时间; - 对只有就业者可见的工资简单删除非就业者。 ## 课堂任务 比较“医生就诊次数”和“年度慈善捐款”: 1. 为每个结果解释零值机制; 2. 判断是否需要 offset; 3. 选择 Poisson、two-part 或其他模型并说明理由; 4. 指出一个未观测异质性来源; 5. 把一个系数转成 IRR 或预测均值差。 ## 核心阅读 - Cameron & Trivedi, [*Regression Analysis of Count Data*](https://doi.org/10.1017/CBO9781139013567){rel=""nofollow""}。 - Gourieroux, Monfort & Trognon (1984), [“Pseudo Maximum Likelihood Methods”](https://doi.org/10.2307/1913859){rel=""nofollow""}。 - Santos Silva & Tenreyro (2006), [“The Log of Gravity”](https://doi.org/10.1162/rest.88.4.641){rel=""nofollow""}。 上一章:[离散选择模型](https://www.pengjiaxin.com/../08-discrete-choice/)|下一章:[合成控制法](https://www.pengjiaxin.com/../10-synthetic-control/)。 # 第十章:合成控制法 []{#第十章合成控制法} > **案例:** 只有一个城市实施拥堵收费,没有任何单一城市足够相似。能否把多个未实施城市加权成一个可信的“合成城市”? 合成控制法(SCM)把研究重点从“选择一条回归线”转向“展示反事实由哪些供体单位组成,以及政策前是否真的拟合”。 ## 学习目标 你应能: 1. 写出合成控制权重与路径效应; 2. 解释非负、和为 1 的权重为何限制外推; 3. 依据制度与预处理信息选择供体池; 4. 用时间、单位和结果安慰剂进行推断; 5. 区分经典 SCM、增强 SCM、合成 DID 与矩阵补全。 ## 1. 基本构造 设单位 1 在 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 期开始接受处理,单位 [[]{.katex-mathml}[[[]{.strut style="height:0.8778em;vertical-align:-0.1944em;"}[2]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[J]{.mord.mathnormal style="margin-right:0.0962em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 从未处理。选择权重 [[[]{.katex-mathml}[[[]{.strut style="height:0.9221em;vertical-align:-0.2861em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.2421em;vertical-align:-1.4138em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[J]{.mord.mathnormal.mtight style="margin-right:0.0962em;"}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 使处理前特征与结果路径接近: [[[]{.katex-mathml}[[[]{.strut style="height:0.9233em;"}[[[[[[]{.pstrut style="height:3em;"}[W]{.mord.mathnormal style="margin-right:0.1389em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9233em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:3.4461em;vertical-align:-1.4138em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[W]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3557em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7443em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[t]{.mord.mathnormal.mtight}[≤]{.mrel.mtight}[[T]{.mord.mathnormal.mtight style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[0]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:-0.1389em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8557em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}]{.vlist style="height:1.05em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.3944em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[[(]{.delimsizing.size4}]{.mopen.delimcenter style="top:0em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[J]{.mord.mathnormal.mtight style="margin-right:0.0962em;"}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[w]{.mord.mathnormal style="margin-right:0.0269em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.delimsizing.size4}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.2812em;margin-right:0.05em;"}]{.vlist style="height:2.0323em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 处理后路径效应: [[[]{.katex-mathml}[[[]{.strut style="height:0.8206em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1132em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[1]{.mord.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:3.2421em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[J]{.mord.mathnormal.mtight style="margin-right:0.0962em;"}[+]{.mbin.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.8283em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[w]{.mord.mathnormal style="margin-right:0.0269em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0269em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[T]{.mord.mathnormal style="margin-right:0.1389em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 权重非负且和为 1,意味着反事实位于供体凸包内。若处理单位在处理前已经超出所有供体范围,经典 SCM 无法靠加权解决外推。 ## 2. 供体池决定研究问题 供体单位必须: - 在研究期内未接受同类处理; - 不受处理单位的溢出; - 结果测量和制度环境可比; - 有足够长且无结构断裂的预处理期; - 不因“加入后结果更显著”才被选择。 例如评估伦敦拥堵收费时,把同时规划类似政策、交通网络完全不同或受伦敦通勤溢出的城市放入供体池,会改变反事实含义。 ## 3. 为什么处理前路径比协变量清单重要 在潜在因子模型中: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[δ]{.mord.mathnormal style="margin-right:0.0379em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0379em;margin-right:0.05em;"}]{.vlist style="height:0.2806em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0278em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[t]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[t]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 长预处理路径包含对未观测因子载荷 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[μ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的信息。好的处理前拟合因此是必要证据,但不是充分证明:短期过拟合、共同冲击变化和政策预期仍可能使处理后反事实失效。 ## 4. 可运行案例:一个城市的减排政策 模拟中处理城市的未处理路径是三个供体的凸组合。代码只用处理前数据估计权重,再计算政策后差距与单位安慰剂的 RMSPE 比率。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjEwKQpuX2Rvbm9ycywgcHJlX3BlcmlvZHMsIHBvc3RfcGVyaW9kcyA9IDgsIDEyLCA2CnRvdGFsX3BlcmlvZHMgPSBwcmVfcGVyaW9kcyArIHBvc3RfcGVyaW9kcwp0ID0gbnAuYXJhbmdlKHRvdGFsX3BlcmlvZHMpCgpmYWN0b3JfMSA9IDAuMjUgKiB0ICsgbnAuc2luKHQgLyAyKQpmYWN0b3JfMiA9IG5wLmNvcyh0IC8gMykKbG9hZGluZ18xID0gcm5nLnVuaWZvcm0oMC43LCAxLjQsIHNpemU9bl9kb25vcnMpCmxvYWRpbmdfMiA9IHJuZy51bmlmb3JtKC0xLjAsIDEuMCwgc2l6ZT1uX2Rvbm9ycykKZG9ub3JzID0gKAogICAgMjAKICAgICsgZmFjdG9yXzFbOiwgTm9uZV0gKiBsb2FkaW5nXzFbTm9uZSwgOl0KICAgICsgZmFjdG9yXzJbOiwgTm9uZV0gKiBsb2FkaW5nXzJbTm9uZSwgOl0KICAgICsgcm5nLm5vcm1hbChzY2FsZT0wLjI1LCBzaXplPSh0b3RhbF9wZXJpb2RzLCBuX2Rvbm9ycykpCikKCnRydWVfd2VpZ2h0cyA9IG5wLmFycmF5KFswLjQ1LCAwLjAwLCAwLjM1LCAwLjAwLCAwLjAwLCAwLjIwLCAwLjAwLCAwLjAwXSkKdW50cmVhdGVkX3BhdGggPSBkb25vcnMgQCB0cnVlX3dlaWdodHMgKyBybmcubm9ybWFsKHNjYWxlPTAuMTUsIHNpemU9dG90YWxfcGVyaW9kcykKZWZmZWN0ID0gbnAucl9bbnAuemVyb3MocHJlX3BlcmlvZHMpLCBucC5mdWxsKHBvc3RfcGVyaW9kcywgLTMuMCldCnRyZWF0ZWQgPSB1bnRyZWF0ZWRfcGF0aCArIGVmZmVjdAoKZGVmIHByb2plY3Rfc2ltcGxleCh2KToKICAgIG9yZGVyZWQgPSBucC5zb3J0KHYpWzo6LTFdCiAgICBjdW11bGF0aXZlID0gbnAuY3Vtc3VtKG9yZGVyZWQpCiAgICBjYW5kaWRhdGVzID0gbnAud2hlcmUob3JkZXJlZCAqIG5wLmFyYW5nZSgxLCB2LnNpemUgKyAxKSA+IGN1bXVsYXRpdmUgLSAxKVswXQogICAgcmhvID0gY2FuZGlkYXRlc1stMV0KICAgIHRocmVzaG9sZCA9IChjdW11bGF0aXZlW3Job10gLSAxKSAvIChyaG8gKyAxKQogICAgcmV0dXJuIG5wLm1heGltdW0odiAtIHRocmVzaG9sZCwgMCkKCmRlZiBmaXRfd2VpZ2h0cyh0YXJnZXQsIHBvb2wsIG5fcHJlKToKICAgIHgsIHkgPSBwb29sWzpuX3ByZV0sIHRhcmdldFs6bl9wcmVdCiAgICB3ID0gbnAuZnVsbCh4LnNoYXBlWzFdLCAxIC8geC5zaGFwZVsxXSkKICAgIHN0ZXAgPSAxIC8gKDIgKiBucC5saW5hbGcubm9ybSh4LCAyKSAqKiAyICsgMWUtMTIpCiAgICBmb3IgXyBpbiByYW5nZSg2MDAwKToKICAgICAgICBncmFkaWVudCA9IDIgKiB4LlQgQCAoeCBAIHcgLSB5KQogICAgICAgIG5ld193ID0gcHJvamVjdF9zaW1wbGV4KHcgLSBzdGVwICogZ3JhZGllbnQpCiAgICAgICAgaWYgbnAubWF4KG5wLmFicyhuZXdfdyAtIHcpKSA8IDFlLTEwOgogICAgICAgICAgICB3ID0gbmV3X3cKICAgICAgICAgICAgYnJlYWsKICAgICAgICB3ID0gbmV3X3cKICAgIHJldHVybiB3Cgplc3RpbWF0ZWRfd2VpZ2h0cyA9IGZpdF93ZWlnaHRzKHRyZWF0ZWQsIGRvbm9ycywgcHJlX3BlcmlvZHMpCnN5bnRoZXRpYyA9IGRvbm9ycyBAIGVzdGltYXRlZF93ZWlnaHRzCmdhcCA9IHRyZWF0ZWQgLSBzeW50aGV0aWMKcHJlX3Jtc3BlID0gbnAuc3FydChucC5tZWFuKGdhcFs6cHJlX3BlcmlvZHNdICoqIDIpKQpwb3N0X3Jtc3BlID0gbnAuc3FydChucC5tZWFuKGdhcFtwcmVfcGVyaW9kczpdICoqIDIpKQp0cmVhdGVkX3JhdGlvID0gcG9zdF9ybXNwZSAvIHByZV9ybXNwZQoKcGxhY2Vib19yYXRpb3MgPSBbXQpmb3IgaiBpbiByYW5nZShuX2Rvbm9ycyk6CiAgICBwbGFjZWJvX3RhcmdldCA9IGRvbm9yc1s6LCBqXQogICAgcGxhY2Vib19wb29sID0gbnAuZGVsZXRlKGRvbm9ycywgaiwgYXhpcz0xKQogICAgd2ogPSBmaXRfd2VpZ2h0cyhwbGFjZWJvX3RhcmdldCwgcGxhY2Vib19wb29sLCBwcmVfcGVyaW9kcykKICAgIHBsYWNlYm9fZ2FwID0gcGxhY2Vib190YXJnZXQgLSBwbGFjZWJvX3Bvb2wgQCB3agogICAgcHJlID0gbnAuc3FydChucC5tZWFuKHBsYWNlYm9fZ2FwWzpwcmVfcGVyaW9kc10gKiogMikpCiAgICBwb3N0ID0gbnAuc3FydChucC5tZWFuKHBsYWNlYm9fZ2FwW3ByZV9wZXJpb2RzOl0gKiogMikpCiAgICBwbGFjZWJvX3JhdGlvcy5hcHBlbmQocG9zdCAvIG1heChwcmUsIDFlLTgpKQoKcF92YWx1ZSA9ICgxICsgbnAuc3VtKG5wLmFycmF5KHBsYWNlYm9fcmF0aW9zKSA+PSB0cmVhdGVkX3JhdGlvKSkgLyAoMSArIG5fZG9ub3JzKQoKcHJpbnQoIkVzdGltYXRlZCBkb25vciB3ZWlnaHRzOiIsIG5wLnJvdW5kKGVzdGltYXRlZF93ZWlnaHRzLCAzKSkKcHJpbnQoZiJQcmUtdHJlYXRtZW50IFJNU1BFOiAgICAge3ByZV9ybXNwZTouM2Z9IikKcHJpbnQoZiJBdmVyYWdlIHBvc3QtcG9saWN5IGdhcDoge2dhcFtwcmVfcGVyaW9kczpdLm1lYW4oKTouM2Z9IikKcHJpbnQoZiJQb3N0L3ByZSBSTVNQRSByYXRpbzogICAge3RyZWF0ZWRfcmF0aW86LjJmfSIpCnByaW50KGYiUGxhY2VibyByYW5rIHAtdmFsdWU6ICAgIHtwX3ZhbHVlOi4zZn0iKQ== layout: vertical locale: zh packages: numpy title: Python:合成控制权重与安慰剂比率 --- :: 安慰剂 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 值只有 9 个可能排名,分辨率很粗。这不是经典大样本 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 值;它回答的是“若每个供体依次被假装处理,真实城市的异常程度排第几”。 ## 5. 推断是一组设计比较 ### 单位安慰剂 逐个把未处理单位当作处理单位,比较处理后异常程度。应排除处理前拟合极差的安慰剂,且预先说明阈值。 ### 时间安慰剂 把处理时点提前到政策前。若提前期也出现“大效应”,可能有预趋势、结构断裂或过拟合。 ### 结果安慰剂 选择理论上不应受政策影响、但测量机制类似的结果。 ### 留一法 依次删除高权重供体。若结论完全依赖一个单位,必须解释该比较为何可信。 ## 6. 常见扩展 | 方法 | 主要变化 | 适用问题 | | --------------- | -------------- | ------------- | | augmented SCM | 用结果模型修正剩余预处理偏差 | 经典 SCM 拟合不完美 | | synthetic DID | 结合单位权重和时间权重 | 多单位面板、共同趋势更灵活 | | generalized SCM | 潜在因子/矩阵补全 | 多处理单位、较长面板 | | penalized SCM | 对权重或外推加惩罚 | 供体多、过拟合风险 | 扩展可以改善拟合或精度,但不会自动修复受污染供体、政策预期、共同冲击或错误处理时点。 ## 7. 诊断与报告 - 处理单位与时点为何特殊? - 供体池如何在看结果前确定? - 处理前路径有多长,RMSPE 多大? - 权重是否集中,处理单位是否在凸包外? - 有无其他政策或溢出污染供体? - 单位、时间、结果与留一安慰剂是否一致? - 效应是逐期路径、平均 ATT 还是累积效应? - 推断分辨率是否受供体数量限制? ## 常见误区 - 只展示处理后大差距,不展示处理前拟合; - 依据政策后结果删供体; - 把回归合成的窄区间当作设计已被证明; - 有一个高权重供体就称其为“因果匹配对象”; - 将单个城市的效应直接推广为全国政策效应。 ## 课堂任务 设计一个“城市禁塑令对垃圾量”的 SCM: 1. 给出供体纳入与排除规则; 2. 选择五个预处理预测量; 3. 定义主 RMSPE 与安慰剂排序; 4. 指出一个跨城市溢出; 5. 解释如果所有权重集中在一个城市,应如何报告。 ## 核心阅读 - Abadie, Diamond & Hainmueller (2010), [“Synthetic Control Methods for Comparative Case Studies”](https://doi.org/10.1198/jasa.2009.ap08746){rel=""nofollow""}。 - Abadie (2021), [“Using Synthetic Controls: Feasibility, Data Requirements, and Methodological Aspects”](https://doi.org/10.1257/jel.20191450){rel=""nofollow""}。 - Arkhangelsky et al. (2021), [“Synthetic Difference-in-Differences”](https://doi.org/10.1257/aer.20190159){rel=""nofollow""}。 - Ben-Michael, Feller & Rothstein (2021), [“The Augmented Synthetic Control Method”](https://doi.org/10.1080/01621459.2021.1929245){rel=""nofollow""}。 上一章:[计数数据与受限因变量](https://www.pengjiaxin.com/../09-count-limited/)|下一章:[机器学习与因果推断](https://www.pengjiaxin.com/../11-ml-causal/)。 # 第十一章:机器学习与因果推断 []{#第十一章机器学习与因果推断} > **案例:** 一个模型能准确预测谁会失业,是否也能告诉我们培训应优先给谁? 预测模型学习 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ;因果决策需要比较 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。机器学习可灵活估计高维 nuisance functions,但不能创造随机化、无混杂或重叠。 ## 学习目标 你应能: 1. 区分风险预测、ATE、CATE 与政策价值; 2. 解释正交化为何降低 nuisance model 误差的一阶影响; 3. 实施样本分割与交叉拟合; 4. 识别因果森林、DML 和政策学习的不同目标; 5. 审查重叠、目标泄漏、选择后推断与公平性。 ## 1. 预测问题不等于因果问题 | 任务 | 目标 | 例子 | | ---- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- | | 风险预测 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 谁最可能失业? | | 平均效应 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 培训平均提高多少收入? | | 条件效应 | [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord,mathnormal}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 哪类人因培训受益更多? | | 政策学习 | 最大化 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord,mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[d]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[))]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[d]{.mord,mathnormal}[(]{.mopen}[X]{.mord,mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} | 名额有限时培训给谁? | 高风险者不一定最受益。例如长期失业者的基准风险高,但课程可能只对具备某些数字技能者有效。 ## 2. Double / Debiased Machine Learning 部分线性模型: [[[]{.katex-mathml}[[[]{.strut style="height:2.7em;vertical-align:-1.1em;"}[[[[[[[[]{.pstrut style="height:3em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[ε]{.mord.mathnormal}[,]{.mpunct}]{.mord}]{style="top:-3.76em;"}[[]{.pstrut style="height:3em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[m]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[.]{.mord}]{.mord}]{style="top:-2.26em;"}]{.vlist style="height:1.6em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.1em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 先估计 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[ℓ]{.mord}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 再构造残差: [[[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.1933em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[ℓ]{.mord}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.2222em);margin-left:0.2222em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7667em;vertical-align:-0.0833em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[[[[[]{.pstrut style="height:3em;"}[m]{.mord.mathnormal}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 并回归 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.9433em;"}[[[[[[]{.pstrut style="height:3em;"}[D]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.26em;"}]{.svg-align style="width:calc(100% - 0.1111em);margin-left:0.1111em;top:-3.6833em;"}]{.vlist style="height:0.9433em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。正交矩条件使小幅 nuisance 误差对 [[]{.katex-mathml}[[[]{.strut style="height:0.9344em;"}[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的一阶影响为零,但仍要求: - 识别假设成立; - nuisance 估计足够好; - 有重叠; - 使用交叉拟合避免同一观测既训练又残差化。 ## 3. 可运行案例:非线性选择下的交叉拟合 DML 培训参加概率和基准收入都以非线性方式依赖特征。朴素均值差有混淆;两折交叉拟合在未参与训练的观测上预测 nuisance functions,再用残差识别处理效应。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMjAyNjExKQpuID0gNjAwMAp4ID0gcm5nLm5vcm1hbChzaXplPShuLCA1KSkKCmRlZiBiYXNpcyh6KToKICAgIHJldHVybiBucC5jb2x1bW5fc3RhY2soWwogICAgICAgIG5wLm9uZXMoei5zaGFwZVswXSksCiAgICAgICAgeiwKICAgICAgICB6WzosIDBdICoqIDIsCiAgICAgICAgels6LCAxXSAqKiAyLAogICAgICAgIHpbOiwgMF0gKiB6WzosIDFdLAogICAgICAgIG5wLnNpbih6WzosIDJdKSwKICAgIF0pCgpwaGkgPSBiYXNpcyh4KQpzZWxlY3Rpb25faW5kZXggPSAtMC4yICsgMC44ICogeFs6LCAwXSAtIDAuNiAqIHhbOiwgMV0gKiogMiArIDAuNSAqIG5wLnNpbih4WzosIDJdKQpwcm9wZW5zaXR5ID0gMSAvICgxICsgbnAuZXhwKC1zZWxlY3Rpb25faW5kZXgpKQpkID0gcm5nLmJpbm9taWFsKDEsIHByb3BlbnNpdHkpCgpnX3ggPSAzICsgMy4wICogeFs6LCAwXSAtIDEuNSAqIHhbOiwgMV0gKiogMiArIDEuMiAqIG5wLnNpbih4WzosIDJdKQp0cnVlX2VmZmVjdCA9IDIuMAp5ID0gZ194ICsgdHJ1ZV9lZmZlY3QgKiBkICsgcm5nLm5vcm1hbChzY2FsZT0yLjAsIHNpemU9bikKCmRlZiByaWRnZV9maXQoZGVzaWduLCB0YXJnZXQsIHBlbmFsdHk9Mi4wKToKICAgIHBlbmFsdHlfbWF0cml4ID0gbnAuZXllKGRlc2lnbi5zaGFwZVsxXSkgKiBwZW5hbHR5CiAgICBwZW5hbHR5X21hdHJpeFswLCAwXSA9IDAKICAgIHJldHVybiBucC5saW5hbGcuc29sdmUoZGVzaWduLlQgQCBkZXNpZ24gKyBwZW5hbHR5X21hdHJpeCwgZGVzaWduLlQgQCB0YXJnZXQpCgpmb2xkID0gcm5nLmludGVnZXJzKDAsIDIsIHNpemU9bikKeV9oYXQgPSBucC5lbXB0eShuKQpkX2hhdCA9IG5wLmVtcHR5KG4pCgpmb3IgaGVsZF9vdXQgaW4gWzAsIDFdOgogICAgdHJhaW4gPSBmb2xkICE9IGhlbGRfb3V0CiAgICB0ZXN0ID0gZm9sZCA9PSBoZWxkX291dAogICAgYmV0YV95ID0gcmlkZ2VfZml0KHBoaVt0cmFpbl0sIHlbdHJhaW5dKQogICAgYmV0YV9kID0gcmlkZ2VfZml0KHBoaVt0cmFpbl0sIGRbdHJhaW5dKQogICAgeV9oYXRbdGVzdF0gPSBwaGlbdGVzdF0gQCBiZXRhX3kKICAgIGRfaGF0W3Rlc3RdID0gbnAuY2xpcChwaGlbdGVzdF0gQCBiZXRhX2QsIDAuMDEsIDAuOTkpCgp5X3Jlc2lkdWFsID0geSAtIHlfaGF0CmRfcmVzaWR1YWwgPSBkIC0gZF9oYXQKZG1sID0gKGRfcmVzaWR1YWwgQCB5X3Jlc2lkdWFsKSAvIChkX3Jlc2lkdWFsIEAgZF9yZXNpZHVhbCkKbmFpdmUgPSB5W2QgPT0gMV0ubWVhbigpIC0geVtkID09IDBdLm1lYW4oKQoKcHJpbnQoZiJUcnVlIHRyZWF0bWVudCBlZmZlY3Q6ICAgICAgICAgIHt0cnVlX2VmZmVjdDouM2Z9IikKcHJpbnQoZiJOYWl2ZSB0cmVhdGVkLWNvbnRyb2wgY29udHJhc3Q6IHtuYWl2ZTouM2Z9IikKcHJpbnQoZiJDcm9zcy1maXR0ZWQgRE1MIGVzdGltYXRlOiAgICAgICB7ZG1sOi4zZn0iKQpwcmludChmIlByb3BlbnNpdHkgMXN0Lzk5dGggcGVyY2VudGlsZToge25wLnF1YW50aWxlKHByb3BlbnNpdHksIDAuMDEpOi4zZn0gLyB7bnAucXVhbnRpbGUocHJvcGVuc2l0eSwgMC45OSk6LjNmfSIpCnByaW50KGYiVHJlYXRtZW50IHNoYXJlOiAgICAgICAgICAgICAgICB7ZC5tZWFuKCk6LjNmfSIp layout: vertical locale: zh packages: numpy title: Python:两折交叉拟合 DML --- :: 此例知道正确的特征基函数,目的只是展示正交化流程。现实研究应把 learner、调参、折数、随机种子和预处理全部纳入可复现管线,并使用 DML 的有效方差公式。 ## 4. CATE 与因果森林 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 因果森林通过诚实样本分割、局部加权和正交化估计异质性。应避免: - 看完同一数据后挑“最显著亚组”; - 只展示变量重要性,未报告 CATE 校准; - 在重叠很差区域解释个体效应; - 把噪声很大的个体点估计用于高风险决策。 更稳健的报告通常按预先定义或样本外分组展示平均效应,并给出组间差异的有效推断。 ## 5. 从 CATE 到政策规则 若处理成本为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,简单规则: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord.mathbf}[{]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 但有限名额、公平约束和不可逆伤害会改变优化问题。策略应在独立测试样本上评价: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[d]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[d]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[))]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[d]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} “CATE 预测误差低”不保证政策价值高;错误可能恰好集中在决策阈值附近。 ## 6. 数据泄漏与选择后推断 典型泄漏包括: - 用处理后的变量预测倾向得分; - 在全样本标准化、筛特征后才切分; - 用同一结果挑选亚组并报告普通区间; - 尝试许多 learner,只展示效应最大的模型; - 把未来信息编码进历史特征。 模型选择、超参数调优和亚组发现都属于分析过程。应使用嵌套交叉验证、独立确认样本、预注册或选择后推断。 ## 7. 伦理与部署审计 | 问题 | 必须回答 | | ---- | ----------------- | | 可识别性 | 数据为何支持处理反事实? | | 重叠 | 哪些人没有可比处理选择? | | 伤害 | 错误分配的成本是否对称? | | 公平 | 约束针对机会、结果还是误差? | | 可迁移性 | 新地区的处理与人群是否相同? | | 监测 | 部署后行为反应和数据漂移怎样发现? | 2024 年 *Nature Medicine* 的 [Feuerriegel 等](https://www.nature.com/articles/s41591-024-02902-1){rel=""nofollow""} 强调,因果机器学习从问题定义到临床转化需要连续审查;方法综述本身不是任何治疗有效性的证据。 ## 8. 最低报告标准 - 目标参数与识别假设; - 所有特征的测量时点; - 训练、调参、交叉拟合和测试划分; - nuisance learner 与性能; - 倾向得分和重叠诊断; - ATE/CATE 的区间、校准和稳定性; - 策略价值的样本外评估; - 软件版本、随机种子与完整分析日志。 ## 课堂任务 设计“把有限辅导名额分给学生”的政策学习方案: 1. 区分辍学风险与辅导 CATE; 2. 写出一个资源约束下的价值函数; 3. 指出两个不能作为处理前特征的变量; 4. 设计独立评估或随机上线实验; 5. 说明公平约束会怎样改变最优规则。 ## 核心阅读 - Chernozhukov et al. (2018), [“Double/Debiased Machine Learning for Treatment and Structural Parameters”](https://doi.org/10.1111/ectj.12097){rel=""nofollow""}。 - Wager & Athey (2018), [“Estimation and Inference of Heterogeneous Treatment Effects Using Random Forests”](https://doi.org/10.1080/01621459.2017.1319839){rel=""nofollow""}。 - Athey & Wager (2021), [“Policy Learning with Observational Data”](https://doi.org/10.3982/ECTA15732){rel=""nofollow""}。 - Feuerriegel et al. (2024), [“Causal Machine Learning for Predicting Treatment Outcomes”](https://doi.org/10.1038/s41591-024-02902-1){rel=""nofollow""}。 上一章:[合成控制法](https://www.pengjiaxin.com/../10-synthetic-control/)|下一章:[前沿文献与现代案例](https://www.pengjiaxin.com/../12-frontier-literature-2026)。 # 第十二章:前沿文献与现代微观案例(2024—2026) []{#第十二章前沿文献与现代微观案例20242026} 微观计量经济学的最终目标不是生成一个显著系数,而是回答一个边界清楚的反事实问题:对哪些人、在什么制度下、把哪种处理改成哪种替代状态,会怎样改变结果?当研究进一步用于分配大学名额、选择医疗方案或挑选“最有效”的项目时,还要处理异质性、选择后偏误与决策损失。 本章基于截至 **2026 年 8 月 1 日** 的一手文献定向更新。所选论文覆盖正式期刊研究与方法综述;课堂模拟只展示统计机制,不含真实个人数据,也不复现原论文。 ## 学习目标 完成本章后,你应能够: 1. 区分大学录取、实际就读和毕业等不同处理; 2. 比较候补名单 IV 与录取分数 fuzzy RDD 所识别的不同边际人群; 3. 区分风险预测 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 与个体化处理效应 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ; 4. 写出从 ATE、CATE 到政策规则的完整决策链; 5. 解释从多个项目中选出最大估计值为何产生赢家诅咒; 6. 在论文阅读中同时审查识别、估计、推断、外部有效性与伦理边界。 ## 案例一:进入高度选择性大学的因果效应 ### 1. 先把处理定义清楚 Chetty、Deming 与 Friedman 的研究(2025 年在线发表,2026 年刊载于 *Quarterly Journal of Economics*)结合多所高校的匿名录取资料、税务记录和标准化考试成绩,研究高度选择性私立大学的准入与就读后果。 至少有三个不同问题: 1. 被 Ivy-Plus 大学**录取**会怎样改变选择集合? 2. **就读** Ivy-Plus 而不是州旗舰公立大学会怎样改变结果? 3. 整体扩大名额或改变校友、非学术资历和体育特长偏好会怎样改变社会分配? 这三个问题的处理、遵从和一般均衡效应都不同。论文的因果设计利用候补名单申请者录取决策中的特殊变动,目标不是简单比较两类毕业生的平均收入。 ### 2. 选择偏误为何严重 朴素回归可写成: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.2222em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[A]{.mord.mathnormal}[tt]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[u]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 即使控制考试成绩, [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[A]{.mord.mathnormal}[tt]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 仍可能与申请组合、家庭资源、推荐质量、职业偏好和未测能力相关。 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 因而混合学校作用与入学前差异。 更可信的设计要寻找一个改变就读概率、但在适当条件下不直接改变结果的变动。用工具变量语言表示: [[[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[A]{.mord.mathnormal}[tt]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[[d]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[0]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.0489em;vertical-align:-0.247em;"}[[X]{.mord.mathnormal style="margin-right:0.0785em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:-0.0785em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[′]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8019em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[π]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[v]{.mord.mathnormal style="margin-right:0.0359em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0359em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0715em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 来自候补录取决策中的准实验变动。若相关性、排除限制、独立性和单调性成立,IV 识别的是被该变动改变就读选择者的局部平均处理效应,而不是所有学生的 ATE。 ### 3. 论文报告了什么 论文首先记录:在考试成绩相近的申请者中,最高收入 1% 家庭的子女进入 Ivy-Plus 的概率仍超过中产家庭子女的两倍;作者把差距分解为申请、录取和入学三个环节,并将录取优势与校友子女偏好、非学术资历权重和体育招募联系起来。 在论文的局部因果设计与特定比较下,就读 Ivy-Plus 而不是平均州旗舰公立大学,使进入收入分布最高 1% 的概率相对提高约 50%,进入顶尖研究生院的概率接近翻倍,在高声望企业工作的概率接近三倍。这些是**相对变化**,不是增加 50、100 或 200 个百分点。 ### 4. 证据边界 - 估计与候补名单附近、会因录取变动而改变就读选择的人群最直接相关。 - “Ivy-Plus 相对州旗舰”不是“大学相对不读大学”。 - 顶尖收入、研究生院和企业声望是特定结果,不等同于终身福利、幸福或社会贡献。 - 扩大名额可能改变同伴、师资、课程与劳动力市场信号,因此局部效应不能机械乘以新增学生人数。 - 行政数据提高测量质量,但仍不能替代对排除限制和制度细节的论证。 ### 5. 分层讨论 本科生应能画出 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6944em;"}[A]{.mord.mathnormal}[tt]{.mord.mathnormal}[e]{.mord.mathnormal}[n]{.mord.mathnormal}[d]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的因果图,并列出 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Z]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可能直接影响 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 的路径。研究生还应讨论多校申请、处理版本、非遵从、溢出效应、边际申请者构成和政策外推权重。 ### 6. 同题异设计:公立大学录取断点 Mountjoy(2026)使用得州 35 所公立大学数百个 SAT/ACT 录取断点,将刚好越过与刚好未越过各校门槛的申请者进行比较。门槛使录取概率平均跳升 27 个百分点,并使就读目标大学的概率提高 15 个百分点,因此这是 **fuzzy RDD**:阈值资格是工具,实际就读是内生处理。 论文估计,典型边际录取者在四年制大学多接受约一年教育,取得学士学位的概率提高 12 个百分点,长期收入提高约 8%。成本—收益计算进一步报告学生、社会和政府预算视角下的内部收益率分别约为 26%、16% 和 7%。这些数字都对应论文的特定边际申请者、追踪期与成本假设。 这个对照有三层教学价值: | 比较 | Ivy-Plus 候补名单设计 | 公立大学录取断点 | | ---- | ----------------- | -------------- | | 外生变动 | 候补录取决策中的特殊变动 | 考试分数刚好越过校级门槛 | | 主要处理 | 就读 Ivy-Plus 而非州旗舰 | 因录取门槛而进入目标公立大学 | | 局部人群 | 会被候补录取改变去向者 | 门槛附近的录取顺从者 | | 政策含义 | 选择性私立大学的录取与分配 | 公立大学边际扩招的收益与成本 | 两项估计不回答同一个 ATE。即使都研究“大学回报”,工具、替代状态与顺从者不同,就不能直接比较数字大小。Mountjoy 还区分“是否进入任一四年制大学”的广延边际与“转向更具选择性学校”的集约边际;这一分解说明处理版本本身就是 estimand 的一部分。 ## 案例二:从“谁风险高”到“谁会因治疗而受益” ### 1. 预测与因果不是同一个任务 Feuerriegel 等(2024)在 *Nature Medicine* 的综述讨论因果机器学习如何预测处理后的疗效与毒性,并给出从问题定义、数据、识别、估计到临床转化的工作流。 普通风险模型估计: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[μ]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 个体化治疗需要比较两个不能同时观察的潜在结果: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[∣]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 一个患者在不治疗时风险很高,不代表治疗效果最大。风险预测依赖结果相关特征;处理效应异质性则依赖这些特征是否改变处理与结果之间的差异。 ### 2. CATE 如何进入政策规则 若处理成本或伤害以结果单位表示为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,一个简单规则是: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[d]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[1]{.mord.mathbf}[{]{.mopen}[[[[[[]{.pstrut style="height:3em;"}[τ]{.mord.mathnormal style="margin-right:0.1132em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.0556em);margin-left:0.0556em;top:-3.4306em;"}]{.vlist style="height:0.6706em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[x]{.mord.mathnormal}[)}]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 规则价值为: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[V]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[d]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[Y]{.mord.mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[d]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[))]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[c]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]{.mclose}[d]{.mord.mathnormal}[(]{.mopen}[X]{.mord.mathnormal style="margin-right:0.0785em;"}[)]]{.mclose}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这表明模型评估不能只看 CATE 的均方误差。研究者还要评估重叠、校准、策略价值、资源约束、公平性和样本外可迁移性。 ### 3. RCT 与现实世界数据的不同风险 在随机试验中,处理分配有已知机制,但样本可能选择性强、处理遵从不完全,且稀有亚组样本少。真实世界数据规模更大,却需要更强的无混杂、测量一致和正值性假设。机器学习能灵活拟合结果与倾向得分,不能从未记录的信息中创造可交换性。 在医学以外,这套逻辑同样适用于培训、信贷、补贴和教育: | 场景 | 处理 | CATE 问题 | 关键风险 | | ---- | -------- | ------------- | ------------ | | 就业培训 | 是否提供课程 | 哪类求职者收入改善最大 | 自主报名与地区劳动力市场 | | 信贷 | 是否批准贷款 | 对经营存续或福利的边际影响 | 历史审批造成选择性标签 | | 医疗 | 药物 A 或 B | 谁从 A 相对 B 获益 | 重叠、毒性、试验外推 | | 教育 | 是否提供辅导 | 哪类学生成绩提高最大 | 同伴干扰、教师差异 | ### 4. 证据边界 Feuerriegel 等的文章是方法性 Perspective,不是单个治疗的效果试验。它总结了可用工具和实践风险,不能被引用为“因果机器学习已经证明个体化治疗有效”。真实部署还需要前瞻性评价、临床或制度约束、误差成本与持续监测。 ## 案例三:挑出“最佳项目”以后,估计值为什么偏高 ### 1. 赢家诅咒的来源 假设有 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 个项目,真实效应为 [[]{.katex-mathml}[[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,无偏估计为: [[[]{.katex-mathml}[[[]{.strut style="height:1.0844em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:2em;"}[]{.mspace style="margin-right:0.1667em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[ε]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 决策者选择: [[[]{.katex-mathml}[[[]{.strut style="height:0.7387em;"}[[k]{.mord.mathnormal style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.6865em;vertical-align:-0.7521em;"}[ar [g]{style="margin-right:0.0139em;"}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[[[[[]{.pstrut style="height:3em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.3479em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7521em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 即使每个 [[]{.katex-mathml}[[[]{.strut style="height:1.0844em;vertical-align:-0.15em;"}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 单独无偏,入选项目更可能同时拥有较高真实效应和较幸运的正噪声,因此: [[[]{.katex-mathml}[[[]{.strut style="height:1.1844em;vertical-align:-0.25em;"}[E]{.mord.mathnormal style="margin-right:0.0576em;"}[\[]{.mopen}[[[[[[[]{.pstrut style="height:3em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{style="top:-3em;"}[[]{.pstrut style="height:3em;"}[]{style="height:0.24em;"}]{.svg-align style="width:calc(100% - 0.1667em);margin-left:0.1667em;top:-3.6944em;"}]{.vlist style="height:0.9344em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent}[[[[[[]{.pstrut style="height:2.7em;"}[[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.786em;margin-right:0.0714em;"}]{.vlist style="height:0.6183em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[[k]{.mord.mathnormal.mtight style="margin-right:0.0315em;"}[[[[[[]{.pstrut style="height:2.5em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.786em;margin-right:0.0714em;"}]{.vlist style="height:0.6183em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"}]{.vlist style="height:0.3361em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0.]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这不是回归到均值的口号,而是**用同一组噪声完成选择与估计**造成的选择后偏误。 ### 2. Andrews、Kitagawa 与 McCloskey 的贡献 Andrews、Kitagawa 与 McCloskey(2024)研究对已选“赢家”的有效推断,构造控制中位数偏误的估计量和具有覆盖保证的置信区间,并区分: - **条件推断**:给定选中了某个项目以后仍保证覆盖; - **无条件推断**:对重复执行“估计—选择”流程的平均表现保证覆盖; - **混合方法**:在保证与精度之间折中。 论文用多地点就业培训项目和高机会社区选择说明校正可能在经济意义上改变结论,同时仍可保留有信息的推断。 ### 3. 为什么“留一半样本复核”也有代价 样本分割可用一半数据选项目、另一半估计其效果,从而切断选择噪声与推断噪声。但它减少选优与估计所用信息,可能选到较差项目,并扩大区间。选择后推断、层级/经验贝叶斯收缩、预注册独立验证各有假设与损失函数;不存在无成本修复。 ## 浏览器实验:从 20 个项目中选择第一名 代码重复 3,000 次多地点试验。每次先生成 20 个真实项目效应,再加入估计噪声并选择观测效果最大的项目。我们比较“赢家”的观测估计与真实效应,并用独立复核样本展示回归到较合理水平。 ::pyodide --- code64: aW1wb3J0IG51bXB5IGFzIG5wCgpybmcgPSBucC5yYW5kb20uZGVmYXVsdF9ybmcoMTIwMjYpCnJlcGxpY2F0aW9ucyA9IDMwMDAKcHJvZ3JhbXMgPSAyMAplc3RpbWF0aW9uX3NlID0gMC4zNQoKc2VsZWN0aW9uX2JpYXMgPSBbXQpyZXBsaWNhdGlvbl9nYXAgPSBbXQpzZWxlY3RlZF90cnV0aCA9IFtdCgpmb3IgXyBpbiByYW5nZShyZXBsaWNhdGlvbnMpOgogICAgdHJ1ZV9lZmZlY3QgPSBybmcubm9ybWFsKGxvYz0wLjIwLCBzY2FsZT0wLjE4LCBzaXplPXByb2dyYW1zKQogICAgZGlzY292ZXJ5ID0gdHJ1ZV9lZmZlY3QgKyBybmcubm9ybWFsKHNjYWxlPWVzdGltYXRpb25fc2UsIHNpemU9cHJvZ3JhbXMpCiAgICB3aW5uZXIgPSBucC5hcmdtYXgoZGlzY292ZXJ5KQogICAgcmVwbGljYXRpb24gPSB0cnVlX2VmZmVjdFt3aW5uZXJdICsgcm5nLm5vcm1hbChzY2FsZT1lc3RpbWF0aW9uX3NlKQoKICAgIHNlbGVjdGlvbl9iaWFzLmFwcGVuZChkaXNjb3Zlcnlbd2lubmVyXSAtIHRydWVfZWZmZWN0W3dpbm5lcl0pCiAgICByZXBsaWNhdGlvbl9nYXAuYXBwZW5kKGRpc2NvdmVyeVt3aW5uZXJdIC0gcmVwbGljYXRpb24pCiAgICBzZWxlY3RlZF90cnV0aC5hcHBlbmQodHJ1ZV9lZmZlY3Rbd2lubmVyXSkKCnNlbGVjdGlvbl9iaWFzID0gbnAuYXJyYXkoc2VsZWN0aW9uX2JpYXMpCnJlcGxpY2F0aW9uX2dhcCA9IG5wLmFycmF5KHJlcGxpY2F0aW9uX2dhcCkKc2VsZWN0ZWRfdHJ1dGggPSBucC5hcnJheShzZWxlY3RlZF90cnV0aCkKCnByaW50KGYiQXZlcmFnZSB0cnVlIGVmZmVjdCBvZiBzZWxlY3RlZCB3aW5uZXI6IHtzZWxlY3RlZF90cnV0aC5tZWFuKCk6LjNmfSIpCnByaW50KGYiQXZlcmFnZSB1cHdhcmQgYmlhcyBpbiBkaXNjb3ZlcnkgZXN0aW1hdGU6IHtzZWxlY3Rpb25fYmlhcy5tZWFuKCk6LjNmfSIpCnByaW50KGYiQXZlcmFnZSBkaXNjb3ZlcnkgbWludXMgcmVwbGljYXRpb246IHtyZXBsaWNhdGlvbl9nYXAubWVhbigpOi4zZn0iKQpwcmludChmIlNoYXJlIHdpdGggZGlzY292ZXJ5IGVzdGltYXRlIGFib3ZlIHRydXRoOiB7KHNlbGVjdGlvbl9iaWFzID4gMCkubWVhbigpOi4zZn0iKQpwcmludCgiQmlhcyBxdWFudGlsZXM6IiwgbnAucm91bmQobnAucXVhbnRpbGUoc2VsZWN0aW9uX2JpYXMsIFswLjEsIDAuNSwgMC45XSksIDMpKQ== layout: vertical locale: zh packages: numpy title: Python:选择最佳项目与赢家诅咒 --- :: ::web-r --- code64: c2V0LnNlZWQoMTIwMjYpCnJlcGxpY2F0aW9ucyA8LSAzMDAwCnByb2dyYW1zIDwtIDIwCmVzdGltYXRpb25fc2UgPC0gMC4zNQoKc2VsZWN0aW9uX2JpYXMgPC0gbnVtZXJpYyhyZXBsaWNhdGlvbnMpCnJlcGxpY2F0aW9uX2dhcCA8LSBudW1lcmljKHJlcGxpY2F0aW9ucykKc2VsZWN0ZWRfdHJ1dGggPC0gbnVtZXJpYyhyZXBsaWNhdGlvbnMpCgpmb3IgKHIgaW4gc2VxX2xlbihyZXBsaWNhdGlvbnMpKSB7CiAgdHJ1ZV9lZmZlY3QgPC0gcm5vcm0ocHJvZ3JhbXMsIG1lYW4gPSAwLjIwLCBzZCA9IDAuMTgpCiAgZGlzY292ZXJ5IDwtIHRydWVfZWZmZWN0ICsgcm5vcm0ocHJvZ3JhbXMsIHNkID0gZXN0aW1hdGlvbl9zZSkKICB3aW5uZXIgPC0gd2hpY2gubWF4KGRpc2NvdmVyeSkKICByZXBsaWNhdGlvbiA8LSB0cnVlX2VmZmVjdFt3aW5uZXJdICsgcm5vcm0oMSwgc2QgPSBlc3RpbWF0aW9uX3NlKQoKICBzZWxlY3Rpb25fYmlhc1tyXSA8LSBkaXNjb3Zlcnlbd2lubmVyXSAtIHRydWVfZWZmZWN0W3dpbm5lcl0KICByZXBsaWNhdGlvbl9nYXBbcl0gPC0gZGlzY292ZXJ5W3dpbm5lcl0gLSByZXBsaWNhdGlvbgogIHNlbGVjdGVkX3RydXRoW3JdIDwtIHRydWVfZWZmZWN0W3dpbm5lcl0KfQoKcHJpbnQoYygKICBtZWFuX3NlbGVjdGVkX3RydXRoID0gbWVhbihzZWxlY3RlZF90cnV0aCksCiAgbWVhbl9zZWxlY3Rpb25fYmlhcyA9IG1lYW4oc2VsZWN0aW9uX2JpYXMpLAogIG1lYW5fZGlzY292ZXJ5X21pbnVzX3JlcGxpY2F0aW9uID0gbWVhbihyZXBsaWNhdGlvbl9nYXApLAogIHNoYXJlX2Rpc2NvdmVyeV9hYm92ZV90cnV0aCA9IG1lYW4oc2VsZWN0aW9uX2JpYXMgPiAwKQopKQpwcmludChxdWFudGlsZShzZWxlY3Rpb25fYmlhcywgYygwLjEsIDAuNSwgMC45KSkp layout: vertical locale: zh title: R:选择最佳项目与赢家诅咒 --- :: ### 实验审计 - 把项目数从 20 改为 2、50 和 200,说明候选越多为何最大噪声通常越大。 - 将标准误从 0.35 降到 0.10,区分更多项目与更精确估计的作用。 - 让所有真实效应都等于 0.2,验证赢家诅咒不需要真实异质性。 - 当前“独立复核”仍有噪声;重复很多次后其平均值才围绕真实效应。不要把单次复核失败自动归因于原研究错误。 ## 从论文到政策的审计模板 | 环节 | 必须写清的问题 | | --- | ------------------------ | | 目标 | 预测风险、估计 ATE/CATE,还是选择政策? | | 数据 | 谁进入样本,处理和结果怎样测量? | | 识别 | 反事实来自随机化、阈值、工具还是无混杂? | | 异质性 | 亚组是否事先定义,重叠是否足够? | | 选择 | 模型、亚组或项目是否按同一数据挑选? | | 推断 | 区间是否考虑聚类、多重比较和选择过程? | | 外推 | 估计对应哪类边际个体与处理版本? | | 决策 | 成本、资源、公平性和伤害怎样进入规则? | ## 分层作业 ### 本科生任务 为大学准入案例画一张 DAG,至少包括家庭收入、考试成绩、申请、录取、就读和职业结果。分别说明控制申请、控制录取后变量、只比较实际就读者可能产生什么问题。 ### 研究生任务 设计一个“为 10 个地区选择最佳培训项目”的评价方案。必须给出:目标人群、福利函数、试验分层、CATE 估计、项目选择规则、选择后置信区间、独立复核和公平性审计。解释为何最大平均处理效应不一定是预算约束下价值最高的方案。 ## 一手文献与延伸阅读 1. Chetty, R., Deming, D. J., & Friedman, J. N. (2026). [Diversifying Society’s Leaders? The Determinants and Causal Effects of Admission to Highly Selective Private Colleges](https://academic.oup.com/qje/article-abstract/141/1/51/8306880){rel=""nofollow""}. *Quarterly Journal of Economics*, 141(1), 51–145. DOI: [10.1093/qje/qjaf050](https://doi.org/10.1093/qje/qjaf050){rel=""nofollow""}. 2. Mountjoy, J. (2026). [Marginal Returns to Public Universities](https://academic.oup.com/qje/article/141/1/429/8376650){rel=""nofollow""}. *Quarterly Journal of Economics*, 141(1), 429–497. DOI: [10.1093/qje/qjaf055](https://doi.org/10.1093/qje/qjaf055){rel=""nofollow""}. 3. Feuerriegel, S. et al. (2024). [Causal Machine Learning for Predicting Treatment Outcomes](https://www.nature.com/articles/s41591-024-02902-1){rel=""nofollow""}. *Nature Medicine*, 30, 958–968. DOI: [10.1038/s41591-024-02902-1](https://doi.org/10.1038/s41591-024-02902-1){rel=""nofollow""}. 4. Andrews, I., Kitagawa, T., & McCloskey, A. (2024). [Inference on Winners](https://academic.oup.com/qje/article/139/1/305/7276491){rel=""nofollow""}. *Quarterly Journal of Economics*, 139(1), 305–358. DOI: [10.1093/qje/qjad043](https://doi.org/10.1093/qje/qjad043){rel=""nofollow""}. 建议先复习[工具变量](https://www.pengjiaxin.com/03-iv/)、[双重差分](https://www.pengjiaxin.com/05-did/)和[机器学习与因果推断](https://www.pengjiaxin.com/11-ml-causal/),再完成本章研究设计审计。 # 微观计量经济学:用微观数据构造可信的因果反事实 ## 课程定位 微观计量经济学研究个人、家庭、企业、学校、地区和政策项目层面的数据,重点是如何从观察到的结果中构造“如果同一个单位没有接受处理,会发生什么”的反事实。 它不是计量经济学基础的简单应用清单,而是一套研究设计流程: :mermaid-diagram{code64="Zmxvd2NoYXJ0IExSCiAgUXVlc3Rpb25bIuaUv+etluaIlue7j+a1jumXrumimCJdIC0tPiBQb3RlbnRpYWxbIua9nOWcqOe7k+aenOS4juebruagh+WPguaVsCJdCiAgUG90ZW50aWFsIC0tPiBEZXNpZ25bIuivhuWIq+iuvuiuoSJdCiAgRGVzaWduIC0tPiBEYXRhWyLlvq7op4LmlbDmja7kuI7lpITnkIbniYjmnKwiXQogIERhdGEgLS0+IEVzdGltYXRvclsi5Lyw6K6h6YePIl0KICBFc3RpbWF0b3IgLS0+IEluZmVyZW5jZVsi5o6o5pat5LiO6IGa57G7Il0KICBJbmZlcmVuY2UgLS0+IFNlbnNpdGl2aXR5WyLnqLPlgaXmgKfjgIHlvILotKjmgKfkuI7lpJbpg6jmnInmlYjmgKciXQ==" locale="zh"} 本课程承接[计量经济学](https://www.pengjiaxin.com/../econometrics/)的 OLS、推断和数据工作流;它不把“有一个显著系数”当作因果识别,而是先问反事实如何被构造,再选择估计方法。 ## 学习成果 完成课程后,你应能够: 1. 使用潜在结果、ATE、ATT、LATE 和异质性处理效应定义目标参数。 2. 判断随机实验、IV、面板、DID、RDD、匹配和合成控制的识别条件。 3. 解释 OLS、2SLS、固定效应、事件研究、局部多项式和离散选择估计。 4. 选择与处理分配、误差相关和样本层级匹配的标准误。 5. 诊断平行趋势、操纵、弱工具、重叠、选择和函数形式风险。 6. 区分总体效应、局部效应、短期效应和特定人群的政策效应。 7. 用 Python 或 R 完成从数据清理到可重复结果的微观实证项目。 8. 阅读前沿论文时,先审查识别策略,再审查估计器、推断和稳健性。 ## 本科生与研究生路径 | 层级 | 必须掌握 | 研究生扩展 | | --- | ----------------------------------------- | ----------------------------------------------- | | 本科生 | 能画潜在结果、解释 OLS/IV/DID/RDD 的直觉,完成一个清晰的政策评估。 | 加入异质性、安慰剂和替代窗口分析。 | | 研究生 | 能写出识别假设、目标参数、估计量和推断方案。 | 处理交错处理、弱识别、部分识别、机器学习 nuisance functions 和外部有效性。 | ## 先修诊断 | 问题 | 需要掌握的思想 | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------- | | 为什么同一单位的 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[1]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 和 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[Y]{.mord,mathnormal style="margin-right:0.2222em;"}[(]{.mopen}[0]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 不能同时观察? | 因果推断的基本反事实问题。 | | 为什么加入固定效应不一定消除内生性? | 固定效应只消除时间不变差异。 | | DID 的平行趋势是关于哪个未观察结果的假设? | 关于处理组在未处理状态下的趋势。 | | RDD 为什么是局部效应? | 设计比较阈值附近单位,不能自动推广到远离阈值的人群。 | | 机器学习为什么不能替代识别假设? | 算法可改进预测或控制函数估计,但不能创造外生变动。 | 如果这些问题还不熟,先返回[计量经济学的 OLS 与推断章节](https://www.pengjiaxin.com/../econometrics/02-ols-and-geometry),再开始具体设计。 ## 贯穿案例:教育政策评估 假设某项奖学金政策使部分学生更容易进入大学,研究者关心四年后的收入。一个完整分析要依次说明: 1. **处理:** 获得奖学金、实际入学,还是完成学位? 2. **结果:** 年收入、就业概率、工作质量还是继续教育? 3. **目标参数:** ATE、符合资格者 ATT,还是被政策改变行为者 LATE? 4. **识别:** 随机资格、政策阈值、地区实施时间,还是工具变量? 5. **处理版本:** 不同学校、金额、持续时间和遵从程度是否混在一起? 6. **推断:** 处理在哪里分配,错误项在哪里相关,标准误应聚类到哪里? 7. **外部有效性:** 结果能否推广到未申请、其他年龄或其他地区? 同一数据集可以产生多个不同的估计量。研究设计的价值在于让读者知道哪个估计量对应哪个政策问题。 ## 课程章节 | 章节 | 主题 | 主要问题 | | -----------------------------------------------------------------------: | ----------------- | ----------------------- | | [01|微观计量与因果推断导论](https://www.pengjiaxin.com/01-intro/) | 微观计量与因果推断导论 | 潜在结果、RCT、选择偏误如何连接? | | [02|线性回归与 OLS](https://www.pengjiaxin.com/02-ols/) | 线性回归与 OLS | 控制变量、FWL、稳健推断和经济解释如何完成? | | [03|工具变量法](https://www.pengjiaxin.com/03-iv/) | 工具变量法 | 如何用外生变动识别内生处理? | | [04|面板数据方法](https://www.pengjiaxin.com/04-panel/) | 面板数据方法 | 如何利用个体和时间维度控制不可观测差异? | | [05|双重差分法](https://www.pengjiaxin.com/05-did/) | 双重差分法 | 如何构造政策前后和处理对照的反事实? | | [06|断点回归设计](https://www.pengjiaxin.com/06-rdd/) | 断点回归设计 | 阈值附近的局部比较何时可信? | | [07|匹配与倾向得分](https://www.pengjiaxin.com/07-matching/) | 匹配与倾向得分 | 可观测选择与重叠条件如何影响估计? | | [08|离散选择模型](https://www.pengjiaxin.com/08-discrete-choice/) | 离散选择模型 | 如何建模二元、多元和随机效用选择? | | [09|计数数据与受限因变量](https://www.pengjiaxin.com/09-count-limited/) | 计数数据与受限因变量 | 零值、上限、截断和计数结构如何处理? | | [10|合成控制法](https://www.pengjiaxin.com/10-synthetic-control/) | 合成控制法 | 如何为单个处理单位构造加权反事实? | | [11|机器学习与因果推断](https://www.pengjiaxin.com/11-ml-causal/) | 机器学习与因果推断 | 高维控制和异质性如何与识别结合? | | [12|前沿文献与现代微观案例](https://www.pengjiaxin.com/12-frontier-literature-2026) | 高校准入、因果机器学习与选择后推断 | 研究结论如何进入异质性政策与有效决策? | 各章现在采用同一教学骨架:先定义 estimand 与反事实,再给最小公式、一个反例、一个可独立运行的浏览器实验,最后用诊断清单和短任务收束。详细程度来自推理链完整,而不是堆叠重复代码。 ## 二次审查后的识别与实验地图 本轮审查不只检查章节是否“有公式”,而是逐章核对目标参数、识别条件、诊断任务和网页实验是否能连成完整研究流程。以下表格可作为选题导航: | 方法 | 主要 estimand | 最关键的识别风险 | 网页实验 | | ---------- | --------------- | -------------- | ------------------ | | RCT / 潜在结果 | ATE、ITT、TOT | 不遵从、流失、干扰和处理版本 | 自选择与随机化 | | OLS | 线性投影或条件效应 | 遗漏变量、坏控制、函数形式 | OVB、HC1 与 FWL | | IV | LATE 或结构参数 | 排除限制、弱工具、单调性 | 鼓励设计与 Wald 比率 | | 面板固定效应 | 个体内变化对应的参数 | 时间变化混淆、动态偏误 | pooled 与双向 FE | | DID | ATT 或组别—时间效应 | 平行趋势、交错实施、预期效应 | 平行与非平行反事实 | | RDD | 阈值处局部处理效应 | 操纵、排序、带宽与函数形式 | 局部线性与带宽 | | 匹配 / IPW | 可观测选择下的 ATE/ATT | 无混杂、重叠和极端权重 | 平衡、权重与 ESS | | 离散选择 | 选择概率、边际效应 | IIA、尺度归一化、内生属性 | Logit 与 AME | | 计数 / 受限结果 | 条件均值或潜变量参数 | 过度离散、零膨胀、删失机制 | Poisson QMLE 与 IRR | | 合成控制 | 单个处理单位的路径效应 | 供体池、预处理拟合、外推 | 权重、RMSPE 与安慰剂 | | 因果机器学习 | 异质性效应、正交矩条件 | 过拟合、重叠、目标泄漏 | 交叉拟合 DML | 表中每个实验都使用当前项目的 Pyodide fenced block,单元彼此独立,可在浏览器中显示、修改和运行;前沿章另给出等价 webR 实现。合成数据只用于暴露统计机制,不会自动证明真实应用中的识别假设。 ## 一页研究设计审计表 在运行任何回归前,先完成下面九项。若其中一项写不清,增加模型复杂度通常不会解决问题。 1. **研究问题:** 哪个主体、处理、结果和时间范围? 2. **目标参数:** ATE、ATT、LATE、局部效应、边际效应还是预测风险? 3. **处理分配:** 谁决定处理,在哪个层级、何时决定? 4. **反事实来源:** 随机化、阈值、时间变化、工具变量还是可观测匹配? 5. **识别假设:** 哪些假设可用数据诊断,哪些只能依靠制度知识? 6. **估计量:** 为什么该估计器对应目标参数,而不是另一个参数? 7. **推断:** 误差可能在哪里相关,处理实际有多少个独立分配单元? 8. **稳健性:** 哪个检查直接回应最重要的识别威胁? 9. **适用范围:** 对哪些人、地区、时期和处理版本成立? ## 理论与方法支撑 - 潜在结果与实验:Imbens and Rubin, *Causal Inference*; - OLS、IV、面板与离散选择:Wooldridge, *Econometric Analysis of Cross Section and Panel Data*; - DID 与现代政策评估:Angrist and Pischke;Callaway and Sant’Anna;Sun and Abraham; - RDD:Cattaneo, Idrobo and Titiunik, *A Practical Introduction to Regression Discontinuity Designs*; - 匹配与权重:Rosenbaum and Rubin;Imbens; - 合成控制:Abadie, Diamond and Hainmueller; - 因果机器学习:Chernozhukov et al. 的 Double/Debiased ML 与 Athey–Wager 的异质性效应框架。 这些参考负责支撑识别条件和估计性质;具体实证结论仍要由研究场景、数据质量和设计证据支撑。 ## 13 周研究训练路径 | 周次 | 方法 | 研究训练 | | -: | --------- | --------------------------- | | 1 | 潜在结果与实验 | 写出一个政策的处理、结果和反事实。 | | 2 | OLS 与选择偏误 | 用模拟展示随机化和自选择的差异。 | | 3 | IV | 画出工具、处理、结果和排除限制路径。 | | 4 | 面板 | 比较 pooled、固定效应和随机效应。 | | 5 | DID | 画事件研究图,讨论平行趋势与交错实施。 | | 6 | RDD | 检查阈值操纵、带宽和连续性。 | | 7 | 匹配/IPW | 检查倾向得分重叠和权重极端值。 | | 8 | 离散选择 | 区分概率、边际效应、替代弹性和 IIA。 | | 9 | 计数/受限因变量 | 比较 Poisson、负二项、Tobit 与两部模型。 | | 10 | 合成控制 | 选择供体池并进行安慰剂检验。 | | 11 | 因果机器学习 | 交叉拟合、异质性和过拟合诊断。 | | 12 | 前沿案例 | 审计高校准入、个体化处理与赢家诅咒证据。 | | 13 | 研究项目 | 完成识别备忘录、结果表和限制说明。 | ## 研究项目最低要求 ### 本科项目 - 研究问题、处理、结果和目标人群定义清楚; - 至少一个基准估计和一个识别威胁讨论; - 报告单位、样本、标准误和置信区间; - 至少一个安慰剂、替代结果或样本敏感性检查; - 诚实区分相关、预测和因果语言。 ### 研究生项目 - 明确 estimand、识别假设和估计量; - 说明处理效应异质性和外部有效性; - 检查弱识别、操纵、预趋势、重叠或函数形式; - 进行多重推断、敏感性分析或部分识别讨论; - 交付数据字典、可复现代码、分析日志和研究报告。 ## 读论文的方法 阅读一篇微观计量论文时依次回答: 1. 作者想估计哪个反事实参数? 2. 哪个制度或数据变化提供识别? 3. 识别假设能被观察到、检验到,还是只能由制度知识支持? 4. 估计器与样本结构匹配吗? 5. 标准误和推断是否考虑处理分配与误差相关? 6. 效应对哪些人、哪个时间窗口和哪个处理版本成立? 7. 稳健性分析是否真的对应识别威胁? ## 常见错误 - 先选方法,再寻找能套上的问题; - 把平行趋势图形“好看”当作假设被证明; - 把第一阶段显著当作 IV 有效; - 把固定效应写成“控制了所有不可观测变量”; - 把显著异质性解释成机制,却没有预先定义分组; - 把机器学习的预测性能当作因果效应可信度; - 忽略缺失值、样本流失、处理版本和政策执行差异。 ## 推荐教材与工具 - Angrist and Pischke, *Mostly Harmless Econometrics*; - Wooldridge, *Econometric Analysis of Cross Section and Panel Data*; - Cunningham, *Causal Inference: The Mixtape*; - Huntington-Klein, *The Effect*; - Python:`pandas`、`statsmodels`、`linearmodels`、`econml`; - R:`fixest`、`estimatr`、`did`、`rdrobust`、`MatchIt`、`grf`。 课程各章的 Pyodide 单元和前沿章的 webR 单元可直接用于浏览器练习;研究生项目仍应在本地环境复现,并固定依赖版本。 # 🎓 微观经济学 III – 学习笔记 这套笔记按照一门高年级本科或研究生入门层次的微观经济学课程来组织。它不是把初级微观的结论重新讲一遍,而是训练你用“模型-约束-均衡-福利-激励”的语言分析问题:先写清楚经济环境,再求解个体最优,最后判断市场结果是否有效率、是否稳定、是否需要重新设计规则。 如果你把这门课当作一条学习路径,建议按章节顺序读。前四章建立个人选择、福利测度和一般均衡;第五、六章进入策略互动和产业组织;第七、八章处理信息和激励;最后三章把这些工具放到市场失灵、匹配机制和数字经济应用中检验。 ::tip{title="适合谁读"} 如果你已经学过初级微观经济学,并且愿意跟着公式推导、例题和图形直觉一起走,这套笔记可以作为系统复习和进阶学习材料。第一次阅读不必追求每个证明都一步到位,但要养成把假设、目标函数、约束条件和均衡概念写完整的习惯。 :: ## 预备知识 阅读前最好具备以下基础: :cytoscape-graph{props64="eyJub2RlcyI6W3siaWQiOiJjaG9pY2UiLCJsYWJlbCI6IumAieaLqSIsImdyb3VwIjoiZm91bmRhdGlvbiJ9LHsiaWQiOiJjb25zdHJhaW50IiwibGFiZWwiOiLnuqbmnZ8iLCJncm91cCI6ImZvdW5kYXRpb24ifSx7ImlkIjoib3B0aW11bSIsImxhYmVsIjoi5pyA5LyY5p2h5Lu2IiwiZ3JvdXAiOiJtZXRob2QifSx7ImlkIjoiZXF1aWxpYnJpdW0iLCJsYWJlbCI6IuWdh+ihoSIsImdyb3VwIjoibWV0aG9kIn0seyJpZCI6IndlbGZhcmUiLCJsYWJlbCI6Iuemj+WIqeivhOS7tyIsImdyb3VwIjoib3V0Y29tZSJ9LHsiaWQiOiJpbmNlbnRpdmUiLCJsYWJlbCI6Iua/gOWKseebuOWuuSIsImdyb3VwIjoib3V0Y29tZSJ9XSwiZWRnZXMiOlt7InNvdXJjZSI6ImNob2ljZSIsInRhcmdldCI6ImNvbnN0cmFpbnQiLCJsYWJlbCI6IuWPl+mZkOS6jiJ9LHsic291cmNlIjoiY29uc3RyYWludCIsInRhcmdldCI6Im9wdGltdW0iLCJsYWJlbCI6IuaOqOWHuiJ9LHsic291cmNlIjoib3B0aW11bSIsInRhcmdldCI6ImVxdWlsaWJyaXVtIiwibGFiZWwiOiLnm7jkupLkvZznlKgifSx7InNvdXJjZSI6ImVxdWlsaWJyaXVtIiwidGFyZ2V0Ijoid2VsZmFyZSIsImxhYmVsIjoi6K+E5Lu3In0seyJzb3VyY2UiOiJlcXVpbGlicml1bSIsInRhcmdldCI6ImluY2VudGl2ZSIsImxhYmVsIjoi6YeN5paw6K6+6K6hIn0seyJzb3VyY2UiOiJpbmNlbnRpdmUiLCJ0YXJnZXQiOiJjb25zdHJhaW50IiwibGFiZWwiOiLmlLnlj5jnuqbmnZ8ifV0sImNhcHRpb24iOiLpq5jnuqflvq7op4Lnu4/mtY7lrabnmoTmpoLlv7XnvZHnu5zvvJrku47kuKrkvZPpgInmi6nliLDliLbluqborr7orqHjgIIifQ=="} | 领域 | 需要掌握的内容 | 在本课程中的用途 | | ----- | ---------------------- | ------------------------ | | 微观经济学 | 供求、消费者选择、生产者理论、完全竞争与垄断 | 理解模型背后的经济直觉 | | 数学分析 | 偏导数、全微分、凹凸性、隐函数定理的基本用法 | 推导一阶条件、比较静态和福利变化 | | 最优化 | 拉格朗日乘数法、约束优化、互补松弛的直觉 | 求解效用最大化、支出最小化、利润最大化和合约设计 | | 概率论 | 随机变量、期望、方差、条件概率 | 学习不确定性、保险、逆向选择和道德风险 | | 博弈论入门 | 策略、支付、最优反应、纳什均衡 | 进入寡头竞争、机制设计和市场设计 | ::warning{title="学习提醒"} 本课程默认你愿意在“经济直觉”和“数学表达”之间来回切换。只会背结论很难应付题目;只会算一阶条件而不解释约束和均衡,也很难真正理解模型。 :: ## 学完后应能做到 1. 从偏好、预算、技术、信息和制度约束出发,独立搭建一个微观经济模型。 2. 用效用最大化、支出最小化、利润最大化和博弈均衡推导经济主体的行为。 3. 区分替代效应、收入效应、风险态度、策略反应和激励约束对结果的影响。 4. 用 CV、EV、消费者剩余、帕累托效率和福利定理评价市场结果。 5. 分析信息不对称、外部性、公共物品和非价格配置为什么会造成市场失灵。 6. 理解机制设计、拍卖和匹配理论如何把“给定市场”推进到“设计市场”。 ## 课程主线 :mermaid-diagram{code64="Zmxvd2NoYXJ0IFRECiAgQVsi5Liq5Lq66YCJ5oup77ya5YGP5aW944CB5pWI55So44CB6aKE566XIl0gLS0+IEJbIumcgOaxguWPjeW6lO+8muavlOi+g+mdmeaAgeS4juemj+WIqea1i+W6piJdCiAgQiAtLT4gQ1si6aOO6Zmp546v5aKD77ya5pyf5pyb5pWI55So5LiO5L+d6ZmpIl0KICBCIC0tPiBEWyLluILlnLrmlbTkvZPvvJrkuIDoiKzlnYfooaHkuI7npo/liKnlrprnkIYiXQogIEMgLS0+IEVbIuetlueVpeS6kuWKqO+8muWNmuW8iOiuuiJdCiAgRCAtLT4gRQogIEUgLS0+IEZbIuS6p+S4mue7hOe7h++8muWvoeWktOernuS6ieS4juWQiOiwiyJdCiAgRSAtLT4gR1si5L+h5oGv5LiO5r+A5Yqx77ya6YCG5ZCR6YCJ5oup44CB6YGT5b636aOO6ZmpIl0KICBHIC0tPiBIWyLmnLrliLborr7orqHvvJrmi43ljZbjgIFWQ0fjgIHmnIDkvJjmnLrliLYiXQogIEggLS0+IElbIuW4guWcuuWkseeBteS4juW4guWcuuiuvuiuoSJdCiAgSSAtLT4gSlsi57u85ZCI5bqU55So77ya5pWw5a2X5bmz5Y+w44CB5pWw5o2u5LiO566X5rOVIl0=" locale="zh"} 这条主线可以概括为三句话: - **先问个体如何选择**:偏好、预算、风险和信息决定了个人或企业的可行选择。 - **再问互动如何形成结果**:市场价格、策略反应、合约和制度规则把个体选择连接成均衡。 - **最后问结果是否值得接受**:效率、公平、激励相容和可实施性决定了政策或机制设计的方向。 ## 近年前沿:把模型带到数据和平台里 高级微观经济学的前沿不是抛开基础模型,而是把“选择、均衡、激励、福利”放进新的经济环境里检验。近几年有三条线特别适合作为本课程的延伸阅读。 | 前沿方向 | 代表研究 | 和本课程的关系 | | --------- | ---------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- | | 文本算法与经济数据 | Ash & Hansen (2023, *Annual Review of Economics*, DOI: 10.1146/annurev-economics-082222-074352) | 文本可以进入模型和实证分析,但算法输出要验证。这会训练你把“变量定义”和“可检验预测”写得更清楚。 | | 算法定价与竞争 | Assad et al. (2023, *JPE*, DOI: 10.1086/726906);Johnson, Rhodes & Wildenbeest (2023, *Econometrica*, DOI: 10.3982/ecta19978) | 寡头竞争不再只是假设企业手动定价,算法会改变反应速度、信息结构和合谋风险。第 6、8、11 章的工具会直接用上。 | | 数字平台治理 | Chen et al. (2021, DOI: 10.1177/01492063211045023);Bonina et al. (2021, DOI: 10.1111/isj.12326) | 平台既是市场,也是制度设计者。它决定排序、准入、处罚和数据规则,所以机制设计和市场设计不只是数学题。 | 读这些论文时,不要把重点放在“又多了几个新名词”。更好的读法是问:传统模型的哪一个假设被放松了?参与者的约束、信息或策略空间发生了什么变化?福利评价为什么变得更复杂?如果能这样读,前沿文献会反过来帮助你理解本科和硕士微观经济学为什么反复训练模型设定。 ## 12 周学习路径 | 周次 | 章节 | 学习重点 | 与前后章节的关系 | | -- | --------------------------------------------------------------------------- | ---------------------- | ---------------------- | | 1 | [01 消费者理论与分析基础](https://www.pengjiaxin.com/../01-fundations/) | 偏好公理、效用函数、UMP/EMP、对偶关系 | 为后续所有比较静态和福利分析打底 | | 2 | [02 比较静态分析与福利测度](https://www.pengjiaxin.com/../02-comparative-statics/) | 斯勒茨基方程、CV/EV、消费者剩余 | 把“最优选择”转化为“政策变化如何影响福利” | | 3 | [03 不确定性下的决策](https://www.pengjiaxin.com/../03-uncertainty/) | 期望效用、风险规避、保险和投资 | 把确定性选择扩展到随机结果 | | 4 | [04 一般均衡与福利经济学](https://www.pengjiaxin.com/../04-general-equilibrium/) | 埃奇沃斯盒子、竞争性均衡、福利定理 | 从单个市场推进到整个经济系统 | | 5 | [05 博弈论:静态与动态博弈](https://www.pengjiaxin.com/../05-game-theory/) | 纳什均衡、混合策略、逆向归纳、重复博弈 | 为企业竞争、拍卖和机制设计提供语言 | | 6 | [06 寡头垄断与策略性市场行为](https://www.pengjiaxin.com/../06-oligopoly/) | 古诺、伯特兰、斯塔克尔伯格、合谋 | 把博弈论用于现实市场结构 | | 7 | [07 信息经济学](https://www.pengjiaxin.com/../07-information-economics/) | 逆向选择、信号、筛选、道德风险 | 解释价格和合约为什么不能自动解决所有问题 | | 8 | [08 机制设计与拍卖理论](https://www.pengjiaxin.com/../08-mechanism-design/) | 显示原理、激励相容、VCG、收入等价 | 从分析制度转向设计制度 | | 9 | [09 行为微观经济学](https://www.pengjiaxin.com/../09-behavioural-economics/) | 有限理性、前景理论、社会偏好、实验方法 | 检验标准理性模型的边界 | | 10 | [10 外部性与公共物品](https://www.pengjiaxin.com/../10-externalities-public-goods/) | 庇古税、科斯定理、公共物品、VCG | 用福利和机制工具处理市场失灵 | | 11 | [11 市场设计与匹配理论](https://www.pengjiaxin.com/../11-market-design/) | 稳定匹配、延迟接受、学校选择、器官交换 | 研究价格机制受限时的资源配置 | | 12 | [12 回顾与前沿应用](https://www.pengjiaxin.com/../12-review/) | 知识框架整合、平台经济、数据与算法 | 把全课程工具用于复杂现实问题 | ## 怎样使用这些笔记 每章通常包含四类内容:经济动机、理论框架、例题推导和直觉总结。建议按下面的顺序学习: 1. **先读经济动机**:弄清楚这一章想解释什么现象,哪些旧工具不够用。 2. **再看模型设定**:把参与者、选择变量、目标函数、约束和信息结构写在草稿纸上。 3. **跟一遍推导**:不要只看公式结论,至少独立推一次关键一阶条件或均衡条件。 4. **做例题和问题集**:把例题当作模板,训练“设定-求解-解释-比较”的答题结构。 5. **最后读小结**:检查自己是否能用中文说清楚本章的核心洞见。 ::legacy-details{title="做题时的通用答题框架"} 1. 写清楚经济环境:谁在决策?可选行动是什么?有哪些约束? 2. 写出目标函数:最大化效用、利润、期望效用,还是社会福利? 3. 求解最优条件:一阶条件、最优反应、均衡条件或激励相容约束。 4. 解释经济含义:每一项代表什么效应?结果为什么合理? 5. 做比较静态或福利判断:参数改变后,行为、均衡和剩余如何变化? :: ## 常见考核重点 | 题型 | 常见要求 | 复习建议 | | ------ | --------------------------- | ----------------------- | | 推导题 | 从效用或利润函数推需求、供给、最优反应或合约 | 熟练写一阶条件,并说明二阶条件或凹性 | | 比较静态题 | 分析价格、收入、成本、风险或信息变化的影响 | 明确区分直接效应、替代效应、收入效应和策略效应 | | 福利分析题 | 计算 CV/EV、剩余、DWL 或帕累托改进 | 先画图或列资源约束,再给出货币化解释 | | 博弈与机制题 | 求纳什均衡、子博弈精炼均衡、DSIC 或 VCG 支付 | 先列策略和支付,再检查偏离是否有利 | | 应用短论题 | 用理论解释政策、平台、保险、广告或匹配制度 | 不要堆概念,要说明“模型假设如何对应现实” | ## 章节入口 | 章节 | 主题 | 页面 | | -- | ------------ | -------------------------------------------------------------------- | | 01 | 消费者理论与分析基础 | [打开章节](https://www.pengjiaxin.com/../01-fundations/) | | 02 | 比较静态分析与福利测度 | [打开章节](https://www.pengjiaxin.com/../02-comparative-statics/) | | 03 | 不确定性下的决策 | [打开章节](https://www.pengjiaxin.com/../03-uncertainty/) | | 04 | 一般均衡与福利经济学 | [打开章节](https://www.pengjiaxin.com/../04-general-equilibrium/) | | 05 | 博弈论:静态与动态博弈 | [打开章节](https://www.pengjiaxin.com/../05-game-theory/) | | 06 | 寡头垄断与策略性市场行为 | [打开章节](https://www.pengjiaxin.com/../06-oligopoly/) | | 07 | 信息经济学 | [打开章节](https://www.pengjiaxin.com/../07-information-economics/) | | 08 | 机制设计与拍卖理论 | [打开章节](https://www.pengjiaxin.com/../08-mechanism-design/) | | 09 | 行为微观经济学 | [打开章节](https://www.pengjiaxin.com/../09-behavioural-economics/) | | 10 | 外部性与公共物品 | [打开章节](https://www.pengjiaxin.com/../10-externalities-public-goods/) | | 11 | 市场设计与匹配理论 | [打开章节](https://www.pengjiaxin.com/../11-market-design/) | | 12 | 回顾与前沿应用 | [打开章节](https://www.pengjiaxin.com/../12-review/) | ## 核心模型速览 虽然各章主题不同,但大多数模型都可以压缩成三个基本形式。第一类是个人最优化: [[[]{.katex-mathml}[[[]{.strut style="height:1.45em;vertical-align:-0.7em;"}[[[[[[]{.pstrut style="height:3em;"}[[x]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[f]{.mord.mathnormal style="margin-right:0.1076em;"}[(]{.mopen}[x]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:1em;"}[[s.t.]{.mord}]{.mord.text}[]{.mspace style="margin-right:1em;"}[g]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[x]{.mord.mathnormal}[;]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[0]{.mord}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是选择变量, [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是价格、收入、风险、成本或信息结构。第二类是均衡: [[[]{.katex-mathml}[[[]{.strut style="height:0.6891em;vertical-align:-0.15em;"}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[∈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[B]{.mord.mathnormal style="margin-right:0.0502em;"}[[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0077em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[a]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[i]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2083em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[i]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8389em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[n]{.mord.mathnormal}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 意思是每个参与者的行动都必须是对别人行动的最优反应。第三类是机制设计: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[choose ]{.mord}]{.mord.text}[(]{.mopen}[x]{.mord.mathnormal}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[t]{.mord.mathnormal}[(]{.mopen}[θ]{.mord.mathnormal style="margin-right:0.0278em;"}[))]{.mclose}[]{.mspace style="margin-right:1em;"}[[s.t. IC and IR]{.mord}]{.mord.text}[,]{.mpunct}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 即规则设计者不仅要考虑结果是否有效率,还要让参与者愿意如实报告、愿意参加。 一个简单案例是网约车平台补贴。乘客价格下降会增加需求,这是消费者理论;司机和平台的反应形成均衡,这是产业组织;平台如何设计抽成和派单规则涉及机制设计;高峰期拥堵和外部性又把问题带到公共经济学。学习本课程时,要训练自己把现实问题拆成这些层次。 ## 常见误区 - 把微观经济学理解成“背诵结论”。本课程更重视建模步骤:假设、目标函数、约束、均衡和福利判断。 - 只会求一阶条件,却不说明经济含义。考试和研究写作都要求解释每个条件代表的边际权衡。 - 把市场均衡等同于社会最优。信息不对称、外部性、市场势力和行为偏差都会破坏这个等同。 - 看到复杂现实就放弃模型。模型不是复制现实,而是抓住关键机制并明确哪些因素被暂时忽略。 ## 自测题 1. 任选一个现实市场,说明其中的参与者、选择变量、约束条件和可能的均衡概念。 2. 为什么“消费者最优”和“社会福利最大化”不是同一个问题? 3. 解释 CV、EV、纳什均衡、激励相容和稳定匹配分别属于哪一类分析工具。 4. 如果你要分析共享单车的乱停放问题,至少需要用到哪两章的工具?为什么? 5. 读完一章后,你能否用三句话说出它的核心模型、关键公式和现实应用? ## 核心教材 1. **Mas-Colell, Whinston & Green (1995)**, *Microeconomic Theory* 2. **Jehle & Reny (2011)**, *Advanced Microeconomic Theory* 3. **Varian (1992)**, *Microeconomic Analysis* 4. **Tirole (1988)**, *The Theory of Industrial Organization* 如果时间有限,可以把 Varian 用作直觉和计算训练,把 Jehle & Reny 用作进阶教材,把 Mas-Colell, Whinston & Green 作为严格证明和研究生课程的参照。 # 第 1 讲:消费者理论与分析基础 ## 本章导学 这一章是整门课的工具箱。你需要在这里把“消费者会怎么选”这个直觉问题,翻译成偏好关系、效用函数、预算约束和最优化问题。后面无论是福利分析、风险选择、一般均衡,还是机制设计,本质上都在反复使用这一章建立的语言。 学完本章后,你应当能够: - 用偏好公理判断一个效用函数是否能代表某类选择行为。 - 写出并求解效用最大化问题(UMP)和支出最小化问题(EMP)。 - 区分马歇尔需求、希克斯需求、间接效用函数和支出函数。 - 解释罗伊恒等式、谢泼德引理和包络定理为什么有经济含义,而不只是公式。 常见作业和考试会要求你从一个具体效用函数出发,推导需求函数、支出函数或间接效用函数,并解释收入、价格和偏好参数变化带来的影响。做题时不要跳过模型设定:先写预算约束和拉格朗日函数,再讨论内部解、角点解和经济直觉。 承接关系上,本章为[第 2 章](https://www.pengjiaxin.com/../02-comparative-statics/)的斯勒茨基分解和福利测度打基础;如果这一章的对偶关系没有掌握,后面的 CV、EV 和一般均衡会变得很吃力。 ## 经济动机 (Economic Motivation) 理解消费者如何在预算约束下做出最优选择,是分析所有经济行为的基础。这是微观经济学的核心问题,旨在解释个人和家庭如何在有限的资源下实现最大的满足感(效用)。 --- ## 1. 消费者偏好与效用函数 ### 1.1 偏好公理 (Axioms of Preferences) 为了建立一个理性的消费者模型,我们假设消费者的偏好 `≽` (读作“至少一样偏好”) 满足三个基本公理: 1. **完备性 (Completeness)**: 对于任意两个消费束 (consumption bundle) A 和 B,消费者总能做出明确的判断:A `≽` B,或 B `≽` A,或两者都成立 (A `~` B,表示无差异)。这意味着消费者不会感到困惑。 2. **反身性 (Reflexivity)**: 任何消费束 A 至少和其本身一样好,即 A `≽` A。这是一个平凡的公理。 3. **传递性 (Transitivity)**: 如果 A `≽` B 且 B `≽` C,那么必然有 A `≽` C。这保证了消费者选择的一致性,避免了循环选择。 另外两个常用的假设是: 4. **单调性 (Monotonicity)**: “越多越好”。如果消费束 A 中每种商品的数量都不少于 B,且至少有一种商品严格更多,则 A `≻` B (严格偏好)。 5. **凸性 (Convexity)**: “多样化优于极端化”。如果消费者对 A 和 B 无差异 (A `~` B),那么对于任意 `0 < t < 1`,由 A 和 B 混合而成的消费束 C = tA + (1-t)B,都有 C `≽` A。 ### 1.2 无差异曲线 (Indifference Curves) 无差异曲线是所有能给消费者带来相同满足程度的消费束的集合。 - **性质**: 1. 无差异曲线密集分布在坐标平面上。 2. 任意两条无差异曲线永不相交(由传递性和单调性保证)。 3. 在单调性假设下,无差异曲线斜率为负。 4. 在凸性假设下,无差异曲线凸向原点。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgdGl0bGUgIuaXoOW3ruW8guabsue6v+WbviAoSW5kaWZmZXJlbmNlIE1hcCkiCiAgeC1heGlzICLllYblk4EgWOKCgSIgWzEsIDIsIDQsIDgsIDEwXQogIHktYXhpcyAi5ZWG5ZOBIFjigoIiIDAgLS0+IDE0CiAgbGluZSBbMTAsIDUsIDIuNSwgMS4yNSwgMV0KICBsaW5lIFsxNCwgMTAsIDUsIDIuNSwgMl0=" locale="zh"} ### 1.3 效用函数 (Utility Function) 效用函数 `U(x₁, x₂)` 是一个为每个消费束 `(x₁, x₂)` 分配一个数值的方式,使得如果 A `≽` B,则 `U(A) ≥ U(B)`。 #### 1.3.1 序数效用与基数效用 - **序数效用 (Ordinal Utility)**: 效用数值的大小只表示偏好顺序,不表示满足程度的差异。例如 `U` 和 `2U+1` 代表完全相同的偏好。 - **基数效用 (Cardinal Utility)**: 历史上,经济学家曾试图测量"满足程度"的绝对大小,但现代微观经济学普遍采用序数效用观点。 **重要性质**: 如果 `V(x)` 是 `U(x)` 的严格递增变换,即 `V(x) = f(U(x))`,其中 `f'(·) > 0`,那么 `V` 和 `U` 代表相同的偏好关系。这被称为**单调变换不变性**。 #### 1.3.2 边际效用与边际替代率 - **边际效用 (Marginal Utility, MU)**: 消费一单位额外商品带来的效用增量。 [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.263em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}:br**边际效用递减规律**: 在其他商品消费量不变的情况下,随着某种商品消费量的增加,其边际效用通常递减。数学上表示为: [[[]{.katex-mathml}[[[]{.strut style="height:2.454em;vertical-align:-0.9629em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4231em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.0448em;margin-right:0.05em;"}]{.vlist style="height:0.7959em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2769em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∂]{.mord style="margin-right:0.0556em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.4911em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9629em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[<]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - **边际替代率 (Marginal Rate of Substitution, MRS)**: 在保持效用不变的情况下,消费者愿意用多少单位的商品2来交换一单位的商品1。它是无差异曲线斜率的绝对值。 :br**推导**: 沿着无差异曲线,效用保持不变,即 `dU = 0`。利用全微分: [[[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[d]{.mord.mathnormal}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2074em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[d]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.2074em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[d]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}:br 整理得: [[[]{.katex-mathml}[[[]{.strut style="height:2.2074em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[d]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[d]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}:br 因此: [[[]{.katex-mathml}[[[]{.strut style="height:0.8333em;vertical-align:-0.15em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[[S]{.mord.mathnormal style="margin-right:0.0576em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[12]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.0576em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4em;vertical-align:-0.95em;"}[[[[[[[[]{.pstrut style="height:4.4em;"}[]{style="width:0.333em;height:2.4em;"}]{style="top:-3.45em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mopen}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[d]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[d]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[[[[[[]{.pstrut style="height:4.4em;"}[]{style="width:0.333em;height:2.4em;"}]{style="top:-3.45em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mclose}]{.minner}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}:br**经济学直觉**: MRS递减意味着消费者越少拥有某种商品,就越不愿意放弃它。这反映了**多样化偏好**。 #### 1.3.3 常见效用函数形式 1. **柯布-道格拉斯效用函数 (Cobb-Douglas)**: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2333em;vertical-align:-0.2663em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7144em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.967em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}:br 或取对数形式: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[α]{.mord.mathnormal style="margin-right:0.0037em;"}[]{.mspace style="margin-right:0.1667em;"}[ln]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[β]{.mord.mathnormal style="margin-right:0.0528em;"}[]{.mspace style="margin-right:0.1667em;"}[ln]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - **性质**: MRS 为 [[]{.katex-mathml}[[[]{.strut style="height:1.1926em;vertical-align:-0.4811em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[1]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.4101em;"}]{.vlist style="height:0.7115em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4811em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} - **应用**: 常用于实证研究,收入弹性为1(同比例扩张消费) 2. **完全替代品 (Perfect Substitutes)**: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7333em;vertical-align:-0.15em;"}[a]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[b]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - **无差异曲线**: 直线 - **例子**: 不同品牌的瓶装水(消费者无差别) 3. **完全互补品 (Perfect Complements / Leontief)**: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{]{.mopen}[a]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[b]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - **无差异曲线**: L型直角 - **例子**: 左脚鞋和右脚鞋、咖啡和糖(固定比例消费) 4. **CES效用函数 (Constant Elasticity of Substitution)**: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0486em;vertical-align:-0.2663em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[ρ]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.7823em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.2043em;vertical-align:-0.2663em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[ρ]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.7823em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.mclose}[[[[[[]{.pstrut style="height:2.7em;"}[[[1/]{.mord.mtight}[ρ]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.938em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[1]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[[[[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[[]{.mrel}]{.mord}]{.inner}[]{.fix}]{.rlap}]{.thinbox}]{.mord.vbox}]{.mrel}[]{.mspace.nobreak}[=]{.mrel}]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - **特点**: 替代弹性为常数 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[σ]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.3262em;vertical-align:-0.4811em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[1]{.mord.mtight}[−]{.mbin.mtight}[ρ]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.394em;"}]{.vlist style="height:0.8451em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4811em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} - **极限情况**: - [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}: 柯布-道格拉斯 - [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}: 完全替代 - [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[ρ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[→]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[−]{.mord}[∞]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}: 完全互补 5. **拟线性效用函数 (Quasi-linear)**: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} - **特点**: 对商品2无收入效应 - **应用**: 当商品2代表"其他所有商品"时简化分析 --- ## 2. 效用最大化问题 (Utility Maximization Problem, UMP) ### 2.1 预算约束 (Budget Constraint) 假设消费者有收入 `m`,商品1和2的价格分别为 `p₁` 和 `p₂`。预算约束为: [[[]{.katex-mathml}[[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8304em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 预算线是所有刚好花光所有收入的消费束的集合,其斜率为 `-p₁/p₂`。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgdGl0bGUgIumihOeul+e6vyAoQnVkZ2V0IExpbmUpIgogIHgtYXhpcyAi5ZWG5ZOBIFjigoEiIFswLCAyLCA0LCA2LCA4LCAxMF0KICB5LWF4aXMgIuWVhuWTgSBY4oKCIiAwIC0tPiA3CiAgbGluZSBbNSwgNCwgMywgMiwgMSwgMF0=" locale="zh"} ### 2.2 最优选择 (Optimal Choice) 消费者的目标是在预算约束下,选择一个消费束使其效用最大化。 [[[]{.katex-mathml}[[[]{.strut style="height:1.5861em;vertical-align:-0.8361em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[1]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}[,]{.mpunct.mtight}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8361em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:1em;"}[[s.t.]{.mord}]{.mord.text}[]{.mspace style="margin-right:1em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8304em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 在内部解(两种商品都消费)的情况下,最优解的特征是**无差异曲线与预算线相切**。 - **相切条件**: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.988em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:0.2778em;"}[⟹]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.1963em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[M]{.mord.mathnormal style="margin-right:0.109em;"}[[U]{.mord.mathnormal style="margin-right:0.109em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:-0.109em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3603em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.988em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 直觉:消费者愿意用商品1换商品2的主观交换率(MRS)等于市场提供的客观交换率(价格比)。 :mermaid-diagram{code64="eHljaGFydC1iZXRhCiAgdGl0bGUgIuacgOS8mOmAieaLqeeCuSBFIgogIHgtYXhpcyAi5ZWG5ZOBIFjigoEiIFswLCAyLCA0LCA2LCA4LCAxMF0KICB5LWF4aXMgIuWVhuWTgSBY4oKCIiAwIC0tPiAxNAogIGxpbmUgWzgsIDYuNCwgNC44LCAzLjIsIDEuNiwgMF0KICBsaW5lIFs5LCA2LjMsIDQuMiwgMywgMi4zLCAxLjhdCiAgbGluZSBbMTIsIDcuOCwgNC44LCAzLjQsIDIuNiwgMi4xXQogIGxpbmUgWzE0LCAxMSwgOCwgNSwgMy42LCAzXQ==" locale="zh"} ### 2.3 求解方法:拉格朗日法 我们可以建立拉格朗日函数来求解约束最优化问题: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[L]{.mord.mathcal}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[λ]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[(]{.mopen}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7778em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 一阶条件 (First-Order Conditions, FOCs): [[[]{.katex-mathml}[[[]{.strut style="height:7.0723em;vertical-align:-3.2862em;"}[[[[[[[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[L]{.mord.mathcal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-5.7862em;"}[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[L]{.mord.mathcal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-3.2787em;"}[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[λ]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[L]{.mord.mathcal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-0.7713em;"}]{.vlist style="height:3.7862em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:3.2862em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-5.7862em;"}[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-3.2787em;"}[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-0.7713em;"}]{.vlist style="height:3.7862em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:3.2862em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 从前两个式子可以得到 `MU₁/MU₂ = p₁/p₂`,即相切条件。联立求解这三个方程,可以得到**马歇尔需求函数 (Marshallian Demand Functions)**: [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 将最优解代回效用函数,得到**间接效用函数 (Indirect Utility Function)**,它表示在给定价格和收入下,消费者能达到的最大效用水平: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[))]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} --- ## 3. 对偶问题与重要恒等式 ### 3.1 支出最小化问题 (Expenditure Minimization Problem, EMP) 这是效用最大化问题的对偶问题:为了达到一个给定的效用水平 `u`,消费者最少需要花费多少钱? [[[]{.katex-mathml}[[[]{.strut style="height:1.504em;vertical-align:-0.8361em;"}[[[[[[]{.pstrut style="height:3em;"}[[[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[1]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}[,]{.mpunct.mtight}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[2]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3173em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8361em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:1em;"}[[s.t.]{.mord}]{.mord.text}[]{.mspace style="margin-right:1em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 同样使用拉格朗日法求解,可以得到**希克斯需求函数 (Hicksian / Compensated Demand Functions)**: [[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 希克斯需求函数表示在价格变化后,为了保持效用不变,消费者的需求如何调整(“补偿”了收入效应)。 将最优解代回目标函数,得到**支出函数 (Expenditure Function)**,它表示为了达到效用水平 `u` 所需的最小支出: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### 3.2 谢泼德引理 (Shephard's Lemma) 支出函数对商品价格的偏导数等于该商品的希克斯需求量。 [[[]{.katex-mathml}[[[]{.strut style="height:2.3074em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[e]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **直觉**: 如果商品 `i` 的价格上涨1美元,为了保持效用不变,你需要增加的最小支出,正好就是你原本需要购买的 `h_i` 单位商品的价格上涨部分。 ### 3.3 罗伊恒等式 (Roy's Identity) 通过间接效用函数,可以求得马歇尔需求函数。 [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.363em;vertical-align:-0.936em;"}[−]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[/]{.mord}[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.427em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.936em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这个恒等式不那么直观,但它建立了从价值函数到需求函数的另一条关键路径,在理论研究中非常有用。 ### 3.4 对偶关系总结 UMP 和 EMP 之间存在深刻的对偶关系,它们是同一问题的两种不同表述。 :mermaid-diagram{code64="Z3JhcGggVEQKICAgIHN1YmdyYXBoIFVNUAogICAgICAgIEExWyLku7fmoLwgcO+8jOaUtuWFpSBtIl0gLS0+IEIxeyLmlYjnlKjmnIDlpKfljJYifTsKICAgICAgICBCMSAtLT4gQzFbIumprOath+WwlOmcgOaxgiB4KHAsbSkiXTsKICAgICAgICBDMSAtLT4gRDFbIumXtOaOpeaViOeUqCB2KHAsbSkiXTsKICAgIGVuZAogICAgc3ViZ3JhcGggRU1QCiAgICAgICAgQTJbIuS7t+agvCBw77yM5pWI55SoIHUiXSAtLT4gQjJ7IuaUr+WHuuacgOWwj+WMliJ9OwogICAgICAgIEIyIC0tPiBDMlsi5biM5YWL5pav6ZyA5rGCIGgocCx1KSJdOwogICAgICAgIEMyIC0tPiBEMlsi5pSv5Ye65Ye95pWwIGUocCx1KSJdOwogICAgZW5kCgogICAgRDEgLS0gInUgPSB2KHAsbSkiIC0tPiBBMjsKICAgIEQyIC0tICJtID0gZShwLHUpIiAtLT4gQTE7CgogICAgQzEgLS4gIue9l+S8iuaBkuetieW8jyIgLi0+IEQxOwogICAgQzIgLS4gIuiwouazvOW+t+W8leeQhiIgLi0+IEQyOw==" locale="zh"} --- ## 直觉与应用 - **核心思想**: 消费者的最优选择发生在**主观交换意愿 (MRS) 等于市场客观交换率 (价格比)** 的地方。 - **对偶性**: "在给定收入下最大化快乐"和"为了达到一定快乐程度而最小化花费"是等价的。 - **应用**: 这些看似抽象的理论是分析几乎所有经济问题的基础,例如: - **政策分析**: 预测税收或补贴对消费者行为和福利的影响。 - **劳动经济学**: 分析工资变化如何影响劳动供给决策(休闲与工作的权衡)。 - **金融学**: 分析投资者如何在风险和回报之间进行资产组合选择。 --- ## 4. 完整例题求解 ### 例题 1: 柯布-道格拉斯效用函数的需求推导 **题目**: 假设消费者的效用函数为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.0622em;vertical-align:-0.2481em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2481em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2481em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,价格为 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[2]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[3]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,收入为 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[120]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。求: 1. 马歇尔需求函数 2. 间接效用函数 3. 希克斯需求函数和支出函数 **解答**: **(1) 马歇尔需求函数** 建立拉格朗日函数: [[[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[L]{.mord.mathcal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.1111em;vertical-align:-0.247em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[λ]{.mord.mathnormal}[(]{.mopen}[120]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[3]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 一阶条件: [[[]{.katex-mathml}[[[]{.strut style="height:7.0723em;vertical-align:-3.2862em;"}[[[[[[[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[L]{.mord.mathcal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-5.7862em;"}[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[L]{.mord.mathcal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-3.2787em;"}[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[λ]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[L]{.mord.mathcal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-0.7713em;"}]{.vlist style="height:3.7862em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:3.2862em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0.4]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4436em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2564em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-5.7862em;"}[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0.6]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4436em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2564em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[3]{.mord}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-3.2787em;"}[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[120]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[3]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-0.7713em;"}]{.vlist style="height:3.7862em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:3.2862em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 从前两个方程: [[[]{.katex-mathml}[[[]{.strut style="height:2.5418em;vertical-align:-1.0105em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[0.6]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.0448em;margin-right:0.05em;"}]{.vlist style="height:0.7959em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1031em;margin-right:0.05em;"}]{.vlist style="height:0.8542em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.2558em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.4]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[−]{.mord.mtight}[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1031em;margin-right:0.05em;"}]{.vlist style="height:0.8542em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2481em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.5312em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.0105em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 简化得: [[[]{.katex-mathml}[[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[0.6]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.4]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.9436em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.1076em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:2.1574em;vertical-align:-0.836em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 代入预算约束: [[[]{.katex-mathml}[[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[3]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[120]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[24]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[24]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **一般形式的马歇尔需求函数**(柯布-道格拉斯的重要性质): [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.4]{.mord}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.4]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[120]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[24]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2019em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.6]{.mord}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[3]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.6]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[120]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[24]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **关键洞见**: 对于柯布-道格拉斯效用函数 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.2333em;vertical-align:-0.2663em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4519em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6644em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2481em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.1809em;margin-right:0.05em;"}]{.vlist style="height:0.967em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,消费者将收入的 [[]{.katex-mathml}[[[]{.strut style="height:1.1765em;vertical-align:-0.4811em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}[+]{.mbin.mtight}[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.394em;"}]{.vlist style="height:0.6954em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4811em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 花在商品1上, [[]{.katex-mathml}[[[]{.strut style="height:1.4133em;vertical-align:-0.4811em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}[+]{.mbin.mtight}[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.4461em;"}]{.vlist style="height:0.9322em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4811em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 花在商品2上。 **(2) 间接效用函数** [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8641em;"}[2]{.mord}[[4]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.8641em;"}[2]{.mord}[[4]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.8641em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[24]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 一般形式: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.604em;vertical-align:-0.95em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.4]{.mord}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.4]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.654em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}[]{.mspace style="margin-right:0.1667em;"}[[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[0.6]{.mord}[m]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}[[[[[[]{.pstrut style="height:2.7em;"}[[[0.6]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.9029em;margin-right:0.05em;"}]{.vlist style="height:1.654em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.minner}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **(3) 希克斯需求函数** 对于柯布-道格拉斯函数,我们需要反解间接效用函数。从 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可以得到所需的最小支出: 支出函数(可以通过求解EMP得到): [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1.62em;vertical-align:-0.2663em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:3em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.7337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:3em;"}[[[[]{.mopen.nulldelimiter.sizing.reset-size3.size6}[[[[[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}[+]{.mbin.mtight}[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.656em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line.mtight style="border-bottom-width:0.049em;"}]{style="top:-3.2255em;"}[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-3.384em;"}]{.vlist style="height:0.6915em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4829em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter.sizing.reset-size3.size6}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.6828em;margin-right:0.05em;"}]{.vlist style="height:1.1669em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:3em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.7337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:3em;"}[[[[]{.mopen.nulldelimiter.sizing.reset-size3.size6}[[[[[[]{.pstrut style="height:3em;"}[[[α]{.mord.mathnormal.mtight style="margin-right:0.0037em;"}[+]{.mbin.mtight}[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.656em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line.mtight style="border-bottom-width:0.049em;"}]{style="top:-3.2255em;"}[[]{.pstrut style="height:3em;"}[[[β]{.mord.mathnormal.mtight style="margin-right:0.0528em;"}]{.mord.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-3.4624em;"}]{.vlist style="height:0.9584em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.4829em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter.sizing.reset-size3.size6}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.6828em;margin-right:0.05em;"}]{.vlist style="height:1.3537em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[K]{.mord.mathnormal style="margin-right:0.0715em;"}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是与效用函数参数相关的常数。 希克斯需求函数(由谢泼德引理): [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.2519em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[e]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### 例题 2: 完全互补品的情况 **题目**: 消费者消费咖啡( [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} )和糖( [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ),效用函数为 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} (一杯咖啡配两勺糖)。价格 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[4]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}, [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,收入 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。求最优消费束。 **解答**: 对于完全互补品,最优解总是在"直角拐点"处,即: [[[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 代入预算约束: [[[]{.katex-mathml}[[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[4]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[4]{.mord}[(]{.mopen}[2]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.7944em;vertical-align:-0.15em;"}[9]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[100]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display}[[[]{.katex-mathml}[[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[9]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[100]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.9857em;vertical-align:-0.247em;"}[11.11]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.453em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.247em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.0074em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[9]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[200]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3214em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≈]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[22.22]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **一般规律**: 对于 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[min]{.mop}[{]{.mopen}[a]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[b]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,最优解满足 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[a]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.8444em;vertical-align:-0.15em;"}[b]{.mord.mathnormal}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。 --- ## 5. 需求函数的性质 ### 5.1 齐次性 (Homogeneity) 马歇尔需求函数对价格和收入是**零次齐次**的: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[λm]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[∀]{.mord}[λ]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[>]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **经济学含义**: 如果所有价格和收入同比例变化(如货币贬值一半),实际购买力不变,需求也不变。这被称为**无货币幻觉**。 间接效用函数对价格和收入是**一次齐次**的: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[λm]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} ### 5.2 瓦尔拉斯法则 (Walras' Law) 在最优解下,预算约束必然是紧约束(消费者花光所有收入): [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这在任何价格和收入水平下都成立。 ### 5.3 恩格尔聚集 (Engel Aggregation) 对需求函数关于收入求偏导: [[[]{.katex-mathml}[[[]{.strut style="height:2.9291em;vertical-align:-1.2777em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[n]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.2777em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **解释**: 额外一单位收入的增加,必然全部被分配到各种商品的消费上。 ### 5.4 库尔诺聚集 (Cournot Aggregation) [[[]{.katex-mathml}[[[]{.strut style="height:3.0652em;vertical-align:-1.4138em;"}[[[[[[]{.pstrut style="height:3.05em;"}[[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.8723em;margin-left:0em;"}[[]{.pstrut style="height:3.05em;"}[[∑]{.mop.op-symbol.large-op}]]{style="top:-3.05em;"}[[]{.pstrut style="height:3.05em;"}[[[n]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-4.3em;margin-left:0em;"}]{.vlist style="height:1.6514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:1.4138em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} --- ## 6. 对偶理论的深入理解 ### 6.1 为什么要研究对偶问题? 1. **理论优雅性**: UMP和EMP提供了同一经济现象的两种对称视角 2. **计算便利性**: 有时EMP比UMP更容易求解 3. **福利分析**: 支出函数是精确衡量福利变化的基础(CV、EV) 4. **比较静态分析**: 希克斯需求隔离了纯粹的替代效应 ### 6.2 对偶性的数学表达 **命题**: 以下两个优化问题互为对偶: **原问题 (UMP)**: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.45em;vertical-align:-0.7em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[max]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.4306em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[{]{.mopen}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6389em;vertical-align:-0.1944em;"}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.7719em;vertical-align:-0.136em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[m]{.mord.mathnormal}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **对偶问题 (EMP)**: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.45em;vertical-align:-0.7em;"}[[[[[[]{.pstrut style="height:3em;"}[[[x]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4em;margin-left:0em;"}[[]{.pstrut style="height:3em;"}[[min]{.mop}]]{style="top:-3em;"}]{.vlist style="height:0.6679em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.7em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mop.op-limits}[{]{.mopen}[p]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[⋅]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.4306em;"}[x]{.mord.mathnormal}[]{.mspace style="margin-right:0.2778em;"}[:]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[x]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[u]{.mord.mathnormal}[}]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} **对偶关系**: 1. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[e]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[))]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 2. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[e]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[))]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[u]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 3. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[))]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} (在最优解处,马歇尔需求等于希克斯需求) 4. [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[e]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[))]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ### 6.3 包络定理的应用 **包络定理 (Envelope Theorem)**: 在最优化问题中,价值函数对参数的导数等于拉格朗日函数对该参数的偏导数(在最优解处)。 **应用于UMP**: [[[]{.katex-mathml}[[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.7387em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.113em;margin-right:0.05em;"}]{.vlist style="height:0.7387em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这里 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[[λ]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[∗]{.mbin.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.6887em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是最优拉格朗日乘数,经济学上称为**货币的边际效用**。 **应用于EMP**: [[[]{.katex-mathml}[[[]{.strut style="height:2.2519em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[e]{.mord.mathnormal}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:1em;"}[[(]{.mord}[谢泼德引理]{.mord.cjk_fallback}[)]{.mord}]{.mord.text}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} --- ## 7. 拓展话题 ### 7.1 显示偏好理论 (Revealed Preference) 萨缪尔森提出的显示偏好理论允许我们在不直接观察效用函数的情况下,从消费者的选择行为中推断其偏好。 **弱公理 (WARP)**: 如果在价格 [[]{.katex-mathml}[[[]{.strut style="height:1.0085em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 、收入 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 下选择了 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,而 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 也在预算集内,那么在价格 [[]{.katex-mathml}[[[]{.strut style="height:1.0085em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 、收入 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[m]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 下若选择 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,则 [[]{.katex-mathml}[[[]{.strut style="height:0.8141em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.063em;margin-right:0.05em;"}]{.vlist style="height:0.8141em;"}]{.vlist-r}]{.vlist-t}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 必然不在新预算集内(或恰好在边界上)。 这确保了选择的一致性,是理性行为的可检验含义。 ### 7.2 多商品情况的推广 上述所有理论都可以推广到 [[]{.katex-mathml}[[[]{.strut style="height:0.4306em;"}[n]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 种商品的情况: - 效用函数: [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[…]{.minner}[]{.mspace style="margin-right:0.1667em;"}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[n]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.1514em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} - 预算约束: [[]{.katex-mathml}[[[]{.strut style="height:1.104em;vertical-align:-0.2997em;"}[[∑]{.mop.op-symbol.small-op style="position:relative;top:0em;"}[[[[[[]{.pstrut style="height:2.7em;"}[[[i]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[1]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4003em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[n]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2029em;margin-right:0.05em;"}]{.vlist style="height:0.8043em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mop}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.4306em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} - 一阶条件变为 [[]{.katex-mathml}[[[]{.strut style="height:0.6667em;vertical-align:-0.0833em;"}[n]{.mord.mathnormal}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:0.6444em;"}[1]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 个方程的系统 ### 7.3 角点解 (Corner Solutions) 并非所有最优解都是内部解。如果某种商品的MRS始终大于(或小于)价格比,消费者会选择只消费一种商品(角点解)。 **库恩-塔克条件 (Kuhn-Tucker Conditions)** 是处理不等式约束和角点解的一般化工具: [[[]{.katex-mathml}[[[]{.strut style="height:4.9075em;vertical-align:-2.2037em;"}[[[[[[[[]{.pstrut style="height:3.45em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-4.7823em;"}[[]{.pstrut style="height:3.45em;"}[[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.1667em;"}[[[(]{.delimsizing.size3}]{.mopen.delimcenter style="top:0em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[)]{.delimsizing.size3}]{.mclose.delimcenter style="top:0em;"}]{.minner}]{.mord}]{style="top:-2.1963em;"}]{.vlist style="height:2.7037em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.2037em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.45em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≤]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:1em;"}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[≥]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-4.7823em;"}[[]{.pstrut style="height:3.45em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-2.1963em;"}]{.vlist style="height:2.7037em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.2037em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 第二个条件称为**互补松弛条件**:要么 [[]{.katex-mathml}[[[]{.strut style="height:0.5806em;vertical-align:-0.15em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:0.6444em;"}[0]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} (不消费),要么边际效用等于价格(内部解)。 --- ## 8. 历史背景与文献 消费者理论的现代形式主要建立于20世纪初至中期: - **帕累托 (Vilfredo Pareto, 1906)**: 提出序数效用和无差异曲线分析 - **希克斯和艾伦 (John Hicks & Roy Allen, 1934)**: 系统发展了序数效用理论 - **萨缪尔森 (Paul Samuelson, 1947)**: 在《经济分析基础》中建立了对偶理论和显示偏好理论 - **麦肯齐 (Lionel McKenzie)** 和 **阿罗-德布鲁 (Arrow-Debreu)**: 推广到一般均衡框架 **推荐阅读**: 1. Mas-Colell, Whinston & Green (1995), Chapter 2-3 2. Varian (1992), Chapters 7-10 3. Jehle & Reny (2011), Chapters 1-2 --- ## 9. 小结 本章建立了微观经济学的核心分析工具: ✅ **偏好公理** → 效用函数 :br ✅ **效用最大化** (UMP) ↔ **支出最小化** (EMP) :br ✅ **马歇尔需求** ↔ **希克斯需求**:br ✅ **间接效用函数** ↔ **支出函数**:br ✅ **罗伊恒等式** & **谢泼德引理** ## 自学检查 **核心直觉回看**:消费者理论的中心不是“人一定会买多少”,而是“在给定偏好、价格和收入时,什么选择与理性最优化相一致”。无差异曲线给出主观权衡,预算线给出客观权衡,内部解处两者相等。 **关键模型提醒**:效用最大化问题给出马歇尔需求 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[x]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,支出最小化问题给出希克斯需求 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[h]{.mord.mathnormal}[(]{.mopen}[p]{.mord.mathnormal}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[u]{.mord.mathnormal}[)]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 。罗伊恒等式和谢泼德引理的作用,是让你可以从价值函数反推出需求。 ### 常见误区 - 看到两个商品就直接写 [[]{.katex-mathml}[[[]{.strut style="height:0.6833em;"}[M]{.mord.mathnormal style="margin-right:0.109em;"}[R]{.mord.mathnormal style="margin-right:0.0077em;"}[S]{.mord.mathnormal style="margin-right:0.0576em;"}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[/]{.mord}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,却没有检查角点解、完全替代和完全互补的情形。 - 把效用数值当成幸福的绝对单位。序数效用只保留排序,单调变换不改变偏好。 - 混淆马歇尔需求和希克斯需求:前者固定收入,后者固定效用。 - 拉格朗日乘子算出来后不解释。UMP 中的 [[]{.katex-mathml}[[[]{.strut style="height:0.6944em;"}[λ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 可以理解为一元钱带来的边际效用。 ### 自测题 1. 对 [[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}[(]{.mopen}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1.3111em;vertical-align:-0.2663em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[1/2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.4337em;margin-left:0em;margin-right:0.05em;"}[[]{.pstrut style="height:2.7em;"}[[[1/2]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.2198em;margin-right:0.05em;"}]{.vlist style="height:1.0448em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2663em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} ,写出预算约束并推导马歇尔需求。 2. 为什么完全互补品的最优点通常在“折角”而不是切点? 3. 用一句话解释谢泼德引理为什么等于“价格的边际变化乘以需求量”。 4. 如果所有价格和收入同时翻倍,需求会不会变?这体现了什么性质? 5. 构造一个违反传递性的偏好例子,并说明它为什么会造成选择困难。 ### 下一步学习提示 做完本章后,请至少独立求解一个柯布-道格拉斯、一个完全替代和一个完全互补的需求问题。进入下一章时,把注意力从“最优点在哪里”转到“价格或收入变化后,最优点怎样移动”。 **下一章预告**: 我们将学习如何利用这些工具进行**比较静态分析**——当价格或收入发生变化时,需求和福利会如何变化?斯勒茨基方程将替代效应和收入效应分离,为我们提供深刻的洞见。 # 第 2 讲:比较静态分析与福利测度 ## 本章导学 第 1 章解决了“给定价格和收入时消费者如何选择”的问题。本章进一步追问:当价格、收入或政策参数发生变化时,选择会怎样变,福利又该怎样度量?比较静态不是机械地求偏导,而是把行为变化拆成可以解释的经济效应。 学完本章后,你应当能够: - 用斯勒茨基方程分解价格变化的替代效应和收入效应。 - 区分马歇尔需求与希克斯需求在福利分析中的角色。 - 计算并解释补偿变差(CV)、等价变差(EV)和消费者剩余。 - 判断不同税收、补贴或价格政策对消费者福利和效率的影响。 常见考查重点是“推导 + 解释”:先从需求或支出函数算出福利变化,再说明为什么 CV、EV 和消费者剩余可能不同。作业中尤其要注意价格上升和下降时符号的处理,不要把“补偿多少”与“损失多少”混在一起。 本章向前连接[第 1 章](https://www.pengjiaxin.com/../01-fundations/)的对偶理论,向后连接[第 3 章](https://www.pengjiaxin.com/../03-uncertainty/)的不确定性决策和[第 4 章](https://www.pengjiaxin.com/../04-general-equilibrium/)的一般均衡福利判断。可以把它看作整门课的政策评估入口。 ## 经济动机 (Economic Motivation) 当市场价格或消费者收入发生变化时,他们的购买行为会如何改变?我们如何衡量这些变化对消费者福利的影响?这些是政策制定者(例如,在考虑征收消费税时)和企业(例如,在调整产品价格时)必须回答的关键问题。 ## 1. 比较静态分析基础 ### 1.1 隐函数定理的应用 比较静态分析研究外生参数(如价格、收入)的微小变化如何影响内生变量(如需求量)。 考虑效用最大化的一阶条件: [[[]{.katex-mathml}[[[]{.strut style="height:6.2149em;vertical-align:-2.8574em;"}[[[[[[[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-5.3574em;"}[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[U]{.mord.mathnormal style="margin-right:0.109em;"}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.836em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[λ]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.85em;"}[[]{.pstrut style="height:3.3714em;"}[[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-0.874em;"}]{.vlist style="height:3.3574em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.8574em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-5.3574em;"}[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-2.85em;"}[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[0]{.mord}]{.mord}]{style="top:-0.874em;"}]{.vlist style="height:3.3574em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:2.8574em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-l}]{.mtable}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这是一个包含3个方程、3个未知数( [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[λ]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} )和参数( [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}]{.base}]{.katex-html ariaHidden="true"}]{.katex} )的系统。 **隐函数定理**告诉我们,在满足正则性条件(雅可比矩阵非奇异)的情况下,我们可以将解表示为参数的隐函数,并求出其导数。 ### 1.2 价格变化的直接效应 当价格 [[]{.katex-mathml}[[[]{.strut style="height:0.625em;vertical-align:-0.1944em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 发生微小变化 [[]{.katex-mathml}[[[]{.strut style="height:0.8889em;vertical-align:-0.1944em;"}[d]{.mord.mathnormal}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 时,最优需求的变化为: [[[]{.katex-mathml}[[[]{.strut style="height:2.2519em;vertical-align:-0.8804em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.8804em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 这个偏导数包含了两种效应的混合: 1. **替代效应**: 相对价格变化导致的需求调整(效用保持不变) 2. **收入效应**: 实际购买力变化导致的需求调整 --- ## 2. 斯勒茨基方程 (Slutsky Equation) ### 2.1 方程的推导 斯勒茨基方程是消费者理论中最重要的结果之一。它将价格变化对马歇尔需求的影响分解为两个部分: [[[]{.katex-mathml}[[[]{.strut style="height:2.3435em;vertical-align:-0.9721em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:2.4497em;vertical-align:-0.9997em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[[[[[[[]{.pstrut style="height:4.4em;"}[]{style="width:0.333em;height:2.4em;"}]{style="top:-3.45em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[u]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[[[[[[]{.pstrut style="height:2.7em;"}[u]{.mord.mathnormal.mtight}]{style="top:-2.7em;"}[[]{.pstrut style="height:2.7em;"}[[ˉ]{.mord.mtight}]{.accent-body style="left:-0.2222em;"}]{style="top:-2.7em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7003em;margin-right:0.05em;"}]{.vlist style="height:-0.6023em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[−]{.mbin}[]{.mspace style="margin-right:0.2222em;"}]{.base}[[]{.strut style="height:2.0574em;vertical-align:-0.686em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[m]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 其中: - [[]{.katex-mathml}[[[]{.strut style="height:1.4385em;vertical-align:-0.5423em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∂]{.mord.mtight style="margin-right:0.0556em;"}[[p]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∂]{.mord.mtight style="margin-right:0.0556em;"}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.4101em;"}]{.vlist style="height:0.8962em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.5423em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是**总效应** (Total Effect) - [[]{.katex-mathml}[[[]{.strut style="height:2.4497em;vertical-align:-0.9997em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∂]{.mord.mtight style="margin-right:0.0556em;"}[[p]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2819em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∂]{.mord.mtight style="margin-right:0.0556em;"}[[h]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.4101em;"}]{.vlist style="height:0.8962em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.5423em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[[[[[[[[]{.pstrut style="height:4.4em;"}[]{style="width:0.333em;height:2.4em;"}]{style="top:-3.45em;"}]{.vlist style="height:1.45em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.95em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.delimsizing.mult}]{.mord}[[[[[[]{.pstrut style="height:2.7em;"}[[[u]{.mord.mathnormal.mtight}[=]{.mrel.mtight}[[[[[[]{.pstrut style="height:2.7em;"}[u]{.mord.mathnormal.mtight}]{style="top:-2.7em;"}[[]{.pstrut style="height:2.7em;"}[[ˉ]{.mord.mtight}]{.accent-body style="left:-0.2222em;"}]{style="top:-2.7em;"}]{.vlist style="height:0.5678em;"}]{.vlist-r}]{.vlist-t}]{.mord.accent.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-1.7003em;margin-right:0.05em;"}]{.vlist style="height:-0.6023em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9997em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是**替代效应** (Substitution Effect),在效用不变时的需求变化 - [[]{.katex-mathml}[[[]{.strut style="height:1.2412em;vertical-align:-0.345em;"}[−]{.mord}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[[∂]{.mord.mtight style="margin-right:0.0556em;"}[m]{.mord.mathnormal.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.655em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[[∂]{.mord.mtight style="margin-right:0.0556em;"}[[x]{.mord.mathnormal.mtight}[[[[[[]{.pstrut style="height:2.5em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size3.size1.mtight}]{style="top:-2.357em;margin-left:0em;margin-right:0.0714em;"}]{.vlist style="height:0.3281em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.143em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord.mtight}]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-3.4101em;"}]{.vlist style="height:0.8962em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.345em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 是**收入效应** (Income Effect),因实际收入变化导致的需求变化 **详细推导**: 从恒等式出发: [[[]{.katex-mathml}[[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[)]{.mclose}[]{.mspace style="margin-right:0.2778em;"}[≡]{.mrel}[]{.mspace style="margin-right:0.2778em;"}]{.base}[[]{.strut style="height:1em;vertical-align:-0.25em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[v]{.mord.mathnormal style="margin-right:0.0359em;"}[(]{.mopen}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[1]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[2]{.mord.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3011em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}[,]{.mpunct}[]{.mspace style="margin-right:0.1667em;"}[m]{.mord.mathnormal}[))]{.mclose}]{.base}]{.katex-html ariaHidden="true"}]{.katex}]{.katex-display} 对 [[]{.katex-mathml}[[[]{.strut style="height:0.7167em;vertical-align:-0.2861em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.base}]{.katex-html ariaHidden="true"}]{.katex} 求全导数: [[[]{.katex-mathml}[[[]{.strut style="height:2.3435em;vertical-align:-0.9218em;"}[[[[[[[[]{.pstrut style="height:3.3714em;"}[[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[x]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}]{.mord}]{style="top:-3.4218em;"}]{.vlist style="height:1.4218em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9218em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.col-align-r}[[[[[[]{.pstrut style="height:3.3714em;"}[[]{.mord}[]{.mspace style="margin-right:0.2778em;"}[=]{.mrel}[]{.mspace style="margin-right:0.2778em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[p]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[j]{.mord.mathnormal.mtight style="margin-right:0.0572em;"}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.2861em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.9721em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.mfrac}[]{.mclose.nulldelimiter}]{.mord}[]{.mspace style="margin-right:0.2222em;"}[+]{.mbin}[]{.mspace style="margin-right:0.2222em;"}[[]{.mopen.nulldelimiter}[[[[[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[u]{.mord.mathnormal}]{.mord}]{style="top:-2.314em;"}[[]{.pstrut style="height:3em;"}[]{.frac-line style="border-bottom-width:0.04em;"}]{style="top:-3.23em;"}[[]{.pstrut style="height:3em;"}[[∂]{.mord style="margin-right:0.0556em;"}[[h]{.mord.mathnormal}[[[[[[]{.pstrut style="height:2.7em;"}[[i]{.mord.mathnormal.mtight}]{.sizing.reset-size6.size3.mtight}]{style="top:-2.55em;margin-left:0em;margin-right:0.05em;"}]{.vlist style="height:0.3117em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.15em;"}]{.vlist-r}]{.vlist-t.vlist-t2}]{.msupsub}]{.mord}]{.mord}]{style="top:-3.677em;"}]{.vlist style="height:1.3714em;"}[​]{.vlist-s}]{.vlist-r}[[[]]{.vlist style="height:0.686em;"}]