files = paste0("C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/HMDA/Ultimate Panel Data/",as.character(2000:2016),".fst")
panel = lapply(files, read_fst, as.data.table = TRUE,columns=c("respondentid","agencycode","reportername","asofdate","parentname","parentidentifier","reporterhomecity","reporterhomestate","rssd"))
panel <- do.call(rbind , panel)
panel[,asofdate:=as.integer(asofdate)]
panel <- panel[!duplicated(panel[,c("respondentid","agencycode","asofdate")])]
panel[,parentidentifier:=stri_trim(parentidentifier)]
panel[,rssd:=as.numeric(rssd)]
panel[,hmda_id:=paste0(agencycode,"-",respondentid)]
files <- NULL
files <- list.files(pattern="*.fst",path = "C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/HMDA/pre2004/OO_NP/",full.names = TRUE)
files <- c(files,list.files(pattern="*.fst",path = "C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/HMDA/pre2004/OO_RF/",full.names = TRUE))
files <- c(files,list.files(pattern="*.fst",path = "C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/HMDA/OO_NP/",full.names = TRUE))
files <- c(files,list.files(pattern="*.fst",path = "C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/HMDA/OO_RF/",full.names = TRUE))
hmda = lapply(files, read_fst, as.data.table = TRUE,
columns=c("asofdate","respondentid","agencycode","state","countycode","msa"))
hmda <- do.call(rbind , hmda)
hmda[,lender:=paste0(agencycode,"-",respondentid)]
hmda[,countycode:=paste0(state,countycode)]
cbsa_fips <- fread("C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/Crosswalk Files/cbsa_countyfips.csv")
cbsa_fips[,fips:=ifelse(nchar(fips)==4,paste0("0",fips),paste0(fips))]
hmda <- merge(hmda,cbsa_fips,by.x="countycode",by.y="fips",all.x=T)
hmda[,c("agencycode","respondentid"):=list(NULL)]
gc()
## used (Mb) gc trigger (Mb) max used (Mb)
## Ncells 2087562 111.5 3868294 206.6 2931850 156.6
## Vcells 2223678740 16965.4 6908864485 52710.5 7104836055 54205.6
mergers <- list()
temp <- list(1,"BANK ONE - JPMORGAN CHASE 2004",
c("1-0000000008","1-0000007621","1-0000003106","1-0000011230","1-0000013655","1-0000013759","1-0000013914","1-0000014320","1-0000015184","1-0000018785","1-0000021969","1-0000023237","2-0000331647","3-0000002487"),
unique(c(unique(panel[parentidentifier %in% c("0000002370","0000000008","0001039502","0000852218","0001040795"),]$hmda_id),"2-0000852218","1-0000023160","2-0000043557","1-22-1092200","1-0000000008")),
2000,"JPMORGAN CHASE BANK, NA",2004)
mergers[[1]] <- temp
temp <- list(2,"COUNTRYWIDE - BANK OF AMERIC 2009" ,c("1-0000024141","2-0001644643","2-0003267484","7-20-2241771","1-0000024141","4-0000018039"),c("1-0000013044"),
2005,"BANK OF AMERICA, N.A.",2009)
mergers[[2]] <- temp
temp <- list(3,"FLEET NA - BANK OF AMERICA 2005",c("1-0000000200"),c("1-0000013044"),
2003,"BANK OF AMERICA, N.A.",2005)
mergers[[3]] <- temp
temp <- list(4,"WACHOVIA BK NA - WELLS FARGO 2010", c("1-0000000001","1-0000022559","1-56-0811711"), panel[substr(reportername,1,7)=="WELLS F"]$hmda_id,
2005,"WELLS FARGO BANK, N.A.",2009)
mergers[[4]] <- temp
temp <- list(5,"LASALLE BK - BANK OF AMERICA 2008",panel[substr(reportername,1,7)=="LASALLE" & asofdate<=2005]$hmda_id,c("1-0000013044"),
2005,"BANK OF AMERICA, N.A.",2008)
mergers[[5]] <- temp
temp <- list(6,"ABN AMRO MTG GROUP - CITI BANK 2007",c("1-36-3744610"),unique(panel[parentidentifier=="0001951350"]$hmda_id),
2004,"CITIMORTGAGE, INC.",2007)
mergers[[6]] <- temp
temp <- list(7,"UNION PLANTERS BANK - REGIONS FINANCIAL CORP 2004",
c("1-0000013349"),
c("9-0000233031","2-0000233031"),
2002,c("REGIONS BANK"),2004)
mergers[[7]] <- temp
temp <- list(8,"AmSouth Bancorporation - REGIONS FINANCIAL CORP 2006",
c("2-0000245333"),
c("9-0000233031","2-0000233031"),
2004,c("REGIONS BANK"),2006)
mergers[[8]] <- temp
temp <- list(9,"Washington Mutual - JPMORGAN CHASE 2008",
c("4-0000008551","4-0000011905"),
unique(c(unique(panel[parentidentifier %in% c("0000002370","0000000008","0001039502","0000852218","0001040795"),]$hmda_id),"2-0000852218","1-0000023160","2-0000043557","1-22-1092200","1-0000000008")),
2005,"JPMORGAN CHASE BANK, NA",
2008)
mergers[[9]] <- temp
## target operated in 5 msas; small share.
temp <- list(10,"Greater Bay Bank - Wells Fargo 2007",
c("1-0000024489"),
panel[substr(reportername,1,7)=="WELLS F"]$hmda_id,
2005,c("WELLS FARGO BANK, N.A."),2007)
mergers[[10]] <- temp
temp <- list(11,"MBNA NA - BANK OF AMERICA 2005",c("1-0000024095"),c("1-0000013044"),
2003,"BANK OF AMERICA, N.A.",2005)
mergers[[11]] <- temp
temp <- list(12,"Merrill Lynch - BANK OF AMERICA 2008",c("2-0000421203","7-13-3403204","3-13-3098068","3-13-3399559","3-0000027374","3-0000091363","3-13-3399559","4-0000014460","3-68-0518519","4-0000014460", "4-0133098068"),c("1-0000013044"),
2005,"BANK OF AMERICA, N.A.",2008)
mergers[[12]] <- temp
temp <- list(13,"FIRST INTERSTATE BK CA - Wells Fargo 1996",c("2-0000669667"),panel[substr(reportername,1,7)=="WELLS F"]$hmda_id,1994,"WELLS FARGO BANK, N.A.",1996)
mergers[[13]] <- temp
temp <- list(14,"PACIFIC NORTHWEST - Wells Fargo 2004",c("3-0000030887","3-0000027346"),panel[substr(reportername,1,7)=="WELLS F"]$hmda_id,
2002,"WELLS FARGO BANK, N.A.",2004)
mergers[[14]] <- temp
temp <- list(15,"MERIDIAN MOME MORTGAGE, LP - Wells Fargo 2010",c("1-74-3082948"),panel[substr(reportername,1,7)=="WELLS F"]$hmda_id,
2005,"WELLS FARGO BANK, N.A.",2010)
mergers[[15]] <- temp
temp <- list(16,"The Leader Mtg Co - US Bank 2004",
c("7-3814209995"),
panel[substr(reportername,1,5)=="U S B"]$hmda_id,
2002,c("U.S. BANK N.A."),2004)
mergers[[16]] <- temp
temp <- list(17,"PFF BANK & TRUST - US Bank 2008",
c("4-0000001405"),
panel[substr(reportername,1,5)=="U S B"]$hmda_id,
2005,c("U.S. BANK N.A."),2008)
mergers[[17]] <- temp
temp <- list(18,"DOWNEY SAVINGS AND LOAN ASSOCIATION, F.A. - US Bank 2008",
c("4-0000006189"),
panel[substr(reportername,1,5)=="U S B"]$hmda_id,
2005,c("U.S. BANK N.A."),2008)
mergers[[18]] <- temp
cbsas <- unique(hmda$cbsa)
yrs <- 2000:2016
acqbanks <- NULL
for(i in 1:length(mergers)) {
acqbanks <- c(acqbanks,mergers[[i]][6][[1]])
}
acqbanks <- c(unique(acqbanks),"other")
cbsas1 <- merge(cbsas,yrs)
cbsas2 <- merge(cbsas,acqbanks)
cbsas <- merge(cbsas1,cbsas2,by="x")
names(cbsas) <- c("cbsa","acyr","bank")
cbsas <- data.table(cbsas)
cbsas[,bank:=as.character(bank)]
cbsas[,acqbank:=0]
cbsas[,pred_share:=0]
cbsas[,suc_share:=0]
cbsa_bnk <- NULL
lender_bank <- NULL
sumtable <- NULL
for(i in 1:length(mergers)) {
# print(i)
mid=mergers[[i]][1][[1]]
mname=mergers[[i]][2][[1]]
pred_hmda_id=mergers[[i]][3][[1]]
suc_hmda_id=mergers[[i]][4][[1]]
yr=mergers[[i]][5][[1]]
acname = mergers[[i]][6][[1]]
acyr = mergers[[i]][7][[1]]
temp <- hmda[asofdate == yr ]
temp[,pred:=ifelse(lender %in% pred_hmda_id,1,0)]
cw <- temp[,.(pred_share=mean(pred)),by=.(cbsa)]
temp1 <- hmda[asofdate == (acyr-1) ]
temp1[,suc:=ifelse(lender %in% suc_hmda_id,1,0)]
cw1 <- temp1[,.(suc_share=mean(suc)),by=.(cbsa)]
cw <- merge(cw,cw1,by="cbsa",all.x=T)
cw <- cw[!is.na(cbsa)]
cw[is.na(cw)] <- 0
cw[,joint_share:=pred_share+suc_share]
cw[,bank:=acname]
cw[,acyr:=acyr]
cw[,c("joint_share"):=list(NULL)]
cbsa_bnk <- rbind(cbsa_bnk,cw)
}
cbsa_bnk[,acqbank:=1]
cbsa_bnk <- rbind(cbsa_bnk,cbsas)
setorder(cbsa_bnk,-pred_share)
cbsa_bnk <- cbsa_bnk[!duplicated(cbsa_bnk[,c("cbsa","acyr","bank")])]
cbsa_bnk <- cbsa_bnk[!is.na(cbsa)]
cbsa_bnk <- cbsa_bnk[,.(pred_share=sum(pred_share,na.rm = T)),by=.(cbsa,acyr)]
cbsa_bnk[,bank:=NA]
cbsa_bnk_1 <- cbsa_bnk[,c("cbsa","pred_share","bank","acyr")]
names(cbsa_bnk_1) <- c("cbsa","pred_share_1","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_2","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_3","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_4","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_5","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_6","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_7","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_8","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
names(cbsa_bnk_1) <- c("cbsa","pred_share_9","bank","acyr")
cbsa_bnk_1[,acyr:=acyr+1]
cbsa_bnk <- merge(cbsa_bnk,cbsa_bnk_1,by=c("cbsa","bank","acyr"),all.x = T)
cbsa_bnk[,pred_share_1:=ifelse(is.na(pred_share_1),0,pred_share_1)]
cbsa_bnk[,pred_share_2:=ifelse(is.na(pred_share_2),0,pred_share_2)]
cbsa_bnk[,pred_share_3:=ifelse(is.na(pred_share_3),0,pred_share_3)]
cbsa_bnk[,pred_share_4:=ifelse(is.na(pred_share_4),0,pred_share_4)]
cbsa_bnk[,pred_share_5:=ifelse(is.na(pred_share_5),0,pred_share_5)]
cbsa_bnk[,pred_share_6:=ifelse(is.na(pred_share_6),0,pred_share_6)]
cbsa_bnk[,pred_share_7:=ifelse(is.na(pred_share_7),0,pred_share_7)]
cbsa_bnk[,pred_share_8:=ifelse(is.na(pred_share_8),0,pred_share_8)]
cbsa_bnk[,pred_share_9:=ifelse(is.na(pred_share_9),0,pred_share_9)]
cbsa_bnk[,msinc13:=pred_share_1+pred_share_2+pred_share_3+0.00001]
cbsa_bnk[,msinc46:=pred_share_4+pred_share_5+pred_share_6+0.00001]
cbsa_bnk[,msinc79:=pred_share_7+pred_share_8+pred_share_9+0.00001]
cbsa_bnk[,msinc13G:=ifelse(msinc13<=0.0001,"0. 0",
ifelse(msinc13<0.01,"1. Less than 1pct",
ifelse(msinc13<0.05,"2. 1 - 5pct",
ifelse(msinc13<0.1,"3. 5pct - 10pct", "4. More than 10pct"))))]
cbsa_bnk[,msinc46G:=ifelse(msinc46<=0.0001,"0. 0",
ifelse(msinc46<0.01,"1. Less than 1pct",
ifelse(msinc46<0.05,"2. 1 - 5pct",
ifelse(msinc46<0.1,"3. 5pct - 10pct", "4. More than 10pct"))))]
cbsa_bnk[,msinc79G:=ifelse(msinc79<=0.0001,"0. 0",
ifelse(msinc79<0.01,"1. Less than 1pct",
ifelse(msinc79<0.05,"2. 1 - 5pct",
ifelse(msinc79<0.1,"3. 5pct - 10pct", "4. More than 10pct"))))]
cbsa_bnk[,c("bank"):=list(NULL)]
print(ggplot(cbsa_bnk,aes(x=msinc13*100))+geom_histogram(fill="royalblue",alpha=0.3,color="royalblue")+theme_minimal()+labs(x=bquote(MSAcq^{1-3}~"(%)"),y="Frequency")+scale_y_continuous(labels = function(x) format(x, big.mark = ",",scientific = FALSE)))
freddie <- list.files(pattern="*.fst",path = "C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/Freddie/Acq",full.names = TRUE)
freddie = lapply(freddie, read_fst,as.data.table=T, columns = c("fico","dt_first_pi","cd_msa","ltv","dti","orig_upb","int_rt","prop_type","zipcode","id_loan","orig_loan_term","seller_name","loan_purpose","cltv"))
freddie <- do.call(rbind , freddie)
freddie <- freddie[orig_loan_term==360 & prop_type=="SF"]
freddie[,loanyr:=year(dt_first_pi)]
freddie[,msa:=cd_msa]
freddie[,c("orig_loan_term","dt_first_pi","prop_type","cd_msa"):=list(NULL)]
freddie[,seller_name:= ifelse(seller_name %in% c("JPMORGAN CHASE BANK, NA","JPMORGAN CHASE BANK, NATIONAL ASSOCIATION","CHASE MANHATTAN MORTGAGE CORPORATION","CHASE HOME FINANCE LLC","CHASE HOME FINANCE","CHASE HOME FINANCE, LLC","JPMORGAN CHASE BANK, NATIONAL ASSOCIATION","JPMORGAN CHASE BANK, N.A."),"JPMORGAN CHASE BANK, NA",seller_name)]
freddie[,seller_name:= ifelse(seller_name %in% c("CITIMORTGAGE, INC.","ABN AMRO, NKA CITIMORTGAGE INC.","CITIMORTGAGE, INC."),"CITIMORTGAGE, INC.",seller_name)]
freddie[,seller_name:= ifelse(seller_name %in% c("WELLS FARGO HOME MORTGAGE, INC.","WELLS FARGO BANK, N.A."),"WELLS FARGO BANK, N.A.",seller_name)]
freddie[,bank:=seller_name]
# freddie[,bank:=ifelse(bank %in% unique(cbsa_bnk$bank),bank,"other")]
freddie[,freddie:=1]
freddie[,newpurchase:=ifelse(loan_purpose=="P",1,0)]
freddie[,ltvorg:=ltv]
freddie[,ltv:=cltv]
fannie <- list.files(pattern="*.fst",path = "C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/Fannie/Acq",full.names = TRUE)
fannie = lapply(fannie, read_fst,as.data.table=T, columns = c("loan_identifier","seller_name","original_interest_rate","original_upb","original_loan_term","origination_date","original_ltv","original_dti","credit_score","property_type","property_state","zip_code","msa","loan_purpose","original_cltv"))
fannie <- do.call(rbind , fannie)
fannie <- fannie[original_loan_term==360 & property_type=="SF"]
fannie[,loanyr:=year(origination_date)]
fannie[,seller_name:= ifelse(seller_name %in% c("JPMORGAN CHASE BANK, NA","JPMORGAN CHASE BANK, NATIONAL ASSOCIATION","CHASE MANHATTAN MORTGAGE CORPORATION","CHASE HOME FINANCE LLC","CHASE HOME FINANCE","CHASE HOME FINANCE, LLC","JPMORGAN CHASE BANK, NATIONAL ASSOCIATION","JPMORGAN CHASE BANK, N.A."),"JPMORGAN CHASE BANK, NA",seller_name)]
fannie[,seller_name:= ifelse(seller_name %in% c("CITIMORTGAGE, INC.","ABN AMRO, NKA CITIMORTGAGE INC.","CITIMORTGAGE, INC."),"CITIMORTGAGE, INC.",seller_name)]
fannie[,seller_name:= ifelse(seller_name %in% c("WELLS FARGO HOME MORTGAGE, INC.","WELLS FARGO BANK, N.A."),"WELLS FARGO BANK, N.A.",seller_name)]
fannie[,bank:=seller_name]
# fannie[,bank:=ifelse(bank %in% unique(cbsa_bnk$bank),bank,"other")]
fannie[,freddie:=0]
fannie[,ltvorg:=original_ltv]
setnames(fannie,"zip_code","zipcode")
setnames(fannie,"original_ltv","ltv")
setnames(fannie,"original_upb","orig_upb")
setnames(fannie,"original_interest_rate","int_rt")
setnames(fannie,"loan_identifier","id_loan")
setnames(fannie,"credit_score","fico")
setnames(fannie,"original_dti","dti")
setnames(fannie,"original_cltv","cltv")
fannie[,c("property_type","property_state","original_loan_term","origination_date"):=list(NULL)]
fannie[,loan_purpose:=ifelse(loan_purpose=="R","N",loan_purpose)]
fannie <- fannie[loan_purpose != "U"]
fannie[,id_loan:=as.character(id_loan)]
fannie[,newpurchase:=ifelse(loan_purpose=="P",1,0)]
fannie[,ltv:=cltv]
moodys <- read_fst("C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/Moodys/0001/LoanChars.fst",as.data.table = TRUE, columns=c("loanid","loanoriginationdate","zipcode","originalloanbalance","originalcltv","state","originator","armflag","originalfico","originalterm","originalltv","documentationtype","originalinterestrate","purposetype","assettype"))
cbsa <- fread("C:/Users/dratnadiwakara2/Documents/OneDrive - Louisiana State University/Raw Data/Crosswalk Files/ZIP_CBSA.csv")
cbsa[,ZIP:=ifelse(nchar(ZIP)==3,paste0("00",ZIP),ifelse(nchar(ZIP)==4,paste0("0",ZIP),paste0(ZIP)))]
setorder(cbsa,ZIP,-RES_RATIO)
cbsa <- cbsa[!duplicated(cbsa[,c("ZIP")])]
cbsa[,c("RES_RATIO","BUS_RATIO","OTH_RATIO","TOT_RATIO"):=list(NULL)]
names(cbsa) <- c("zipcode","msa")
moodys <- merge(moodys,cbsa,by=c("zipcode"))
# moodys <- moodys[originalterm==360 & armflag=="F"]
moodys[,loanyr:=as.numeric(substr(loanoriginationdate,1,4))]
moodys[,seller_name:= originator]
moodys[,seller_name:= ifelse(seller_name %in% c("JPMORGAN CHASE BANK, NA","JPMORGAN CHASE BANK, NATIONAL ASSOCIATION","CHASE MANHATTAN MORTGAGE CORPORATION","CHASE HOME FINANCE LLC","CHASE HOME FINANCE","CHASE HOME FINANCE, LLC","JPMORGAN CHASE BANK, NATIONAL ASSOCIATION","JPMORGAN CHASE BANK, N.A.","JP MORGAN CHASE BANK NA","CHASE MANHATTAN MORTGAGE CORP"),"JPMORGAN CHASE BANK, NA",seller_name)]
moodys[,seller_name:= ifelse(seller_name %in% c("B OF A"),"BANK OF AMERICA, N.A.",seller_name)]
moodys[,seller_name:= ifelse(seller_name %in% c("WELLS FARGO HOME MORTGAGE, INC.","WELLS FARGO BANK, N.A.","WELLS FARGO BANK N.A"," WELLS FARGO HOME MTG, INC"),"WELLS FARGO BANK, N.A.",seller_name)]
moodys[,int_rt:=originalinterestrate]
moodys[,dti:=0]
moodys[,ltv:=originalcltv]
moodys[,ltvorg:=originalltv]
moodys[,fico:=originalfico]
moodys[,orig_upb:= originalloanbalance]
# moodys[,c("originalinterestrate","originalltv","originalfico","originalloanbalance","msacode","csacode","divcode","loanoriginationdate","armflag","originalterm"):=list(NULL)]
moodys[,fulldocumentation:=ifelse(documentationtype=="FU",1,0)]
gc()
## used (Mb) gc trigger (Mb) max used (Mb)
## Ncells 38841180 2074.4 57239540 3057.0 39532041 2111.3
## Vcells 3592825416 27411.1 6908864485 52710.5 7104836055 54205.6
moodys[,bank:=seller_name]
# moodys[,bank:=ifelse(bank %in% unique(cbsa_bnk$bank),bank,"other")]
moodys[,newpurchase:=ifelse(purposetype=="PUR",1,0)]
moodys <- moodys[assettype != "UN"]
regsample <- rbind(freddie,fannie)
regsample <- merge(regsample,cbsa_bnk,by.x=c("msa","loanyr"),by.y=c("cbsa","acyr"))
regsample[,bank_msa:=paste(seller_name,msa)]
regsample[,bank_year:=paste(seller_name,loanyr)]
r <- list()
r[[1]] <- felm(int_rt~msinc13+msinc46+fico+ltv+dti+log(orig_upb)+freddie+newpurchase|bank+msa+loanyr|0|msa,data=regsample)
r[[2]] <- felm(int_rt~msinc13+msinc46+fico+ltv+dti+log(orig_upb)+freddie+newpurchase|bank_msa+loanyr|0|msa,data=regsample)
r[[3]] <- felm(int_rt~msinc13+msinc46+fico+ltv+dti+log(orig_upb)+freddie+newpurchase|bank_year+msa|0|msa,data=regsample)
.printtable(r,column.labels = c("GSE","GSE","GSE"),lines = list(c("Fixed Effects",c("MSA,Bank,Yr","MSA*Bank,Yr","Bank*Yr, MSA"))))
##
## ==================================================
## Dependent variable:
## ------------------------------------
## GSE GSE GSE
## (1) (2) (3)
## --------------------------------------------------
## msinc13 0.490*** 0.381*** 0.441***
## (0.068) (0.065) (0.069)
## msinc46 0.412*** 0.304*** 0.404***
## (0.069) (0.062) (0.066)
## fico -0.0001*** -0.0001*** -0.0001***
## (0.00001) (0.00001) (0.00001)
## ltv 0.004*** 0.004*** 0.004***
## (0.0001) (0.0001) (0.0001)
## dti 0.0001*** 0.0001*** 0.0001***
## (0.00001) (0.00001) (0.00001)
## log(orig_upb) -0.228*** -0.228*** -0.227***
## (0.006) (0.006) (0.006)
## freddie 0.049*** 0.048*** 0.055***
## (0.002) (0.002) (0.002)
## newpurchase 0.022*** 0.025*** 0.020***
## (0.004) (0.004) (0.004)
## --------------------------------------------------
## Fixed Effects MSA,Bank,Yr MSA*Bank,Yr Bank*Yr, MSA
## Observations 23,793,279 23,793,279 23,793,279
## Adjusted R2 0.894 0.896 0.897
## ==================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
r <- list()
r[[1]] <- felm(int_rt~msinc13+msinc46+fico+ltv+dti+log(orig_upb)+freddie+newpurchase|bank+msa+loanyr|0|msa,data=regsample[!bank %in% acqbanks])
r[[2]] <- felm(int_rt~msinc13+msinc46+fico+ltv+dti+log(orig_upb)+freddie+newpurchase|bank_msa+loanyr|0|msa,data=regsample[!bank %in% acqbanks])
r[[3]] <- felm(int_rt~msinc13+msinc46+fico+ltv+dti+log(orig_upb)+freddie+newpurchase|bank_year+msa|0|msa,data=regsample[!bank %in% acqbanks])
.printtable(r,column.labels = c("GSE","GSE","GSE"),lines = list(c("Fixed Effects",c("MSA,Bank,Yr","MSA*Bank,Yr","Bank*Yr, MSA"))))
##
## ==================================================
## Dependent variable:
## ------------------------------------
## GSE GSE GSE
## (1) (2) (3)
## --------------------------------------------------
## msinc13 0.545*** 0.439*** 0.552***
## (0.089) (0.094) (0.091)
## msinc46 0.404*** 0.325*** 0.404***
## (0.081) (0.076) (0.073)
## fico -0.0001*** -0.0001*** -0.0001***
## (0.00001) (0.00001) (0.00001)
## ltv 0.004*** 0.004*** 0.004***
## (0.0001) (0.0001) (0.0001)
## dti 0.0001*** 0.0001*** 0.0001***
## (0.00001) (0.00001) (0.00001)
## log(orig_upb) -0.216*** -0.215*** -0.214***
## (0.005) (0.005) (0.005)
## freddie 0.053*** 0.044*** 0.037***
## (0.004) (0.002) (0.004)
## newpurchase 0.026*** 0.030*** 0.023***
## (0.004) (0.004) (0.004)
## --------------------------------------------------
## Fixed Effects MSA,Bank,Yr MSA*Bank,Yr Bank*Yr, MSA
## Observations 13,641,546 13,641,546 13,641,546
## Adjusted R2 0.906 0.907 0.908
## ==================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
r <- list()
r[[1]] <- felm(log(orig_upb)~msinc13+msinc46+fico+ltv+dti+freddie+newpurchase|bank+msa+loanyr|0|msa,data=regsample[!bank %in% acqbanks])
r[[2]] <- felm(log(orig_upb)~msinc13+msinc46+fico+ltv+dti+freddie+newpurchase|bank_msa+loanyr|0|msa,data=regsample[!bank %in% acqbanks])
r[[3]] <- felm(log(orig_upb)~msinc13+msinc46+fico+ltv+dti+freddie+newpurchase|bank_year+msa|0|msa,data=regsample[!bank %in% acqbanks])
.printtable(r,column.labels = c("GSE","GSE","GSE"),lines = list(c("Fixed Effects",c("MSA,Bank,Yr","MSA*Bank,Yr","Bank*Yr, MSA"))))
##
## ==================================================
## Dependent variable:
## ------------------------------------
## GSE GSE GSE
## (1) (2) (3)
## --------------------------------------------------
## msinc13 -0.290 -0.333 -0.315
## (0.223) (0.203) (0.216)
## msinc46 0.017 -0.001 0.005
## (0.123) (0.103) (0.120)
## fico 0.00004*** 0.00003*** 0.00003***
## (0.00000) (0.00000) (0.00000)
## ltv 0.008*** 0.008*** 0.008***
## (0.0001) (0.0001) (0.0001)
## dti 0.0001*** 0.0001*** 0.0001***
## (0.00000) (0.00000) (0.00000)
## freddie 0.003 0.012*** 0.004
## (0.004) (0.002) (0.005)
## newpurchase -0.073*** -0.073*** -0.073***
## (0.004) (0.004) (0.004)
## --------------------------------------------------
## Fixed Effects MSA,Bank,Yr MSA*Bank,Yr Bank*Yr, MSA
## Observations 13,641,548 13,641,548 13,641,548
## Adjusted R2 0.364 0.374 0.366
## ==================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
regsample <- merge(moodys,cbsa_bnk,by.x=c("msa","loanyr"),by.y=c("cbsa","acyr"))
regsample[,assettype:=ifelse(assettype=="Prime","0Prime",assettype)]
regsample[,bank_msa:=paste(seller_name,msa)]
regsample[,bank_year:=paste(seller_name,loanyr)]
r <- list()
r[[1]] <- felm(int_rt~msinc13+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank+msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F"])
r[[2]] <- felm(int_rt~msinc13+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank_msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F"])
r[[3]] <- felm(int_rt~msinc13+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank_year+msa|0|msa,data=regsample[originalterm==360 & armflag=="F"])
.printtable(r,column.labels = c("Moody's","Moody's","Moody's","Moody's"),lines = list(c("Fixed Effects",c("MSA,Bank,Yr","MSA*Bank,Yr","Bank*Yr, MSA"))))
##
## ==============================================================
## Dependent variable:
## ------------------------------------
## Moody's Moody's Moody's
## (1) (2) (3)
## --------------------------------------------------------------
## msinc13 -1.410*** -1.057* -1.161***
## (0.534) (0.544) (0.396)
## fico -0.003*** -0.003*** -0.003***
## (0.0001) (0.0001) (0.0001)
## ltv 0.018*** 0.017*** 0.017***
## (0.001) (0.001) (0.001)
## fulldocumentation -0.224*** -0.223*** -0.214***
## (0.009) (0.010) (0.009)
## log(orig_upb) -1.103*** -1.090*** -1.078***
## (0.018) (0.019) (0.018)
## newpurchase 0.116*** 0.122*** 0.144***
## (0.021) (0.020) (0.018)
## factor(assettype)Alt-A 0.112*** 0.111*** 0.122***
## (0.007) (0.007) (0.006)
## factor(assettype)Subprime 0.404*** 0.409*** 0.397***
## (0.013) (0.014) (0.014)
## --------------------------------------------------------------
## Fixed Effects MSA,Bank,Yr MSA*Bank,Yr Bank*Yr, MSA
## Observations 3,028,828 3,028,828 3,028,828
## Adjusted R2 0.465 0.483 0.488
## ==============================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
r <- list()
r[[1]] <- felm(int_rt~msinc13+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank+msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F" & !bank %in% acqbanks])
r[[2]] <- felm(int_rt~msinc13+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank_msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F" & !bank %in% acqbanks])
r[[3]] <- felm(int_rt~msinc13+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank_year+msa|0|msa,data=regsample[originalterm==360 & armflag=="F" & !bank %in% acqbanks])
.printtable(r,column.labels = c("Moody's","Moody's","Moody's","Moody's"),lines = list(c("Fixed Effects",c("MSA,Bank,Yr","MSA*Bank,Yr","Bank*Yr, MSA"))))
##
## ==============================================================
## Dependent variable:
## ------------------------------------
## Moody's Moody's Moody's
## (1) (2) (3)
## --------------------------------------------------------------
## msinc13 -1.612*** -1.289** -1.262***
## (0.574) (0.586) (0.436)
## fico -0.003*** -0.003*** -0.003***
## (0.0001) (0.0001) (0.0001)
## ltv 0.018*** 0.018*** 0.018***
## (0.001) (0.001) (0.001)
## fulldocumentation -0.249*** -0.248*** -0.237***
## (0.010) (0.010) (0.009)
## log(orig_upb) -1.139*** -1.125*** -1.108***
## (0.020) (0.020) (0.019)
## newpurchase 0.122*** 0.128*** 0.154***
## (0.022) (0.022) (0.019)
## factor(assettype)Alt-A 0.100*** 0.101*** 0.111***
## (0.007) (0.007) (0.006)
## factor(assettype)Subprime 0.375*** 0.384*** 0.366***
## (0.012) (0.014) (0.012)
## --------------------------------------------------------------
## Fixed Effects MSA,Bank,Yr MSA*Bank,Yr Bank*Yr, MSA
## Observations 2,724,749 2,724,749 2,724,749
## Adjusted R2 0.464 0.481 0.486
## ==============================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
r <- list()
r[[1]] <- felm(log(orig_upb)~msinc13+fico+ltv+fulldocumentation+newpurchase+factor(assettype)|bank+msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F"])
r[[2]] <- felm(log(orig_upb)~msinc13+fico+ltv+fulldocumentation+newpurchase+factor(assettype)|bank_msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F"])
r[[3]] <- felm(log(orig_upb)~msinc13+fico+ltv+fulldocumentation+newpurchase+factor(assettype)|bank_year+msa|0|msa,data=regsample[originalterm==360 & armflag=="F"])
.printtable(r,column.labels = c("Moody's","Moody's","Moody's","Moody's"),lines = list(c("Fixed Effects",c("MSA,Bank,Yr","MSA*Bank,Yr","Bank*Yr, MSA"))))
##
## ==============================================================
## Dependent variable:
## ------------------------------------
## Moody's Moody's Moody's
## (1) (2) (3)
## --------------------------------------------------------------
## msinc13 -1.588*** -1.658*** -1.694***
## (0.374) (0.376) (0.368)
## fico 0.002*** 0.002*** 0.002***
## (0.0001) (0.0001) (0.0001)
## ltv -0.003*** -0.002*** -0.002***
## (0.001) (0.001) (0.001)
## fulldocumentation 0.027*** 0.023*** 0.027***
## (0.006) (0.006) (0.006)
## newpurchase -0.154*** -0.151*** -0.155***
## (0.009) (0.010) (0.009)
## factor(assettype)Alt-A -0.156*** -0.154*** -0.155***
## (0.005) (0.005) (0.006)
## factor(assettype)Subprime -0.123*** -0.126*** -0.129***
## (0.008) (0.008) (0.008)
## --------------------------------------------------------------
## Fixed Effects MSA,Bank,Yr MSA*Bank,Yr Bank*Yr, MSA
## Observations 3,030,038 3,030,038 3,030,038
## Adjusted R2 0.416 0.430 0.436
## ==============================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
r <- list()
r[[1]] <- felm(int_rt~factor(msinc13G)+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank+msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F"])
r[[2]] <- felm(int_rt~factor(msinc13G)+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank_msa+loanyr|0|msa,data=regsample[originalterm==360 & armflag=="F"])
r[[3]] <- felm(int_rt~factor(msinc13G)+fico+ltv+fulldocumentation+log(orig_upb)+newpurchase+factor(assettype)|bank_year+msa|0|msa,data=regsample[originalterm==360 & armflag=="F"])
.printtable(r,column.labels = c("Moody's","Moody's","Moody's","Moody's"),lines = list(c("Fixed Effects",c("MSA,Bank,Yr","MSA*Bank,Yr","Bank*Yr, MSA"))))
##
## =======================================================================
## Dependent variable:
## ------------------------------------
## Moody's Moody's Moody's
## (1) (2) (3)
## -----------------------------------------------------------------------
## factor(msinc13G)1. Less than 1pct 0.319*** 0.292*** 0.246***
## (0.020) (0.023) (0.026)
## factor(msinc13G)2. 1 - 5pct 0.280*** 0.255*** 0.219***
## (0.019) (0.020) (0.029)
## factor(msinc13G)3. 5pct - 10pct 0.236*** 0.227*** 0.193***
## (0.036) (0.039) (0.032)
## factor(msinc13G)4. More than 10pct 0.247*** 0.211*** 0.180***
## (0.042) (0.047) (0.050)
## fico -0.003*** -0.003*** -0.003***
## (0.0001) (0.0001) (0.0001)
## ltv 0.018*** 0.017*** 0.017***
## (0.001) (0.001) (0.001)
## fulldocumentation -0.224*** -0.223*** -0.214***
## (0.009) (0.010) (0.009)
## log(orig_upb) -1.103*** -1.090*** -1.077***
## (0.018) (0.019) (0.017)
## newpurchase 0.116*** 0.122*** 0.144***
## (0.021) (0.020) (0.018)
## factor(assettype)Alt-A 0.112*** 0.111*** 0.122***
## (0.007) (0.007) (0.006)
## factor(assettype)Subprime 0.404*** 0.409*** 0.396***
## (0.013) (0.014) (0.014)
## -----------------------------------------------------------------------
## Fixed Effects MSA,Bank,Yr MSA*Bank,Yr Bank*Yr, MSA
## Observations 3,028,828 3,028,828 3,028,828
## Adjusted R2 0.465 0.483 0.488
## =======================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##