How I stopped strategy hopping by creating my own strategy

In the fast-paced world of trading, many of us, especially when beginning our journey, we find ourselves caught in a relentless cycle of strategy hopping. We jump from one strategy to another, lured by the promise of quick profits. However, this constant shifting often leads to frustration, a sense of not making any progress, and most importantly, a lack of consistent results.

I experienced this firsthand as I back-tested, forward-tested, and executed various trading systems, on demo and live accounts, each time hoping for better outcomes but always ending up not meeting expectations and feeling more or less stuck in the same position of having to find a profitable trading strategy. Eventually, after having tried many different systems that I found online, I decided to finally try to create my own and this time stick to a single system for a prolonged period of time.

This idea/publication explores my journey on how I created this simple trading strategy and how I used my engineering background to create a semi automated-trading system around it. And just to clarify, this is not financial advice, this should serve as an idea. If you want to try this out, do so at your own risk, after understanding the concept and after testing. I’m still testing this myself, but in theory it’s sound, and so far in my forward-testing is performing very well!

Scalping, Day trading, Swing trading, Fibonacci levels, Support/Resistance levels, round psychological levels, Bollinger bands, EMAs, RSI, MACD, ICT, Smart money concepts, algo-trading, forex, crypto, indices, metals, multi-timeframe analysis, etc, etc.

I’ve traded in these timeframes: D, 8h, 4h, 2h, 1h, 30m, 15m, 5m, 1m, and I’ve explored quite a few different strategies based on the concepts I just dumped above so I don’t bore you with every single case, and so based on that experience I’m taking a few considerations before creating my strategy.
  • First, I’ll be trading forex, metals, and maybe crypto and indices. Personal choice. But there’s no reason this shouldn’t work in any other market.
  • Second, I personally need to be more consistent on when it comes to analyzing the charts. So, for now let’s say that I’ll “log-in” every day, Monday-Friday, some amount of time during NY session.
  • Third, I’ve learned that multi-timeframe analysis is better than analyzing only one specific timeframe, so I’ll include that.
  • Next, I know there are different approaches, but from my perspective the market is either trending or not trending (aka consolidating; bouncing between two levels, imperfectly). I guess it’d be great to have one strategy for trending markets and one for markets that are in consolidation, but for now I’m specifically picking a trend-following strategy.
  • I found that following the trend can be very rewarding, especially when you catch it from the start or near it and are able to exit right before it ends (that’s the tricky part, but we’re only talking theory for now). So a totally reasonable idea would be to try to enter the market on pull-backs, while expecting the price to continue in the direction of the main trend. So a Fibonacci retracement tool sounds ideal for this method.
  • I’d like to somehow incorporate algo-trading up to some extent. I have a software engineering background, so it comes natural for me to try to create or adjust an existing trading bot to execute operations for me. But the issue I always had was creating a trading bot to spot good opportunities. It is just not easy to achieve, for any trading strategy. And that is because of the constantly changing nature of the markets. It requires subjectivity by a human to some extent when it comes to reading, understanding the market and predicting a direction.

💡 So with that said, now, two very important ideas I realized that this system exploits.

1. You don’t need to know exactly up to where price is going to retrace to on the Fibonacci tool. You can bet on more than one level.
2. You don’t need to create a trading bot that “fully” automates trading. It can only handle the part of managing the position(s).

Let me explain.

With the Fibonacci Retracement tool the trader is free to choose however many levels they want to visualize. And that is great, but it’s not easy to predict accurately and consistently up to which level price is going to retrace. We might miss some trades if we bet on a bigger pull-back and price continues on the trend without hitting our entry, or, we might experience some losses if we bet on a smaller pull-back and price decides to retrace more, and then continue on the same trend direction (which is even more painful to see lol). So the idea here is to place more than one order based on a few different fib levels. Managing more than one position can be challenging, but that’s when the next idea comes into play.

“Semi” automating the strategy with the help of a trading bot. As I mentioned previously, at least for me it has been difficult to create a trading bot that can reliably match the trading opportunities that I would find. Sometimes the bot would find good opportunities, but some other times it would find opportunities that wouldn’t make sense to take because of other reasons (price close to some Support/Resistance level, news, different direction on higher timeframes, etc) and if all of those reasons were taken into account that would increase the complexity of the code and most of the time the actual opportunities found by the bot would decrease (including the good ones!). So it’s a trade-off.

