When would you have stopped this robots?

sleytus wrote:

I've developed a new app and will release it soon.  It uses a Demo account to drive decisions in your live account.  The same portfolio and strategies are running in both accounts.  The strategies in the Demo account are allowed to trade with no limitations and are used to create an active database of trading results.  When a strategy in a Live account receives a signal it first checks if the WinRatio is >= 0.5 in the Demo account.  If it is, then the trade continues, otherwise the signal is ignored.  In this way strategies are dynamically turned on and off, depending on their current performance in the demo account.  The WinRatio metric is computed over the most recent 10 trades.

The app is called MT4 Sidekick.  I've been using it for a little over a month and it works well.  You still have to create good strategies -- it won't turn losing strategies into winners.  But since it can detect the ebb and flow of a strategy's performance, then it should help a lot when it comes to managing a portfolio of strategies.  It should address exactly the  problem you describe -- I mean, that is the primary reason I created it.

Steve, would it be "easier" to just have 1 account whereby all the strategies are in the demo account and this demo account will send trade signals to the live account and the demo account will 1) trade as per normal without any restrictions as you mentioned, 2) Send only trade signals that meet the acceptance criteria

So the demo account serves as 1) A testing account to gather all trades performance metric 2) A trade signal account (copy trade function) account to send trade signals to live account.

As for the Trade Signal function, we can add in some "safety" measures (normally found in typical copy trade software) such as

1) specify the max lot allowed to copy (cos I may be using 100 EA in my demo account for testing but I won't know how many will "pass" the criteria at any given time, I don't want to ended up over trading, exposing my account with too many trades.

2) lot size allocation such as demo account using 1 lot size but copy only at 0.01 lot size etc

3) Copy only profitable trade - even if the EA pass the performance metric criteria, copy this EA if it's position is now in floating profit

4) copy on Long or Short trades

5) copy at certain days/time etc

6) max slippage allowed to copy trade etc (if you put copy floating profit trades, this slippage has to take into consideration how much floating points to start copying and this "amount" of floating profit is part of the slippage allowed.

This is just a suggestions, I'm not a programmer so I won't really know which is "easier" for a programmer but as a user, I feel this would be "easier" cos if for some reason the "checking" function failed in the live account, I'm afraid the live account will then trade all the EA (imagine I've 100 EA running).

So if we can use the demo account as copy signal account to send trades to live account and with all the necessary safety measures in place (for the signal function), we will prevent the live account from over trading cos we won't know how many trades will pass the acceptance criteria and also if the checking function becomes faulty.

FSB Pro vs EA Studio vs MT4 different results

stragedy built good result but  mt4 test not firing any trade at all. eur/usd d1

It must be a reason for that. Do you see any errors or warning in the Output?

When would you have stopped this robots?

That's what I've been dreaming for.

Steve, is there a way to increase the number of metric options with check boxes for one to choose how many options to use as trading criteria?

1) Win loss ratio - is not a good criteria for a "normal" breakout EA cos it tends to have a lower win ratio (though not all Breakout EA has that limitations)

2. Max DD - Two schools of thoughts To have the choice to either 1) turn OFF EA when reached max DD or 2) Turn ON EA when reached Max DD

a) 1st School of thoughts - Conventional method is to turn off EA when it reached it's max DD

Firstly, if we were to use this conventional method, we will be constantly throwing away EA whenever they reached their max DD cos if we were to turn off when reached DD, then when will we know when to turn on? 

Picture this - imagine your EA's performance cycle is like Stochastic, do you buy (turn on EA, during max DD) when the market hit rock bottom (max DD) or do you buy (enter long, turn on EA) when market reached it's peak's performance? When a EA reached it's max DD, what is likely to happen? The EA continue to worsen or the EA will start to pick up in it's performance?

Secondly, we need to look at market cycle or market situations instead of purely statistics as our decision making.  For example, if our EA is a Breakout EA and the past few days have been a prolonged ranging, unclear market trend direction, it is expected that the EA will be losing over the past few days/weeks and hence reached or even exceeded it's max DD.

Question - when we have a prolong ranging days, what do we expect at the end of the ranging days? 

Which is more probable/likely to happen next? 1) The ranging days will continue further and hence incurred more DD, or 2) There is going to be a breakout soon?  So each time we turn off the EA near the end of ranging days (becos our EA hit it's max DD), we will be missing out on the coming opportunity when the Breakout is going to happen at the "end" of ranging days.

2) Second school of thoughts - turn on EA when ever it reached it's max DD

This school of thoughts (which I propose) fall in line with how market cycle or EA life cycle behaves.  A breakout EA will have it's peak and then followed by it's DD (because between each breakout, there are a number of ranging days and hence EA will likely reach a certain level of DD).  Hence, it is wise to turn on EA after a certain number of ranging days or when EA reached a certain level of DD.  Cos we are expecting a breakout is about to happen so it's about time to start trading a breakout strategy.

3) What is the reason the EA reached it's max DD?

a) It's part and parcel of the market cycle of the EA (as explain above)

b) The EA trading strategy isn't based on any sound trading theory and hence, it will keep deteriorating.

Thus it is important to understand whether...

a) What type of EA are you using, Ranging EA or Breakout EA so that we will understand the trading patterns, market cycle and hence equity curve and it's performing metric indications.

b) Whether the EA is a profitable one in the 1st place.


3).  PF value - Turn off EA when PF is below certain value or turn off when PF started falling and turn on when PF started to rise.

It's like the PF is an indicator.  When PF started to fall, turn off and when PF started to rise, turn on.

The rationale...

a) Does the EA has a Trading Edge?

A good EA will tend to increase in it's PF value over time (after the "incubation" period such as 1 to 2 months, cos during this incubation period, the EA may have extremely high PF and then start to decline and then it will begin to "settle" at it's "performance" marker, it's "usual" performance standard, from here onward the PF will then fluctuate according to the market cycle as explain above).

A good EA with a trading edge tend to show (sometimes small depending on the EA's trade frequency) incremental rise over time.  In another words, a Breakout EA need to earn more than it loses during ranging period.  Hence, it's PF has to increase over time but if a Breakout EA tend to lose more (during ranging times) than it earn (during breakouts), then it's PF value will decline over time. 

So if you want to know whether to "throw" away an EA, look at it's PF value changes.  Does it increase over time or decline over time.  Then you will know whether your EA has a trading edge (advantage).

b) PF changes signify market changes

If I'm using a Breakout EA and now it's ranging times, my EA will start to lose money and hence the PF value will start to decline.  Hence, turning off my EA with PF value starts to decline (over 2 to 5 days or over a number of trades, if we can specify how many days/trades to calculate the rate of changes), is like turning off a Breakout EA in ranging times.  And when PF starts to increase, turn off (this is tricky cos if we waited too long for PF to rise then turn on, we may miss the breakout instead).

4) Net Profit % change

Likewise, all the above performance metric ultimately is to measure how well an EA make money and hence another "easier" method is to use the Net Profit % change cos it comprise of all the mentioned metrics

Win loss ratio - means that EA started to lose more than it win (when does that happen? For an Breakout EA, it's during ranging times)

Max DD - means EA is having a streak of losing trades and hence reached max DD (when does that happen? Reason same as above for a Breakout EA)

PF value - Declining means the same as above

Hence, I would like to have

1) Turn off EA when it's Net Profit decline at certain %

2) Turn on EA when it' Net Profit begin to rise at certain % or

when EA reached Max DD or

when EA win loss ratio begin to increase or

when EA PF value begin to rise.

Steve, above are just some of the suggestions, of cos it's in your prerogative to decided ultimately what you would like to add in etc.  Whatever it is, this tool definitely will help to improve one's trading results when used in the most appropriate manner.  Looking forward to hear more of your progress in this project.  It's a very promising tool to have.



RJ - These past few weeks have been really tough for a Breakout EA to do well (unless one has some good filters for the Breakout EA to avoid multiple false signals during these periods).  Hence, it is "normal" if your EA is experiencing bad results these past few weeks.  Unless you think your EA doesn't have a trading edge (whereby it is able to sustain those loses during ranging times because it will win more than it lose at each Breakout).

FSB Pro vs EA Studio vs MT4 different results

stragedy built good result but  mt4 test not firing any trade at all. eur/usd d1

When would you have stopped this robots?

I've developed a new app and will release it soon.  It uses a Demo account to drive decisions in your live account.  The same portfolio and strategies are running in both accounts.  The strategies in the Demo account are allowed to trade with no limitations and are used to create an active database of trading results.  When a strategy in a Live account receives a signal it first checks if the WinRatio is >= 0.5 in the Demo account.  If it is, then the trade continues, otherwise the signal is ignored.  In this way strategies are dynamically turned on and off, depending on their current performance in the demo account.  The WinRatio metric is computed over the most recent 10 trades.

The app is called MT4 Sidekick.  I've been using it for a little over a month and it works well.  You still have to create good strategies -- it won't turn losing strategies into winners.  But since it can detect the ebb and flow of a strategy's performance, then it should help a lot when it comes to managing a portfolio of strategies.  It should address exactly the  problem you describe -- I mean, that is the primary reason I created it.

When would you have stopped this robots?

I'll stop using a robot when the. current stagnation period exceed half of backtest stagnation, that's why I always prefer a strategy with shortest stagnation, and use the longest data available. Off course I have maximum standard of drawdown too.

I hope Mr Popov will add stagnation as one of generator and optimizer criteria.

When would you have stopped this robots?

Please, contribute to this topic.

I'm posting here a couple of EAs that started well but have gone bad in the last days. Both of them showed signs of being worsening, so I could have stopped them from traiding at some point. The problem is when and how to decide when to stop trading an EA.

https://s10.postimg.org/excccjkhh/1_stop.png

https://s10.postimg.org/xcwtacyqd/2_stop.png

One can see for example in the second image that this EA starts worsening at a point (the slope changes and gets flatter) and then the EA finally crashes. If we could foresee this behaviours we could stop some EAs before going bad. The problem is when and how. In this case for example a moving average on the equity could have helped (for example).

What are your ideas about this topic? How do you know/when do you think a robot should be stopped?

Please, post your approaches here so we all might get to a conclusion that could be of help for all of us.
Thanks in advance
Warmest regards
RJ

Data Export

I create from generater and saved. the name file is safari.
How can I export to  mt4 thats is mql4.
mt4 editor can,t open the file.

Is it bug with Williams %R when running EA in MT4?

Hello guys,
I really appreciate the great work that Popov and everyone here does to make Forex Strategy builder better everyday.
I have been watching this forum for some time but recently started trying out the strategies creation myself from the software. Yesterday I created a strategy that showed a great potential and mainly utilises Williams %R indicator. I have attached the MQL herewith for you to have a look and confirm if this is a bug.
The MQL4 for expert adviser gets compiled without issues in MT4 but when this expert is ran for back testing Zero divide error is shown and it does not run.
I tried attaching this EA to live chart and although it runs and shows smiley after some time it reports the same error.

I also tried using alternative indicator in FSB called  Amplified Williams %R but get the same error. I don't get this kind of error when using any other indicators so I guess I am not making any fundamental mistakes.

Can you have a look please?
Thanks
RK

Direct data import

Thank you very much! Now it works