Presidential Cycle Signal Testing

Hi All,

There is a lot of interest in the Presidential Cycle and also the ability to test the performance of different years in the cycle.

I’ve created a script that you can use to identify the 1st trading day of year X in the presidential cycle. You can modify this for any cycle (partial years would involve working out total months etc).

Here’s the script

// day number only goes down on the first trading day of the month 
d1 = DAYNUM() IsDown; 
// month is Jan 
m1 = MONTHNUM() == 1; 
// 1900 was a Presidential Yeaar 
// Mod gives us the remainder 
// 0 is election year so 1 is the first year of the presidentail cycle 
// There is no "4" as the election happens in year 0
// 3rd year of Presidential Cycle means we are looking for a 3 
y1 = Mod(YEARNUM() - 1900, VALUE=4) == 3; 
d1 and m1 and y1

For those who are interested, here are the Signal Tester results on each of the years.

Year 1 (starting Jan 1 after the election) - only 58% of the years ending in gain.
Year1

Year 2 is very much a sideways year.
Year2
2022 was one of the worst at a loss of 8.7%
Note: This simple measure tool is achieved by holding down the SHIFT key and dragging over the chart.
2022
Year 3 Best probability of profit from all the years - no guarantees though.
Year3
Year 4
Year4

1 Like