Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   Klappt das so? (http://www.expert-advisor.com/forum/showthread.php?t=5485)

traderdoc 18.02.17 09:58

Das Ergebnis TimeDay(TimeCurrent()) wird sich nur ändern, wenn tatsächlich eine neuer Tag angebrochen ist. Die Werte von Tag liegen zwischen 1 und 31.
Bei DayOfWeek() liegen sie zwischen 0 und 6, je nach Wochentag.

traderdoc

TTFM2016 18.02.17 13:45

Alles klar, habs noch geändert und läuft. Im Moment mit TP 10 und SL 5, ab durchbruch der Eröffnungsrange. Mit Profitfaktor 2.8 von Ende 2015 bis Anfang 2017. Bei dem Test liefen aber Sell Positionen. Mit Buy Positionen wird der Gewinn natürlich nochmal schöner, aber das Diagramm geht mitte 2016 auch mal ordentlich nach unten.. Hoffe, dass ich den Test noch mit älteren Daten zum Laufen bekomme, hat bisher nicht geklappt..

Nächste Challenge wird der Trailingstop :D

TTFM2016 18.02.17 17:39

Hey, habe den Trailingstop jetzt zum Laufen gebracht.

Bekomme keine Fehler, aber diese Warnungen:

return value of "OrderModify" should be checked

Was bedeutet das?

Außerdem steht im Journal hin und wieder der Fehler "OrderModify error 130".

Ich benutze im OrderModify legiglich den Stoploss über den programmierten Trailingstop. An der Stelle für den Takeprofit habe ich lediglich OrderTakeProfit() hingeschrieben, was aber keine Werte enthält.. Ist das das Problem?

traderdoc 18.02.17 18:07

bool res = OrderModify(...);

130 - Invalid StopLoss

Den Fehler zu finden, ginge nur, wenn man den Code dazu sieht.

traderdoc

TTFM2016 18.02.17 18:24

***Code wurde wegen versehentlichem postens entfernt ***

Hier ist der Code. Hälst du Ihn für "sicher"? Ich hab die Befürchtung, dass ich aus irgendeinem Grund, der mir nicht bewusst ist auf einmal 5000 Euro weniger aufm Konto habe.. Ich hab z.B. nirgendwo "return" stehen und weiß auch nicht genau wofür das gut ist.. Und evtl. gibts da noch weitere Kleinigkeiten, die ich vergessen habe?

TTFM2016 19.02.17 13:00

Der Fehler 130 ist jetzt weg. Evtl lags am Broker? Bei XM zeigte er mir noch den Fehler an, jetzt bei FXPro nicht mehr..
Kann ich die Zeile sonst so lassen, wenns keine Fehler mehr gibt? Also ich meine speziell den Teil wo der TakeProfit reingehört, weil der ja nicht zugewiesen ist im Code, weil ich ja nur mit dem Trailingstop in dem Stoploss Teil arbeite..

res = OrderModify(OrderTicket(),OrderOpenPrice(),Bid-TrailingStopAbstand,OrderTakeProfit(),0,Blue);

Wäre super, wenn du nochmal grob über den Code guckst, und mir bezüglich möglicher fehlender Grundeinstellungen, bzw. Codes die wichtig für einen reibungslosen Ablauf sind, nochmal einen Hinweis gibst.

Durch deinen Code von Seite eins bin ich leider noch nicht komplett durchgestiegen und um alles noch so umzuschreiben, reicht mein Wissenstand noch nicht aus. Hab mir halt das rausgezogen, womit ich was anfangen kann und nicht noch nen Monat Informationen für einholen müsste.. Hoffe das ist OK..

Bin dir aber schon jetzt sehr dankbar und happy, dass ich jetzt den EA soweit habe.. Die Performance ist sicherlich auch nicht die schlechteste, zumindest bin ich ganz zufrieden, was der Strategietester so auswirft..

traderdoc 19.02.17 13:15

Das OrderTakeProfit () kann da so drin bleiben. Wenn man keinen TakeProfit gesetzt hat, dann könnte da auch eine stehen.

Ansonsten ist es am Besten, wenn Du den EA in allen Variablensituationen testest und den Verlauf mit dem programmierten Handelssytem abgleichst. Gibt es Differenzen, dann muss der Code nachbearbeitet werden, gibt es keine, dann ist die Umsetzung in Code optimal gelungen.

traderdoc

TTFM2016 19.02.17 14:27

Habe noch eine variable Lotanpassung einprogrammiert. Bei der 0 am Ende bin ich mir nicht sicher. Hab den Code ausm Internet. Vorher stand da ne 2. Dann wurden die Lots aber mit Nachkommastelle ausgegeben und so kamen dann beim Dax keine Orders zustande. Jetzt passt vom Ablauf alles. Die Begrenzung bei 100 Lots, weil das die Maximale Lotgröße vom Broker ist.. Stimmt das alles so? Es soll z.B. nur 1% vom Kapital riskiert werden, wenn der Stoploss angelaufen wird..

//TradeLots berechnen
double TradeLots=NormalizeDouble(( AccountFreeMargin()*RiskinPercent/100/ErsterStopLoss),0);

if(TradeLots >100)
{
TradeLots=100;
}

Achso und noch ne Frage zu der Lotgröße. Habe mal ein Video von Birger Schäfermeier gesehen, wo er den Dax Future tradet. Als der Kurs das Kursziel erreicht hat, dauerte es noch fast ne halbe Minute, bis alle Kontrakte verkauft waren, weil er so eine große Kontraktgröße hatte und der Markt nicht so Volatil war..

Kann das bei 100 Lots im Dax CFD während der Eröffnung auch passieren oder sind das noch "kleine Fische", wo sofort ein Gegenpart gefunden wird?


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:10 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum