Quint

Your Comments#

De afgelopen tijd ben ik bezig geweest met dataverzameling en coderen. Ik heb code geschreven om de databases van IBES, TAQ en COC te compileren. Verder heb ik Code geschreven waarmee ik heb gecontroleerd voor welke bedrijven er genoeg datapoints zijn in IBES. Ik ben ook net klaar met een loop waarmee ik de TAQ-database en de COC database samenvoeg. Deze heb ik gecheckt voor het jaar 2016 en dat werkt. Sinds gisteren is de dataset echter geupdate en nu lukt het me niet meer om te downloaden van de database (er wordt gezegd dat er een probleem is met mijn input symbols maar ik zie niet direct wat het is).

Wat betekent “de dataset is geupdate?”

  • Je kunt het me laten zien, en we kunnen er samen naar kijken.
  • Ik heb de bestanden niet, dus de code lokaal runnen was niet mogelijk

Met de code die ik heb geschreven lukt het met wat kleine aanpassingen vermoedelijk ook om de CRSP database te linken aan beide databases. Hierna zou ik het eerste regressiemodel kunnen runnen om vervolgens de controlegroep op te stellen. Ik heb van vorig jaar nog code om het regressiemodel te runnen dus hierin voorzie ik weinig problemen. Waar ik echter nog mee zit is hoe ik de controlegroep ga opstellen. Er zijn namelijk te veel datapunten om zomaar de hele CRSP en TAQ databases leeg te trekken.

  • Connect je met CRSP via R interface / SQL?
  1. Sinds een update in de TAQ-database lukt het me niet meer hier de benodigde data uit te krijgen. Wat zou ik fout kunnen doen?

  2. Bij het opstellen van een controllegroep heb ik “te veel” observaties. Wat zou ik kunnen doen om de dataset te verkleinen?

  • Antwoord: filteren op basis van de characteristics van je treatment group, zodat je een soort van matched controlegroep krijgt.

Hierop ga ik de change in stock market price meten. Dit heb ik nog nooit gedaan dus ik was benieuwd of je hier tips of voorbeelden voor hebt.

# Denote n the number of time periods:

bereken_stockreturns <- function(vectoruitdf){

    n <- length(vectoruitdf)
    ret <- ((vectoruitdf[2:n] - vectoruitdf[1:(n-1)])/vectoruitdf[1:(n-1)])
    ret <- c(NA, ret)
    return(ret)
}

Tot slot ga ik een fixed effects regression model coderen.

library(plm)

model1 <- plm::plm(data = dataset, formula = y ~ x1 + x2 + etc, 
            model = "within",
            index = c("company", "year")
            )
            
library(stargazer)

stargazer(model1, model2, etc)