t/p funktioniert nicht richtig - Seite 2

 
krishna_gopal_2:
Nun gut. Nun, was sollte ich tun, um mehr oder weniger 100pips zu bekommen. Gibt es eine Formel zur Berechnung des Spreads?
Ask - Bid ist der Spread.
 
krishna_gopal_2:
Nun gut. Nun, was sollte ich tun, um mehr oder weniger 100pips zu bekommen. Gibt es eine Formel zur Berechnung des Spreads?
Wenn Sie Ihren TP richtig eingestellt haben, erhalten Sie 100 Pips (mehr oder weniger, da Ticks emuliert werden) für Ihren erfolgreichen Handel im Strategy Tester.
  • Wenn Sie einen SELL zum Preis X (Bid) eröffnen, dann setzen Sie Ihren TP auf BID-Preis - 100 Pips.
  • Wenn Sie einen BUY zum Preis Y (Ask) eröffnen, dann setzen Sie Ihren TP auf ASK + 100 Pips.

Zu Ihrem ersten Beitrag:

  • entweder setzen Sie keinen TP von 100 Pips
  • oder die von Ihnen veröffentlichten Trades sind nicht gewinnbringend
  • oder Sie haben Ihren Gewinn (Pips) falsch berechnet.
  • oder Ihre Trades sind nicht mit TP geschlossen.
 
<br / translate="no">
  • Wenn Sie einen SELL zum Preis X (Bid) eröffnen, dann setzen Sie Ihren TP auf BID-Preis - 100 Pips.
  • Wenn Sie einen BUY zum Preis Y (Ask) eröffnen, dann setzen Sie Ihren TP auf ASK + 100 Pips.


Ich glaube, das hat einen kleinen Fehler, ich bin mir nicht sicher...

Wie ich bereits sagte, eröffnen Sie bei einem OP_SELL zum Geldkurs und schließen zum Briefkurs... wenn der TP also Geldkurs - 100 ist, beträgt Ihr Gewinn 100 Pips abzüglich des Spreads.

Außerdem setzt jeder TP, der auf dem Bid und Ask zum Zeitpunkt der Eröffnung basiert, voraus, dass der Spread konstant ist. Ich habe in letzter Zeit viel darüber recherchiert, und der Spread ist nie völlig konstant. Das wird beim Backtesting nicht auffallen, weil MT4 den Ask-Kurs nicht speichert (ich glaube?? Verwendet es den Schlusskurs + den aktuellen Spread???), aber Sie müssen auch die reale Welt berücksichtigen.

 
alladir:


  • Wenn Sie einen SELL zum Preis X (Bid) eröffnen, setzen Sie Ihren TP auf BID-Preis - 100 Pips. verwenden Sie OrderOpenPrice()
  • Wenn Sie einen BUY zum Preis Y (Ask) eröffnen, dann setzen Sie Ihren TP auf ASK + 100 Pips.

Ich glaube, das hat einen kleinen Fehler, ich bin mir nicht sicher...

Wie ich bereits sagte, öffnen Sie mit einem OP_SELL zum Geldkurs und schließen dann zum Briefkurs... wenn der TP also Bid - 100 ist, beträgt Ihr Gewinn 100 Pips abzüglich des Spreads.

Außerdem setzt jeder TP, der auf dem Bid und Ask zum Zeitpunkt der Eröffnung basiert, voraus, dass der Spread konstant ist. Ich habe in letzter Zeit viel darüber recherchiert, und der Spread ist nie völlig konstant. Das wird beim Backtesting nicht auffallen, weil MT4 den Ask-Kurs nicht speichert (ich glaube, er verwendet den Schlusskurs + den aktuellen Spread???), aber Sie müssen auch die reale Welt berücksichtigen.


Eröffnen Sie zuerst den Handel und ändern Sie ihn dann mit der Funktion orderopenprice( ), damit er auf allen Konten funktioniert.
 
deVries:

Eröffnen Sie zuerst den Handel und ändern Sie ihn dann mit seinem OrderOpenPrice( ), damit er auf allen Konten funktioniert.


