Frage zur genetischen Optimierung - Seite 4

 

Es wird also nur diese iCustom-Zeile geändert? Dann müssen wir uns diesen Indikator im Detail ansehen.

 

Sie haben das falsche Thema. Sie konzentrieren sich auf die Optimierung, während das Problem offensichtlich beim EA liegt(Parameterübertragungen usw.). Vergessen Sie die Optimierung für eine Weile, geben Sie Kommentare und Drucker in den EA ein, lassen Sie ihn mit verschiedenen Parametern in der Visualisierung laufen, kontrollieren Sie die Zwischendaten, finden Sie alle Fehler, und kehren Sie dann zur Optimierung zurück.

Die gleichen Ergebnisse deuten darauf hin, dass die optimierten Parameter keinen Einfluss auf die Bildung des Handelssignals haben, und dies ist das Problem des EA, nicht des Testers.

 
Angela >> :

Wenn ich die Parameter wie folgt einstelle: (iCustom(NULL, 0, "ART", MA_Period, KFK, 0, 1), Digits); - erscheinen alle Nullen, wie ich oben ein Beispiel gegeben habe.

Wenn ich iCustom(NULL, 0, "ART", 0, 1), Digits) einstelle; - dann erscheinen berechnete Werte,

aber sie sind alle gleich, auch wenn die Ergebnisse der Geschäfte im Test mit verschiedenen Parametern sehr unterschiedlich ausfallen.

Angela, damit die Optimierung funktioniert, müssen Sie die vom Optimierer geänderten Werte irgendwie im Algorithmus verwenden, insbesondere müssen Sie sie an den Indikator weitergeben. Es ist notwendig, dem Indikator Parameter zu übergeben, wenn Sie ihn optimieren wollen. Wenn Sie den Indikator ohne Parameter aufrufen (d.h. im zweiten Fall iCustom(NULL, 0, "ART", 0, 1)), lassen Sie die Parameter tatsächlich weg und er arbeitet mit den Standardparametern, die in ART registriert sind (natürlich sind sie nicht optimiert). Der vollständige Aufruf mit Parametern - die erste Option - ist das, was Sie zur Optimierung benötigen. Höchstwahrscheinlich liegt das Problem darin, dass Sie die Parameter nicht korrekt übergeben. Zum Beispiel, wenn ihre Zahl im Indikator kleiner ist und Sie einen besseren Wert übergeben, oder umgekehrt, wenn Sie ihnen nicht alle Parameter geben. Wenn der Indikator ein Geheimnis ist, geben Sie zumindest die Liste seiner Parameter an.

 

Dank an alle, der Grund war trivial. Die Reihenfolge, in der die Parameter vom Indikator an den EA gesendet wurden, stimmte nicht überein:

im Expert Advisor war

extern int MA_Period=151; // 101 10 201
extern double KFK=0,9; // 0,7 0,005 1.

in dem Indikator im Gegenteil

extern double KFK=0.9; // 0.7 0.005 1.

extern int MA_Period=151; // 101 10 201

es funktionierte im Visualisierungsmodus, aber nicht im Optimierungsmodus.

 

Herzlichen Glückwunsch! Ich erinnere mich auch daran, dass ich mit der Übergabe von Parametern zu kämpfen hatte, bis ich mich daran gewöhnt hatte, peinlich genau zu sein. Jetzt kopiere ich ein Stück Indikatorcode mit allen Externa in Expert Advisor und schreibe iCustom, wobei ich mir das Beispiel ansehe. Es ist ein bisschen stumpf, aber seither gibt es keine Fehler mehr.

Noch eine Sache. Ich habe mir den illustrativen Schreibstil von komposter iCustom angesehen. Alles liegt direkt in meiner Hand.

/*
Входные параметры индикатора
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalSMA=9;
*/
double signal=iCustom(Symbol(),Period(),"MACD",
                                       FastEMA,   //параметр 1
                                       SlowEMA,   //параметр 2
                                       SignalSMA, //параметр 3
                                       0,         //номер буфера индикатора    
                                       SignalBar);//бар, с которого получаем данные (внешняя переменная)
 

Ich bin dabei, die zweite Version meines TS zu debuggen. Im Vergleich zur ersten hat sich die Anzahl der Geschäfte erhöht und die Anzahl der optimierbaren Parameter hat sich deutlich verringert, obwohl sich der Drawdown verdoppelt hat.

