Mean-Reverting Trading System-Quantitative Trading in Python

Subscribe to newsletter

In a previous post, we demonstrated the mean-reverting and trending properties of SP500. In this follow-up post, we will develop a simple trading system exploiting the mean-reverting behaviour of this market index.

To generate buy and sell signals, we will use simple moving averages as noise filters. The simple moving average takes an average value of a stock over a certain period of time. It has been used for decades by technical traders and investors around the world.  There exist other types of moving averages such as exponential moving averages, but we will use the simple ones in this post.

Since we know that the SP500 is mean-reverting in a short term, we will use short-term moving averages. The trading rules are as follows,

Subscribe to newsletter https://harbourfrontquant.beehiiv.com/subscribe Newsletter Covering Trading Strategies, Risk Management, Financial Derivatives, Career Perspectives, and More

If 3-day simple moving average < 20-day simple moving average, buy $10000 worth of stock

Exit if 3-day simple moving average >= 20-day simple moving average

We downloaded SPY data from Yahoo Finance and implemented the above trading rules in a Python program. The picture below shows the equity line of the strategy. We note that using the 3-  and 20-day simple moving averages the strategy is overall profitable.

Quantitative Trading in Python

Next, we proceed to test the robustness of this system. To do so, we vary the length of the second moving averages (20 days in the previous example).  The graph below shows the total PnL as a function of the length of the second moving average. We observe that the overall profit remains positive when we change the length of the moving average. This would indicate that the strategy performance is stable in this parameter regime.

Quantitative trading in python

In summary, we developed a simple trading strategy exploiting the mean-reverting behavior of SP500. In the next installment, we will design a trend-following system on this market index.

To download the accompanying Excel workbook or Python program for this post:
1. Subscribe to the newsletter. If you're already a subscriber, go to the next step
2. Once subscribed, refer a friend
After completing these steps, you’ll gain access to the file for this post, along with files for a dozen other posts.

Subscribe to newsletter https://harbourfrontquant.beehiiv.com/subscribe Newsletter Covering Trading Strategies, Risk Management, Financial Derivatives, Career Perspectives, and More

Further questions

What's your question? Ask it in the discussion forum

Have an answer to the questions below? Post it here or in the forum

LATEST NEWSQ&A: What has China done so far? What could China do next?
Q&A: What has China done so far? What could China do next?

BEIJING (AP) — A reordering of global trading relationships could be underway as the world’s two largest economies clash and relations spiral into a trade war. On Friday, Beijing raised its tariffs on U.S. goods from 84% to 125%, starting Saturday, after the U.S. pushed…

Stay up-to-date with the latest news - click here
LATEST NEWSLeviathan Gold Announces Closing of Private Placement of Units and inclusion of Prominent Strategic Mining Investor Michael Gentile
Leviathan Gold Announces Closing of Private Placement of Units and inclusion of Prominent Strategic Mining Investor Michael Gentile

VANCOUVER, British Columbia, April 11, 2025 (GLOBE NEWSWIRE) — Leviathan Gold Ltd. (“Leviathan”, the “Company”) (LVX – TSXV, 0GP – Germany) is pleased to announce the closing of a non-brokered private placement pursuant to which the Company sold 32,500,000 units (each, a “Unit”) in the…

Stay up-to-date with the latest news - click here
LATEST NEWSSerco Awarded $96 Million Contract to Continue Delivering Engineering and Design Support for the U.S. Navy’s Next Generation Small Surface Combatant Vessels
Serco Awarded $96 Million Contract to Continue Delivering Engineering and Design Support for the U.S. Navy’s Next Generation Small Surface Combatant Vessels

HERNDON, Virginia, April 11, 2025 (GLOBE NEWSWIRE) — Serco, a provider of professional, technology, engineering, and management services, today announced it has been awarded a recompete contract to support the U.S. Navy’s Constellation-class Guided Missile Frigate (FFG 62) Program Office within the Program Executive Office…

Stay up-to-date with the latest news - click here
LATEST NEWSJPMorgan Chase tops quarterly expectations as Dimon says U.S. economy faces ‘considerable turbulence’
JPMorgan Chase tops quarterly expectations as Dimon says U.S. economy faces ‘considerable turbulence’

While JPMorgan CEO Jamie Dimon touted his company's solid results in the quarter, he also struck a note of caution on the broader economy.

Stay up-to-date with the latest news - click here
LATEST NEWSUSTR Greer: Will talk trade with Taiwan, Israel on Friday
USTR Greer: Will talk trade with Taiwan, Israel on Friday
Stay up-to-date with the latest news - click here

2 Comments

Leave a Reply