文章以二氧化硫排污权交易试点作为环境权益交易的准自然实验,基于中国工业企业、中国工业企业环境统计与企业专利数据库匹配数据,利用双重差分法探究环境权益交易能否以及如何实现减污降碳协同增效。
文章构建包含排污权交易的理论模型,阐明排污权交易制度下企业污染排放以及伴随污染物产生的碳排放变化,并提出研究假说:
减源效应包括能源替代效应和能效提升效应。第一,能源替代效应。排污权交易制度增加了高污染企业的环境成本,高污染企业为了获得更多的排污权需要支付高额的排污费用,环境成本增加带来生产成本上升的压力会挤占企业利润。企业基于利润最大化的考虑,将会减少污染要素投入、调整要素投入结构,需要寻找其他清洁能源来实现能源替代,这种市场激励型环境规制将推动能源消费结构转型。第二,能效提升效应。在排污权交易机制下,污染排放量较少的企业可在排污权交易市场上公开出售富余的排污权并获得相应的经济收益,会激励企业通过扩大生产规模来提升能源效。此外,当能源利用效率较低时,需要投入更多的能源进行生产,同时高耗能的投入也会产生高污染、高排放。因此,排污权交易在提升能源利用效率的过程中也促进了减污和降碳。
创新效应包括弱波特效应和强波特效应。第一,弱波特效应。排污权交易制度的弱波特效应主要体现在技术创新与产品创新两个方面,即通过提高技术创新与产品创新能力促进企业污染减排与降低碳排放,协同推进减污降碳。第二,强波特效应。强波特效应表明排污权交易制度通过提升企业全要素生产率来减少污染排放与降低碳排放,从而实现减污降碳协同。由此,提出假说
H2
。
将二氧化硫排污权交易制度试点地区内的企业列入处理组,其余企业作为控制组,构建计量模型如下:
选取
二氧化硫排放总量和排放强度(单位工业总产值的二氧化硫排放)来衡量企业污染排放水平
,并均加1取对数值。
此外,
选取企业二氧化碳排放总量以及二氧化碳排放强度即单位工业总产值的二氧化碳排放作为碳排放的替代指标
,加1取对数值。先将企业煤炭、燃料油等能源消耗折算成标准煤消耗,再基于中国在2008年发布的《综合能耗计算通则》(GB/T2589-2008)和联合国政府间气候变化专门委员会(Intergovernmental
Panel on Climate Change,IPCC)发布的《2006年IPCC国家温室气体清单指南》,测算企业的二氧化碳排放量,计算公式如下:
当省份r属于江苏、天津、浙江等11个排污权交易试点地区,且t处于2007年及之后时,核心解释变量ets取值为1,否则为0
。
包括:企业年龄(
age
);企业规模(
scale
);企业性质(
soe
);企业出口(
trade
);企业资本密集度(
ki
);政府补贴(
subsidy
);行业规模(
size
);行业集中度(
hhi
)。
选取的数据样本主要来源于中国工业企业数据库、中国工业企业环境统计数据库和企业专利数据库等三类数据集。
排污权交易制度试点前的
2002~2006
年,处理组与控制组企业二氧化硫排放总量和强度均值的总体变化趋势较为一致。但从
2007
年排污权交易试点正式实施之后,两组企业二氧化硫排放总量和强度均值变化趋势存在差异。
***核心变量设定***
gen lnse=ln(so_em+1)
gen lnsi=ln(so_em/output+1)
gen bcoal=coal*0.7143
gen co2_coal=(bcoal*20.908*0.0258*44)/12
gen boil_fire=oil_fire*1.4286
gen co2_oil=(boil_fire*41.816*0.0211*44)/12
gen co2=co2_coal+co2_oil
gen lnce=ln(co2*1000+1)
gen lnci=ln(co2*1000/output+1)
gen et=0
replace et=1 if prov=="天津市"
replace et=1 if prov=="河北省"
replace et=1 if prov=="山西省"
replace et=1 if prov=="内蒙古自治区"
replace et=1 if prov=="江苏省"
replace et=1 if prov=="浙江省"
replace et=1 if prov=="河南省"
replace et=1 if prov=="湖北省"
replace et=1 if prov=="湖南省"
replace et=1 if prov=="重庆市"
replace et=1 if prov=="陕西省"
gen sp=0
replace sp=1 if year>=2007
gen ets=et*sp
global control "age scale soe trade ki subsidy size hhi"
sum lnse lnsi lnce lnci $control
***处理组和控制组变量的均值差异***
sum lnse lnsi lnce lnci $control if et==1&year<2007
sum lnse lnsi lnce lnci $control if et==0&year<2007
sum lnse lnsi lnce lnci $control if et==1&year>=2007
sum lnse lnsi lnce lnci $control if et==0&year>=2007
***特征事实***
bysort year:egen tse=mean(lnse) if et==1
bysort year:egen cse=mean(lnse) if et==0
twoway (line tse year) (line cse year)
bysort year:egen tsi=mean(lnsi) if et==1
bysort year:egen csi=mean(lnsi) if et==0
twoway (line tsi year) (line csi year)
bysort year:egen tce=mean(lnce) if et==1
bysort year:egen cce=mean(lnce) if et==0
twoway (line tce year) (line cce year)
bysort year:egen tci=mean(lnci) if et==1
bysort year:egen cci=mean(lnci) if et==0
twoway (line tci year) (line cci year)
首先,表1第(1)至(4)列分别汇报了二氧化硫排污权交易制度影响企业二氧化硫排放总量及排放强度的估计结果,结果显示,
ets的系数估计值均为负且具有统计显著性
,说明排污权交易制度产生显著的污染减排效应。
在污染减排效应的基础上,进一步探讨排污权交易制度是否能够降低微观企业的二氧化碳排放,产生减污降碳协同效应?表1第(5)至(8)列汇报了被解释变量分别为企业二氧化碳排放总量与排放强度的估计结果,可以看到,
无论是二氧化碳排放总量还是排放强度,核心解释变量ets的回归系数均显著为负
。
表
1
的估计结果发现,排污权交易制度不仅显著促进了企业污染减排,也降低了企业碳排放,即排污权交易制度实现了减污降碳协同效应,验证了前文提出的假说
H1
。此外,从二氧化硫和二氧化碳的平均减排效应来看,排污权交易制度产生的降碳效应大于减污效应。
***基准回归***
reghdfe lnse ets, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnse ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control, absorb(code year ind_code3 provid) cluster(provid
以排污权交易制度实施前
1
年作为基准期。结果表明,在排污权交易制度试点实施前的
5
年内,系数的变化比较平缓且基本不显著。动态效应分析发现,排污权交易制度的减污与降碳效应在制度实施后
2
年开始消失。
***平行趋势检验***
gen year02=0
replace year02=1 if year==2002
gen year03=0
replace year03=1 if year==2003
gen year04=0
replace year04=1 if year==2004
gen year05=0
replace year05=1 if year==2005
gen year06=0
replace year06=1 if year==2006
gen year07=0
replace year07=1 if year==2007
gen year08=0
replace year08=1 if year==2008
gen year09=0
replace year09=1 if year==2009
gen year11=0
replace year11=1 if year==2011
gen pre5=et*year02
gen pre4=et*year03
gen pre3=et*year04
gen pre2=et*year05
gen pre1=et*year06
gen cu=et*year07
gen post1=et*year08
gen post2=et*year09
gen post4=et*year11
reghdfe lnse pre5 pre4 pre3 pre2 cu post1 post2 post4 $control, absorb(code year ind_code3 provid) cluster(provid#year)
reghdfe lnsi pre5 pre4 pre3 pre2 cu post1 post2 post4 $control, absorb(code year ind_code3 provid) cluster(provid#year)
reghdfe lnce pre5 pre4 pre3 pre2 cu post1 post2 post4 $control, absorb(code year ind_code3 provid) cluster(provid#year)
reghdfe lnci pre5 pre4 pre3 pre2 cu post1 post2 post4 $control, absorb(code year ind_code3 provid) cluster(provid#year)
coefplot, keep(pre5 pre4 pre3 pre2 cu post1 post2 post4) levels(95) vertical yline(0) ytitle("系数") xtitle("距离制度实施的年份") mcolor(black) lpattern(dash)
包括:工具变量法(选取空气流通系数作为是否纳入排污权交易试点地区的工具变量);控制同期其他相关政策(包括两控区、排污费征收标准调整、碳排放权交易试点和五年计划);安慰剂检验;替换被解释变量(分别选取企业烟尘排放总量(
lnsoe
)与强度(
lnsoi
)、粉尘排放总量(
lndue
)和强度(
lndui
)作为企业污染排放的替代指标);反事实检验(将被解释变量替换为
COD
排放总量(
lncode
)及强度指标(
lncodi
)进行反事实检验)。此外,还进行排除样本干扰、缓解溢出效应、三重差分估计、控制试点地区非随机选择的影响、控制行业
-
年份联合固定效应以及排除国际金融危机干扰等其他稳健性检验。
***稳健性检验***
//内生性处理:工具变量法
ivreghdfe lnse $control (ets=iv), absorb(code year ind_code3 provid) cluster(provid
ivreghdfe lnsi $control (ets=iv), absorb(code year ind_code3 provid) cluster(provid
ivreghdfe lnce $control (ets=iv), absorb(code year ind_code3 provid) cluster(provid
ivreghdfe lnci $control (ets=iv), absorb(code year ind_code3 provid) cluster(provid
//控制同期其他相关政策
gen trend=year-2007
gen sk=0 //两控区
replace sk=1 if city=="东城区"
replace sk=1 if city=="西城区"
replace sk=1 if city=="宣武区"
replace sk=1 if city=="崇文区"
replace sk=1 if city=="朝阳区"
replace sk=1 if city=="海淀区"
replace sk=1 if city=="丰台区"
replace sk=1 if city=="石景山区"
replace sk=1 if city=="门头沟区"
replace sk=1 if city=="通州区"
replace sk=1 if city=="房山区"
replace sk=1 if city=="昌平区"
replace sk=1 if city=="大兴区"
replace sk=1 if prov=="天津市"
replace sk=1 if city=="石家庄市"
replace sk=1 if city=="邯郸市"
replace sk=1 if city=="刑台市"
replace sk=1 if city=="保定市"
replace sk=1 if city=="张家口市"
replace sk=1 if city=="承德市"
replace sk=1 if city=="唐山市"
replace sk=1 if city=="衡水市"
replace sk=1 if city=="太原市"
replace sk=1 if city=="大同市"
replace sk=1 if city=="阳泉市"
replace sk=1 if city=="朔州市"
replace sk=1 if city=="忻州市"
replace sk=1 if city=="榆次市"
replace sk=1 if city=="临汾市"
replace sk=1 if city=="运城市"
replace sk=1 if city=="呼和浩特市"
replace sk=1 if city=="包头市"
replace sk=1 if city=="乌海市"
replace sk=1 if city=="赤峰市"
replace sk=1 if city=="沈阳市"
replace sk=1 if city=="大连市"
replace sk=1 if city=="鞍山市"
replace sk=1 if city=="抚顺市"
replace sk=1 if city=="本溪市"
replace sk=1 if city=="锦州市"
replace sk=1 if city=="葫芦岛市"
replace sk=1 if city=="阜新市"
replace sk=1 if city=="辽阳市"
replace sk=1 if city=="吉林市"
replace sk=1 if city=="四平市"
replace sk=1 if city=="通化市"
replace sk=1 if city=="徐州市"
replace sk=1 if city=="济南市"
replace sk=1 if city=="青岛市"
replace sk=1 if city=="淄博市"
replace sk=1 if city=="枣庄市"
replace sk=1 if city=="潍坊市"
replace sk=1 if city=="烟台市"
replace sk=1 if city=="济宁市"
replace sk=1 if city=="泰安市"
replace sk=1 if city=="莱芜市"
replace sk=1 if city=="德州市"
replace sk=1 if city=="郑州市"
replace sk=1 if city=="洛阳市"
replace sk=1 if city=="焦作市"
replace sk=1 if city=="安阳市"
replace sk=1 if city=="三门峡市"
replace sk=1 if city=="济源市"
replace sk=1 if city=="西安市"
replace sk=1 if city=="铜川市"
replace sk=1 if city=="渭南市"
replace sk=1 if city=="兰州市"
replace sk=1 if city=="金昌市"
replace sk=1 if city=="白银市"
replace sk=1 if city=="张掖市"
replace sk=1 if city=="银川市"
replace sk=1 if city=="石嘴山市"
replace sk=1 if city=="乌鲁木齐"
gen sktr=sk*trend
reghdfe lnse ets $control sktr, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control sktr, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control sktr, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control sktr, absorb(code year ind_code3 provid) cluster(provid
gen pw=0 //排污费征收标准调整
replace pw=1 if prov=="江苏省"
replace pw=1 if prov=="安徽省"
replace pw=1 if prov=="河北省"
replace pw=1 if prov=="山东省"
replace pw=1 if prov=="内蒙古自治区"
replace pw=1 if prov=="广西壮族自治区"
replace pw=1 if prov=="上海市"
replace pw=1 if prov=="云南省"
replace pw=1 if prov=="广东省"
replace pw=1 if prov=="辽宁省"
replace pw=1 if prov=="天津市"
gen pwtr=pw*trend
reghdfe lnse ets $control pwtr, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control pwtr, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control pwtr, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control pwtr, absorb(code year ind_code3 provid) cluster(provid
gen fy=0 //五年计划
replace fy=1 if year<=2005
replace fy=2 if year>2005
replace fy=3 if year==2011
gen fyspi=fy*spi
reghdfe lnse ets $control fyspi, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control fyspi, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control fyspi, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control fyspi, absorb(code year ind_code3 provid) cluster(provid
//安慰剂检验
permute ets beta = _b[ets], reps(500) saving("se_placebo.dta"): reghdfe lnse ets $control, absorb(code year ind_code3 provid) cluster(provid
use se_placebo.dta
permute ets beta = _b[ets], reps(500) saving("si_placebo.dta"): reghdfe lnsi ets $control, absorb(code year ind_code3 provid) cluster(provid
use si_placebo.dta
permute ets beta = _b[ets], reps(500) saving("ce_placebo.dta"): reghdfe lnce ets $control, absorb(code year ind_code3 provid) cluster(provid
use ce_placebo.dta
permute ets beta = _b[ets], reps(500) saving("ci_placebo.dta"): reghdfe lnci ets $control, absorb(code year ind_code3 provid) cluster(provid
use ci_placebo.dta
dpplot beta, xline(0) xtitle("估计系数") ytitle("概率密度")
//替换被解释变量
gen lnsoe=ln(soot_em+1)
gen lnsoi=ln(soot_em/output+1)
gen lndue=ln(sd_em+1)
gen lndui=ln(sd_em/output+1)
reghdfe lnsoe ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsoi ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lndue ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lndui ets $control, absorb(code year ind_code3 provid) cluster(provid
//反事实检验
gen lncode=ln(cod_em)
gen lncodi=ln(cod_em/output+1)
reghdfe lncode ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lncodi ets $control, absorb(code year ind_code3 provid) cluster(provid
***其他稳健性检验***
//排除样本干扰
drop if output==.
reghdfe lnsi ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control, absorb(code year ind_code3 provid) cluster(provid
drop if mid_code==441
drop if mid_code==442
reghdfe lnse ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control, absorb(code year ind_code3 provid) cluster(provid
//缓解溢出效应
reghdfe lnse ets $control if cyhd_total<=1, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control if cyhd_total<=1, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control if cyhd_total<=1, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control if cyhd_total<=1, absorb(code year ind_code3 provid) cluster(provid
//三重差分估计
gen poi=0
replace poi=1 if ind_code3==44
replace poi=1 if ind_code3==31
replace poi=1 if ind_code3==32
replace poi=1 if ind_code3==26
replace poi=1 if ind_code3==33
replace poi=1 if ind_code3==25
replace poi=1 if ind_code3==22
replace poi=1 if ind_code3==17
replace poi=1 if ind_code3==13
replace poi=1 if ind_code3==28
replace poi=0 if ind_code3==6
gen etsp=ets*poi
reghdfe lnse etsp age scale soe trade ki subsidy, absorb(code year
reghdfe lnsi etsp age scale soe trade ki subsidy, absorb(code year
reghdfe lnce etsp age scale soe trade ki subsidy, absorb(code year
reghdfe lnci etsp age scale soe trade ki subsidy, absorb(code year
//控制试点地区非随机选择的影响
gen indpt=indp*trend
gen firmt=firm*trend
gen enet=energy*trend
gen wgast=wgas*trend
gen popt=lnpop*trend
reghdfe lnse ets $control indpt firmt enet wgast popt, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control indpt firmt enet wgast popt, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control indpt firmt enet wgast popt, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control indpt firmt enet wgast popt, absorb(code year ind_code3 provid) cluster(provid
//控制行业-年份联合固定效应
reghdfe lnse ets age scale soe trade ki subsidy, absorb(code ind_code3
reghdfe lnsi ets age scale soe trade ki subsidy, absorb(code ind_code3
reghdfe lnce ets age scale soe trade ki subsidy, absorb(code ind_code3
reghdfe lnci ets age scale soe trade ki subsidy, absorb(code ind_code3
//排除国际金融危机干扰
drop if year==2009
reghdfe lnse ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnsi ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnce ets $control, absorb(code year ind_code3 provid) cluster(provid
reghdfe lnci ets $control, absorb(code year ind_code3 provid) cluster(provid
选取企业SO2产生量来表示企业清洁生产水平
,利用核心解释变量ets与企业SO2产生量的对数值进行回归,
表2第(1)列显示ets的估计系数显著为负
,表明排污权交易有效降低了SO2产生量,企业在生产端采用更清洁的生产方式减少SO2污染物的产生。
利用企业脱硫设施脱硫能力考察企业是否提升减排设备的污染处理能力
,回归结果见表2第(2)列,可以发现
ets的估计系数显著为正
,说明企业会通过提升脱硫设施的污染处理能力增强末端治理力度。
根据《综合能耗计算通则》(GB/T2589-2008),将企业煤炭、燃料油消耗量转换为标准煤消耗量,
利用标准煤消耗量来表示企业的化石能源消费
,表3第(1)列显示
ets的回归系数显著为负
,表3第(2)列的估计结果表示
处理组企业的清洁燃气消费量明显增加
,实现由化石能源到清洁能源的消费替代。
另一方面,
利用企业工业总产值/标准煤消耗总量来衡量企业能源利用效率。表3第(3)列显示,
ets的回归系数为正,且在1%的水平上显著,即相比于控制组企业,排污权交易制度有效提升了处理组企业的能源利用效率。
利用企业工业总产值作为被解释变量
,检验是否存在规模效应,表3第(4)列的
估计系数虽然为正,但并未通过显著性检验
,表明排污权交易没有显著影响企业生产规模。
首先,从技术创新和产品创新检验弱波特效应。一是
利用企业专利授权数表示技术创新水平
,将企业专利授权数加1后取对数作为被解释变量;二是从新产品的角度,
选取企业的新产品产值来度量产品创新
。具体地,表4第(1)列显示了排污权交易制度对企业专利授权总数的影响,
ets的估计系数为0.072,在5%水平下通过显著性检验
。此外,表4第(2)列基于产品创新的机制分析结果显示,
与控制组企业相比,排污权交易制度显著提高了处理组企业的新产品产值
,对企业产生了产品创新激励。