Article Highlights

  • Three variants of Version 2.0
  • All variants are superior to Versions 2.0 and 1.1
  • Version 2.1 is the most similar to Version 2.0
  • Version 2.1 generated 3.46% in 22 days
  • Version 2.2 has no TP but has trailing rules
  • Version 2.2 generated 5.84% in 22 days
  • Version 2.3 is a hybrid of Versions 2.1 and 2.2
  • Version 2.3 generated 4.89% in 22 days
Partner Center Find a Broker

Greetings, ladies and gents!

If y’all can still recall last week’s write-up on Version 2.0, I developed a profitable trading system that overcame the spread problem but was inferior to Version 1.1 in terms of returns.

However, the impressive thing about Version 2.0 was it’s shallower peak-to-trough drawdown and (relatively) prettier equity curve, which are signs that Version 2.0 is less vulnerable to choppy market conditions.

I therefore concluded that the next logical step to improve the system is to find a way to maximize profits without without compromising Version 2.0’s superior capital preservation aspect.

And, well, I’ve been fiddling with some concepts, but I also ended up looking for ways to reduce losses as well. I did look for ways to increase returns, though, which is why I’m presenting not one, not two, but THREE trading systems today. How awesome is that?

Oh, and if you noticed, they’re all variants of Version 2.0. And that’s because the entry rules are fundamentally the same. In fact, there’s only one minor tweak for the entries.

The main difference lies in how each system tries to capture profits. You will see the specific differences in the rules later, but to give y’all a quick rundown on what the key differences are, here are a few bullet points:

Version 2.1 (Improved Fixed TP Variant)

  • Added a trade filter of 1 pip for entries in order to eliminate some false signals
  • Added rules for reducing risk by half
  • Same TP rules as Version 2.0

Version 2.2 (Trailing Method Variant)

  • Added a trade filter of 1 pip for entries in order to eliminate some false signals
  • Added rules for reducing risk by half
  • No fixed TP
  • Trailing method based on Version 1.1’s trailing method used
  • However, trailing method will only activate if Version 2.1’s TP level is reached

Version 2.3 (Hybrid of Versions 2.1 and 2.2)

  • Added a trade filter of 1 pip for entries in order to eliminate some false signals
  • Added rules for reducing risk by half
  • Same TP rules as Versions 2.0 and 2.1
  • However, TP rules only apply to half of the position
  • Once TP is hit, close half of the position at TP
  • Trailing method based on Version 1.1’s trailing method used for the other half
  • However, trailing method will only activate after TP level is reached

With that out of the way, below are the topics I’ll be covering today. As usual, this write-up is kinda long. In fact, it’s much longer than my other write-ups. I’m presenting three trading systems after all.

Anyhow, feel free to jump to the topic you want to see first, although it would make much more sense if you read everything.

But if you’re in a hurry, or if one of the variants struck your fancy, then you can go ahead and click on the topic of your choice below.

Version 2.1 Backtest Results

As usual, here are the assumptions/parameters for my backtests. They’re the same for all variants, by the way.

  • Starting account balance of $10,000.00
  • NZD/USD is at 0.7200, so value of 1 pip using 1 standard lot is around $7.20
  • Max risk per trade is 0.50% of starting account
  • Lot size varies; you’ll need the position size calculator
  • Testing period is from June 1-30, 2017
  • Tested on GBP/NZD’s 1-hour chart
  • Fixed spread of 12 pips assumed

Version 2.1 is superior to both Version 2.0 and Version 1.1 in every metric, namely in terms of absolute return, the peak-to-trough drawdown, win rate, expectancy, and expectancy score.

Of course, expectancy is THE key metric when judging the viability of a trading system while the expectancy score is THE key metric when comparing different trading systems. And using those metrics, Version 2.1 easily trumps both Version 2.0 and Versions 1.1.

What I personally found impressive is that fact that Version 2.1 has superior returns compared to Version 2.0, but at the same time, Version 2.1’s drawdown is shallower.

Anyhow, it’s now quite clear that Version 1.1 and Version 2.0 are rendered obsolete by Version 2.1.

