I have been wondering about momentum systems for a while, but I was not sure what a momentum system looked like. After hearing and learning about the differences between momentum indicator and trend-following methods, I figured I would pick an idea from the ether and apply it to the forex markets.
What is momentum trading? Rather than muddling through my understanding of momentum indicator trading, I will leverage Investopedia’s definition:
Momentum investing is a trading strategy in which investors buy securities that are rising and sell them when they look to have peaked.
Investopedia – Introduction to Momentum Trading
I randomly stumbled across this idea about from Cesar Alvarez, who has inspired some of our successful mean-reversion systems, as I was researching something else. Momentum indicator trading came up three times in a couple days, so I took it as a sign and here we are.
Alvarez designed this momentum system as a test against trend-following and buy-and-hold strategies for ETF trading, i.e., equities. I may be applying this idea to the wrong instruments, but I won’t know unless I try.
Phase 1: Plan & Design
1. Trading Idea
The big idea is incredibly simple:
- If the Close is higher than the close of 10 bars ago, go long / reverse a short position
- If the Close is lower than the Close of 10 bars ago, go short / reverse a long position
- Monthly timeframe, though I will test on daily, weekly, and 10-day timeframe
The lookback period is optimizable, so we will use a range of 3-15 for our lookback period. 10 is the baseline as described by Alvarez.
2. System Definition
Indicators:
I do not have any indicators, as we are only using price to make our entry and reversal decisions.
Input Parameters:
Input(Default) | Data Type | Optimizable? | Comments |
PeriodsBack | Integer | Yes | Number of periods back to look; used to determine momentum |
NumShares | Integer | Yes | Default to 100k |
Variables:
Variable | Data Type | Default | Calculation |
Close_n_periods | Double | 0 | None; stores the closing price n-bars ago, where n = PeriodsBack |
Initial Capital:
- 4,000 per forex pair, denominated in the appropriate currency
- This amount will allow for some drawdown in the system
Leverage:
- 50:1
Position Sizing:
- Fixed: 100k lots
Entry:
- Long:
- If Close > Close[10 bars ago]
- Buy next bar at market
- Short:
- If Close < Close[10 bars ago]
- Sell short next bar at market
Exit(s):
Exits are reversals only. In other words, this is an ‘always in’ system.
Stop Loss:
- No stop loss
- Let us see how it does without a stop
Profit Target:
- None
Challenges:
None. This should be easy to code
3. Performance Objectives
The system will meet the following objectives:
Objective | Goal |
System Type (trend, mean-reversion, day, swing, etc.) | Momentum |
Risk of Ruin | 0% |
Profit Factor | >= 1.5 |
Adjusted Profit Factor | > 1.0 |
Win Percent | > 30% |
Max Drawdown % | < 35% |
Profit/Drawdown Ratio | > 2.0 |
Ready Date | 2022/02/28 |
I expect a high win rate for a mean reversion system. I will continue to use Adjusted Profit Factor (worst case Profit Factor) as a criteria for passing the system.
This idea is S.M.A.R.T.: Specific, Measurable, Achievable, Realistic, Time-bound
4. Market Selection
Markets:
Energies | Currencies | Fixed Income | Agriculture | Metals | Softs | Indexes | Equities |
---|---|---|---|---|---|---|---|
X |
Instruments:
Market Sector | Instrument | Symbol | Comments |
Currencies (Forex) | EUR/USD JPY/USD NZD/CHF AUD/NZD GBP/AUD GBP/JPY | Same | None |
Chart Type, Timeframe, Session, Time Zone:
Attribute | Value | Comments |
Chart Type | Regular Candlestick | Charting is only useful for validating entry and exit signals |
Timeframe / Interval(s) | Daily, 1 week, 2 week, monthly | |
Session | Regular | |
Time Zone | Exchange |
Phase 2: Build
5. Manual Test
Pass. The only thing I would like to mention is that this looks more like a trend-following system. I am struggling to understand the distinction between the two. Maybe it will become clearer as I work my way through this idea.
6. Build
Process Diagram
Comments:
This momentum indicator is probably the easiest system I have ever developed. Two entries, no exits. Wow.
7. Unit Test
Unit test was simple. Here are some trades on a chart:
As shown, trades get messy when prices goes into consolidation.
Complete?
Phase 3: Test
8. Optimization
I optimized the input PeriodsBack, using 3 through 15, step 1. This did not improve results over the default value of 10. In other words, it failed optimization.
9. Walk-Forward Analysis
I used data from January 1, 2010, through December 31, 2020. Everything failed. Here are some metrics for each forex pair and timeframe (PF = profit factor; Adj PF = adjusted profit factor, or ‘worst case’ profit factor):
GBP-JPY almost passed, but the max drawdown was 73%, which is outside our Performance Objective (<35%). Ouch. At this point, the system fails and we can move to the Notes and Commentary section
10. Monte Carlo Simulation
We did not make it this far.
11. Incubation
We did not make it this far.
Phase 4: Deploy
12. Production / Portfolio Assignment
We did not make it this far.
Trading System Result: FAIL
Notes and Commentary
This was my first momentum indicator system, at least by name. I am guessing other swing systems I’ve built in the past would fall in the momentum category. Honestly, this just felt more like trend-following system, but Cesar Alvarez has been in this game a heck of a lot longer than I, so I defer to his experience. The idea was designed to test ETF performance against other methods, so maybe this was not the right tool for the job (there’s my grandfather talking again).
There is not too much about this system that I liked. It was easy, but maybe just too simple. I did not like how it behaved once we went into range/consolidation. Despite the failure, I think I learned more about momentum during this exercise.
Continuous Improvement Department:
Here are a few things that I would try to improve:
- Implement a stop loss; I noticed that if I had stops in, I would have been out of the market sooner in the consolidation, not giving back as much of our profits, and maybe raising profitability
- Utilize a different exit
- Try different markets
I’m not sure I want to waste any additional brainpower on this idea. I have some other ideas for the next two systems, which should be fun. This wraps up Forex February.
Next Trading System Idea: Momentum Pinball! (seriously) I want to try an idea I have had on the back burner for a while, presented by Laurance Connors and Linda Bradford-Raschke in their classic book, Street Smarts.
As always, thank you for reading. If you find this useful, share this post, subscribe to our twice-monthly newsletter, and check out some of our other systems.
Do you have a trading idea that you want me to put through our process to see if it would make a valid trading system? Leave a comment below and we can discuss.
Sources/References
Did you like what you read? Do you want to see more? Subscribe now and receive our email twice per month, with the Trading System Idea of the Week and other fun stuff.
Don’t worry, we will never, ever, ever sell, overuse, or donate your email address. Promise.
Did you like what you read? Do you want to see more? Subscribe now and receive our email twice per month, with the Trading System Idea of the Week and other fun stuff.
Don’t worry, we will never, ever, ever sell, overuse, or donate your email address. Promise.