Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4535
Beiträge: 41300
Benutzer: 6.930
Aktive Benutzer: 234
Links: 80
Wir begrüßen unseren neuesten Benutzer: Fusselliene
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- Fussellien...
vor einem Tag
- ZHannes82
vor einem Tag
- LigthofGod
vor 2 Tagen
- mellower
vor 5 Tagen
- medallion

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 95
Gesamt: 96
Team: 0
Team:  
Benutzer:  Domke01
Freunde anzeigen

Empfehlungen

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 15.05.20
LQK LQK ist offline
Mitglied
 
Registriert seit: Nov 2019
Beiträge: 76
LQK befindet sich auf einem aufstrebenden Ast
Standard Frage zum Parameter SLIPPAGE bei der Methode OrderSend()

Hallo,

ich habe eine Frage zur Methode OrderSend(), bzw. zu einem der Parameter der der Methode OrderSend() beim Methodenaufruf übergeben wird.

Als Parameter (an vierter Stelle) wird bei der Methode OrderSend() eine integer-Variable SLIPPAGE übergeben.

Hier die Dokumentation der Methode OrderSend():

https://docs.mql4.com/trading/ordersend

Es ist mir bislang nicht klar, was der Parameter SLIPPAGE macht. Die Slippage ergibt sich ja aus kurzfristigen Kursschwankungen. Da der Anwender die Slippage nicht "festlegen" oder "bestimmen" kann verstehe ich nicht, was mit dem Parameter SLIPPAGE da übergeben werden soll?

Allenfalls könnte der Anwender ja festlegen, welche Slippage, d.h. welche Abweichung vom Kurs, er maximal bereit ist zu akzeptieren. Ist das so? Der der Methode OrderSend() als Wert für den Parameter SLIPPAGE übergebene Wert legt fest, welche Slippage der Anwender maximal bereit ist zu akzeptieren?

Und in welcher Einheit wird der Wert für SLIPPAGE angegeben? In Pips? Oder in Ticks?

Hier ein kleines Beispiel, den ich im Code eines nachweislich funktionierenden EA (nicht von mir erstellt) gefunden habe:

Code:
order_id = OrderSend(Symbol(),OP_SELL,l_lots,Bid,5,l_sl,l_tp,"short start",MAGICMA,0,Blue);
Als Wert für Slippage (bei den Parametern an fünfter Stelle) wird hier eine "5" angegeben. Demnach ist der Programmierer dieses EA bereit, eine Slippage von max. fünf (Pips? Ticks?) zu akzeptieren?

Ich bedanke mich für jeden konstruktiven Hinweis!

Besten Dank und Grüße
LQK
Mit Zitat antworten
  #2 (permalink)  
Alt 15.05.20
Mitglied
 
Registriert seit: Feb 2016
Beiträge: 205
RetepM befindet sich auf einem aufstrebenden Ast
Standard

Bevor Du mit deinem vollautomatischen EA weitermachst, solltest Du Dich unbedingt mit den Grundlagen des Tradings beschäftigen.

Ich denke, es macht keinen Sinn bei der Programmierung eines EAs darüber diskutieren zu wollen, wie SL, TP, Slippage funktionieren. Benutze um solche Fragen zu klären, Forex-Einsteiger-Manuals. Ach ja, das ist konstruktiv gemeint :-)
Diese Links helfen Dir bei Deinen Fragen vielleicht weiter:
https://admiralmarkets.de/wissen/art...s-ist-slippage
https://broker-bewertungen.de/forex-...trailing-stops

Und wenn Du dann die Grundlagen des Tradings verinnerlicht hast, beschäftige Dich mit der Programmierung eines vollautomatischen EAs. Viel Erfolg!
Mit Zitat antworten
  #3 (permalink)  
Alt 18.05.20
LQK LQK ist offline
Mitglied
 
Registriert seit: Nov 2019
Beiträge: 76
LQK befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von RetepM Beitrag anzeigen
Bevor Du mit deinem vollautomatischen EA weitermachst, solltest Du Dich unbedingt mit den Grundlagen des Tradings beschäftigen.
Ich habe bereits einige Monate ein Forex-Konto getradet (manuell) und ich glaube, dass ich die Grundlagen des Tradings kenne.

Der jetzt von mir zu programmierende EA soll CFD traden, nicht Forex.


