Marco, again - just thinking out loud - but one thought about event driven signals - something like a pre-earnings drift for example - is that they might relevant for only a very short window unless several ranges of windows are available. For example, a 1 wk pre-earnings drift might only effective for a single day (the day before earnings) and perhaps unactionable unless there is a more flexible way to generate the calculation. maybe something like: for stocks reporting earnings within the next 5 or 10 trading days, what has their price action been over the past n trading days (n= 5,10,20, etc).
Maybe a function like:
predrift(x,y,z)
where x and y determine the window for including earnings dates:
where x = lower bound on # of trading days until expected earnings release. Minimum here would be 0.
where y = upper bound on # of trading days until expected earnings release date, up to some maximum like maybe 20? This would help produce a binary “yes” flag for any company expected to report earnings in the next y days. No results, or NA maybe, for any company not reporting in the within the window.
so predrift(0,20,z) would flag any company reporting anywhere from 0 to 20 days in the future.
predrift(5,20,z) would flag any company reporting anywhere from 5 to 20 days in the future.
General idea of the 2 parameters x,y is to segment how far into the future earnings are expected to be able to tune and test for where any possible preearnings drift might exist.
The last parameter z = price change over the past z days. Could use 5 to get 5 day price action, or 20 to get 4 wk price action. If desired the user could compare this price change to to overall market or industry over similar time periods.
This formulation could accomodate recent and immediate earnings drifts, like predrift(0,2,5) could limit calc to only companies reporting in the next 2 days, and look at only the past 5 days of price action. Or could also be used for longer term windows - like predrift (0,10, 20) could give the 20d preearnings price drift for every company reporting in the next 10 days.
If we wanted to exclude possibly non-actionable companies reporting tomorrow then predrift(1,10,20) might be a parameter option. It also allows for possibility that the most important predrift signal might occur weeks before the earnings announcement like predrift(10,20,10).
Anyhow, just thinking out loud on this - but yeah - price action around earnings is definitely interesting to me.