Version 2.2 Backtest Results

The assumptions/parameters for my backtests are the same for all variants, but here they are if you skipped to Version 2.2 for some reason:

  • Starting account balance of $10,000.00
  • NZD/USD is at 0.7200, so value of 1 pip using 1 standard lot is around $7.20
  • Max risk per trade is 0.50% of starting account
  • Lot size varies; you’ll need the position size calculator
  • Testing period is from June 1-30, 2017
  • Tested on GBP/NZD’s 1-hour chart
  • Fixed spread of 12 pips assumed

If you thought Version 2.1 was impressive, then check out Version 2.2’s stats. Just out that the sweet expectancy and expectancy score. Delicious!

Version 2.2 has a trailing system in place instead of a fixed TP, though. And the trade-off for the superior expectancy and expectancy score is increased vulnerability to choppy market conditions. This can be seen in the deeper drawdown and lower win rate compared to Version 2.0.

It’s superior compared to Version 1.1 at least. And remember, Version 1.1 also uses a trailing method and has no fixed TP.

Version 2.3 Backtest Results

Again, the assumptions/parameters for my backtests are the same, but here they are if you skipped the other variants for some unfathomable reason:

  • Starting account balance of $10,000.00
  • NZD/USD is at 0.7200, so value of 1 pip using 1 standard lot is around $7.20
  • Max risk per trade is 0.50% of starting account
  • Lot size varies; you’ll need the position size calculator
  • Testing period is from June 1-30, 2017
  • Tested on GBP/NZD’s 1-hour chart
  • Fixed spread of 12 pips assumed

Version 2.3 basically combines the concepts/rules used in Version 2.1 and Version 2.2, so it has the strength and weaknesses of both, albeit to a lesser degree.

With that said, it easily beats Version 1.1 in every key metric. Compared to Version 2.0, Version 2.3 wins out in every metric except the deeper drawdown, which comes from Version 2.2’s vulnerability to choppy price action.

Comparing Backtest Results

Equity Curves Comparison
Equity Curves Comparison

In terms of expectancy, Version 2.2 is easily the winner among the three. However, Version 2.2 only has a moderate advantage against Version 2.3 when it comes to the expectancy score.

Oh, for those who don’t know, the expectancy score is an annualized projection based on the system’s expectancy and available opportunities related to trade frequency. This metric basically allows us to objectively compare different trading systems.

After all, a swing-trading system that has an expectancy of 100 but only triggers 3 trades a month will still be inferior to a day-trading system that only has an expectancy of 10 but has 100 trades per month.

Getting back on topic, Version 2.3’s expectancy score is $5,263.73. This means that given the system’s expectancy and trade frequency, we expect to generate a return of 52.64% in one year if we started with a $10,000 account, which ain’t too shabby since we only risk 0.5% of our account per trade.

Version 2.2, meanwhile, has an expectancy score of $5,957.15, so it’s expected to return 59.57% in one year if we start off with a $10,000 account.

In contrast, Version 2.1 only has an expectancy score of $3,916.58 or an expected annual return of 39.16%, so Version 2.1 is clearly inferior to both Version 2.2 and Version 2.3.

Anyhow, which system best serves my goals?

Regular readers who have been with me since I began this journey to create a mechanical system are probably familiar with my trading goals. But for those who are new (or forgot for some reason), I listed the following critical goals in My 2018 Trading Resolution.

  1. My peak-to-trough drawdown must not exceed 20%
  2. My reward-to-risk ratio must be at 1:1 or better
  3. I must open at least one new trade per day
  4. No losing year (Easy Mode)
  5. No losing month (Normal Mode)

I also had the following bonus goals and some of them are obviously jokes. Seriously, is there a trader out there who can boast that he/she/it is winning every minute or every second?

  1. A win rate of 50% or better
  2. No losing week (Hard Mode)
  3. No losing day (Harder Than Hard Mode )
  4. No losing hour (This Is A Joke Mode)
  5. No losing minute (Holy Grail Mode)
  6. No losing second (Delusional Fantasy Mode)

