European data now available on beta site

We are introducing semiannual functions that should help with these and similar cases.

In the meantime, you can use an Eval function to determine if a stock is semiannual or not, and then treat it accordingly. The Eval function is Eval(InterimMonths(0)=6, . . .) If that’s true, then the stock reports semiannually.

I’m not sure what you meant by OpIncTTM(0,Qtr). Either you’re looking for TTM or for Qtr. If you meant OpInc(0,Qtr) and OpInc(1,Qtr), you are going to get numbers that are not comparable between semiannual and quarterly companies, of which there are plenty of both in Europe, as Dave points out. And Dave is right, fallback options won’t help. You really need to use the Eval function to get numbers that make sense.

Here are a few examples from my own ranking systems.

eval(interimmonths(0)=3,1,2)*loopsum("epsexclxor(ctr,qtr) > epsexclxor(ctr+4,qtr)",12,0)

This counts the number of times the quarterly EPS is larger than the same quarter the previous year over the last 12 quarters. For semiannual companies, the number of quarters that could possibly fulfill this would be 6. So I double the count if it’s a semiannual company.

eval(interimmonths(0)=3,1,0.5)*(opercashflq+cashfrinvestq)/asttotq

This ranks companies on the free cash flow ROA of their most recent reported quarter, using the sum of operating and investment cash flow as an alternative to the conventional free cash flow measure. For semiannual companies, I use only half of this sum so that it’s comparable to quarterly.