This source did not publish a separate summary. Review SKILL.md before using the skill.
SKILL.md
Behavioral Economics Guide
Conduct behavioral economics research using experimental methods, prospect theory, nudge frameworks, and key empirical tools for studying decision-making under bounded rationality.
Core Theoretical Frameworks
Prospect Theory (Kahneman & Tversky, 1979)
People evaluate outcomes relative to a reference point, with losses looming larger than equivalent gains:
Key features:
1. Reference dependence: Utility is defined over gains and losses, not absolute wealth
2. Loss aversion: lambda ≈ 2.25 (losses hurt ~2.25x more than equivalent gains)
3. Diminishing sensitivity: Marginal impact decreases as you move away from reference
4. Probability weighting: Overweight small probabilities, underweight large ones
Value function:
v(x) = x^alpha if x >= 0 (alpha ≈ 0.88)
v(x) = -lambda * (-x)^beta if x < 0 (beta ≈ 0.88, lambda ≈ 2.25)
Probability weighting function (Prelec, 1998):
w(p) = exp(-(-ln(p))^alpha) (alpha ≈ 0.65 for gains, 0.69 for losses)
Dual Process Theory (Kahneman, 2011)
System 1 (Fast)
System 2 (Slow)
Automatic, effortless
Deliberate, effortful
Intuitive, heuristic-based
Analytical, rule-based
Parallel processing
Serial processing
Emotional
Logical
Prone to biases
Can override biases
Default mode
Activated when needed
Nudge Theory (Thaler & Sunstein, 2008)
Nudges alter choice architecture to influence decisions without restricting options:
Nudge Type
Example
Mechanism
Default setting
Opt-out organ donation
Status quo bias
Salience
Calorie labels at point of sale
Attention focus
Social norms
"9 out of 10 neighbors recycle"
Conformity
Commitment device
Pre-commitment to savings plans
Present bias correction
Simplification
Pre-filled tax forms
Reduce cognitive load
Feedback
Real-time energy usage display
Information salience
Framing
"90% survival" vs "10% mortality"
Reference frame
Key Behavioral Biases and Experimental Tests
Bias
Definition
Classic Experiment
Anchoring
Over-reliance on first piece of information
Wheel of fortune + estimation task
Endowment effect
Overvaluing what you own
Mug trading experiment (Kahneman et al., 1990)
Status quo bias
Preference for current state
Default choice experiments
Present bias
Overweighting immediate outcomes
Discount rate elicitation
Sunk cost fallacy
Continuing due to past investment
Theater ticket scenario
Overconfidence
Overestimating own knowledge/ability
Calibration tasks
Availability heuristic
Judging probability by ease of recall
Frequency estimation tasks
Representativeness
Judging probability by similarity
Linda problem
Framing effect
Choices depend on how options are presented
Asian disease problem
Experimental Methods
Lab Experiments
# Example: Dictator Game implementation with oTree
# oTree is the standard platform for behavioral economics experiments
# models.py
class Player(BasePlayer):
dictator_give = models.CurrencyField(
min=0, max=100,
label="How much do you want to give to the other participant?"
)
# pages.py
class Decision(Page):
form_model = 'player'
form_fields = ['dictator_give']
def vars_for_template(self):
return {'endowment': 100}
class Results(Page):
def vars_for_template(self):
return {
'kept': 100 - self.player.dictator_give,
'given': self.player.dictator_give
}
Field Experiments and RCTs
Design checklist for a behavioral field experiment:
1. RESEARCH QUESTION
"Does changing the default retirement contribution rate from 3% to 6%
increase average savings?"
2. TREATMENT ARMS
- Control: Default contribution = 3% (status quo)
- Treatment 1: Default contribution = 6% (higher default)
- Treatment 2: Default contribution = 6% + active choice prompt
3. RANDOMIZATION
- Unit: Individual employees
- Method: Stratified randomization by age, salary, tenure
- Balance checks: t-tests on observables across treatment arms
4. SAMPLE SIZE
- Power calculation: N = 1,200 per arm (power=0.80, MDE=2pp,
alpha=0.05, ICC adjusted for clustering by department)
5. OUTCOME MEASURES
- Primary: Contribution rate at 6 months
- Secondary: Total savings at 12 months, opt-out rate
- Administrative data (no survey needed)
6. PRE-REGISTRATION
- Register on AEA RCT Registry before treatment assignment
Survey Experiments
# Example: Willingness-to-Pay (WTP) elicitation using BDM mechanism
# Becker-DeGroot-Marschak procedure
import numpy as np
def bdm_auction(stated_wtp, item_cost_range=(0, 20)):
"""
Becker-DeGroot-Marschak incentive-compatible mechanism.
Random price drawn; participant buys if WTP >= price.
"""
random_price = np.random.uniform(*item_cost_range)
buys = stated_wtp >= random_price
payment = random_price if buys else 0
return {
"stated_wtp": stated_wtp,
"random_price": round(random_price, 2),
"purchased": buys,
"payment": round(payment, 2)
}
# This is incentive-compatible: truthfully reporting WTP is optimal
# because the price is determined independently of the stated WTP
Time Preferences and Discounting
# Estimating discount factors from multiple price list (MPL) choices
def estimate_discount_factor(choices, amounts, delays):
"""
Estimate quasi-hyperbolic discounting parameters (beta, delta)
from a series of smaller-sooner vs. larger-later choices.
beta: present bias (< 1 means present-biased)
delta: long-run discount factor (per period)
"""
from scipy.optimize import minimize
def neg_log_likelihood(params):
beta, delta = params
ll = 0
for choice, (ss, ll_amt), (t_ss, t_ll) in zip(choices, amounts, delays):
# Discounted utility of each option
if t_ss == 0:
u_ss = ss # No discounting for immediate
u_ll = beta * (delta ** t_ll) * ll_amt
else:
u_ss = beta * (delta ** t_ss) * ss
u_ll = beta * (delta ** t_ll) * ll_amt
p_ll = 1 / (1 + np.exp(-(u_ll - u_ss))) # Logit
ll += choice * np.log(p_ll + 1e-10) + (1-choice) * np.log(1-p_ll + 1e-10)
return -ll
result = minimize(neg_log_likelihood, [0.9, 0.95],
bounds=[(0.01, 1.5), (0.8, 1.0)])
return {"beta": result.x[0], "delta": result.x[1]}