Anyhow, all three variants meet my first critical goal of having a peak-to-trough drawdown that does not exceed 20%, as well as my third critical goal of opening at least one new trade per day.

Even better, Version 2.1 and Version 2.3 fulfilled my bonus goal to have a win rate of 50% or better.

As for my goal to have a reward-to-risk ratio at 1:1 or better, that would disqualify Version 2.1, but Version 2.2 and Version 2.3 fit right in.

Version 2.1 would actually meet my goal in a zero spread environment or if the spread is lowered to 9 pips.

However, I assumed a fixed spread of 12-pips because I’m a masochist. Just kidding! I wanted to apply real world conditions. And since most brokers that offer fixed spreads have a 12-pip spread on GBP/NZD, I went with 12 pips. And this 12-pip spread is the reason why Version 2.1 failed to meet my goal to have a reward-to-risk ratio at 1:1 or better.

The Core Patterns

This is just a repeat of what was already discussed in Version 2.0, but I’m including this bit for the convenience of new readers, as well as a refresher for those who somehow already forgot about them.

Anyhow, this trading system uses patterns known as Higher Highs, Higher Lows (HHHL) and Lower Highs, Lower Lows (LHLL) to enter trades.

The HHHL pattern has the following elements:

  • The high of the recently closed candle must be higher than the high of the previous candle
  • The low of the recently closed candle must be higher than the low of the previous candle
  • The recently closed candle is designated as the signal bar

Pretty simple, right? Here’s an example to help you out:

The LHLL pattern, meanwhile, is just the opposite of the HHHL pattern, and it has the following elements:

  • The high of the recently closed candle must be lower than the high of the previous candle
  • The low of the recently closed candle must be lower than the low of the previous candle
  • The recently closed candle is designated as the signal bar

And here’s an example:

Definitions

Take note of the following since I’ll be using them constantly when explaining the rules of the system. Do note that P1, RSL, RSLT are new.

  • HHHL – Higher highs, higher lows candlestick pattern
  • LHLL – Lower highs, lower lows candlestick pattern
  • ATRH – 120-period average true range on 1H chart
  • SBar – signal bar or candle
  • Bar1 – the previous candlestick; the candle to the left of the signal bar
  • Bar2 – the candle previous to Bar1
  • Bar3 – the candle previous to Bar2; you get the idea…
  • SL – stop loss level
  • TP – target profit level
  • Break – price level the pair needs to reach before you can move your SL to breakeven
  • P1 – this a simply a 1-pip filter for our entries
  • RSL – reduced stop loss; basically just reduces risk by half
  • RSLT – price level when you can move your SL to RSL, thereby reducing risk

Computing for TP, SL, Break, RSL, and RSLT

Okay, let me first teach y’all how to compute for our TP, SL, RSL, and RSLT.

  • TP = Entry – spread – P1+ (ATRH x 1.9)
  • SL = Entry – spread – P1 – (ATRH x 1.3)
  • Break = TP – (ATRH x 0.2)
  • RSL = Entry – spread – P1 – ((ATRH x 1.3) x 0.5)
  • RSLT = Entry – spread – P1 + ATRH

If going short:

  • TP = Entry + spread + P1 – (ATRH x 1.9)
  • SL = Entry + spread + P1 + (ATRH x 1.3)
  • Break = TP + (ATRH x 0.2)
  • RSL = Entry + spread + P1 + ((ATRH x 1.3) x 0.5)

RSLT = Entry + spread + P1 – ATRH

Version 2.1 Trading Rules

Long Position: Entry Type 1

Note: The entry rules are pretty much the same as in Version 2.0, with the exception of P1. So if you need visual examples, then make sure to check out Version 2.0 (click that link).

  • If an LHLL pattern forms
  • And the lows of the four candles prior to the signal bar are higher compared to the low of the signal bar
  • Then set buy stop order at the high of the previous bar + P1
  • After that, compute for and place the SL and TP
  • Make sure to compute for Break and RSLT so that you know when to reduce risk
  • However, if a new LHLL pattern forms immediately after the previous one, reset everything based on the newer LHLL pattern
  • Moreover, if the buy stop order is not triggered within 12 hours, then cancel everything