Allerdings habe ich einige Zweifel, das System ist von Monat zu Monat nicht sehr stabil. Ich habe es noch nicht optimiert, aber das Ergebnis mit GA wird in 48 Stunden vorliegen. 800+ Durchläufe sind nicht ermutigend und die Optimierungsergebnisse im Juni sind schlechter als die der Tests mit den ursprünglichen Parametern für den gleichen Zeitraum. Ich bringe drei Statistiken, für Juni, Juli und August, bisher habe ich nur Buy debuggt. Kann ich ein solches System aufgrund von Optimierungen mit stabilen Ergebnissen herausnehmen oder sollte ich gleich mit der Entwicklung eines neuen Systems beginnen?

Strategie-Tester-Bericht
ABC_exp
Alpari-Demo (Build 225)

Symbol GBPUSD (Britisches Pfund gegen US Dollar)
Zeitraum 5 Minuten (M5) 2009.06.01 00:00 - 2009.06.30 23:59 (2009.06.01 - 2009.07.01)
Modell Nach Eröffnungskursen (nur für Expert Advisors mit expliziter Bar Opening Control)
Parameter Lots=0.1; TrailingStop1=3110; StopLoss1=1500; TrailingStop2=3110; StopLoss2=1500; MAGIC_1=12345; MAGIC_2=23456; MA_Period=151; KFK=0.9;
Bars in der Geschichte 7288 Modellierte Zecken 13573 Qualität der Simulation k.A.
Diagrammabweichungsfehler 0
Ersteinlage 1000.00
Reingewinn 503.82 Gesamtgewinn 643.12 Totalverlust -139.30
Rentabilität 4.62 Erwartete Auszahlung 27.99
Absolute Absenkung 8.70 Maximale Absenkung 103.20 (7.77%) Relative Absenkung 7.77% (103.20)
Handel insgesamt 18 Short-Positionen (% Gewinn) 0 (0.00%) Long-Positionen (% Gewinn) 18 (66.67%)
Gewinnbringende Geschäfte (% von allen) 12 (66.67%) Verlustgeschäfte (% von allen) 6 (33.33%)
Größte ertragreicher Handel 107.32 Verlustgeschäft -43.00
Durchschnitt profitables Geschäft 53.59 Verlustgeschäft -23.22
Maximum kontinuierliche Gewinne (Gewinn) 5 (263.10) Kontinuierliche Verluste (Verlust) 3 (-74.00)
Maximum Kontinuierlicher Gewinn (Anzahl der Siege) 263.10 (5) Kontinuierlicher Verlust (Anzahl der Verluste) -74.00 (3)
Durchschnitt laufende Gewinne 2 Kontinuierlicher Verlust 2

