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: 4973
Beiträge: 43248
Benutzer: 7.219
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Hopfen&Malz
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- Hopfen&Mal...
vor 2 Tagen
- frankmicha...
vor einer Woche
- DFeck
vor einer Woche
- bb1107
vor 2 Wochen
- rg-trader

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 587
Gesamt: 587
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #21 (permalink)  
Alt 29.08.20
Mitglied
 
Registriert seit: Jun 2020
Beiträge: 41
Michael_ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Indikator-Trading Beitrag anzeigen
Umständlich und nicht schön, aber wenn du dir den Initialen SL nicht über Variablen speichern willst, sondern nur über die Order selbst erfahren, dann könntest du auch den Comment dazu nutzen. Dort schreibst du dann den Wert des Initialen SL raus und kannst ihn jederzeit mit OrderComment() auslesen und über eine Konvertierung zu Double nutzen. Gruß Timo
Das klingt ja super! Diese Möglichkeit kannte ich nicht, genau deshalb ist das Forum hier so klasse. Hab schon echt viel (interessantes) gelernt.

Ich werde deinen Vorschlag in den nächsten Tagen versuchen umzusetzen und melde mich dann wieder.

Noch ein schönes Wochenende.
  #22 (permalink)  
Alt 29.08.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Indikator-Trading Beitrag anzeigen
Umständlich und nicht schön, aber wenn du dir den Initialen SL nicht über Variablen speichern willst, sondern nur über die Order selbst erfahren, dann könntest du auch den Comment dazu nutzen. Dort schreibst du dann den Wert des Initialen SL raus und kannst ihn jederzeit mit OrderComment() auslesen und über eine Konvertierung zu Double nutzen. Gruß Timo
Dann darf aber diese Order nicht teilgeschlossen werden, denn dann ist die Info im OrderComment() verloren.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #23 (permalink)  
Alt 29.08.20
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Ja, das ist mir bekannt. Hat mir in der Vergangenheit auch schon die Nachverfolgung bei einem Tradingsystem erschwert. Hatte damals den "TradeBoddy" von BM Trading ausprobiert, und dieser Filtert die Systeme anhand der Kommentare an den Trades...
Leider ist halt das Teilschließen von einem Trade quasi das gesamte Schließen des aktuellen + das ein neuer Trade mit der restlichen Lotanzahl eröffnet wird, nur das es einem so nicht angezeigt wird.
Das dann aus deinem Kommentar "to #Ticketnummer" und "from #Ticketnummer" wird ist schon nervig.

Ich sehen dann zwei Möglichkeiten damit zu arbeiten zu können, wenn man denn unbedingt Teilschließungen durchführen möchte (War ja nicht so von ihm vorgegeben):

1) Man müsste vor dem Teilschließen den Kommentar abspeichern, den gerade geschossenen Trade nach der Ticketnummer abfragen und sich diese Kombination merken. Leider ist es ja (zumindest nach meinem Kenntnisstand) unmöglich den Kommentar in einer laufenden Order zu setzen.

2) Den Trade komplett schließen und sich vorher wieder den Kommentar merken. Einen neuen Trade öffnen mit der entsprechenden reduzierten Lotanzahl und den Originalkommentar wieder bei OrderSend() mit setzen.

Ich würde in diesem Fall den zweiten Weg nehmen, da auch nach einem Absturz vom EA alle nötigen Informationen noch vorhanden sind.

Gruß Timo
  #24 (permalink)  
Alt 29.08.20
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von traderdoc Beitrag anzeigen
Dann darf aber diese Order nicht teilgeschlossen werden, denn dann ist die Info im OrderComment() verloren.
traderdoc
Du arbeitest doch viel mit GlobalVars, das müßte doch möglich sein, der Global den Namen z.B. LongOrder1 zu geben und den Wert des ursprünglichen SL - oder ??
AVT
  #25 (permalink)  
Alt 30.08.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von AVT Beitrag anzeigen
Du arbeitest doch viel mit GlobalVars, das müßte doch möglich sein, der Global den Namen z.B. LongOrder1 zu geben und den Wert des ursprünglichen SL - oder ??
AVT
Jepp, die Lösung ist das Speichern in eine GV.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #26 (permalink)  
Alt 30.08.20
Mitglied
 
Registriert seit: Jun 2020
Beiträge: 41
Michael_ befindet sich auf einem aufstrebenden Ast
Standard

