Einfacher SELL-Order Trailingstop klapppt nicht
Hi!
Da ich aus irgendwelchen Gründen unter MT5 keinen Trailingstop setzen kann, habe ich versucht mir ein EA zu schreiben, der dies übernimmt. Einen für BUY- und einen für SELL-Positionen, etwas umständlich aber besser als ohne zu arbeiten. Im Backtest klappt alles bestens! Live nicht... :( (lasse ihn beim Test eine Position eröffnen, habe diese Zeilen aber entfernt) Code:
input int Trailingstop = 100; :confused: Bin für jeden Ratschlag dankbar! |
Du hast die Order nicht ausgewählt, dafür ist Funktion PositionSelect() vorgesehen.
Jetzt werden die Aufrufe von PositionGetInteger() auf irgend eine andere, zuvor ausgewählte Position zeigen. |
Danke!
Code:
for(int i=PositionsTotal() -1; i>=0; i--) So sollte das dann aussehen, oder? Die Umstellung von MT4 auf MT5 verwirrt mich etwas. War noch nie gut im Programmieren. |
Könnte man so proggen.
Ich würde zu der sicheren Variante greifen: Code:
for (uint i = PositionsTotal()-1; i >= 0; i--) { traderdoc |
Also ohne PositionSelect?
Bin jetzt noch mehr verwirrt... Bei MT4 war das irgendwie einfacher. |
Das funktioniert, da der Aufruf von PositionGetTicket(i) ebenfalls die jeweilige Position selektiert, genauso wie PositionSelect().
PositionSelect() würde allerdings auch nur dann sicher funktionieren, wenn du nur eine Position pro Symbol hättest. Die Implementierung von TraderDoc ist somit die Variante, welche sicherer und besser ist. |
Alle Zeitangaben in WEZ +2. Es ist jetzt 01: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