A quick and free library for MT4, much to the delight of neuralnetworkers - page 6

 

He makes a lot of trades, can you tell me how to reduce their number? For some reason I have it on every bar....

 
All right, I think I've got it. Thanks a lot :)
 
An error has been found in the EA code. Please update https://www.mql5.com/ru/code/9386
 

Please enlighten me as to why the multiplication by 2 in line 190:

    ret = 2 * ret / AnnsNumber;
 
marketeer >> :

Please enlighten me as to why the multiplication by 2 in line 190:

You can comment out this line altogether. It has no meaning whatsoever. It was left over from the previous EA.

 

After fixing the problems, the teachability of the grid has increased, but another problem has appeared. The grid has become unstable in learning. This means that it reaches a certain point and starts to forget what it has learned.



Grid optimisation




Here is the final result of learning on history:


Strategy Tester Report

FANN-EA

Alpari-Demo (Build 225)


SymbolAUDUSD (Australian Dollar vs US Dollar)
Period1 Hour (H1) 2008.08.28 15:00 - 2009.12.14 13:59
ModelBy open prices (only for Expert Advisors with explicit bar opening control)
ParametersStopLoss=890; x=24491; Lots=0.1;

Bars in history8035Modelled ticks15969Simulation qualityn/a
Chart mismatch errors0




Initial deposit1000000.00



Net profit24738.71Total profit34961.10Total loss-10222.39
Profitability3.42Expectation of winning48.60

Absolute drawdown228.33Maximum drawdown682.60 (0.07%)Relative drawdown0.07% (682.60)

Total trades509Short positions (% win)254 (76.77%)Long positions (% win)255 (78.04%)

Profitable trades (% of all)394 (77.41%)Profitable trades (% of all)115 (22.59%)
Largestprofitable trade93.20losing deal-99.64
Averageprofitable deal88.73losing trade-88.89
Maximum numbercontinuous wins (profit)24 (2130.16)Continuous losses (loss)7 (-621.80)
MaximumContinuous Profit (number of wins)2130.16 (24)Continuous loss (number of losses)-621.80 (7)
Averagecontinuous winnings5Continuous loss1


 
Reshetov >> :

We can comment out this line altogether. It does not bear any semantic meaning. It has remained from the previous EA.

Doesn't carry? The string fills in the value returned by the function ann_pnn, and opens a buy or sell depending on it. Following this logic, the whole ann_pnn function is unnecessary, and orders should be opened randomly.

I also don't quite understand why grids are trained only on losing options (if (OrderProfit() < 0)).

 
marketeer >> :

Doesn't carry? The string fills in the value returned by the function ann_pnn, and opens a buy or sell depending on it. Following that logic, the whole ann_pnn function is unnecessary, and let the orders open randomly.

I also don't quite understand why grids are trained only on losing options (if (OrderProfit() < 0)).

I repeat once again: this line has no information load. The sign at ret does not change, but the trades are torn off depending on the positive or negative value ret

 

Strange... Running optimisation... the network is learning... but it's eating up 1.5 gig of memory...

Running a test... it's working... Tried it many times.

But if you restart the terminal, it feels like the net is forgetting everything it knows - the tests are just terrible...

 
Solver.it >> :

Strange... Running optimisation... the network is learning... but it's eating up 1.5 gig of memory...

Running a test... There's a profit. Tried many times.

But if I restart the terminal, it feels like the grid forgets everything it knows - the tests are just awful...

After restarting the terminal, is the StopLoss value the same as before?


Because I have tried it, and on different tests, both before and after restarting the values are different, but they do not differ very much, the profit factor changes by about 0.1 - 0.2. Strong scatter may occur when there are few trades in tests, i.e. less than 1000. When the amount of trades is large, the learning curve in the optimizer does not change much and the test results do not differ much. With a small amount, the nets either overlearn or underlearn.


And look in the directory: c:\ann to see if there are any saved meshes there?