文章目录
此文章首发于公众号:Python for Finance
链接:https://mp.weixin.qq.com/s/0hSVVJWaM1ueHQClVpEKbA
DID仅适用于面板数据,DID仅适用于面板数据,DID仅适用于面板数据。DID的本质就是面板数据固定效应估计。
一、DID(Differences-in-Differences)模型
双重差分法,其主要被用于社会学中的政策效果评估。这种方法需要两个「差异」数据。一个是干预前后的「差异」,这个是自身实验前后的差异。另外一个是处理组与控制组的「差异」。DID利用这两个「差异」的差异来推算干预的效果。因此,顾名思义叫做双重差分法。
DID模型形式
y i t = α + β ( G i ∗ D t ) + γ G i + c D t + ε i t y_{it}=\alpha+\beta(G_i*D_t)+\gamma G_i+cD_t+\varepsilon_{it} yit=α+β(Gi∗Dt)+γGi+cDt+εit
其中, G i G_i Gi为分组虚拟变量(处理组=1,控制组=0), D t D_t Dt为分期虚拟变量(政策实施后=1,政策实施前=0),交互项 G i ∗ D t G_i*D_t Gi∗Dt表示处理组在政策实施后的效应,其系数即为双重差分模型重点考察的处理效应。
一个重要假定——共同趋势假定:在政策发生前,处理组与对照组的研究对象呈现出共同的变化趋势。
模型系数如下表所示:
干预前 | 干预后 | 差异 | |
---|---|---|---|
处理组 | α + γ \alpha+\gamma α+γ | α + β + γ + c \alpha+\beta+\gamma+c α+β+γ+c | β + c \beta+c β+c |
控制组 | α \alpha α | α + c \alpha+c α+c | c c c |
处理组实验前为 α + γ \alpha+\gamma α+γ,实验后为 α + β + γ + c \alpha+\beta+\gamma+c α+β+γ+c。控制组实验前为 α \alpha α,实验后为 α + c \alpha+c α+c。对于处理组实验前后差异为 β + c \beta+c β+c,对于控制组实验后为 c c c。两者之差 β \beta β即为DID结果,处理效应。
加入个体固定效应
a
i
a_i
ai、时间固定效应
π
t
\pi_t
πt,以及其它控制变量
X
i
t
X_{it}
Xit的双重差分模型设定的一般形式:
y
i
t
=
α
+
β
(
G
i
∗
D
t
)
+
β
1
X
i
t
+
a
i
+
π
t
+
ε
i
t
y_{it}=\alpha+\beta(G_i*D_t)+\beta_1X_{it}+a_i+\pi_t+\varepsilon_{it}
yit=α+β(Gi∗Dt)+β1Xit+ai+πt+εit
二、DID案例:垃圾焚化炉的区位对住房价格的影响
来源:伍德里奇《计量经济学导论》13.2利用混合横截面政策分析:垃圾焚烧厂的区位对住房价格的影响
r
p
r
i
c
e
=
β
0
+
δ
0
y
81
+
β
1
n
e
a
r
i
n
c
+
δ
1
y
81
∗
n
e
a
r
i
n
c
+
u
rprice=\beta_0+\delta_0y81+\beta_1nearinc+\delta_1y81*nearinc+u
rprice=β0+δ0y81+β1nearinc+δ1y81∗nearinc+u
参数:
rprice:真实住房价格
y81:时间虚拟变量,1981年取1,否则取0
nearinc:住房是否靠近焚化炉,靠近取1,否则取0
模型系数如下表所示:
之前(y81=0) | 之后(y81=1) | 之后-之前 | |
---|---|---|---|
处理组(nearinc=1) | β 0 + β 1 \beta_0+\beta_1 β0+β1 | β 0 + δ 0 + β 1 + δ 1 \beta_0+\delta_0+\beta_1+\delta_1 β0+δ0+β1+δ1 | δ 0 + δ 1 \delta_0+\delta_1 δ0+δ1 |
控制组(nearinc=0) | β 0 \beta_0 β0 | β 0 + δ 0 \beta_0+\delta_0 β0+δ0 | δ 0 \delta_0 δ0 |
处理组-控制组 | β 1 \beta_1 β1 | β 1 + δ 1 \beta_1+\delta_1 β1+δ1 | δ 1 \delta_1 δ1 |
我们关注的系数是交互项 y 81 ∗ n e a r i n c y81*nearinc y81∗nearinc的系数 δ 1 \delta_1 δ1:度量了房价因新建焚化炉而下跌的幅度。
代码如下:
import wooldridge as woo
import pandas as pd
import statsmodels.formula.api as smf
kielmc = woo.dataWoo('kielmc')
import wooldridge as woo
import pandas as pd
import statsmodels.formula.api as smf
kielmc = woo.dataWoo('kielmc')
# DID模型
reg_did = smf.ols(formula='rprice ~ nearinc * C(year)', data=kielmc)
results_did = reg_did.fit()
print(results_did.summary())
# DiD模型:加入控制变量
reg_didC = smf.ols(formula='rprice ~ nearinc * C(year) + age +I(age**2)',data=kielmc)
results_didC = reg_didC.fit()
print(results_didC.summary())
三、DID案例:实证论文《我国推出融资融券交易促进了标的股票的定价效率吗?》
以下内容节选自:许红伟等,2012:我国推出融资融券交易促进了标的股票的定价效率吗?——基于双重差分模型的实证研究,管理世界,第5期。
Imbens和Wooldridge(2007)指出,在自然实验中,由于处理组(TreatmentGroup,指受到政策影响的样本组合)和控制组(ControlGroup,指未受到政策影响的样本组合)均来自受到某项具体政策影响与否的特定群体而非随机,DID模型可以较好地控制处理组和控制组之间的系统性差异,来研究处理组在某项政策实施前后所发生的变化。
本文研究采用的基本模型设定为:
y
i
t
=
β
0
+
β
1
D
t
+
β
2
D
g
+
γ
D
t
∗
D
g
+
∑
X
i
t
+
ε
i
y_{it} =\beta_0+\beta_1D_t+\beta_2D_g+\gamma D_t*D_g+\sum X_{it}+\varepsilon_i
yit=β0+β1Dt+β2Dg+γDt∗Dg+∑Xit+εi
其中,
y
i
t
y_{it}
yit为第i个股票在第t期的指标值;
D
t
D_t
Dt为时间虚拟变量,当融资融券推出后
D
t
=
1
D_t=1
Dt=1,反之推出前
D
t
=
0
D_t=0
Dt=0;
D
g
D_g
Dg为组间虚拟变量,当
D
g
=
1
D_g=1
Dg=1时为融资融券标的股票,即处理组,
D
g
=
0
D_g=0
Dg=0为沪深300成分股中的非融资融券标的股票,即控制组;
∑
X
i
t
\sum X_{it}
∑Xit为一组相关的控制变量,包括是否含有H股的虚拟变量、流通市值、换手率、市盈率、市净率和沪深300行业虚拟变量等;
ε
i
ε_i
εi为随机干扰项。
四、DID案例:实证论文《我国推出融资融券交易促进了标的股票的定价效率吗?》
以下内容节选自:肖浩等,2014:融资融券对股价特质性波动的影响机理研究:基于双重差分模型的检验,管理世界,第8期。
我们使用当期被允许进行融资融券交易的股票作为实验组,将扩容之后新添的标的股票作为控制组。作为控制组的样本后来也被选作融资融券标的证券,说明不是政策之外的因素导致其不能作为标的证券。基本的双重差分模型如下:
P
I
E
i
t
=
α
+
β
1
T
r
e
a
t
e
d
i
+
β
2
P
o
s
t
i
+
β
3
T
r
e
a
t
e
d
i
∗
P
o
s
t
i
+
T
i
m
e
f
i
x
e
d
−
e
f
f
e
c
t
+
F
i
r
m
f
i
x
e
d
−
e
f
f
e
c
t
+
ε
i
t
PIE_{it}=\alpha+\beta_1Treated_i+\beta_2Post_i+\beta_3Treated_i*Post_i+Time_{fixed-effect}+Firm_{fixed-effect}+\varepsilon_{it}
PIEit=α+β1Treatedi+β2Posti+β3Treatedi∗Posti+Timefixed−effect+Firmfixed−effect+εit
其中,
P
I
E
i
t
PIE_{it}
PIEit为公司i在t期的股价特质性波动;
T
r
e
a
t
e
d
i
Treated_i
Treatedi为实验组虚拟变量,实验组,取值为1,其他为0;
P
o
s
t
i
Post_i
Posti为实验期识别变量,处于实验期,取值为1,否则为0。β3刻画了融资融券交易对股价特质性波动的影响,是本文主要关注的对象。