Nein, das ist immer noch nicht richtig.

Bei Short-Aufträgen wird der Spread genommen, wenn der Auftrag GESCHLOSSEN wird, nicht vorher, so dass die Verwendung von OrderOpenPrice immer noch einen Gewinn von 100 Pips minus Spread zum Zeitpunkt der Schließung ergibt.

Es ist einfach, einen TP von 100 Pips für Long-Orders zu erhalten.

Für Short-Orders müssen Sie den TP als OrderOpenPrice + 100 Pips + Spread festlegen

(und hoffen, dass der Spread nahezu konstant ist).

 
alladir:


Ich glaube, das hat einen kleinen Fehler, ich bin mir nicht sicher...

Wie ich bereits sagte, eröffnen Sie bei einem OP_SELL zum Geldkurs und schließen zum Briefkurs... wenn der TP also Bid - 100 ist, beträgt Ihr Gewinn 100 Pips abzüglich des Spreads.


Außerdem setzt jeder TP, der auf dem Bid und Ask zum Zeitpunkt der Eröffnung basiert, voraus, dass der Spread konstant ist. Ich habe in letzter Zeit viel darüber recherchiert, und der Spread ist nie völlig konstant. Das wird beim Backtesting nicht auffallen, weil MT4 den Ask-Kurs nicht speichert (ich glaube, er verwendet den Schlusskurs + den aktuellen Spread???), aber Sie müssen auch die reale Welt berücksichtigen.

  • Nein. Bei einem SELL wird der Handel zum Bid (BID_OPEN) eröffnet und zum Tp geschlossen, wenn also Ask = BID_OPEN-100. Gewinn = Eröffnungskurs - Schlusskurs = BID_OPEN - BID_OPEN + 100 = 100.
  • Bei einem BUY wird der Handel zum Ask (ASK_OPEN) eröffnet und zum Tp geschlossen, wenn also Bid = ASK_OPEN+100. Gewinn = Schlusskurs - Eröffnungskurs = ASK_OPEN + 100 - ASK_OPEN = 100.

Floating Spread hin oder her, dies bleibt wahr.

ABER

  • Für einen Verkauf muss sich der Preis vom Geldkurs zum Zeitpunkt der Eröffnung zum Geldkurs zum Zeitpunkt der Schließung bewegen, also von BID_OPEN zu BID_OPEN - 100 - SPREAD_CLOSE. Die Bewegung ist 100 + Spread zum Schlusszeitpunkt. Wenn der Spread kurz vor Handelsschluss ausgeweitet wird, sinkt die Wahrscheinlichkeit, den Handel zu schließen.
  • Für einen Kauf muss sich der Kurs von ASK_OPEN - SPREAD_OPEN bis ASK_OPEN + 100 bewegen, d.h. hier wissen Sie von Anfang an, wie viel sich der Kurs bewegen muss (100 + Spread zum Zeitpunkt der Eröffnung).

Sie haben Recht, dass der Spread nie ganz konstant ist, man muss ihn überprüfen und einen Broker wählen, der hält, was er verspricht (überprüfen Sie es).

 
deVries:

Eröffnen Sie zuerst den Handel und ändern Sie ihn dann mit dem Orderopenprice( ), damit er auf allen Konten funktioniert.
Sie haben Recht, das ist der einfachste Weg, es zu programmieren. Aber ich spreche nicht von einer Programmiersprache, vor der Programmierung, es ist besser zu verstehen, wie es funktioniert.
 
angevoyageur:
  • Nein. Bei einem VERKAUF wird der Handel zum Geldkurs (BID_OPEN) eröffnet und zum Briefkurs (tp) geschlossen, d.h. wenn der Briefkurs = BID_OPEN-100 ist. Gewinn = Eröffnungskurs - Schlusskurs = BID_OPEN - BID_OPEN + 100 = 100.


