When using the eventstudy2 command by Stata 18.0, I have faced with two main problems, even when using the same raw dataset without any modifications:
1. Inconsistent number of identified events
When running the command repeatedly with a large sample size, some stock events are occasionally misclassified into the diagnosticsfile.dta as problematic events, and the most common reason is "Event with event date off the dateline", leading to fluctuating counts of identified events. As is shown in Table 1,
2. Inconsistent CAR/AARE results with the same number of events
Even when the command consistently identifies 149 events (full identification), the results (e.g., AARE and CAR) vary across runs. As is shown in Table 1, the result between the 3rd and 4th attempt is different, even though all 149 events have been identified.
Table 1:
You can try the data sample provided below, and the syntax is:
1. Inconsistent number of identified events
When running the command repeatedly with a large sample size, some stock events are occasionally misclassified into the diagnosticsfile.dta as problematic events, and the most common reason is "Event with event date off the dateline", leading to fluctuating counts of identified events. As is shown in Table 1,
- 1st attempt: 145 events identified
- 2nd attempts:147 events identified
- 3rd attempts: 149 events identified (full identification, all valid events recognized), it seems that the only way to achieve full identification is to run the command repeatedly for trial (some times it takes many times)
2. Inconsistent CAR/AARE results with the same number of events
Even when the command consistently identifies 149 events (full identification), the results (e.g., AARE and CAR) vary across runs. As is shown in Table 1, the result between the 3rd and 4th attempt is different, even though all 149 events have been identified.
Table 1:
| 1st Attempt | 2nd Attempt | 3rd Attempt | 4th Attempt | |||||
| t | NoFirms | AARE | NoFirms | AARE | NoFirms | AARE | NoFirms | AARE |
| -10 | 145 | -0.013% | 147 | 0.136% | 149 | 0.060% | 149 | -0.137% |
| -9 | 145 | -0.245% | 147 | -0.101% | 149 | -0.079% | 149 | -0.054% |
| -8 | 145 | 0.035% | 147 | -0.316% | 149 | -0.046% | 149 | -0.032% |
| -7 | 145 | -0.161% | 147 | -0.003% | 149 | -0.237% | 149 | -0.068% |
| -6 | 145 | -0.135% | 147 | 0.013% | 149 | -0.057% | 149 | -0.184% |
| -5 | 145 | 0.017% | 147 | -0.282% | 149 | -0.108% | 149 | -0.154% |
| -4 | 145 | -0.274% | 147 | -0.061% | 149 | -0.302% | 149 | -0.179% |
| -3 | 145 | -0.077% | 147 | 0.058% | 149 | 0.110% | 149 | 0.202% |
| -2 | 145 | -0.046% | 147 | -0.249% | 149 | 0.096% | 149 | -0.281% |
| -1 | 145 | -0.674% | 147 | -0.276% | 149 | -0.432% | 149 | -0.280% |
| 0 | 145 | -0.352% | 147 | -0.640% | 149 | -0.702% | 149 | -0.817% |
| 1 | 145 | -0.591% | 147 | -0.429% | 149 | -0.369% | 149 | -0.324% |
| 2 | 145 | -0.376% | 147 | -0.653% | 149 | -0.686% | 149 | -0.518% |
| 3 | 145 | -0.126% | 147 | -0.136% | 149 | -0.315% | 149 | -0.278% |
| 4 | 145 | -0.048% | 147 | -0.176% | 149 | -0.022% | 149 | -0.059% |
| 5 | 145 | -0.234% | 147 | -0.225% | 149 | 0.001% | 149 | -0.216% |
| 6 | 145 | -0.072% | 147 | 0.044% | 149 | -0.258% | 149 | -0.012% |
| 7 | 145 | -0.530% | 147 | -0.491% | 149 | -0.363% | 149 | -0.636% |
| 8 | 145 | 0.121% | 147 | -0.028% | 149 | -0.176% | 149 | 0.098% |
| 9 | 145 | -0.162% | 147 | -0.197% | 149 | -0.111% | 149 | -0.202% |
| 10 | 145 | -0.110% | 147 | -0.337% | 149 | -0.173% | 149 | -0.167% |
| CAR[-10,10] | -4.053% | -4.349% | -4.168% | -4.295% | ||||
You can try the data sample provided below, and the syntax is:
Code:
use eventdays.dta, clear eventstudy2 stkcd date using stk_ret, ret(ret) evwlb(-10) evwub(10) /// mod(FM) marketfile(index_ret) mar(ret_index) idmar(indexcd) /// car1LB(-1) car1UB(1) car5LB(-5) car5UB(5) car10LB(-10) car10UB(10) /// eswlb(-150) eswub(-20) arfillevent replace

Comment