Long Position: Entry Type 2

  • If an LHLL pattern forms
  • And you applied the rules for Entry Type 1
  • But if another LHLL pattern forms inside the LHLL pattern
  • Then maintain orders on the older LHLL pattern
  • But also also set new orders based on the newer LHLL
  • However, if the buy stop orders are not triggered within 12 hours, then cancel everything

Short Position: Entry Type 1

  • If an HHHL pattern forms
  • And the highs of the four candles prior to the signal bar are lower compared to the high of the signal bar
  • Then set sell stop order at the low of the previous bar – P1
  • After that, compute for and place the SL and TP
  • Make sure to compute for Break and RSLT so that you know when to reduce risk
  • And make sure to remember when you can move your SL to breakeven
  • However, if a new HHHL pattern forms immediately after the previous one, reset everything based on the newer HHHL pattern
  • Moreover, if the sell stop order is not triggered within 12 hours, then cancel everything

Short Position: Entry Type 2

  • If an HHHL pattern forms
  • And you applied the rules for Entry Type 1
  • But if another HHHL pattern forms inside the HHHL pattern
  • Then maintain orders on the older HHHL pattern
  • But also also set new orders based on the newer HHHL
  • However, if the sell stop order are not triggered within 12 hours, then cancel everything

Version 2.2 Trading Rules

Long Position: Entry Type 1

  • If an LHLL pattern forms
  • And the lows of the four candles prior to the signal bar are higher compared to the low of the signal bar
  • Then set buy stop order at the high of the previous bar + P1
  • After that, compute for and place the SL
  • Make sure to compute for Break and RSLT so that you know when to reduce risk
  • However, if a new LHLL pattern forms immediately after the previous one, reset everything based on the newer LHLL pattern
  • Moreover, if the buy stop order is not triggered within 12 hours, then cancel everything
  • You should also compute for TP but don’t place TP orders since we are using a trailing method
  • You can only trail your SL whenever there’s an HHHL pattern
  • If an HHHL pattern does form, move SL to the low of that pattern’s Bar1

If that’s a bit confusing, then hopefully these charts will y’all out. Suppose we found the LHLL below.

Long Position: Entry Type 2

  • If an LHLL pattern forms
  • And you applied the rules for Entry Type 1
  • But if another LHLL pattern forms inside the LHLL pattern
  • Then maintain orders on the older LHLL pattern
  • But also also set new orders based on the newer LHLL
  • However, if the buy stop orders are not triggered within 12 hours, then cancel everything
  • You should also compute for TP but don’t place TP orders since we are using a trailing method
  • You can only trail your SL whenever there’s an HHHL pattern
  • If an HHHL pattern does form, move SL to the low of that pattern’s Bar1

Short Position: Entry Type 1

  • If an HHHL pattern forms
  • And the highs of the four candles prior to the signal bar are lower compared to the high of the signal bar
  • Then set sell stop order at the low of the previous bar – P1
  • After that, compute for and place the SL and TP
  • Make sure to compute for Break and RSLT so that you know when to reduce risk
  • And make sure to remember when you can move your SL to breakeven
  • However, if a new HHHL pattern forms immediately after the previous one, reset everything based on the newer HHHL pattern
  • Moreover, if the sell stop order is not triggered within 12 hours, then cancel everything
  • You should also compute for TP but don’t place TP orders since we are using a trailing method
  • You can only trail your SL whenever there’s an LHLL pattern
  • If an LHLL pattern does form, move SL to the high of that pattern’s Bar1

Short Position: Entry Type 2

  • If an HHHL pattern forms
  • And you applied the rules for Entry Type 1
  • But if another HHHL pattern forms inside the HHHL pattern
  • Then maintain orders on the older HHHL pattern
  • But also also set new orders based on the newer HHHL
  • However, if the sell stop order are not triggered within 12 hours, then cancel everything
  • You should also compute for TP but don’t place TP orders since we are using a trailing method
  • You can only trail your SL whenever there’s an LHLL pattern
  • If an LHLL pattern does form, move SL to the high of that pattern’s Bar1