Zeit Typ Bestellung Band Preis S / L T / P Gewinn Bilanz
1 2009.06.01 16:10 kaufen 1 0.10 1.63896 1.62396 0.00000
2 2009.06.01 17:55 schließen 1 0.10 1.64462 1.62396 0.00000 56.60 1056.60
3 2009.06.02 12:55 kaufen 2 0.10 1.64588 1.63088 0.00000
4 2009.06.02 14:05 schließen 2 0.10 1.64768 1.63088 0.00000 18.00 1074.60
5 2009.06.09 08:15 kaufen 3 0.10 1.60495 1.58995 0.00000
6 2009.06.09 09:00 schließen 3 0.10 1.61273 1.58995 0.00000 77.80 1152.40
7 2009.06.09 13:25 kaufen 4 0.10 1.61447 1.59947 0.00000
8 2009.06.09 14:00 schließen 4 0.10 1.61788 1.59947 0.00000 34.10 1186.50
9 2009.06.10 13:05 kaufen 5 0.10 1.63679 1.62179 0.00000
10 2009.06.10 13:35 schließen 5 0.10 1.64445 1.62179 0.00000 76.60 1263.10
11 2009.06.11 01:30 kaufen 6 0.10 1.63664 1.62164 0.00000
12 2009.06.11 02:00 schließen 6 0.10 1.63577 1.62164 0.00000 -8.70 1254.40
13 2009.06.11 15:45 kaufen 7 0.10 1.64653 1.63153 0.00000
14 2009.06.11 16:50 schließen 7 0.10 1.65300 1.63153 0.00000 64.70 1319.10
15 2009.06.12 17:15 kaufen 8 0.10 1.65102 1.63602 0.00000
16 2009.06.12 18:10 schließen 8 0.10 1.65011 1.63602 0.00000 -9.10 1310.00
17 2009.06.16 08:50 kaufen 9 0.10 1.63621 1.62121 0.00000
18 2009.06.16 09:00 schließen 9 0.10 1.63396 1.62121 0.00000 -22.50 1287.50
19 2009.06.16 17:05 kaufen 10 0.10 1.64623 1.63123 0.00000
20 2009.06.16 18:40 schließen 10 0.10 1.64199 1.63123 0.00000 -42.40 1245.10
21 2009.06.18 08:50 kaufen 11 0.10 1.64200 1.62700 0.00000
22 2009.06.18 09:30 schließen 11 0.10 1.64352 1.62700 0.00000 15.20 1260.30
23 2009.06.19 07:45 kaufen 12 0.10 1.63728 1.62228 0.00000
24 2009.06.19 11:50 schließen 12 0.10 1.64252 1.62228 0.00000 52.40 1312.70
25 2009.06.19 17:30 kaufen 13 0.10 1.64542 1.63042 0.00000
26 2009.06.19 18:10 schließen 13 0.10 1.65045 1.63042 0.00000 50.30 1363.00
27 2009.06.23 17:40 kaufen 14 0.10 1.63475 1.61975 0.00000
28 2009.06.24 02:40 schließen 14 0.10 1.64549 1.61975 0.00000 107.32 1470.32
29 2009.06.24 15:15 kaufen 15 0.10 1.65717 1.64217 0.00000
30 2009.06.24 15:35 schließen 15 0.10 1.65287 1.64217 0.00000 -43.00 1427.32
31 2009.06.26 08:50 kaufen 16 0.10 1.64036 1.62536 0.00000
32 2009.06.26 12:00 schließen 16 0.10 1.64922 1.62536 0.00000 88.60 1515.92
33 2009.06.29 12:15 kaufen 17 0.10 1.65490 1.63990 0.00000
34 2009.06.29 12:35 schließen 17 0.10 1.65354 1.63990 0.00000 -13.60 1502.32
35 2009.06.29 20:25 kaufen 18 0.10 1.65678 1.64178 0.00000
36 2009.06.29 21:25 schließen 18 0.10 1.65693 1.64178 0.00000 1.50 1503.82
 
Strategie-Tester-Bericht
ABC_exp
Alpari-Demo (Build 225)

Symbol GBPUSD (Britisches Pfund gegen US Dollar)
Zeitraum 5 Minuten (M5) 2009.07.01 00:00 - 2009.07.31 22:59 (2009.07.01 - 2009.08.01)
Modell Nach Eröffnungskursen (nur für Expert Advisors mit expliziter Bar Opening Control)
Parameter Lots=0.1; TrailingStop1=3110; StopLoss1=1500; TrailingStop2=3110; StopLoss2=1500; MAGIC_1=12345; MAGIC_2=23456; MA_Period=151; KFK=0.9;
Bars in der Geschichte 7560 Modellierte Zecken 14120 Qualität der Simulation k.A.
Diagrammabweichungsfehler 0
Ersteinlage 1000.00
Reingewinn 137.84 Gesamtgewinn 239.34 Totalverlust -101.50
Rentabilität 2.36 Erwartete Auszahlung 9.85
Absolute Absenkung 24.16 Maximale Absenkung 121.88 (11.10%) Relative Absenkung 11.10% (121.88)
Handel insgesamt 14 Short-Positionen (% Gewinn) 0 (0.00%) Long-Positionen (% Gewinn) 14 (71.43%)
Gewinnbringende Geschäfte (% von allen) 10 (71.43%) Verlustgeschäfte (% von allen) 4 (28.57%)
Größte ertragreicher Handel 58.00 Verlustgeschäft -57.20
Durchschnitt profitables Geschäft 23.93 Verlust des Geschäfts -25.38
Maximale Anzahl kontinuierliche Gewinne (Gewinn) 6 (82.92) Kontinuierliche Verluste (Verlust) 2 (-63.70)
Maximum Kontinuierlicher Gewinn (Anzahl der Siege) 117.12 (3) Kontinuierlicher Verlust (Anzahl der Verluste) -63.70 (2)
Durchschnitt laufende Gewinne 3 Kontinuierlicher Verlust 1