Ich bin immer noch ein Noob, also entschuldigen Sie mich, wenn ich die ganze Zeit falsch gelegen habe. Aber ich war mir sicher, dass bei einer kurzen Order der TP ausgelöst wird, wenn der BID-Kurs das TP-Niveau erreicht, aber der Handel wird mit ASK price.... geschlossen. Es ist jetzt Wochenende, also kann ich nicht testen, aber wirklich..... ist das nicht der Fall? Werden TPs durch den ASK-Preis bei Short-Trades und den BID-Preis bei Long-Trades ausgelöst? Und wenn ja, was passiert beim Backtesting, wenn die ASK-Kurse nicht verfügbar sind?

Was die Spreads angeht, habe ich einen Tick-Collector geschrieben, der die Spreads verschiedener Broker zum Vergleich in einem Diagramm darstellt. Ich habe festgestellt, dass einige von ihnen genau konstant sind, außer wenn Nachrichten veröffentlicht werden, aber einige von ihnen haben ziemlich variable Spreads... einige von ihnen sehen sogar so aus, als ob der Ask-Kurs um etwa 100ms verzögert wird (d.h. der Spread ist zu groß, wenn der Kurs plötzlich fällt, und zu klein, wenn der Kurs plötzlich steigt) ....

 
angevoyageur:
  • Nein. Für einen SELL wird der Handel zum Bid (BID_OPEN) eröffnet und zum Tp geschlossen, wenn also Ask = BID_OPEN-100. Gewinn = Eröffnungskurs - Schlusskurs = BID_OPEN - BID_OPEN + 100 = 100.
  • Bei einem KAUFEN wird der Handel zum Briefkurs (ASK_OPEN) eröffnet und zum Kassakurs (tp) geschlossen, d.h. wenn das Gebot = ASK_OPEN+100 ist. Gewinn = Schlusskurs - Eröffnungskurs = ASK_OPEN + 100 - ASK_OPEN = 100.

Floating Spread hin oder her, dies bleibt wahr.

Nein, das ist nicht korrekt. Nehmen wir ein hypothetisches Beispiel, bei dem ein Handel eröffnet und dann sofort wieder geschlossen wird; der Verlust ist auf den Spread zurückzuführen. Wenn Sie Ihre obige Berechnung für den VERKAUF verwenden, ist der Gewinn = Eröffnungskurs - Schlusskurs = BID_OPEN - BID_OPEN + 0 = 0. Dies ist jedoch nicht die richtige Antwort, da der Spread bezahlt werden muss.

Es müsste so lauten: Gewinn = Eröffnungskurs - Schlusskurs = BID_OPEN - ASK_OPEN + 0 = -Spread. . aber das setzt voraus, dass der Spread vom Eröffnungs- bis zum Schlusskurs gleich ist.

 
alladir:


Ich bin immer noch ein Noob, so entschuldigen Sie mich, wenn ich die ganze Zeit falsch gewesen bin. Aber ich war mir sicher, dass der TP bei einem kurzfristigen Auftrag ausgelöst wird, wenn der BID-Preis das TP-Niveau erreicht, aber der Handel wird mit dem ASK-Preis geschlossen.... es ist jetzt Wochenende, also kann ich nicht testen, aber wirklich..... ist das nicht der Fall? Verwenden die TPs den ASK-Preis bei Short-Geschäften und den BID-Preis bei Long-Geschäften? Und wenn ja, was passiert beim Backtesting, wenn die ASK-Kurse nicht verfügbar sind?

Keine Sorge, wir müssen alle diese Phase durchlaufen, testen Sie es wieder und wieder, das ist der beste Weg, um zu lernen. Was bedeutet es, einen SELL-Handel zu schließen? Es ist ein BUY! Dieser KAUF wird also zum Briefkurs getätigt, welcher Briefkurs? Der TP des Verkaufs.

DasBacktesting am Wochenende gibt Ihnen den Spread, wenn die Handelssitzung am Freitagabend geschlossen wird. Ask ist immer einfach Bid+Spread. Das kann beim Backtesting am Wochenende zu einer großen Spanne führen, da sich die Spanne am Ende der Börsensitzung in der Regel ausweitet.

Grund der Beschwerde: