G’day bro, see if I can help. First, remember I’m not a pro trader/programmer/mentor. I’m a survivor, happy to share my personal journey. That aside, I’m flattered to hear from someone using my bots. Translating a system into a bot can be fairly simple (particularly if you are punter like me using MT4). Of course the more advance the bot, the better the skills of the programmer will be. There are many skilled programmers that lurk the forum and for-what-ever reason choose not to participate so it is left to the likes of me to offer something.
When using a bot it’s important to understand it’s logic. I program using true/false if/then/else statements. These statements pass on each and every tick received on the chart. The High 5 logic is pretty simply. So on each new tick the following process is applied;
[ul]
[li]Set variables. The bot obtains variables like ask price, bid price, account balance, time and market orders.[/li][li]Set flags. The bot uses true/false flags to determine if there is an active trade. The presumption is that on each new tick no order exist and therefor the bot is looking to enter the market on a 40 day channel break.[/li][li]Check for new bar. This is an important one. The bot calculates the highs/lows of the channels on start of each new bar (in our case once a day) and upon initializing. It will use these levels throughout the day to determine when to place, close and reverse or exit a position.[/li][li]Collect market order details. The bot checks current market orders to determine if there is an active trade.[/li][li]If an active trade is found it is managed by the 5 day rule. Meaning it will automatically close and reverse the trade on the 5 day channel break then exit the position after 3 consecutive returns less than 1 R:R. Because this is managed internally by the bot no stop loss or take profit is issued on the order ticket.[/li][li]Else if no active trade is found look to enter the market on the 40 day channel break.[/li][li]Operation complete, wait for new tick and repeat.[/li][/ul]
What I believed has happened as you have described is that you have initialized the bot on a day that a new 40 day high has formed. The bot would have locked in the value of the 40 day high the moment you loaded it on the chart. With such an aggressive move the price held above that level all day thus every time you manually closed out an order, it simply re-opened another. Because the price was greater than the 40 day high level it calculated upon initializing.
Although the logic inside the bot could be changed, it is to be remembered that the High 5 system is a semi-automatic system that uses limits orders to enter, reverse and close positions. Designed to be maintained once a day, set and forget. By fully automating it, you must put your faith in the bot and let it do its thing.
From my perspective, bots are about back testing. You get to evaluate a systems potential. Are able to watch how a system preforms under different market conditions and re-engineering a system. The fatal flaw in this bot is the switch between managing the 40 day break as a 40 day break to locking in profits by switching to the 5 day method. As the saying goes, letting the profits run. We have defined that switch with a rule that says if the trade is in profit by “[I]n[/I][B]R[/B]” and it breaks the 5 day channel then switch to the 5 day management plan by closing and reversing. In reality, we have the discretion as the expert trader to say no, I want to let this trade run. Or this was a fakey, I’ll close and reverse (cutting the loses) via the 5 day rule.
But what I’m more interested in is why you chose the GBPUSD pair for this trial. Looking at the daily chart it may well be a candidate for the High 5 system. The fact that a long break occurred on the day that UK elections were announced should be irrelevant. This is a mechanical system and a break is a break.
@TurboNero, got a 3 day weekend ahead of me, hope to put gold through it’s paces and report back in this time.