Version 2.3 Trading Rules

Long Position: Entry Type 1

  • If an LHLL pattern forms
  • And the lows of the four candles prior to the signal bar are higher compared to the low of the signal bar
  • Then set buy stop order at the high of the previous bar + P1
  • After that, compute for and place the SL
  • Make sure to compute for Break and RSLT so that you know when to reduce risk
  • However, if a new LHLL pattern forms immediately after the previous one, reset everything based on the newer LHLL pattern
  • Moreover, if the buy stop order is not triggered within 12 hours, then cancel everything
  • You should also compute for TP
  • Once TP is hit, close half of the position at TP
  • Activate the trailing method for the other half
  • You can only trail your SL whenever there’s an HHHL pattern
  • If an HHHL pattern does form, move SL to the low of that pattern’s Bar1

Long Position: Entry Type 2

  • If an LHLL pattern forms
  • And you applied the rules for Entry Type 1
  • But if another LHLL pattern forms inside the LHLL pattern
  • Then maintain orders on the older LHLL pattern
  • But also also set new orders based on the newer LHLL
  • However, if the buy stop orders are not triggered within 12 hours, then cancel everything
  • You should also compute for TP
  • Once TP is hit, close half of the position at TP
  • Activate the trailing method for the other half
  • You can only trail your SL whenever there’s an HHHL pattern
  • If an HHHL pattern does form, move SL to the low of that pattern’s Bar1

Short Position: Entry Type 1

  • If an HHHL pattern forms
  • And the highs of the four candles prior to the signal bar are lower compared to the high of the signal bar
  • Then set sell stop order at the low of the previous bar – P1
  • After that, compute for and place the SL and TP
  • Make sure to compute for Break and RSLT so that you know when to reduce risk
  • And make sure to remember when you can move your SL to breakeven
  • However, if a new HHHL pattern forms immediately after the previous one, reset everything based on the newer HHHL pattern
  • Moreover, if the sell stop order is not triggered within 12 hours, then cancel everything
  • You should also compute for TP
  • Once TP is hit, close half of the position at TP
  • Activate the trailing method for the other half
  • You can only trail your SL whenever there’s an LHLL pattern
  • If an LHLL pattern does form, move SL to the high of that pattern’s Bar1

Short Position: Entry Type 2

  • If an HHHL pattern forms
  • And you applied the rules for Entry Type 1
  • But if another HHHL pattern forms inside the HHHL pattern
  • Then maintain orders on the older HHHL pattern
  • But also also set new orders based on the newer HHHL
  • However, if the sell stop order are not triggered within 12 hours, then cancel everything
  • You should also compute for TP
  • Once TP is hit, close half of the position at TP
  • Activate the trailing method for the other half
  • You can only trail your SL whenever there’s an LHLL pattern
  • If an LHLL pattern does form, move SL to the high of that pattern’s Bar1

Going Forward

This is it! This is the final stretch for prototype development. I can feel it in my bones. Pretty soon, I’ll have the final system ready for forward testing, likely on a daily basis.

As for more immediate plans, well, I’ll probably scrap Version 2.1 and focus on Versions 2.2 and 2.3 since the two systems already meet most of my goals.

I’ll probably increase the sample size of my backtest period to see which version I like more. Although I’m leaning a bit more towards Version 2.3 at the moment since it’s capital preservation aspect is slightly superior and I personally prefer to play defensively.

I also want to include the inside bar pattern as an entry method. After all, I did say in My 2018 Trading Resolution that I wanted to include the inside bar as an entry method. Although Entry Type 2 also serves the same function, so I may abandon that plan altogether.

Anyhow, nothing’s set in stone yet, so tune in until next time!

And as always, I enjoy getting your feedback. So if you have any suggestions, questions, or if just want to say “hi” then don’t be shy and write a comment down below!

Cheers!

Happy