expert advisor - verschiedene Fragen - Seite 40

 
Max Enrik:


Nein, ich muss alle Chart-Symbol-Aufträge schließen.
Ja, mit der richtigen Magicnumber.

if(closeallsymbols==false && OrderSymbol()!=Symbol()) 
Das ist ein bisschen seltsam.
 
Marco vd Heijden:
Das ist ein bisschen seltsam.

Ja, genau!
Das ist hier auch so! Dass ich dachte, dieser Teil der Close-Order-Funktion so seltsam, aber es funktioniert.

 
Welcher Teil von "Sie müssen RefreshRates nach dem Ruhezustand und zwischen mehreren Serveraufrufen aktualisieren, wenn Sie die vordefinierten Variablen (Bid/Ask) oder vor OrderSelect verwenden wollen, um stattdessen OrderClosePrice() zu verwenden" war unklar?
 
RefreshRates - Timeseries and Indicators Access - MQL4 Reference
RefreshRates - Timeseries and Indicators Access - MQL4 Reference
  • docs.mql4.com
RefreshRates - Timeseries and Indicators Access - MQL4 Reference
 

Entschuldigung, bitte geben Sie mir nicht die Schuld. Immer noch verwirrend.
Ich muss etwas fragen, und ich muss es Schritt für Schritt tun, weil ich den Code nicht kenne.

Q1: Könnte ich while() verwenden?
Q2: Könnte ich sleep() verwenden?
Q3: Könnte RefreshRates() mein Problem lösen? (Ist das letzte Ding, dass ich mein Problem lösen, bitte?)

Bitte lassen Sie mich das wissen, denn ich möchte meine Abschlussfunktion nicht verletzen.

 

Sie könnten while verwenden, aber dann müssen Sie auch einen Zähler hinzufügen, der die Schleife nach einer bestimmten Anzahl von Versuchen verlässt, sonst riskieren Sie, dass der Experte in einer Endlosschleife stecken bleibt.

Und Sie spak von Ihrem Problem, aber ich habe keine Ahnung, was das Problem ist.

Wenn Ihr Problem ist über den Schlusskurs dann können Sie einfach verwenden,

MarketInfo(OrderSymbol(),MODE_ASK);
MarketInfo(OrderSymbol(),MODE_BID);

Respektive und fügen Sie die OrderType() Schalter für OP_BUY und OP_SELL.

 
Marco vd Heijden:

Und Sie spak von Ihrem Problem, aber ich habe keine Ahnung, was das Problem ist.

Ich möchte nur sagen, dass mein Problem folgendes ist: Manchmal lässt meine Funktion "Close Open Orders" einige offene Aufträge übrig. Ich möchte alle meine offenen Aufträge auf einmal schließen, die ganze Zeit.

---

2. Mal bearbeitet

Könnte ich alle meine Bid- und Ask-Funktionen durch MarketInfo() ersetzen, bitte?

MarketInfo(OrderSymbol(),MODE_BID);
MarketInfo(OrderSymbol(),MODE_ASK);
 
whroeder1:
Welcher Teil von "You must RefreshRates after sleep and between multiple server calls if you want to use the Predefined Variables (Bid/Ask) or before OrderSelect to use OrderClosePrice() instead." war unklar?


RefreshRates() Ich verstehe nicht, wo ich es einfügen könnte.

Vielen Dank für Ihre Kommentare.

 
Max Enrik:

Ich möchte nur sagen, dass mein Problem darin besteht, dass meine Funktion "Offene Aufträge schließen" manchmal offene Aufträge übrig lässt. Ich möchte alle meine offenen Aufträge immer auf einmal schließen.

---

2. Mal bearbeitet

Könnte ich alle meine Bid- und Ask-Funktionen durch MarketInfo() ersetzen, bitte?

Ja, wenn Sie eine Position bearbeiten, die nicht das Chart-Symbol ist.
 
Marco vd Heijden:
Ja, wenn Sie eine Position bearbeiten, die nicht das Chart-Symbol ist.


Vielen Dank, ich werde alle von ihnen zu ersetzen, also mal sehen, was am Montag passieren.

Ich wünsche Ihnen ein schönes Wochenende.