Vorschläge für EA (Verlieren bis Gewinnen) - Seite 6

 
c0d3:
Können Sie eine Dokumentation für die Durchführung eines Backtests mit (1*std) -> (5*std) und (0,3 - > 1,5 auf SL und TP) empfehlen


Ich habe einige Codes zu Ihrem Programm hinzugefügt, gekennzeichnet durch djp. Legen Sie diesen EA auf ein Diagramm, in den Eigenschaften Abschnitt füllen in Start-Schritt-Stop mit den Werten in den Kommentaren.

Aktivieren Sie das Kontrollkästchen Optimierung und ändern Sie die Use Dates auf der Registerkarte Einstellungen. Deaktivieren Sie den visuellen Modus, wenn Sie ihn aktiviert haben. Drücken Sie Start. Wenn Sie bereits wissen, wie man das macht, tut es mir leid, aber ich weiß nicht, wie vertraut Sie mit dem Tester sind. Ich behaupte nicht, dass dies helfen wird, aber Sie werden vielleicht von einigen dieser Ergebnisse überrascht sein.

In Ihrem Code haben Sie 2 Zeilen [double fastSTD = ........ ] Sie verwenden fastSTD nirgendwo sonst in Ihrem Code. Ich denke, Sie wollten es verwenden, haben aber versehentlich slowSTD benutzt.

Vielleicht sollten Sie das überprüfen, bevor Sie testen, und auch die Kommentare der anderen Poster berücksichtigen, bevor Sie mit dem Testen beginnen. Wenn Sie noch nie eine Optimierung durchgeführt haben, sollten Sie dies ohne Änderung Ihres Codes tun, nur um den Dreh raus zu haben. Ich glaube nicht, dass es mit den vier Variablen länger als eine Stunde dauern wird.

 
danjp:


Ich habe einige Codes in Ihr Programm eingefügt, gekennzeichnet durch djp. Legen Sie diesen EA auf einem Chart ab und geben Sie in den Eigenschaften die Werte aus den Kommentaren für Start und Stop ein.

Aktivieren Sie das Kontrollkästchen Optimierung und ändern Sie auf der Registerkarte Einstellungen die Option Daten verwenden. Deaktivieren Sie den visuellen Modus, wenn Sie ihn aktiviert haben. Drücken Sie Start. Wenn Sie bereits wissen, wie das geht, tut es mir leid, ich weiß nicht, wie gut Sie mit dem Tester vertraut sind. Ich behaupte nicht, dass Ihnen das helfen wird, aber Sie werden vielleicht von einigen dieser Ergebnisse überrascht sein.

In Ihrem Code haben Sie 2 Zeilen [double fastSTD = ........ ] Sie verwenden fastSTD nirgendwo sonst in Ihrem Code. Ich denke, Sie wollten es verwenden, haben aber versehentlich slowSTD benutzt.

Vielleicht sollten Sie das überprüfen, bevor Sie testen, und auch die Kommentare der anderen Poster berücksichtigen, bevor Sie mit dem Testen beginnen. Wenn Sie noch nie eine Optimierung durchgeführt haben, sollten Sie dies ohne Änderung Ihres Codes tun, nur um den Dreh raus zu haben. Ich glaube nicht, dass es mit den vier Variablen länger als eine Stunde dauern wird.


Vielen Dank, ich werde damit auf meinem Live-Konto-Tester experimentieren, anstatt auf dem Demo-Konto-Tester
 
c0d3:
Ist es möglich, dass Sie den modifizierten EA hier posten?

Sicher. Dies sind einige der wichtigsten Änderungen während des Tests oben:

1) Ihre vorherige Bedingung:

if(Close[0]<fastMA[tradingTimeFrame-1])shortEntry();else if(Close[0]>fastMA[tradingTimeFrame-1])longEntry();

2) Wie Sie oben sehen: Alle MA, entF Signale wurden "arrangiert" und "gebunden" durch

tradingTimeFrame-1

& durch die Gleichung, auf init:

if(tradingTimeFrame<3)tradingTimeFrame=3;
   entryTF=tradingTimeFrame-3;

und der Rest der Änderungen folgt: diese Art und Weise macht es einfacher für zukünftige Entwicklungen, insbesondere für Optimierungszwecke (nur Schritt durch tradingTimeFrame um 1)

Entschuldigung, wenn es keine Kommentare in meinen Codes gibt. Ich lese Codes normalerweise unkommentiert, und ohne Kommentare ist es für mich einfacher, sauberer zu lesen.

 
c0d3:

