Greenblatt system question (again sorry)

Hi, I’ll just add to Marc’s reply on this question. Path dependence can be strong with long holding periods. With long holding periods different start dates can have widely different results. You can test this by changing the starting dates on test models. Shortening the holding periods can possibly help eliminate this potential risk and make sure you get closer to the true expected return for the strategy.

Thanks to all of you guys for your comments, they help me a lot. :slight_smile:

I tried to implement the Greenblatt system, but I do not get the 18% Epimetheus said;

Do you think it’s all right? Is there room for improvement? Any suggestions?



What is a “stocks with low investment” for you? How do you mesure that?

Thanks.

15% per year is pretty good.
Don’t get greedy. :slight_smile:

One suggestion is to raise your minimum price you are willing to buy at to say at least $3-5.
The second is some kind of minimum trading liquidity number like Average Daily Total of at least $250,000 per day.

The third is to constrain the stocks bought to the kinds of companies where comparing across your universe for ROIC and EV makes sense. That is why Greenblatt excluded real estate companies, financial companies and utilities. Don’t want to compare apples and oranges for ranking purposes.

The last thing to look at is your re-balance frequency. Having a long, one year re-balance, can give you very odd results on your simulation because the performance becomes very dependent on the days that re-balance occurs. I would do monthly or quarterly.

This is a follow-up to my previous post, in which I found that the Greenblatt screen produces an alpha of -1.37% over the past five years and +3.79% over the past 10 if the universe is limited to the S&P 500 and the benchmark is set to the RSP (to eliminate bias from equal weighting).

I decided to look at the effectiveness of the 7th rule in the screen: Frank(" ROI%5YAvg")>=65. To do this, I re-set the maximum number of stocks in Settings from 15 to 0 to include all stocks that passed the screen rules, irrespective of their rank in the Greenblatt ranking system. The result was an alpha of +1.48% over the past five years and +2.88% over the past 10.

Then I looked at the effectiveness of the ranking system by itself by turning off the 7th rule in the screen. The result was an alpha of +3.27% over the past five years and +4.84% over the past 10.

So the Greenblatt ranking system and the ROI screen both added value in the two periods tested. But the combination of the two detracted in the past five years. It’s my view that ranking systems are vastly superior to screens as stock selection tools, so I’m tempted to take this as evidence that adding screening rules to ranking systems is a bad way to try to increase alpha. But I’ll admit that this is just one datapoint.

Note that both of the factors in the Greenblatt ranking system favor asset-light companies. Both use operating income AFTER depreciation in the numerator, and ROC has net plant in the denominator. So I probably should have been more skeptical when I found that the screen didn’t work over the past five years, when the market has been dominated by asset-light companies. Maybe that will continue.

Finally, someone should fix the 6th rule in the screen, which is supposed to eliminate real estate companies. It looks like the industry code used is out of date or otherwise erroneous.

See Fama-French’s CMA factor (“conservative minus aggressive”). The general observation is that firms which invest aggressively tend to have stocks which underperform.

The prevailing theory is that investors over-value companies which post strong earnings in the short term and correct that error over time as additional information is revealed regarding firms’ actual earnings potentials. Persistent anecdotal evidence corroborates that this mis-valuation can be attributed to investors’ cognitive errors.

[]Stocks of firms with high level of accruals (i.e., the non-cash portion of earnings) tend to under-perform while those with low level of accruals tend to out-perform
[
]Stocks of firms which raise equity tend to under-perform while those which decrease it tend to out-perform
[]Stocks of firms with growing assets tend to under-perform while those with shrinking assets tend to out-perform
[
]Stocks of firms with high levels of operating assets (relative tend to total assets) tend to under-perform while those with high level of non-operating assets tend to out-perform

These observations are generally true over the past 20 years (let me know if you’d like some references). But I am not sure they will persist very far into the future.

The “underinvestment” anomaly is partly a result of the market’s propensity to punish companies which have invested in growth while reward those which have emphasized cash flows. However, prior to the 1990’s, the marketplace rewarded out-investment. This can be observed through long-term trends of corporate conglomeration from the 1960s-to 1980s, followed by a period of deconglomeration through the 2000s. But the pendulum will swing. I think what we’re witnessing in the tech space–where investments are rewarded moreso than cash flows–may presage the shape of things to come.

Also, part of the anomaly is attributable to inefficiency. The purpose of accrual accounting methods (i.e., those which are endorsed by all major accounting regulators) is to provide stakeholders (e.g., owners, managers, investors, regulators, tax-collectors, etc.) with an accurate estimate of a firm’s cash flow generating potential. Historically, an over-emphasis on earnings led companies to “cook” the books by making the earnings look better than actual cash-flow generating potential–there are many ways that this can play out on the books. Therefore, investors which looked at other sources of information (e.g., cash flows) had an edge in determining the true cash generating potential of a firm. But now that the knowledge of this cognitive error has diffused, so have its potential advantages.

Thanks for your answer Primus, it’s very very interesting.

Hello David.

I did all what you said, more or less, my hope is that I did it all well, but the performance just descrease a little bit. Anyway, just the question would be: Is that one the “correct” aprouch to the Greenblatt system?

Anyway, if any of you guys know or have any idea about how to improve this, just tell me, all new oppinions are wellcome. :wink:



Hi Monday - Given that your stock universe is the S&P 500, your first 4 buy rules are not relevant and serve as a distraction. So I suggest that you start by deleting those buy rules.

Next observation is that you are selecting 30 stocks out of (500 - finance/real estate/utilities). Can you provide an indication of how many stocks are actually in the stock universe? It seems to me that you are selecting a reasonably significant portion of the stock universe, I’m guessing ~7%. This makes it more difficult to outperform the &P 500. Your results actually look quite good. If you drop the number of stock holdings from 30 down to 10 you should be able to achieve even better backtest results but the penalty is the higher risk going forward.

Can you run a 5-year backtest using RSP as the benchmark and post the results? If you do so, please delete the first four buy rules as these are noise.

Once the 5-year backtest is done, the results relative to the ETF RSP can be examined. THEN, you will need to run multiple backtests while staggering the start date. This is because start-up is an issue for sims/ports and can impact results of short sims (I consider 5 years to be short). Startup doesn’t follow the long-term course of events i.e. 30 stocks are bought simultaneously, not phased in as other stocks are sold…

Steve

Here are my suggestions:

  1. Expand your universe to the S&P 1500. You’ll get much better results with that universe, I believe, and there really are no liquidity problems there. You could also try it with the Russell 1000. That index has much looser quality standards for inclusion, so it would be interesting to see which works better.
  2. Use the following formulae instead of the standard ones:
    For return on capital: opincttm/(0.5*(max(0,workcapq)+asttotq-astcurq-astintanq)). A negative working capital is not an investable asset, and fixed assets are better calculated by subtracting current assets and intangible assets from total assets than by using net plant.
    For EBIT/EV: opincttm/max(5,price*sharesfdq + dbttotq - isna(cashequivq,0) + isna(noncontrolintq,0) + isna(pfdequityq,0)). The P123 formula for enterprise value gives N/A for companies with negative enterprise value, but those are companies you really want to keep in your view; they’re often excellent companies to invest in. You also want to calculate market cap based on fully diluted shares, which is not the default for P123.
  3. Sell far sooner than rank going down to 70. You really want to remain invested in the very top stocks here. I would argue in favor of keeping your portfolio at 30 stocks, but just doing a plain rebalance every three months (sell rule: 1 = 1), with “allow immediate buyback” set to “yes.” Or, if you’re using the S&P1500, you should set your sell rank at about 97 or 96.
  4. Use variable slippage. For most large-cap companies you’re not going to be paying 0.25% slippage in real life.
    After you run your simulation, you should definitely look at the year-by-year results to see if your outperformance of the benchmark is consistent or is concentrated in certain years.
    If you do try this, I’d be curious to hear your results.

Hi Monday,

I’m no pro, so take this suggestion with a grain of salt, but I’d suggest:

One thing I’d suggest is to run rolling backtests and/or compare lots of different start dates. A potential danger in longer holding periods is to optimize around the starting date. I think as formulated (3month hold and only selling when rank falls below 70) your turnover is only 27% you’re likely to get a wide range of results depending solely on the starting date. How different is start 1/1/2000 vs. 3/1/2000 vs. 1/1/2001 etc…

(edit: You can try lots of different start dates and various sell rules in the optimizer tool)

I think there are strategies that can work fine with longer holding periods, but for testing it’s usually better imho to shorten the holding period and increase turnover to make sure the strategy consistently picks stocks with an edge.

again, all imho

Spaceman - good points. For initial development, I usually set commission/slippage to 0 with weekly rebalance and sell all holdings at each rebalance (with ability to re-buy the same stocks of course). The profit per trade will be “crappy” but with results that I like other than profit per trade, I have a starting point for a system. The trick is then to raise the profit per trade while minimizing impact to the trading system. This generally involves modifying the sell rule(s) to hold individual stocks for a longer period of time and include such things as selling with a pseudo-stop loss or when the rank drops below a certain level.

Steve

Thanks to all of your guys for your help. I’m going to implement all your advices and let you know the result. Thanks!!!

Hello Steve.

I did all what you suggest, Love the part of the RSP, and the result it’s great. In fact when applied to the 20 years sim the results are pretty good, around a 20% profit annualized.

Here the 5 years backtest.


Thanks Spaceman, very good points.

Monday - it looks like you have switched from the S&P500 to the S&P1500 stock universe or is it my imagination? It’s best to stick with one universe until you exhausted your investigation. Can you put up the same sim but using the S&P500 universe? I also suggest removing the hedge for the time being. The hedge can be added back later on but it is best to work with the underlying strategy until you have gone as far as you can with it.

If you want to stick with the S&P1500 then you may want to add back some liquidity rules as you will end up holding some lower liquidity small cap stocks.

Hello Steve.

Work done!! :blush:

I just mixed your instructions with the ones from Yuvaltaylor and because of that I place the s&p1500 universe, but that was a mistake.

Just I would like to ask you why do you prefer the RSP as a benchmark than the SPY? The only difference I can see between them it’s that the RSP offers more performance on the long term.


Since you are designing a portfolio with equal weight holdings, you want to compare against a benchmark with equal weight holdings (RSP). SPY is MktCap weighted.

Steve

Your turnover is 21%. That seems to be quite low. What is your sell rule?

Not a very impressive rule I should confess, just Rank<70.