Zitat:
Ich denke, es macht keinen Sinn bei der Programmierung eines EAs darüber diskutieren zu wollen, wie SL, TP, Slippage funktionieren.
Weiß nicht, wie Du auf SL und TP kommst, davon habe ich nichts in meinem EP erwähnt. Ich weiß, was SL und TP sind und wie diese funktionieren.

Ich weiß auch was eine Slippage ist und was diese macht (siehe auch meine kurze Erläuterung von Slippage im EP).

Meine Frage ist eine technische Frage zur Umsetzung einer bestimmten Funktion in MQL, eben OrderSend() bzw. zu einem Parameter dieser Funktion (eben SLIPPAGE). Ich glaube schon, dass es in dem Zusammenhang Sinn macht über die programiertechnische Umsetzung und über die Wirkung und Besonderheiten der Funktion OrderSend() und speziell des Parameters Slippage zu diskutieren, und nicht Bücher über "Grundlagen des Trading" zu lesen.



Zitat:
Benutze um solche Fragen zu klären, Forex-Einsteiger-Manuals. Ach ja, das ist konstruktiv gemeint :-)
Vielleicht ist es konstruktiv gemeint (vielleicht aber doch nur geschickt kaschierte Ironie), jedenfalls ist es (bislang) nicht konstruktiv!

Sollte Dir doch noch was Konstruktives einfallen, habe ich nach wie vor Interesse daran, das zu lesen.

Der erste Link wird von Google als erster Treffer angezeigt, wenn man "Slippage" als Such-String eingibt. Im ersten Link wird noch mal relativ ausführlich erklärt, was eine Slippage ist. Das gleiche habe ich in kurzer Form bereits im EP beschrieben.

Der zweite Link ist OT, es wird dort erklärt was SL und TP ist, ich wüsste nicht, was SL und TP mit mener Frage zu tun haben.

Bin mir nicht sicher, ob Du die beiden von Dir angegebenen Links gelesen hast.




---

Ich habe jetzt nochmals selbst recherchiert und doch noch was gefunden. Interessant sind diese beiden Threads:

Hier hat sich jemand genau dieselbe Frage gestellt wie ich:

https://www.mql5.com/en/forum/31987


Und dieser Thread befasst sich randständig ebenfalls mit dem Thema:

https://www.mql5.com/en/forum/150990/page2


Ganz so trivial wie Du es nahelegst, ist meine Frage offenbar nicht. Jedenfalls wurde im ersten von mir verlinkten Thread heftig diskutiert, und dass teilweise von Usern die offenbar sehr viel Trading-Erfahrung haben.


Es ist offenbar so, wie ich vermutet habe: Der Parameterwert der für Slippage bei OrderSend() übergeben wird, gibt offenbar eine Obergrenze an, wieviel Slippage der Anwender bereit ist maximal zu akzeptieren.

Je nachdem welche Art von Orderausführung der Broker überhaupt anbietet, kann der für Slippage übergebene Wert eine Rolle spielen, oder er spielt keine Rolle, d.h. es ist so, als wäre der Wert gar nicht übergeben worden und der Wert wird vom Broker ignoriert. In den meisten Fällen, ist offenbar letzteres der Fall, d.h. der als Wert für den Parameter Slippage übergebene Wert spielt für den Trade gar keine Rolle.

Eine Sache ist mir aber immer noch unklar:


Für die Fälle wo der Slippage-Wert doch eine Rolle spielt, wie ist da die Einheit des übergebenen Werts wenn CFD gehandelt werden? Bei Forex sind es anscheinend Pips, aber Pips sind ja bei CFD nicht unbedingt eine gebräuchliche Einheit.

Würde mich freuen, wenn wir das noch aufklären könnten!

Besten Dank für jede konstruktive Antwort!

Grüße,
LQK