Vielen Dank, ich werde damit auf meinem Live-Konto-Tester experimentieren, anstatt auf dem Demo-Konto-Tester

Es gibt ein Programm namens WinMerge, http://winmerge.org/downloads/ Das wird Ihnen das Leben sehr erleichtern. Es ist kostenlos und macht das Zusammenführen von Code einfach. Nehmen Sie meine Datei und fügen Sie die Änderungen in die Änderungen von Diostar ein, dann posten Sie diese Datei mit einer Versionsnummer, damit es einfacher ist, die neueste Version zu verfolgen. Beginnen Sie vielleicht mit MTFzMA_v1.0, und erhöhen Sie die .0 jedes Mal um eins, wenn einer von uns eine Änderung vornimmt.
 
diostar:

Sicher, das sind einige der wichtigsten Änderungen während des obigen Tests:

1) Ihre vorherige Bedingung:

2) Wie Sie oben sehen: Alle MA, entF Signale wurden "arrangiert" und 'gebunden' durch

& durch die Gleichung, bei init:

und der Rest der Änderungen folgt: diese Art und Weise macht es einfacher für zukünftige Entwicklungen, insbesondere für Optimierungszwecke (nur Schritt durch tradingTimeFrame um 1)

Entschuldigung, wenn es keine Kommentare in meinen Codes gibt. Ich lese Codes normalerweise unkommentiert, und ohne Kommentare ist es für mich einfacher, sauberer zu lesen.


Wirklich sauberer Code, mit vielen Schleifen :)


Dankeschön
 
danjp:

Es gibt ein Programm namens WinMerge, http://winmerge.org/downloads/, das Ihnen das Leben sehr erleichtern wird. Es ist kostenlos und macht das Zusammenführen von Code einfach. Nehmen Sie myfile und fügen Sie die Änderungen in die Änderungen von Diostar ein, dann veröffentlichen Sie die Datei mit einer Versionsnummer, damit es einfacher ist, die neueste Version im Auge zu behalten. Beginnen Sie vielleicht mit MTFzMA_v1.0, und erhöhen Sie die .0 jedes Mal um eins, wenn einer von uns eine Änderung vornimmt.

wird tun
 

Hier sind einige der Ergebnisse (Vorwärts-Test), von 1:1 RR-Verhältnis, und es ist so weit zu verlieren!

  • Frage: Wenn ich die Auftragsarten umkehre (d. h. Kaufen ist jetzt Verkaufen), würde sich dann auch das Verhältnis von Gewinnen zu Verlusten umkehren?
  • Es gibt 7 Verluste und 4 Gewinne. Wenn ich die Auftragsarten umkehren würde, wären die Ergebnisse dann 7 Gewinne und 4 Verluste?
  • Ist meine Vermutung richtig?

Wenn das der Fall ist, dann denke ich, dass es eine gute Idee wäre, herauszufinden, wann man Aufträge umkehrt und wann man sie beibehält, nur so ein Gedanke...

Was denken Sie?

Stellungnahme: 7064834 - 3
Interbank FX, LLC