Zeit Typ Bestellung Band Preis S / L T / P Gewinn Bilanz
1 2009.07.14 08:35 kaufen 1 0.10 1.62852 1.61352 0.00000
2 2009.07.14 08:40 schließen 1 0.10 1.62629 1.61352 0.00000 -22.30 977.70
3 2009.07.14 23:00 kaufen 2 0.10 1.63120 1.61620 0.00000
4 2009.07.15 02:30 schließen 2 0.10 1.63191 1.61620 0.00000 7.02 984.72
5 2009.07.15 13:35 kaufen 3 0.10 1.64028 1.62528 0.00000
6 2009.07.15 14:30 schließen 3 0.10 1.64286 1.62528 0.00000 25.80 1010.52
7 2009.07.16 12:45 kaufen 4 0.10 1.64466 1.62966 0.00000
8 2009.07.16 15:05 schließen 4 0.10 1.64481 1.62966 0.00000 1.50 1012.02
9 2009.07.20 03:35 kaufen 5 0.10 1.63951 1.62451 0.00000
10 2009.07.20 04:35 schließen 5 0.10 1.63994 1.62451 0.00000 4.30 1016.32
11 2009.07.20 18:45 kaufen 6 0.10 1.65356 1.63856 0.00000
12 2009.07.20 21:30 schließen 6 0.10 1.65368 1.63856 0.00000 1.20 1017.52
13 2009.07.22 16:55 kaufen 7 0.10 1.64327 1.62827 0.00000
14 2009.07.22 18:55 schließen 7 0.10 1.64758 1.62827 0.00000 43.10 1060.62
15 2009.07.23 08:30 kaufen 8 0.10 1.65223 1.63723 0.00000
16 2009.07.23 08:35 schließen 8 0.10 1.65068 1.63723 0.00000 -15.50 1045.12
17 2009.07.23 16:45 kaufen 9 0.10 1.65286 1.63786 0.00000
18 2009.07.23 17:35 schließen 9 0.10 1.65679 1.63786 0.00000 39.30 1084.42
19 2009.07.24 09:10 kaufen 10 0.10 1.65293 1.63793 0.00000
20 2009.07.24 10:35 schließen 10 0.10 1.64721 1.63793 0.00000 -57.20 1027.22
21 2009.07.27 08:35 kaufen 11 0.10 1.65044 1.63544 0.00000
22 2009.07.27 08:45 schließen 11 0.10 1.64979 1.63544 0.00000 -6.50 1020.72
23 2009.07.27 13:45 kaufen 12 0.10 1.65005 1.63505 0.00000
24 2009.07.28 09:45 schließen 12 0.10 1.65467 1.63505 0.00000 46.12 1066.84
25 2009.07.30 08:50 kaufen 13 0.10 1.64618 1.63118 0.00000
26 2009.07.30 09:30 schließen 13 0.10 1.64748 1.63118 0.00000 13.00 1079.84
27 2009.07.31 16:50 kaufen 14 0.10 1.65534 1.64034 0.00000
28 2009.07.31 17:15 schließen 14 0.10 1.66114 1.64034 0.00000 58.00 1137.84
Strategie-Tester-Bericht
ABC_exp
Alpari-Demo (Build 225)

Symbol GBPUSD (Britisches Pfund gegen US Dollar)
Zeitraum 5 Minuten (M5) 2009.08.03 00:00 - 2009.08.11 23:59 (2009.08.02 - 2009.08.12)
Modell Nach Eröffnungskursen (nur für Expert Advisors mit expliziter Bar Opening Control)
Parameter Lots=0.1; TrailingStop1=3110; StopLoss1=1500; TrailingStop2=3110; StopLoss2=1500; MAGIC_1=12345; MAGIC_2=23456; MA_Period=151; KFK=0.9;
Bars in der Geschichte 3005 Simulierte Zecken 5007 Qualität der Simulation k.A.
Diagrammabweichungsfehler 0
Ersteinlage 1000.00
Reingewinn 90.68 Gesamtgewinn 146.52 Totalverlust -55.84
Rentabilität 2.62 Erwartete Auszahlung 22.67
Absolute Absenkung 4.30 Maximale Absenkung 63.18 (5.68%) Relative Absenkung 5.68% (63.18)
Handel insgesamt 4 Short-Positionen (% Gewinn) 0 (0.00%) Long-Positionen (% Gewinn) 4 (50.00%)
Gewinnbringende Geschäfte (% von allen) 2 (50.00%) Verlustgeschäfte (% von allen) 2 (50.00%)
Größte ertragreicher Handel 92.80 Verlustgeschäft -39.84
Durchschnitt profitables Geschäft 73.26 Verlustgeschäft -27.92
Maximale Anzahl kontinuierliche Gewinne (Gewinn) 1 (92.80) Kontinuierliche Verluste (Verlust) 1 (-39.84)
Maximum Kontinuierlicher Gewinn (Anzahl der Siege) 92.80 (1) Kontinuierlicher Verlust (Anzahl der Verluste) -39.84 (1)
Durchschnitt laufende Gewinne 1 Kontinuierlicher Verlust 1