Geändert von LQK (18.05.20 um 17:46 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 19.05.20
Mitglied
 
Registriert seit: Jun 2013
Beiträge: 295
Ca$hDigger befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von LQK Beitrag anzeigen
Es ist offenbar so, wie ich vermutet habe: Der Parameterwert der für Slippage bei OrderSend() übergeben wird, gibt offenbar eine Obergrenze an, wieviel Slippage der Anwender bereit ist maximal zu akzeptieren.
Genau so ist es.
Man sendet eine Order immer mit einem "Price" aber die Ausführung der Order kann von diesem "Price" abweichen. Mit dem Parameter "slippage" (der Name ist etwas unglücklich besser wäre max_slippage bzw max_deviation) definiert man bis zu welcher Abweichung eine Orderausführung erlaubt ist. Wird der Wert überschritten wird die Order nicht ausgeführt.
Die korrekte Wahl dieses Wertes ist eine Glaubensfrage. Wenn man einem Broker unterstellt, er macht eine bewusste Abweichung zu ungunsten der Positionsrichtung um sich die Taschen noch weiter zu füllen, dann sollte man den Wert so klein wie möglich halten. Das Risiko, dass dann überhaupt keine Order ausgeführt wird ist dann größer. Ist der Wert zu klein kann auch es in volatilen Zeiten dazu kommen, dass die Orders nicht ausgeführt werden, auch ein seröser Broker kann nicht immer in diesem Rahmen ausführen. Ist der Wert wiederum groß, dann wird die Order fast immer ausgeführt, dies lässt aber dem Broker das Potential das auszunutzen. Ob es wichtig oder unwichtig ist wie nah die Order am gesendeten "Price" ausgeführt wird, hängt am Ende auch von der Strategie ab.

In mql5 wird der Wert in der Einheit "Point" angegeben ich könnte mir vorstellen das ist bei mql4 nicht anders.
Mit Zitat antworten
  #5 (permalink)  
Alt 21.05.20
LQK LQK ist offline
Mitglied
 
Registriert seit: Nov 2019
Beiträge: 76
LQK befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Ca$hDigger Beitrag anzeigen
Genau so ist es.

(....)

Besten Dank, für die Bestätigung! Das hilft mir schon mal weiter


Zitat:
In mql5 wird der Wert in der Einheit "Point" angegeben ich könnte mir vorstellen das ist bei mql4 nicht anders.
Besten Dank für den Hinweis. In den von mir verlinkten beiden Threads werden an einer Stelle "Pips" oder "Points" als mögliche Einheit angegeben.

Pips ist ja eigentlich eher im Bereich Forex gebräuchlich, daher dachte ich, dass die Einheit bei CFD bestimmt anders ist.

Habe daher gerade noch mal versucht rauszufinden, wie die Einheit "Point", also Punkt, bei CFD definiert ist. Retep würde mir jetzt vielleicht wieder empfehlen, mich mit den Grundlagen des Tradings zu befassen, anstelle programmieren zu wollen. Nun ja, um ehrlich zu sein, sehe ich auch hier nicht die Lösung darin, Grundlagenbücher zu lesen. Es gibt ja so viele Einheiten (Lots, Pips, Punkte und anderes) und je nach Assetklasse und Broker, und manchmal sogar innerhalb einer Assetklasse, sind die Einheiten unterschiedlich definiert. Habe das schon oft nachgeschlagen, meistens vergesse ich die Definition gleich danach auch wieder . Vermutlich auch deshalb, weil es keine einheitlichen Definitionen gibt und weil die die es gibt, so wilkürlich sind.

Habe gerade eine Quelle gefunden die behauptet, ein Punkt wären bei CFD 25 EUR:

https://qtrade.de/tradingblog/erklaerung-cfd-trading/

Ob ein x-beliebiger Trading-Blog eine seriöse Quelle ist, liegt im Auge des Betrachters. Mag sein, dass es auch nicht bei allen Brokern gleich ist. Werde daher noch mal versuchen, eine Bestätigung von meinem Broker zu erhalten (in dem Fall JFD).
Mit Zitat antworten
  #6 (permalink)  
Alt 21.05.20
LQK LQK ist offline
Mitglied
 
Registriert seit: Nov 2019
Beiträge: 76
LQK befindet sich auf einem aufstrebenden Ast
Post

Zitat:
Zitat von LQK Beitrag anzeigen

Ob ein x-beliebiger Trading-Blog eine seriöse Quelle ist, liegt im Auge des Betrachters. Mag sein, dass es auch nicht bei allen Brokern gleich ist. Werde daher noch mal versuchen, eine Bestätigung von meinem Broker zu erhalten (in dem Fall JFD).
Da ich auf der Webseite von JFD nichts gefunden habe, habe ich bei der Hotline von JFD angerufen (hat dankenswerterweise Sonntags geöffnet).

Laut der Aussage der Hotline entspricht beim CFD .DE30Cash ein Punkt einem Euro. Somit wäre das also auch geklärt.

Bizarr: Laut Aussage der Hotline ist diese Info nicht auf der Webseite zu finden, und man kann sie auch sonst nirgendwo nachlesen.
Mit Zitat antworten
  #7 (permalink)  
Alt 21.05.20
Mitglied
 
Registriert seit: Jun 2013
Beiträge: 295
Ca$hDigger befindet sich auf einem aufstrebenden Ast
Standard

Bei dem Thema steht im Netz leider viel geschrieben was überhaupt nicht hilft für den automatisierten Handel. CFD DE30 kann auch ein Point-value von 0.01 haben (pro Lot). Man sollte nur die Angaben glauben und nutzen die der entsprechende Broker liefert denn dort handelt man.
Hol dir die Werte daher immer über mql vom Broker, nur dann sind die Werte auch für Lotsizeberechnungen, benötigte Margin etc nutzbar.

Pip ist für mich eine völlig sinnlose Einheit die, wie man immer wieder sieht, nur Verwirrung stiftet und keinen Nutzen für irgendwas erfüllt.
Vielleicht wurde die Einheit Pip erfunden um verwirrende Bloginhalte zu füllen, ich kenne keinen Anwendungsfall wo Pips für den automatisierten Handel nützlich wäre
Mit Zitat antworten
  #8 (permalink)  
Alt 30.05.20
LQK LQK ist offline
Mitglied
 
Registriert seit: Nov 2019
Beiträge: 76
LQK befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Ca$hDigger Beitrag anzeigen
Bei dem Thema steht im Netz leider viel geschrieben was überhaupt nicht hilft für den automatisierten Handel. CFD DE30 kann auch ein Point-value von 0.01 haben (pro Lot). Man sollte nur die Angaben glauben und nutzen die der entsprechende Broker liefert denn dort handelt man.
Danke für diese Einschätzung. Ich werde das ganz genau so machen.


Zitat:
Hol dir die Werte daher immer über mql vom Broker, nur dann sind die Werte auch für Lotsizeberechnungen, benötigte Margin etc nutzbar.
Was meinst Du in dem Fall mit "holen"?


Zitat:
Pip ist für mich eine völlig sinnlose Einheit die, wie man immer wieder sieht, nur Verwirrung stiftet und keinen Nutzen für irgendwas erfüllt.
Vielleicht wurde die Einheit Pip erfunden um verwirrende Bloginhalte zu füllen, ich kenne keinen Anwendungsfall wo Pips für den automatisierten Handel nützlich wäre
Das war im Grunde auch mein Eindruck. Hätte mich nur nicht getraut, das so explizit zu sagen, sonst hieße es wieder, ich hätte keine Ahnung und solle Grundlagenbücher lesen. Schön, jetzt die Bestätigung aus "berufenem" Mund zu erhalten, dadurch habe ich jetzt die Bestätigung, dass ich mit meiner Einschätzung im Großen und Ganzen richtig lag. Das ist hilfreich für mich.
Mit Zitat antworten
  #9 (permalink)  
Alt 30.05.20
Mitglied
 
Registriert seit: Jun 2013
Beiträge: 295
Ca$hDigger befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von LQK Beitrag anzeigen
Was meinst Du in dem Fall mit "holen"?
Über den EA also MQL die Werte holen, in der Regel bekommt man darüber alles relevante für den EA. Was zB aber nicht geht ist die Kommission(halfturn/roundturn) sofern man so ein Konto tradet, muss man dann eben manuell in den code packen.
Mit Zitat antworten
  #10 (permalink)  
Alt 01.06.20
LQK LQK ist offline
Mitglied
 
Registriert seit: Nov 2019
Beiträge: 76
LQK befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Ca$hDigger Beitrag anzeigen
Über den EA also MQL die Werte holen, in der Regel bekommt man darüber alles relevante für den EA.
Okay. Welche Funktion(en) würdest Du für diesen Zweck empfehlen bzw. kommen grundsätzlich dafür in Frage?
Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 22:09 Uhr.





Die Suchmaschine - Der Wavesnode - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2020 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2020 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------