Hallo zusammen,

erst mal vielen Dank für die Antworten.
@traderdoc und @AVT:

Zitat:
Zitat von traderdoc Beitrag anzeigen
Jepp, die Lösung ist das Speichern in eine GV.

traderdoc
Wie funktioniert das mit der GV? Weil "direkt" einen Namen als globale Variable kann ich meiner Long-Order nicht geben, da es ja möglich ist, dass mehrere Orders offen sind (ich begrenze die max. Anzahl natürlich).
Mein derzeitiger OrderSend-Befehl ist folgender:

Code:
int LongOrder = OrderSend(Symbol(),OP_BUY,LotSize_Long1,Ask,5,0,0,"LONG Position 1",MagicNummer,0,Green);

int LongOrder = OrderSend(Symbol(),OP_BUY,LotSize_Long2,Ask,5,0,0,"LONG Position 2",MagicNummer,0,Green);
Wie wäre das möglich?

Lieben Gruß,
Michael
  #27 (permalink)  
Alt 30.08.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Was willst Du denn konkret in die GV speichern?

int LongOrder liefert lediglich die TicketNumber der jeweiligen geöffneten Order zurück.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #28 (permalink)  
Alt 30.08.20
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.178
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Mehrere Orders des selben Typ kann man am Einfachsten mit jeweils eigenen MagicNumbers unterscheiden / überschaun / was auch immer.
  #29 (permalink)  
Alt 02.09.20
Mitglied
 
Registriert seit: Jun 2020
Beiträge: 41
Michael_ befindet sich auf einem aufstrebenden Ast
Standard

Hallo traderdoc, hallo MA-EA,

nochmal als Erklärung, was ich machen will und benötige:
  1. Wenn ein LONG-Signal gegeben ist, dann werden 2 Long-Orders aufgegeben.
  2. Sagen wir mal, der Kurs pendelt und es ergibt sich später nochmal ein LONG-Signal, es werden wieder 2 Long-Orders eröffnet. Dann sind derzeit 4 Orders offen.
  3. Angenommen, der Kurs steigt und aufgrund dessen soll mit einem Trailing Stop nachgezogen werden. Nachdem aber beim 1. LONG-Signal ein anderer Eröffnungspreis UND SL gesetzt wurde als beim 2. LONG-Signal, ist der Trailing Stop bei den ersten beiden Orders anders als bei den zweiten zwei Orders.
  4. Ich berechne den Trailing Stop daher mit dem ursprünglich gesetzten SL der Order. Wenn aber schon nachgezogen wurde, dann passt meine Berechnung nicht mehr.
  5. Aus diesem Grund meine Frage: Wie kann ich den ursprünglich gesetzten SL aller Orders herausfinden?

Die Magic Number hilft mir da ja auch nicht. Die einzige Möglichkeit, die ich bis dato erhalten habe, ist die von Indikator-Trading mit dem Kommentar und OrderComment (hab ich noch nicht versucht, da ich noch keine Zeit hatte was weiter zu programmieren).

Lieben Gruß,
Michael
  #30 (permalink)  
Alt 02.09.20
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Tja, und da drehen wir uns wieder im Kreis.

Im Post #18 hatte ich schon empfohlen das über Variablen zu machen, also nichts anders als GV zu nutzen.
Da Michael_ das aber wohl universell machen möchte und es nach meinem Kenntnisstand keine Möglichkeit gibt den Initialen SL aus einer laufenden und geänderten Order (TrailingStop) rauszubekommen, kam mein Vorschlag zur Nutzung des Comment der jeweiligen Order zustande. Nicht weil ich das für einen guten Ansatz halte, sondern nur weil Michael_ wohl nicht weiß wie viele Trades er wirklich öffnen will und irgend was gegen GV zu haben scheint.

Es gibt wohl nur zwei Möglichkeiten:
1) GV für jede offene Order in der der initiale SL gespeichert wird (Könnte man auch mit einem Array lösen)
2) Comment der jeweiligen Order, solange keine Teilschließung erfolgt, da diese den originalen Comment überschreibt.

So, lieber Michael, jetzt musst du dich entscheiden! Wer soll dein Herzblatt sein? … ach wenn ich das jetzt noch mit der originalen Stimme vertonen könnte
Thema geschlossen

Lesezeichen

Stichworte
break-even, stop loss nachziehen

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 +1. Es ist jetzt 18:50 Uhr.





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