Discussion of article "Experiments with neural networks (Part 3): Practical application" - page 3

 
CapeCoddah #:

Hi Roman,

I am focusing on your 4 Perceptron TP/SL models.  In doing Visualize runs in the tester, I am noticing some significant order processing problems that are causing large draw downs, most notably around 2022 07/05 where there is a $1,350 draw down see Bad Trades attachment

This appears to be caused by order 3534 which lacks both a TP & SL and is highlighted in Light green.  In some cases the the highlight is in the Rose color indicating that the Price identified is outside the trading range.   The comments identify it as "tp104740" instead of "Perceptron EN_xx and the volume is ).62/0.62.   This seems to indicate that there was incomplete processing of the order setup.

This problem repeats itself each time the Perceptron row for loop resets,  for(int i=0; i<=(ArraySize(EURUSD)/6)-2; i++){ .  I tested a version by decreasing the upper limit by one and the errors persist. 
BTW you should change the ArraySize to ArrayRange(EURUSD,0) ad drop the calculations.

The problem also manifests itself each time the signal switches from buy to sell or vice versa.

The problem could be be caused by an initialization problem caused either at the start of the loop or at the end or is this a Netting problem and the buy/sell functions should be moved outside of the for loop?

In reviewing all of the trades with a zero SL, I noticed that nearly all have a date time which   is seconds off of 00.  Thinking that your IsNewBar was off, I substituted my NewBar and obtained identical results. Consequentially it seems that anytime there is no trade activity in the first second of a new bar, the error may occur.  This does not bode well for using this concept for other currency pairs that do not trade as frequently as EURUSD.

Thus, I have a lot of potential problems but no good concept on how to proceed as I am in the beginning of converting from MT4 to MT5 and do not thoroughly understand the order processing details of MT5.  Can you identify and correct the problem??

Thanks CapeCoddah

BTW Your concept of using 10 of the first 100 Perceptron rows from the optimization run is brilliant.  I certainly increases the efficiency of the EA.

Thanks for the feedback. Send me an EA with an error in private messages. I'll try to figure it out.

 

Roman,

Use the 1 Perceptron Angle SL TP Trade.EX5 that you released with this article.

Strategy Tester: Visualize from 2021 12/09 to 2022 12/09 producing a back test profit of approximately $2747.02  (it has varied from 2747 to 2758)  Select History tab in the Strategy Tester and select Orders, then sort ascending on S/L.  Look at order 991 to se the rose high light.  Notice the time stamp times and also the comments.

I ran two tests, one without buy orders and the other without sells.  Both exhibited the problem.


Enjoy

CapeCoddah

 
CapeCoddah #:

Roman,

Use the 1 Perceptron Angle SL TP Trade.EX5 that you released with this article.

Strategy Tester: Visualize from 2021 12/09 to 2022 12/09 producing a back test profit of approximately $2747.02  (it has varied from 2747 to 2758)  Select History tab in the Strategy Tester and select Orders, then sort ascending on S/L.  Look at order 991 to se the rose high light.  Notice the time stamp times and also the comments.

I ran two tests, one without buy orders and the other without sells.  Both exhibited the problem.


Enjoy

CapeCoddah

Hi. I didn't find any problems. See screenshot. What is your broker?

Files:
1.png  38 kb
 

Thanks for the speedy response.

I see I was doing my speculations on the wrong tab; I was using the orders tab when I should have been using the Deals tab for my analysis.  By using Deals and sorting on the profit column descending, I have immediately spotted the July 7th Deal that incurred a loss of $1395.

I have to chalk this boo boo of mine to inexperience.  I started using MQ5 6 months ago and just got into trade details from your EAs and tried using my MQ4 experience as a base.

Thanks for your assistance, I just learned a lot


Cape CVoddah


D

 
CapeCoddah #:

Thanks for the speedy response.

I see I was doing my speculations on the wrong tab; I was using the orders tab when I should have been using the Deals tab for my analysis.  By using Deals and sorting on the profit column descending, I have immediately spotted the July 7th Deal that incurred a loss of $1395.

I have to chalk this boo boo of mine to inexperience.  I started using MQ5 6 months ago and just got into trade details from your EAs and tried using my MQ4 experience as a base.

Thanks for your assistance, I just learned a lot


Cape CVoddah


D

Nothing scary. We are all learning. If you're interested, I'm recruiting a team to develop neuro. Send me a private message. Participation is paid.

 

Hi Roman,

First let me thank you for this amazing contribution, very interesting, you are a genius. I gotta say I liked the 2 perceptron 4 angles options, so I added a 3rd perceptron for a parameter I have found to be quite valuable in my manual trading: RSI in different timeframes. 

//+------------------------------------------------------------------+
//|  The PERCEPTRON - a perceiving and recognizing function          |
//+------------------------------------------------------------------+
double perceptron3() //RSI
{
   double v1 = z1 - 10.0;
   double v2 = z2 - 10.0;
   double v3 = z3 - 10.0;
   double v4 = z4 - 10.0;  
   
   //In3 = RSI Current timeframe
   //In4 = RSI Higher timeframe
   
   double b1 = (((ind_In3[1]-ind_In3[2]))/2);
   double b2 = (((ind_In4[1]-ind_In3[2]))/2);
   double b3 = (((ind_In3[1]-ind_In4[2]))/2);
   double b4 = (((ind_In4[1]-ind_In4[2]))/2);
   
   return (v1 * b1 + v2 * b2 + v3 * b3 + v4 * b4);
}

Basically my 3rd perceptron looks for the slope relationship between 14 rsi on current timeframe vs the same on a higher level, my case being 4h and Daily respectively and the results show some promise, specially for the Pound.

>1 year training, 2 years testing data set.

For the GBPUSD :

Original 2 perceptron 4 angle, single model:

 

3rd perceptron looking for RSI slope on different timeframe:


For the GBPJPY:

Original 2 perceptron 4 angle, single model:

3rd perceptron looking for RSI slope on different timeframe:



Hope to keep sharing other findings.

Regards!

 
Eric Ruvalcaba #:

Hi Roman,

First let me thank you for this amazing contribution, very interesting, you are a genius. I gotta say I liked the 2 perceptron 4 angles options, so I added a 3rd perceptron for a parameter I have found to be quite valuable in my manual trading: RSI in different timeframes. 

Basically my 3rd perceptron looks for the slope relationship between 14 rsi on current timeframe vs the same on a higher level, my case being 4h and Daily respectively and the results show some promise, specially for the Pound.

>1 year training, 2 years testing data set.

For the GBPUSD :

Original 2 perceptron 4 angle, single model:

 

3rd perceptron looking for RSI slope on different timeframe:


For the GBPJPY:

Original 2 perceptron 4 angle, single model:

3rd perceptron looking for RSI slope on different timeframe:



Hope to keep sharing other findings.

Regards!

Hi! Thanks for your feedback. I'm glad I could help.

 

Roman, Eric:

Here are some of my testing results, using Roman's original parameters, e.g. H1 2019 12/9-2021 12/9 and forward test 2021 12/09-2022 12/09 for 1 perceptron 4 angle tpsl

Original $2758. I then manually tried to optimize the tpsl and eventually found tp=150 & sl=550 producing $7915.  I tried variable lots and it produced identical results.  I also tried the GA optimization for TPSL around the manual optimized values.  Using the best Optimized  values TP=150 SL=524 which produced a very good optimization profit of $8973, the forward test bent bankrupt!  These results seem to indicate that for optimal profits, the TP & SL also need to be included in the GA optimization runs.  I will be switching my testing also to H4 as I believe the higher time frame "evens out" some of the loss producing reversals on the lower time frame. 

Eric: its an interesting idea on using the higher RSI time frame, did you test the H6, H8 or H12 time frames?  And I'm interested to know if you used the MQ iRSI to obtain the results or if you used one of the MTF RSI's available with period interpolations?

Here's a tip for you:

Use the compiler directive #define and #ifdef and you can eliminate the optversions and gain save time replicating your efforts.

//#define OPTIMIZING    //COMMENT OUT FOR PRODUCTION TRADING
#ifdef OPTIMIZING
 input int    x1 = 1;
input int    x2 = 1;
input int    x3 = 1;
input int    x4 = 1;

input int    z1 = 1;
input int    z2 = 1;
input int    z3 = 1;
input int    z4 = 1;
input int    Param = 1000;
#else
int    x1 = 1, x2 = 1,x3 = 1, x4 = 1;     //AnglePerceptron4
int    z1 = 1, z2 = 1,z3 = 1, z4 = 1;     //RsiPerceptron4
int    Param = 1000;

#endif

You will have to use this construct again in the OnTick function to comment out the for loop


Cheers to both of you

Reason: