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

You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
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
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?
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
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.
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 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