Maximale Länge eines Symbolnamens auf FOREX - Seite 12

 
prostotrader:

Sie haben Recht, die ChartID ändert sich beim Neustart, daher muss nichts in den globalen Variablen des Terminals gespeichert werden.

äh... also verliert der EA alle seine zuvor eröffneten Order-Positionen, und das ist OK?

 
Taras Slobodyanik:

äh... also verliert der EA alle seine zuvor eröffneten Order-Positionen, und das ist OK?

Wenn Sie einen Auftrag nach Magie suchen, kennen Sie die aktuelle Magie, also alle anderen Magien aus der/den vorherigen.

Es gibt eine IsMyMagic()-Funktion

 
Fast528:

Jede Währung hat einen dreistelligen Code, wobei die ersten beiden Buchstaben für das Land stehen und der letzte dritte Buchstabe für die Währung selbst (Dollar - D, Franc - F, Pfund - P).

Diese dreistellige Zuordnung der Währungen ist in einer speziellen Norm, der ISO 4217, geregelt. 1978 empfahl die Internationale Organisation für Normung, dass alle Länder dreistellige Währungscodes mit drei Buchstaben und drei Ziffern verwenden sollten.

Ernsthaft?

wobei die ersten beiden Buchstaben für das Land und der letzte dritte Buchstabe für die Währung selbst stehen

Und was glauben Sie, wie die Währung der Eurozone heißt? EUR - EU R
 
prostotrader:

Wenn Sie einen Auftrag nach Magier suchen, kennen Sie den aktuellen Magier, also alle anderen Magier von dem/den vorherigen Magier(n).

Folglich ist alles, was vor dem Neustart geöffnet ist, irrelevant...

Ja, dann genügt die Karten-ID.
Sie können einfach den aktuellen Auftragszähler zu dieser Zahl addieren und sich nicht mit Prüfsummen und Bitverschiebungen herumschlagen.

 
Taras Slobodyanik:

Daher ist es irrelevant, was vor dem Neustart geöffnet ist...

Ja, dann genügt die Karten-ID.
Wir können einfach den Zähler der aktuellen Aufträge zu dieser Zahl addieren und uns nicht mit Prüfsummen und Bitverschiebungen herumärgern.

Sie können sich den Ärger sparen, wie bereits vorgeschlagen

Eingabe ulong = NUMBER;

Wir müssen nur diese NUMMER für jeden EA aufzeichnen - unterschiedlich, wobei die beiden niederwertigen Bytes Null bleiben,

dann können wir 65535 magische Zahlen für JEDEN EA verwenden

input ulong StMagic = 1; //Установка магика
ulong master_magic;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   master_magic = StMagic<<16;   
   
//---
   return(INIT_SUCCEEDED);
  }

Dementsprechend für den nächsten EA

input ulong StMagic = 2; //Установка магика
Speichern der Einstellungen nicht vergessen
 
Nikolay Demko:

Ernsthaft?

Und wie nennen Sie die Währung der Eurozone? EUR - EU R

Ich frage mich auch, wofür der Buchstabe B steht? )
EURRUB - RU B

 
Taras Slobodyanik:

Ich frage mich auch, wofür der Buchstabe B steht? )
EURRUB - RU B

Es ist beängstigend, daran zu denken ))

 
prostotrader:

Sie könnten auf den Ärger verzichten, wie bereits vorgeschlagen

Eingabe ulong = NUMBER;

Wir müssen nur diese NUMMER für jeden Expert Advisor verfolgen - anders, wobei die beiden niederwertigen Bytes Null bleiben

Dementsprechend gilt für den folgenden Expert Advisor

Vergessen Sie nicht, die Einstellungen zu speichern

Sie laden das Terminal neu, oder Sie schließen das Diagramm und öffnen es erneut.

Sie haben den Handelsverlauf und der Expert Advisor (sollte) seine Trades erkennen. Nun, das ist normal, wenn er versteht, dass er derjenige war, der sie geöffnet hat.

Die ID des Diagramms hat sich geändert: Wie soll der EA, der auf dem aktuellen Diagramm läuft, verstehen, dass dies seine vergangenen Geschäfte sind?

 
Nikolay Demko:

Sie laden das Terminal neu, oder Sie schließen das Diagramm und öffnen es erneut.

Sie haben eine Handelshistorie und der EA (sollte) Ihre Geschäfte erkennen. Das ist normal, wenn es versteht, dass es derjenige war, der es geöffnet hat.

Die ID des Diagramms hat sich also geändert: Woher weiß der EA, der auf diesem Diagramm gestartet wurde, dass dies seine früheren Geschäfte sind?

Bitte sorgfältig lesen!