how to calculate fiscal year stock returns?
Posted: 16 June 2014 10:09 PM   [ Ignore ]
Newbie
Rank
Total Posts:  26
Joined  2014-05-03

HI joost,
  I want to calculate fiscal year stock returns. I use monthly returns data in CRSP. But a firm’s fiscal year end date is different. How Can I calcuate the stock returns on a fiscal year basis?
  Thanks a lot!
Xinjiao

Profile
 
 
Posted: 17 June 2014 09:21 AM   [ Ignore ]   [ # 1 ]
Administrator
Avatar
RankRankRankRank
Total Posts:  901
Joined  2011-09-19

hi Xinjiao,

What do you mean that the fiscal year end date is different? Do you mean that for example a fiscal year end of June 28 has a datadate in Funda of June 30? In that case, you will need to use daily returns.

best regards,

Joost

 Signature 

To reply/post new questions: Please use the group WRDS/SAS on Google Groups! http://groups.google.com/d/forum/wrdssas

Profile
 
 
Posted: 17 June 2014 09:43 AM   [ Ignore ]   [ # 2 ]
Newbie
Rank
Total Posts:  26
Joined  2014-05-03

Hi Joost,
    For example. From CRSP database, I can obtan firm A’s monthly returns from 01/01/2013 to 31/12/2013. This is a calender year period. However, for firm A, the fiscal year end date, that is, the datadate in compustat database is 30/06/2014. This means for this firm 30/06/2013 to 30/06/2014 is a fiscal year perod. Since firms in compustat have different datadate, that is, different fiscal year end date, these firms thus have different fiscal period. Right? So, how can I calculate the stock returns on fiscal year period, instead of on calender year period?
  Thanks!

Profile
 
 
Posted: 17 June 2014 09:43 AM   [ Ignore ]   [ # 3 ]
Newbie
Rank
Total Posts:  26
Joined  2014-05-03

Hi Joost,
    For example. From CRSP database, I can obtan firm A’s monthly returns from 01/01/2013 to 31/12/2013. This is a calender year period. However, for firm A, the fiscal year end date, that is, the datadate in compustat database is 30/06/2014. This means for this firm 30/06/2013 to 30/06/2014 is a fiscal year perod. Since firms in compustat have different datadate, that is, different fiscal year end date, these firms thus have different fiscal period. Right? So, how can I calculate the stock returns on fiscal year period, instead of on calender year period?
  Thanks!

Profile
 
 
Posted: 17 June 2014 12:01 PM   [ Ignore ]   [ # 4 ]
Administrator
Avatar
RankRankRankRank
Total Posts:  901
Joined  2011-09-19

hi Xinjiao,

Something like this:

data getMsf2;
set getMsf1/* assuming this dataset holds gvkey, fyear, datadate, permno */
/* start and end date of fiscal year */
stFY intnx('month'datadate,-11'b');
endFY datadate;
/* unique identifier for firm-year */
key gvkey || datadate;
/* format date variables */
format stFY endFY date9.;
run;

/* get monthly returns */
proc sql;
 
create table getMsf3 as 
 
select a.*, b.date as retDateb.ret
 from
  getMsf2 a
,
  
crsp.msf b
 where
  a
.permno b.permno
  
/* get returns between start and enddate */
 
and a.stFY <= b.date <= a.endFY ;
quit;

/* sort dataset */
proc sort data getMsf3by key retDaterun;

data getMsf4;
set getMsf3;
by key;
/* retain (remember) cumulative return for each key (firm-year)*/
retain lnRet_Sum;
/* set to 1 for first record */
if first.key then lnRet_Sum 1;
/* set missing returns to zero */
if ret eq then ret 0;
/* add to cumulative return */
logret log(1+ret);
/* take log */
lnRet_Sum lnRet_Sum * (1+logret);
/* output when last return processed for each key (firm-year)*/
if last.key then output;
run

best regards,

Joost

 Signature 

To reply/post new questions: Please use the group WRDS/SAS on Google Groups! http://groups.google.com/d/forum/wrdssas

Profile