Kann Jemand die korrekte Verwendung von OnTradeTransaction erklären? - Seite 2

 

Otto hat dir den Weg gezeigt.


Dein Denkfehler ist das es diese "Position" nach dem schließen noch gibt.

Falsch, es sind dann 2 Deals ...IN and OUT.

Hättest du dir den Code wirklich angesehen würdest du merken das die Lösung da steht.


Zu deiner Martingale Strategie :-) ...


Du möchtest nachdem eine Position  beendet ist die zugehörige Order auch löschen.

Mach doch ein Paar draus.Und speicher dir die Tickets ab. Ich arbeite nur mit internen Ticketpuffern.

Ablauf:



1. Ordersend Position1

2. Ticket speichern in Paar1.Ticket1

3. Ordersend 2.Order Ticket speichern in Paar1.Ticket2

4. in OnTrade erkennst du das Position1 geschlossen wurde

5. Jetzt löscht du die dazugehörige Order Paar1.Ticket2


Ohne das ständige durchiterieren der Positionen und Orders.


OnTrade sollte nur genutzt werden um den Status von Positionen und Orders zu speichern.


 
Bayne:

Kommt da eigentlich kein Compiler Fehler ?


 
Christian:

Kommt da eigentlich kein Compiler Fehler ?


eigentlich nicht, wurde aber auch später vom debugger gar nicht erst durchgegangen.


Kannst du mir evtl helfen mit der Deklaration des multidimensionalen Arrays, für die Paare? (habe es bisher nie hingekriegt)

static int TicketPair [][];

'[' - invalid index value       8 New Candlesticks Strategy (nur Intraday) works.mq5    45      25

EDIt

static int TicketPair [][2];
so müsste es sinn machen
 
Christian:

Otto hat dir den Weg gezeigt.


Dein Denkfehler ist das es diese "Position" nach dem schließen noch gibt.

Falsch, es sind dann 2 Deals ...IN and OUT.

Hättest du dir den Code wirklich angesehen würdest du merken das die Lösung da steht.


Zu deiner Martingale Strategie :-) ...


Du möchtest nachdem eine Position  beendet ist die zugehörige Order auch löschen.

Mach doch ein Paar draus.Und speicher dir die Tickets ab. Ich arbeite nur mit internen Ticketpuffern.

Ablauf:



1. Ordersend Position1

2. Ticket speichern in Paar1.Ticket1

3. Ordersend 2.Order Ticket speichern in Paar1.Ticket2

4. in OnTrade erkennst du das Position1 geschlossen wurde

5. Jetzt löscht du die dazugehörige Order Paar1.Ticket2


Ohne das ständige durchiterieren der Positionen und Orders.


OnTrade sollte nur genutzt werden um den Status von Positionen und Orders zu speichern.


Schritt 2: wie bekomme ich das Ticket der zuletzt geöffneten Order? wieder ein for loop? (und wenn ja wo würdest du den hin setzen, OnTrade oder direkt nach der Positionseröffnung?

Grund der Beschwerde: