Seasonality IV: bi-annual (value)

I ran some sensitivity studies in Amibroker on trade exit dates for bi-annual seasonal trading.  Data used was the daily Fama-French small value portfolio.  Entry date is calendar day 300 (~ Nov 1).

The profit maps show smooth, stable profiles with large regions near the optima.


Maximum annual return is 19% from 1984-2014 with 70% exposure (1 trade per year).  Return is less sensitive to exit date in even years relative to odd years.  Holding to calendar day 260 is best in odd years, showing an average tendency to rally until August.  ‘Sell in May’ reduces profits by a third!

These dates should be used as a guide only.  More accurate triggers, such as an oversold condition to buy could be used.  However, the average gain is 24% therefore extreme accuracy on entry and exit is not necessary.


Sharpe Ratio shows a similar and stable picture but with earlier exits: day 80 in even years and day 210 in odd years.  Again, real-time triggers could be overlaid on this road map.

Note that doubling the length of these tests (back to 1954) produces very similar results, implying that the phenomena is fairly reliable although the cause is a subject of debate.

Amibroker code:

os = Optimize(“odd year sell day,260,60,300,10);

es = Optimize(“even year sell day,120,60,200,10);

Buy = DayOfYear() > 300;

Sell = DayOfYear() > IIf(Year()%2,os,es) && 1Buy;


3 thoughts on “Seasonality IV: bi-annual (value)

  1. Pingback: Daily Wrap for 5/23/2014 | The Whole Street

  2. Pingback: Seasonality IV: bi-annual (momentum) | RRSP Strategy

  3. Pingback: Seasonality roundup: all timeframes | RRSP Strategy

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s