I have a fairly large dataset of CRSP firms with their daily closing prices from 2006 till 2017. I need to filter the data so that I have one daily observation per unique firm. I've identified the firms that have multiple share classes (A, B, C etc.). They are 78 firms with daily data from 2006 till 2017, which is about 190.800 observations.

I can't really figure out the best way to filter for the primary share class so that I can drop the excess observations? Does anyone have experience with this to offer some help?

I have access to the closing price, share code, share class, permco, permno and shares outstanding. I thought at least one of these variables would be a feasible way to identify a firms primary share class (the one most traded / accessible to the masses) but since not all firm's set up their share class in the same way, it's proving to be difficult.

Any insights? Below is a sample of my data. Stata Data Example

  • $\begingroup$ Restricting your universe to shrcd = 11 gives you some progress. You could try something somewhat fancier by examining what is most traded in the past and designate that as primary share class for subsequent periods? $\endgroup$ – Matthew Gunn Jul 30 '18 at 16:47
  • $\begingroup$ Hi Matthew, thank you for the idea. This might work if I can figure out to code it, will get back to this post when I figure it out. $\endgroup$ – S Wijn Jul 31 '18 at 17:47
  • $\begingroup$ My guess would be that however you do it (even choosing one at random), won't change your analysis substantively. $\endgroup$ – Matthew Gunn Jul 31 '18 at 17:49

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.