On the other hand, managing the position(s) is totally doable for a trading bot. Managing one or more open positions or pending orders is done after confirming a trading opportunity, so a trading bot can do precisely what a human would do based on the same conditions. And creating that kind of bot is not that complicated to achieve.

So with all of that in mind I started writing some rules for the trading strategy.
  • Timeframe for entries: 15m
  • Multi-timeframe analysis: D, 4h, 1h, 15m
  • I’ll be spotting opportunities around NY session open
  • I’ll need a trading bot to manage the positions for me so I don’t stare at the charts for too long (not because I don’t want to, but because apart from having other things to do it wouldn’t improve the outcome! + that the trading bot is much better at handling its emotions :wink)
  • I’ll focus on XAUUSD first and maybe later I’ll apply this strategy to other markets.

Let’s focus for a bit on the fib tool and the positions for now. The screenshot below shows the levels that I’m using. And for now I’m just betting on 3 positions. Again, managing more than one position can be tricky, but I’m relying on the fact that a trading-bot can help us in this part which is easy for the bot to handle. And apart from that we only have one position open at a time so it’s not actually that hard as it might sound if we don’t want to use a trading bot.

syot kilat

Of course no system is perfect, so losses are expected. But I’m positioning myself in a way that my wins will cover my losses and give me good profit. In consequence, risk management is very important. With every bet or fibonacci tool I place and open X positions (in this case 3) I want to make sure that in total I’m not risking more than 0.5% of my total account balance. This part depends on the trader, some traders can tolerate bigger draw-downs, and so they can risk more % per position, others risk less, I personally like 0.5% for now.

At the time of writing this I’m testing with the following risks:

  • Position 1 (2.3R if TP hit): 0.10% of the account balance
  • Position 2 (3.6R if TP hit): 0.18% of the account balance
  • Position 3 (4.2R if TP hit): 0.22% of the account balance


With those positions placed these things can happen:

1. Price doesn’t retrace enough to trigger any of the pending orders and continues in the same direction of the trend. In that case, when there’s a new higher high or lower low we just cancel our pending orders and analyze again to spot new opportunities.
2. Price retraces enough to hit all of our SL resulting in a loss of the 3 positions (-0.50%)
3. Only Position 1 gets triggered and we go to TP (2.3R * 0.10% = 0.23% gain)
4. Position 2 gets triggered and we go to TP (-0.10% + 3.6R * 0.18% = 0.55% gain)
5. Position 3 gets triggered and we go to TP (-0.10% - 0.18% + 4.2R * 0.22% = 0.64% gain)

Nothing to do with alternatives 1 & 2 as it’s normal for us to lose or miss an opportunity sometimes. With alternative 3 we have a small gain. And with alternatives 4 & 5 we have a slightly better gain than our total risk of 0.50%. Now all of that might not sound ver impressive and it’s because this follows the fixed position way of managing the positions. Trailing the SL many times can produce much better returns when managed properly. But more on that later.

Possible winning example below using ATR trailing SL.

syot kilat

But let’s stick to the fixed positions for now to understand and get used to the system first and then you can let the bot do the management with the trailing SL method. Now why those specific risk %s for those 3 positions? The reasoning is that in my recent trading I’ve noticed that price tends to retrace enough to trigger either my Position 2 or my Position 3 more often than triggering only my Position 2. So it makes more sense to me to add slightly higher risk on those to increase profit. However, in my experience, in the higher timeframes price retraces even to the 38.2% level to then continue in the same trend direction more often than on the lower timeframes.

But this part as I said depends on the trader, if you decide to incorporate this strategy/system to your trading you are free to choose different risk % per positions.

Additionally, you could even open more positions (again, relying on the trading bot for position management), and of course following a good risk management plan by adjusting the risk for all positions and sticking to a total of less than 2% risk per fib tool placement. But this also depends on the trader.

syot kilat

Sometimes price does like to ‘grab liquidity’ by retracing slightly more than the 100% level, hitting my last SL, and then continue on the trend direction we placed our bet on. However, I think that 3 positions is enough, at least for me, specially in the lower timeframes.

Let’s focus on the trading bot for a bit now. As I said the bot should only manage my positions so I need a way to turn it on when I spot a good opportunity and then let it run until the position hits SL or TP, or it gets closed because of another reason. In this case I developed two systems. One is with fixed SL and TP, and one is with managing the position(s) with a trailing SL. The trailing SL is based on the current ATR value, but this could be expanded even further to another method of trailing SL based on specific levels the user provides (e.g. when in 1.4R move SL to break-even, when in 2R move SL to 1R, etc).

