Re: Definition of insanity...looking for some guidance

That's a test that I like! Good job, Tim! Now there are no if's.


timelleston wrote:

Very quick test results, for one period only, so I'd recommend doing this across other periods:

Data Horizon End: 27/9/22
Bars: 384
Resulting Start Date: 21 Sept 00:00
Resulting End Date: 26 Sept 23:45

In the interests of time, I ran the Generator for 30 minutes. It generated 2212 strategies, of which it kept 300.  I moved top 50 based on SQN to Portfolio then exported to MT5. 

Set start in MT5 as 21 Sept.  End as 28 Sept.
Set Custom Forward date as 27 Sept.

Result is attached image below.
Net profit for the 27th was A$107 on size of 0.01 lots (EAS was 0.1 lots).
I used a SL of 220 pips and TP of 95 pips.
In the backtest, of 621 deals, there were 0 SLs, and 32 TPs triggered.
In the forward test, of 146 deals, there were 0 SLs and 0 TPs triggered.

I had not added any custom code to manage spread protection either (normally I set it to 50 pips).
While not repeated across multiple dates, due to time, it does show that this method does actually work.  Of course, sometimes it won't, thats the probability of it, and we can't foretell the sequence of wins and loses, but, it definitely seems to be an edge.

Using the forward test, it closes all deals at the end of the back test, and starts new deals as needed on the forward test - so, Footon, to you question, this is a clean data set.  No trades held over.

52 (edited by sleytus 2022-10-02 05:48:50)

Re: Definition of insanity...looking for some guidance

I like your testing a lot -- thank you...

I'm following in your foot-steps with CJ / M30.  In live trading I was getting better results with M15 than M30.  But now that I've adopted your Back/Forward simulation in MT5's Strategy Tester I'm seeing better results with M30 than M15...

timelleston wrote:

Very quick test results, for one period only, so I'd recommend doing this across other periods:

Re: Definition of insanity...looking for some guidance

footon wrote:

That's a test that I like! Good job, Tim! Now there are no if's.

sleytus wrote:

I like your testing a lot -- thank you...

I'm following in your foot-steps with CJ / M30.  In live trading I was getting better results with M15 than M30.  But now that I've adopted your Back/Forward simulation in MT5's Strategy Tester I'm seeing better results with M30 than M15...

Thanks guys.

And that is interesting Sleytus. That’s the beauty of this software eh, the ability to test at speed.

One thing I have noticed, fairly consistently, is that the EAS results don’t completely match backtesting, even when dates and bars are the same. Lots of things can cause this for sure.

I took a look at one particular trade in both EAS and MT5 and the rates were the same, but the PL didn’t match what MT5 had. I think I got it down to possibly an exchange rate difference at trade time (converting from pair rate to Account currency rate.

But it gives a great proxy for performance, which is why I double check in MT5 before pushing live.

Re: Definition of insanity...looking for some guidance

Awesome thread guys!

I am going to create a workflow to adopt this approach as closely as I have understood it and do some tests this weekend and am very excited about it. I will share the results.

Also timelleston, expressgen will be available to all ultimate users so you just need to contact Popov to get a download link. It’s awesome but at the moment it’s missing the correlation and time settings along with a few other things so I am personally sticking with EA studio until that gets implemented, but once those things do get implemented it will be perfect for this approach.

55 (edited by sleytus 2022-10-04 23:35:04)

Re: Definition of insanity...looking for some guidance

Yes -- I agree.  However, I don't see how it could all be scripted.  For example:

1. An ExpressGen-generated collection would still need to be manually imported back into EA Studio to generate *.mq4/*.mq5 source code.

2. *.mq4/*.mq5 source needs to be compiled.  This can be done from the command line but it is not well documented.

3. The compiled portfolio EA needs to be manually launched in a terminal session.  This can be awkwardly automated for MT5, but the same technique doesn't work in MT4.

So, it now seems to me that ExpressGen will be best suited for simultaneously generating multiple portfolio EAs.  EA Studio is somewhat handicapped in that the Generator page needs to be partially visible, otherwise the browser puts it to sleep.  Hence, it requires multiple browser instances to simultaneously generate multiple portfolio EAs.  That's a minor inconvenience and not really a show-stopper...

sammjacks wrote:

... expressgen ...   it will be perfect for this approach.

56 (edited by geektrader 2022-10-05 01:01:55)

Re: Definition of insanity...looking for some guidance

Does anyone know if Popov is all right? His account shows "Last post: 2022-09-12 13:51:39". Which is unusually long... One of his last posts said:

"2022-08-31 12:55:30
Re: Express Generator - Overview and Discussion (11 replies, posted in Express Generator)

I'll have a vacation for ten days. Then I'll continue the work on the projects.

My next task will be to make an auto-update capability of Express Generator and more indicators, of course.
We may expect 100% coverage at the end of September."

Re: Definition of insanity...looking for some guidance

Let's hope he's enjoying the time with his family...

Re: Definition of insanity...looking for some guidance

As far as I understood, his vacation was only planned for 10 days and almost a month ago by now. Just was wondering if anyone heard anything, as it is very uncommon that he didn´t make a single post or reply within almost 4 weeks now on this Forum.

Re: Definition of insanity...looking for some guidance

Yes true regarding express gens current limitations, although the increase in speed along with easier to run multiple generators will be a bin win for this methodology.

As you say though pulling collection so to Ea studio will still be necessary but that seems fine as it’s good to see the curves and prune in that environment.

Presumably the only thing that limits how many portfolio EAs you trade is your time? I was thinking to try this method using 3-6 portfolio EAs for different symbols all on M15.

Although going to start simply with just CADJPY as you have stated seems to work well.

60 (edited by GD 2022-10-05 07:44:25)

Re: Definition of insanity...looking for some guidance

Hi everybody

I tried USDJPY and EURUSD M15 both
I had two success days and two loss days by same amount
One win one loss per currency.

I find logical the model suggested but nothing is for sure.

I use a manual system also. It is interesting to mention that in both cases my manual system was in agreement with previous cases EAs trades mean behavior per day.

I do it again today. 384 bars each
I repeat everything same time per day

Re: Definition of insanity...looking for some guidance

Yes agreed, not everything can be scripted, but, it will hopefully go a long way to automate the generation on a schedule. I'm in Oz, so it's really early to get the London open to generate for a couple of hours...if I can have a script to do that for me, I'll take it, and then when I get up, it's already generated, and ready to manually load, test and push.  At least, thats my theory smile




sleytus wrote:

Yes -- I agree.  However, I don't see how it could all be scripted.  For example:

1. An ExpressGen-generated collection would still need to be manually imported back into EA Studio to generate *.mq4/*.mq5 source code.

2. *.mq4/*.mq5 source needs to be compiled.  This can be done from the command line but it is not well documented.

3. The compiled portfolio EA needs to be manually launched in a terminal session.  This can be awkwardly automated for MT5, but the same technique doesn't work in MT4.

So, it now seems to me that ExpressGen will be best suited for simultaneously generating multiple portfolio EAs.  EA Studio is somewhat handicapped in that the Generator page needs to be partially visible, otherwise the browser puts it to sleep.  Hence, it requires multiple browser instances to simultaneously generate multiple portfolio EAs.  That's a minor inconvenience and not really a show-stopper...

sammjacks wrote:

... expressgen ...   it will be perfect for this approach.

Re: Definition of insanity...looking for some guidance

Yeah a sleep timer and expressgen will be able to sort that out easy enough. I’m in Oz too, combo of scripts and time settings in the EAs means doesn’t matter where we are really though.

My first spin of this system wasnt much of a success but I ran through things pretty quickly. Gonna try again tomorrow. I’m sure there are details I have missed

Re: Definition of insanity...looking for some guidance

Also geek trader, Popov is just hard at work on some of his projects and avoiding distractions for a bit from the sound of things. All is well, I’m sure he will be back to contactable soon once he has achieved what he needs to, and no doubt it will be to all our benefit :-)

Re: Definition of insanity...looking for some guidance

Very excited about the concept being discussed here. My poor result were just extra work at the end of a long day and only a simulation for a single days trading.

I am keen to create some backtests that will test using this method daily for about a month to see how I go with it.

The logic makes sense though, impressive stuff sleytus

Re: Definition of insanity...looking for some guidance

Also great tests btw timelleston. A bloody excellent thread. I’m getting very excited about it, boy am I gonna do so tests thing weekend haha

Re: Definition of insanity...looking for some guidance

I have a thought also. Currently you are generating strategies every day using a few days data and then creating a porfolio. Have you considered say putting on a bunch of portfolio EAs onto an incubator demo and then simply moving the top 50 to trade live for the following day according to the stats for the last three days?

Re: Definition of insanity...looking for some guidance

I guess what I am thinking is the following:

1. Create say 10 portfolio Eas with 100 strategies in each for CADJPY m15 that were generated using a months (or a week/fortnights  bars?).

2. Then after 3 days trading Start moving the best 50 EAs to a live account via copy trading or any other means.

Then I guess change the incubator Portfolios EAs very frequently like every week or two to keep things current?

Any thoughts?

This seems to be based on similar principles?

Re: Definition of insanity...looking for some guidance

sammjacks wrote:

Also geek trader, Popov is just hard at work on some of his projects and avoiding distractions for a bit from the sound of things. All is well, I’m sure he will be back to contactable soon once he has achieved what he needs to, and no doubt it will be to all our benefit :-)

That's great to hear, thanks a lot for the update. I am not concerned about no updates or replies, just about him and if he is all right. 11 years of being on this Forum and communicating with him makes you start worrying about people if they fall out of their regular "patterns". Really glad to hear he is well.

Re: Definition of insanity...looking for some guidance

The principle is to have it now, not 3 days from now, but NOW smile With 3 days you'll lose the edge and secondly you will be biasing the strats on those 3 days.
But it will be interesting to see whether in the long run it's going to perform above break-even point.

sammjacks wrote:

I guess what I am thinking is the following:

1. Create say 10 portfolio Eas with 100 strategies in each for CADJPY m15 that were generated using a months (or a week/fortnights  bars?).

2. Then after 3 days trading Start moving the best 50 EAs to a live account via copy trading or any other means.

Then I guess change the incubator Portfolios EAs very frequently like every week or two to keep things current?

Any thoughts?

This seems to be based on similar principles?

70 (edited by sleytus 2022-10-05 11:21:16)

Re: Definition of insanity...looking for some guidance

Hi sammjacks...

I've gone the pruing route and even written software to automate it -- but, no more.  The goal here is to focus on ***current*** market conditions, and what the stats now show us is that strategies generated using a minimal data horizon perform well for a day or so before tapering-off.

Your workflow that includes pruning misses the point since by the time you've decided which strategies are worthy of your live account they will have already begun tapering-off. 

This may be difficult to swallow, but all strategies are over curve-fitted -- and I mean all.  So -- we accept that fact and take advantage of it by focusing on **current** market conditions.  By focusing on **current** market conditions then over curve-fitting isn't bad -- it's actually a benefit.  The approach discussed here requires a "context switch".  Instead of thinking about creating strategies that will perform well into the future, think about creating strategies that will perform well just for today.  That is, we want to generate strategies in "near real-time".  In practice that is not possible, but by feeding the Generator the smallest chunk of data (300 bars) required to compute strategies then we come close.  To create custom EAs and portfolios would be tedius and too time consuming.  But with EA Studio it's a press of a button.

When I start a generation my broker data is only a few minutes delayed and I'll then let the Generator run for an hour or so.  By the time the portfolio EA hits an MT chart the probability that market conditions haven't changed during the most recent 300 bars is high.  Any time that is spent pre-testing in demo just eats into the life-expectancy of the strategy.  Market conditions really do change...



sammjacks wrote:

I guess what I am thinking is the following:

1. Create say 10 portfolio Eas with 100 strategies in each for CADJPY m15 that were generated using a months (or a week/fortnights  bars?).

2. Then after 3 days trading Start moving the best 50 EAs to a live account via copy trading or any other means.

Then I guess change the incubator Portfolios EAs very frequently like every week or two to keep things current?

Any thoughts?

This seems to be based on similar principles?

71 (edited by sleytus 2022-10-05 11:20:55)

Re: Definition of insanity...looking for some guidance

You got it !!  smile

footon wrote:

The principle is to have it now, not 3 days from now, but NOW smile With 3 days you'll lose the edge and secondly you will be biasing the strats on those 3 days.

Re: Definition of insanity...looking for some guidance

BTW -- I hope that anyone who is following this topic understands that if more than one portfolio EA will be executing then it is absolutely necessary to manually edit the source code so that every portfolio EA has a unique 'Base_Magic_Number'.

Re: Definition of insanity...looking for some guidance

So essentially use the 300 bars (about 3 days) data to generate but favour the part of the curve that was yesterday.

The edge is that the market will be similar enough tomorrow to profit. Won’t always be the case but probability of that is on our side?

Makes sense

Re: Definition of insanity...looking for some guidance

sammjacks wrote:

So essentially use the 300 bars (about 3 days) data to generate but favour the part of the curve that was yesterday.

The edge is that the market will be similar enough tomorrow to profit. Won’t always be the case but probability of that is on our side?

Makes sense

Yes absolutely.  There's also a "golden timeframe" to stop the EA  from opening new positions.  It's somewhere around 24 hours for 15m.

Re: Definition of insanity...looking for some guidance

So guys, all theory aside (I have been there many years ago and it never achieved any steady growth), are there any demo/live accounts to look at where this approach is showing it's results over a few weeks?