Zeit Typ Bestellung Band Preis S / L T / P Gewinn Bilanz
1 2009.08.03 09:45 kaufen 1 0.10 1.67460 1.65960 0.00000
2 2009.08.03 10:50 schließen 1 0.10 1.68388 1.65960 0.00000 92.80 1092.80
3 2009.08.04 11:25 kaufen 2 0.10 1.69389 1.67889 0.00000
4 2009.08.04 14:45 schließen 2 0.10 1.69229 1.67889 0.00000 -16.00 1076.80
5 2009.08.04 19:50 kaufen 3 0.10 1.69312 1.67812 0.00000
6 2009.08.05 12:40 schließen 3 0.10 1.69850 1.67812 0.00000 53.72 1130.52
7 2009.08.05 18:45 kaufen 4 0.10 1.70146 1.68646 0.00000
8 2009.08.06 04:45 schließen 4 0.10 1.69750 1.68646 0.00000 -39.84 1090.68
 
Wenn nur der mql-Code in den EA involviert ist, dann muss etwas falsch kodiert sein, denn mit dem Eröffnungspreis-Modell sollten 800 Läufe nicht so langsam sein. Oder vielleicht habe ich etwas falsch verstanden. Normalerweise sind Experten mit externen Bindungen wie Bibliotheken für neuronale Netze usw. sehr langsam. Natürlich können wir auch davon ausgehen, dass mql viele verschachtelte Schleifen hat (oder Aufrufe einiger "gefräßiger" Indikatoren) - dann kann es komplett verlangsamt werden. Daher kann ich die Idee der angeblichen Notwendigkeit von Refactoring nur wiederholen ;-) - Überprüfen Sie einige Codefragmente oder den gesamten Code erneut und wandeln Sie ihn um.
 
marketeer писал(а) >>
Wenn nur der mql-Code am Expert Advisor beteiligt ist, muss dort etwas falsch kodiert sein, denn 800 Läufe sollten sich bei Eröffnungskursen nicht verlangsamen. Oder habe ich etwas falsch verstanden? Normalerweise sind Experten mit externen Bindungen wie Bibliotheken für neuronale Netze usw. sehr langsam. Natürlich können wir auch davon ausgehen, dass mql viele verschachtelte Schleifen hat (oder Aufrufe einiger "gefräßiger" Indikatoren) - dann kann es komplett verlangsamt werden. Daher kann ich die Idee der angeblichen Notwendigkeit von Refactoring nur wiederholen ;-) - Überprüfen Sie einige Codefragmente oder den gesamten Code erneut und wandeln Sie ihn um.

Zum Zeitpunkt des Verfassens dieses Beitrags waren 800 von mehr als 8000 Läufen absolviert, mit 5 Stunden Optimierung, und es waren noch 2 Tage Zeit. Aber ich wartete nicht bis zum Ende, reduzierte den Aufzählungsbereich einiger Parameter, startete neu und in 8 Stunden war die gesamte Optimierung abgeschlossen.

Bestes Ergebnis:

     Прибыль     Всего сделок     Прибыльность   Матожидание     Просадка$    Просадка%
673  597.40         23            4.80            25.97           67.90         4.81%    Threshold1=109 Threshold2=227 USL=0.0037 MA_Period=58
 

Die Anzahl der gewinnbringenden Geschäfte übersteigt die Anzahl der verlustbringenden Geschäfte, der durchschnittlich gewinnbringende Handel übersteigt den verlustbringenden, was ein sehr gutes Zeichen ist. Meiner Meinung nach sollten Sie dieses System nicht aufgeben, sondern sein Verhalten über einen längeren Zeitraum studieren. Sie können es auch auf ein anderes Kreuz setzen.