Berechnung der Positionsgröße
31 Antworten
ssdex
vor 8 Jahren #113883
Hallo,
Ich versuche herauszufinden, wie ich eine Variable zur Berechnung der Positionsgröße erstellen kann.
Beispiel:
Erstellen Sie eine Variable für die Risikogröße
Ordnen Sie diese Variable der Menge für den Handel zu
Das Problem, das ich habe, ist der SL auf den Handel berechnet wird, nicht eine harte Zahl festgelegt. Also, der SL wird vom Eröffnungskurs bis zum Swing-Hoch oder Tief berechnet, je nach Richtung des Handels.
Gibt es eine Möglichkeit, eine Variable zu erstellen, die die Positionsgröße berechnet, bevor der Handel eröffnet wird? Das scheint nicht möglich zu sein.
ssdex
vor 8 Jahren #132495
Hallo,
Ich versuche, einen Multiplikator als "Variable" für meine Handelsgröße zu verwenden. Weiß jemand, ob der Multiplikator ein "Double" sein muss oder ein "Integer" sein kann/soll? Was wäre der Unterschied, wenn ich ein Double statt einer Integer verwenden würde?
Danke.
Herzliche Grüße,
James
seaton
vor 8 Jahren #132496
Mit der doppelten Menge erhalten Sie mehr Feinkörnigkeit, z. B. 1,25 oder 1,75 im Gegensatz zu nur 1 oder 2.
Ich würde in diesem Fall das Doppelte nehmen
ssdex
vor 8 Jahren #132497
Danke, Seaton,
Ich frage mich, ob Sie mir eine weitere Frage beantworten können. Ich berechne Pip Value und ich sehe keine Möglichkeit, das mit Cross-Raten zu tun. Da das Konto in USD ist und die Berechnung der Pip Value mit sagen wir der EURGBP ist, müsste dann auf den aktuellen Kurs des USD aufrufen, um die richtige Losgröße für den Handel zu erhalten. Sehe ich das richtig? Wenn ja, wissen Sie, wie man das machen kann?
Nochmals vielen Dank für Ihre Hilfe.
Herzliche Grüße,
James
seaton
vor 8 Jahren #132498
Ich habe dies nicht mit EA Wizard getan, aber hier ein Code-Snippet für MT4, MarketInfo sollte Werte in Einzahlungswährung zurückgeben werden
double PipValue=(((MarketInfo(Symbol(),MODE_TICKVALUE)*point)/MarketInfo(Symbol(),MODE_TICKSIZE))*LotSize); double PointValue=PipValue/10;
ssdex
vor 8 Jahren #132521
Nochmals vielen Dank, Seaton. Das wird eine große Hilfe sein (wenn ich herausfinde, wie man es benutzt). LOL
Herzliche Grüße,
James
ssdex
vor 8 Jahren #132876
Nochmals vielen Dank, seaton,
Ich frage mich, ob Sie die obige Formel näher erläutern können. Könnte ich diese Berechnung für die Berechnung von direkten, indirekten und Kreuzkurspaaren verwenden?
Oder gilt dies nur für Cross Rate Paare?
Danke.
Herzliche Grüße,
James
ssdex
vor 8 Jahren #133025
Ich habe dies nicht mit EA Wizard getan, aber hier ein Code-Snippet für MT4, MarketInfo sollte Werte in Einzahlungswährung zurückgeben werden
double PipValue=(((MarketInfo(Symbol(),MODE_TICKVALUE)*point)/MarketInfo(Symbol(),MODE_TICKSIZE))*LotSize); double PointValue=PipValue/10;Ich habe gerade einen kurzen Blick auf den EA-Assistenten geworfen, und einige der Funktionen sind nicht implementiert, daher ist es am besten, wenn Sie die obigen Angaben kopieren und in eine eigene Funktion einfügen.
Hallo seaton,
Ich hoffe, Sie hatten ein schönes Wochenende. Ich versuche herauszufinden, wie ich den obigen Code verwenden kann, um den PipValue für die verschiedenen Tarife zu erhalten. Ich erhalte ein paar Fehler im MetaEditor (siehe beigefügtes Bild).
Ich bin mir nicht sicher, ob ich dafür eine Variable anlegen muss oder nicht. Oder vielleicht verwende ich sie nicht richtig.
Jede Hilfe wäre sehr willkommen. Vielen Dank für Ihre Zeit und Ihr Fachwissen.
Herzliche Grüße,
James
PS: Ich habe vergessen, den Screenshot hochzuladen.
seaton
vor 8 Jahren #133044
Hallo, entschuldigen Sie meine späte Antwort, ich bin zur Zeit verreist und werde es mir nächste Woche ansehen, wenn ich wieder zu Hause bin.
tomas262
vor 8 Jahren #133058
ssdex, weiß der Compiler nicht, was 'LotSize' und 'Point' bedeuten, Sie müssen diese Variablen am Anfang Ihres Skripts deklarieren. Hier ist ein Beispiel, wie man eine Variable definiert http://docs.mql4.com/basis/variables
ssdex
vor 8 Jahren #133067
Danke Tomas262
Ich habe die Variable deklariert, aber ich bin mir nicht sicher, ob ich die Variable auf =0 oder auf etwas anderes setzen muss. Ich werde weiter herumprobieren und sehen, was ich herausfinden kann. Nochmals vielen Dank.
Herzliche Grüße,
James
ssdex
vor 8 Jahren #134129
Hallo seaton,
Nochmals vielen Dank für den obigen Codeschnipsel. Ich habe eine Menge von diesem Forum und Sie Jungs, die uns alle aus helfen gelernt.
Ich habe eine Variable (PipValue), die ich nur noch der CustomFunction (PipValue) zuweisen muss? Siehe Bildschirmfoto.
Wenn:
CrossRate ist wahr
Dann:
AssignVariable: CustomFunction: PipValue=PipValue
Nochmals vielen Dank für alles, was Sie hier in diesem Forum tun.
Herzliche Grüße,
James
ssdex
vor 7 Jahren #139442
Hallo,
Nun, ich bin zurück zu versuchen, herauszufinden, einige Positionsgröße Berechnung. Ich habe die EA auf MM riskieren einen festen Prozentsatz (variabel) eingestellt. Wie ich verstehe, wenn der Prozentsatz auf 0 (Null) eingestellt ist, wird es standardmäßig auf (LotsIfNoMM). Ich bin auf der Suche nach einem Satz $dollar Betrag für das Risiko haben, wenn der Prozentsatz Option auf Null gesetzt ist.
Ich habe ein paar Variablen erstellt:
stop_in_pips
Lose_zum-Handel
Ich glaube, ich habe die Berechnungen richtig, aber es scheint, dass unabhängig von der eingegebenen $dollar-Größe immer eine Losgröße von .01 zurückgegeben wird.
Wenn mir jemand sagen kann, was ich falsch gemacht habe, wäre ich sehr dankbar.
Herzliche Grüße,
James
tomas262
vor 7 Jahren #139450
Hallo,
Ich sehe da kein Problem. Können Sie Ihr Projekt hochladen? Sie können alle Handelsbedingungen löschen, um Ihr System nicht zu offenbaren.
Sie können auch die Funktion "Log to Journal" verwenden, um Variablenwerte in das MT Journal zu schreiben, damit Sie deren Werte sehen, wenn das System läuft.
ssdex
vor 7 Jahren #139453
Danke Tomas,
Es ist nur eine Teststrategie. Ich habe beigefügt, was ich bis jetzt habe. Ich versuche, diese Geldsache herauszufinden. Ich dachte, ich hätte es, aber es scheint, dass irgendwo etwas falsch ist. Ich habe ein paar Logs ins Journal geschrieben und es hat nichts aufgezeichnet. Ich könnte mich auch geirrt haben. LOL
Lassen Sie mich wissen, was Ihrer Meinung nach das Problem ist. Ich danke Ihnen für Ihre Zeit. Ich habe eine Frage zur SQ. Können wir eine Strategie laden, die wir im EA Wizard erstellt haben, und sie in der SQ-Software erneut testen und optimieren lassen?
Nochmals vielen Dank.
Herzliche Grüße,
James
tomas262
vor 7 Jahren #139457
Hallo,
Sie sollten "vordefinierte MM" nicht verwenden, wenn Sie Ihre Größe manuell berechnen. Vordefiniert bedeutet, dass das Programm seine eigenen Regeln zur Berechnung der Größe befolgt.
Vergewissern Sie sich auch, dass Ihr Broker Mikro-Lots unterstützt, sonst müssen Sie MathRound(lots_to_trade, 1) verwenden.
Ja, das neue SQ4 wird einen Assistenten enthalten, so dass Sie Ihre eigenen Regeln verwenden, testen und optimieren können.