For now I tested with fixed positions and with ATR trailing SL and they both work great and are profitable. The rules can be extended even more, for instance you choose the ATR trailing SL method and still place TP on the -27% or on the -61.8% fib levels so positions fully close on those levels, or you could close partially let’s say 30% when TP1 is hit (0% fib level) and then keep trailing, etc. There are many variations, and those can be handled by the bot based on the initial configuration.

syot kilat

So on how the actual trading bot works. I developed a PineScript strategy that fires alerts that I can use with a service like PineScript to execute the operations but I found that those services most of the time don’t allow managing multiple positions at once and have other complications. So I created my own webhook server that receives the alerts and I also developed an EA that receives that information and executes the operations but this is still in testing phase and is not ready for use unless you have advanced technical knowledge. I’m thinking of ways to make this available however and would love some thoughts/feedback/suggestions!

This strategy can still be applied even without a trading bot. However the trading bot would make the system much better and allow for more time to maybe analyze different markets and take on more trading opportunities, or just focus on other stuff.

So to put all of this together now we’re only missing the part of spotting the opportunities. There are different ways, I personally just look for trends. I rely on simple price action (for uptrend I want to see clear higher highs and higher lows, and for downtrend I want to see clear lower lows and lower highs), a smoothed Heikin-Ashi EMA, and sometimes on the ADX indicator to see how strong the trend is.

In the example below I show my thought process while applying this strategy on a forward-testing phase. This is exactly how I saw the chart when I logged-in for my trading session a few days ago.

syot kilat

In the higher timeframes I checked that there is room for price to keep going up, that means that there shouldn’t be a S/R level or round psychological level near price. Having also analyzed higher timeframes and seen that it makes sense for price to continue this uptrend I decided to place my fib tool. I usually consider wicks too. So I place the first fib limit on the higher low, and the second fib limit on the higher high.

syot kilat

Having placed the fib tool and created the pending orders now we need to wait for price to trigger our positions. But sometimes price is not done and keeps going up, invalidating our higher high (or lower low on a downtrend).

syot kilat

When that happens we just need to stay focused on when price closes to see if a new higher high has been formed. If that happens we simply update our fib tool placement, and update the pending orders (entry, SL, & TP). This is a condition that the trading bot can probably handle. Eventually price will make it clear where the higher high is, and we finally see a retracement.

syot kilat

And now we wait… but still focused in case we need to adjust our fib tool and pending orders if price is not yet retracing.

syot kilat

Price drops with a strong move. Now we just step away, we already have the positions placed with SL and TP. We did our analysis, and so we don’t need to look at the charts and let any negative emotions gain control. At this point with fixed positions we can just close the charts and give an end to this trading session. And if using the trailing SL method we just leave it to the trading bot to manage the positions. In this case I was just testing the fixed positions and it unfolded into a win for the 3rd position. So overall about a 0.64% gain (the best alternative).

syot kilat

So this is it. This covers the base of this strategy and my thought process while creating the rules for this system. It can be adjusted to different timezones as well, different markets depending on the asset type, etc. I’ve been forward-testing this strategy and system for a few weeks so far and it seems very promising. And I couldn’t wait any longer to share this idea in hopes that you can learn at least something from everything I shared. I’d also love to hear if anyone would be interested in using a system like this with the actual trading bot, so I can plan best on how to make it accessible to other users that don’t have technical/engineering knowledge.

In conclusion, I shared my journey from strategy hopping to creating my own trading strategy based on my own needs. By exploring the key ideas of leveraging the Fibonacci retracement tool to bet on multiple positions and embracing a semi-automated approach, I’ve developed a system that aligns with my trading style and allows for necessary flexibility in response to market changes.

If you find yourself caught in the cycle of strategy hopping, or don’t see the results you expected (be reasonable though!) I urge you to reflect on what you truly want from your trading experience. Consider creating your own strategy that aligns with your objectives and trading style! And feel free to take ideas from this article to build your own system. Share your thoughts and experiences in the comments below. I’d love to hear it, any thoughts/feedback or suggestions are appreciated. Looking forward to the discussion.

Thanks, and good luck!
FibonacciTrading PlanTrend Analysis

Juga pada:

Penafian