Konto: 7064834 Name: 3 Währung: USD 2011 Oktober 6, 20:45
Geschlossene Transaktionen:
TicketOffene ZeitTypGrößeArtikel PreisS / LT / PZeit schließen PreisKommissionSteuernTauschGewinn
1024655882011.10.04 16:12SaldoEinzahlung1 000.00
1024691902011.10.04 16:50verkaufen0.10eurusdm1.328561.343961.313162011.10.06 18:071.343960.000.00-0.27-15.40
90620112011.10.04 16:50:08[sl]
1024860502011.10.04 20:32verkaufen0.10audusdm0.953180.968860.937502011.10.06 07:350.968860.000.00-0.62-15.68
90620112011.10.04 20:32:48[sl]
1024861442011.10.04 20:33verkaufen0.10gbpusdm1.547191.559581.534802011.10.06 11:001.534800.000.00-0.2812.39
90620112011.10.04 20:33:37[tp]
1024862472011.10.04 20:34verkaufen0.10gbpjpym118.828120.182117.4942011.10.06 11:00117.4940.000.00-0.4917.40
90620112011.10.04 20:34:36[tp]
1024876952011.10.04 21:15kaufen0.10usdchfm0.916660.907080.926242011.10.06 07:000.926240.000.00-0.0710.34
90620112011.10.04 21:15:17[tp]
1024877232011.10.04 21:16kaufen0.10usdcadm1.052841.044261.060782011.10.05 17:041.044260.000.000.00-8.22
90620112011.10.04 21:16:53[sl]
1025641342011.10.06 11:00verkaufen0.10gbpusdm1.533371.540811.528612011.10.06 11:121.528610.000.000.004.76
90620112011.10.06 11:00:10[tp]
1025652822011.10.06 11:12verkaufen0.10gbpusdm1.528141.535071.521312011.10.06 14:221.535070.000.000.00-6.93
90620112011.10.06 11:12:51[sl]
1025692942011.10.06 12:30kaufen0.10usdjpym76.84776.69876.9942011.10.06 12:3076.8060.000.000.00-0.53
90620112011.10.06 12:30:01
1025692962011.10.06 12:30kaufen0.10usdjpym76.84776.69976.9952011.10.06 12:3076.8050.000.000.00-0.55
90620112011.10.06 12:30:02
1025692982011.10.06 12:30kaufen0.10usdjpym76.84776.69976.9952011.10.06 13:3376.6990.000.000.00-1.93
90620112011.10.06 12:30:02[sl]
0.00 0.00 -1.73 -4.35
Geschlossen P/L: -6.08
Offene Trades:
TicketOffene ZeitTypGrößeArtikel PreisS / LT / P PreisKommissionSteuernTauschGewinn
1025791662011.10.06 15:21kaufen0.10usdchfm0.923010.918380.927320.920920.000.000.00-2.27
90620112011.10.06 15:21:28
1025877442011.10.06 18:18verkaufen0.10gbpusdm1.543221.550521.535801.544310.000.000.00-1.09
90620112011.10.06 18:18:43
0.00 0.00 0.00 -3.36
Floating P/L: -3.36
Arbeitsaufträge:
TicketOffene ZeitTypGrößeArtikel PreisS / LT / PMarktpreis
Keine Transaktionen
Zusammenfassung:
Einzahlung/Abhebung: 1 000.00 Kreditfazilität: 0.00
Geschlossener Handel P/L: -6.08 Schwebende P/L: -3.36 Marge: 50.86
Saldo: 993.92 Eigenkapital: 990.56 Freie Marge: 939.70
Einzelheiten:

Bruttogewinn: 44.05 Brutto Verlust: 50.13 Total Reingewinn: -6.08
Gewinn-Faktor: 0.88 Erwartete Auszahlung: -0.55
Absoluter Drawdown: 14.25 Maximaler Drawdown: 25.61 (2.51%) Relativer Drawdown: 2.51% (25.61)
Gesamte Trades: 11 Short-Positionen (gewonnene %): 6 (50.00%) Long-Positionen (gewonnene %): 5 (20.00%)
Profit Trades (% der Gesamtsumme): 4 (36.36%) Verlust-Trades (% der Gesamtzahl): 7 (63.64%)
Größte Gewinn-Trade: 16.91 Verlust-Trade: -16.30
Durchschnittliche Gewinn-Handel: 11.01 Verlusthandel: -7.16
Maximal aufeinanderfolgende Gewinne ($): 3 (33.78) Fortlaufende Verluste ($): 5 (-25.61)
Maximale Gewinn in Folge (Anzahl): 33.78 (3) Konsekutiver Verlust (Anzahl): -25.61 (5)
Durchschnitt Aufeinanderfolgende Gewinne: 2 aufeinanderfolgende Verluste: 2
 
c0d3:

Hier sind einige der Ergebnisse (Vorwärts-Test), von 1:1 RR-Verhältnis, und es ist so weit zu verlieren!

  • Frage: Wenn ich die Auftragsarten umkehre (d. h. Kaufen ist jetzt Verkaufen), würde sich dann auch das Verhältnis von Gewinnen zu Verlusten umkehren?

Guter Gott, Sie haben es erwähnt.

Denn das habe ich neulich auch festgestellt. Es hat sich verbessert, wenn auch nicht auf ein glorreiches Niveau, aber diese Verbesserung, im ingenieurtechnischen Sinne, war ein höchst signifikantes Maß an Änderungsrate. Einfach zu signifikant, um unbehandelt, "unentdeckt" zu bleiben.

Deshalb habe ich hier einen neuen Thread eröffnet: Was haltet ihr von diesem "Evil Grail"-Ansatz für EAs? und frage nach den Methoden anderer für ihre eigenen EA-Ansätze.

Die Methodik, die wir hier anwenden, ähnelt dem Reverse Engineering, zu Ihrer Information. Allerdings ist die Form etwas anders:

Die beste Lösung in möglichst kurzer Zeit zu finden. Während in der gleichen (sehr kurzen) Zeit, 5-10 Minuten höchstens, Test pro Einheit Logik, so dass die Logik eine bestimmte sein KANN, sagen wir. 99% gut oder 99% schlecht, ist so gut wie sicher.

Versuchen Sie es. Sie könnten eine Überraschung erleben, so wie ich es getan habe. Es ist eine ziemlich "unorthodoxe" Art und Weise zu tun - ein böser Gral, der "hofft", sich in einen heiligen Gral zu verwandeln, es klingt nach einer Art von Reue, wie ein neues Blatt zu wenden. Nichtsdestotrotz ist es eine Möglichkeit.

 
diostar:

Guter Gott, Sie haben es erwähnt.

Denn das habe ich neulich auch festgestellt. Es hat sich zwar verbessert, wenn auch nicht auf ein glorreiches Niveau, aber diese Verbesserung war, im ingenieurtechnischen Sinne, eine höchst signifikante Änderungsrate. Einfach zu signifikant, um unbehandelt, "unentdeckt" zu bleiben.

Deshalb habe ich hier einen neuen Thread eröffnet: Was haltet ihr von diesem "Evil Grail"-Ansatz für EAs? und frage nach den Methoden anderer für ihre eigenen EA-Ansätze.

Die Methodik, die wir hier anwenden, ähnelt dem Reverse Engineering. Allerdings ist die Form etwas anders:

Die beste Lösung in möglichst kurzer Zeit zu finden. Während in der gleichen (sehr kurzen) Zeit, 5-10 Minuten höchstens, Test pro Einheit Logik, so dass die Logik eine bestimmte sein KANN, sagen wir. 99% gut oder 99% schlecht, ist so gut wie sicher.

Versuchen Sie es. Sie könnten eine Überraschung erleben, so wie ich es getan habe. Es ist eine ziemlich "unorthodoxe" Art und Weise zu tun - ein böser Gral, der "hofft", sich in einen heiligen Gral zu verwandeln, es klingt nach einer Art von Reue, wie ein neues Blatt zu wenden. Nichtsdestotrotz ist es eine Möglichkeit.

Ich habe diese Methode schon einmal ausprobiert, und jedes Mal, wenn ich die Auftragstypen umkehrte, schlug das System fehl, LOL?? Ich habe das starke Gefühl, wenn ich dieses System ändere und einen Test durchführe, werde ich genau die gleichen Ergebnisse erhalten.

Aber ich werde es trotzdem versuchen!

 
c0d3:

Ich habe diese Methode schon einmal ausprobiert, und jedes Mal, wenn ich die Auftragsarten umkehrte, schlug das System fehl, LOL? Ich habe das starke Gefühl, wenn ich dieses System ändere und einen Test durchführe, werde ich genau die gleichen Ergebnisse erhalten.

Nichtsdestotrotz werde ich es versuchen!

Nein, das ist es in diesem Stadium nicht wirklich. Es KANN eine Zeitverschwendung sein, von Kaufen auf Verkaufen zu testen und umgekehrt, auch wenn es zu Veränderungen geführt hat. Wenn ich sage, das ist es, was ich meinte:

Die beste Lösung in möglichst kurzer Zeit zu finden. Während in der gleichen (sehr kurzen) Zeit, 5-10 Minuten höchstens, Test pro Einheit Logik, so dass die Logik eine bestimmte sein KANN, sagen wir. 99% gut oder 99% schlecht, ist so gut wie bestätigt.

1) Sie nehmen einfach 1 Master-Logik, sagen wir z.B.:

if(Close[0]<fastMA[tradingTimeFrame-1])shortEntry()

und entfernen Sie alle anderen, und Sie tun dies:

if(Close[0]<fastMA[tradingTimeFrame-1]){shortEntry();longEntry();}

Das ist pro Einheit Logik - Prüfung BEIDE kaufen und verkaufen, zur GLEICHEN Zeit. Wenn Sie also eine Optimierung mit dieser 1-Master-Logik durchführen möchten, optimieren Sie einfach nur Ihre grundlegenden Parameter - sl, tp, lots, etc. Dann analysieren Sie die Instanzen ihrer Käufe und Verkäufe, beurteilen, ob diese 1 Logik den Schnitt machen kann, in beiden Szenarien - ob es eine falsche oder richtige Einträge macht. Beides. Dann gehen Sie weiter zur nächsten Logik.

Im Laufe der Zeit können Sie auch Kombinationen ausprobieren... die erste Logik nur kaufen, Logik 2 nur verkaufen oder beides usw. Ich finde, dass dieser Weg strukturierter ist und Sie wirklich sehen können, welche Logik den Drawdown wirklich verursacht.

Grund der Beschwerde: