Fehler, Irrtümer, Fragen - Seite 1840

 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Wanzen, Wanzen, Fragen

fxsaber, 2017.04.01 10:20

Vor einiger Zeit wurde der Operator [] zum Typ String hinzugefügt.
string Str = "AB C";
Print(CharToString(Str[1])); // B


Ist es auf der Entwicklerseite möglich, einen =-Operator für Arrays hinzuzufügen?

int a[], b[];
a = b; // ArrayCopy(a, b);


Da es keine Zeiger gibt, würde ein solcher Operator die Sprache flexibler machen - es wurden Situationen gefunden, in denen er SEHR nützlich wäre.

Gleiches gilt für komplexe Strukturen
MqlTradeRequest a, b;
a = b;
 
fxsaber:
Dasselbe gilt für komplexe Strukturen
Sie können die Funktion Copy(a, b) schreiben, sie sieht zwar nicht so schön aus und funktioniert auch nicht, aber als Option...
 
Комбинатор:
Sie können die Funktion Copy(a, b) schreiben, das sieht zwar nicht so schön aus und funktioniert auch nicht so gut, aber es ist eine Möglichkeit...
Diese Funktion wird nicht universell sein (durch Vorlage).
 
fxsaber:
Eine solche Funktion wäre nicht universell (über eine Vorlage).
Sie können für jede Struktur eine Überlast erzeugen. Am Ende wird es natürlich viel Platz einnehmen, keine Vorlage, aber Sie können es ohne Probleme universell einsetzen
 
Комбинатор:
Sie könnten für jede Struktur eine Überladung durchführen. Am Ende wird es natürlich viel Platz brauchen, keine Vorlage, aber man kann es ohne Probleme universell einsetzen

Aber du weißt, dass du das nicht gemeint hast. Universal ist, wenn es nicht nur für reguläre komplexe Strukturen, sondern auch für benutzerdefinierte komplexe Strukturen funktioniert.

ZZY Im Moment ist es unmöglich, eine solche Funktion zu schreiben

MqlTradeRequest Func();

Das ist wahrscheinlich keine gute Einschränkung der Sprache.

 
Ist es möglich, das Fehlen von Zeigern auf ein Array zu kompensieren, indem man die Möglichkeit einführt, ein Array durch eine Funktion zurückzugeben?
int[] Func()
{
  int a[] = {1, 2, 3};

  return(a);
}

Print(Func()[1]); // 2
 

Ich weiß nicht, ob dies das richtige Thema ist.

Probleme mit Profilen in MT5 und MT4

Wenn ich Profile speichere, z.B. 6 Charts für jedes Paar separat, öffne ich beim Öffnen eines Profils oft ein anderes als das, das ich brauche. Und die, die ich brauche, lässt sich überhaupt nicht öffnen.

Ich dachte, das Problem ist in der Broker-Terminal in MT4 (ursprünglich habe ich versucht, die Profile dort zu konfigurieren), lud ich das Original MT5 von Metaquotes und das gleiche Problem.


Wo soll man graben?

 
Oleg:

Ich weiß nicht, ob dies das richtige Thema ist.

Störung bei Profilen in МТ5 und МТ4

Wenn ich Profile speichere, z.B. 6 Charts für jedes Paar separat, öffne ich beim Öffnen eines Profils oft ein anderes als das, das ich brauche. Und die, die ich brauche, lässt sich überhaupt nicht öffnen.

Ich dachte, das Problem ist in der Broker-Terminal in MT4 (ursprünglich habe ich versucht, die Profile dort zu konfigurieren), lud ich das Original MT5 von Metaquotes und das gleiche Problem.

Wo soll man graben?


Zunächst muss eine einheitliche und genaue Beschreibung erstellt werden. MT5 - erstellen Sie das Datenverzeichnis (nach dem Neuladen nehmen Sie die ersten drei Zeilen der Registerkarte "Log"):

  1. Geöffnete Diagramme (Bildschirmfoto). In einer Vorlage gespeichert. Die Vorlage ist beigefügt.
  2. andere Diagramme geöffnet (Screenshot). Speichern Sie sie in einer neuen Vorlage. Die Vorlage wurde beigefügt.
  3. Wiederholen Sie die Schritte 1 und 2.
  4. Angewandte Vorlage №1 - was wir haben.
  5. und dann Vorlage 2 anwenden - das Ergebnis.
Zum Beispiel so.
 
Oleg:

Ich weiß nicht, ob dies das richtige Thema ist.

Probleme mit Profilen in MT5 und MT4

Wenn ich Profile speichere, z.B. 6 Charts für jedes Paar separat, öffne ich beim Öffnen eines Profils oft ein anderes als das, das ich brauche. Und die, die ich brauche, lässt sich überhaupt nicht öffnen.

Ich dachte, das Problem ist in der Broker-Terminal in MT4 (ursprünglich habe ich versucht, die Profile dort zu konfigurieren), lud ich das Original MT5 von Metaquotes und das gleiche Problem.


Ich verstehe ungefähr, was das Problem ist. Wenn ich ein neues Feld anlege und es unter einem anderen Namen speichere, wird das Profil einfach überschrieben. Allerdings sollte sie unter einem anderen Namen gespeichert werden.


Wo soll man graben?

Das war schon immer der Fall. Jede Profiländerung führt zu einer Änderung des geöffneten Profils, und wenn Sie es unter einem anderen Namen speichern, werden zwei identische Profile gespeichert. Um dieses Problem zu lösen, müssen Sie nur die folgenden Schritte ausführen

1. Speichern Sie das aktuelle Profil.

2. Konfigurieren Sie das neue Profil und speichern Sie es unter einem anderen Namen.

Es werden also zwei verschiedene Profile gespeichert...

 
Vladimir Karputov:


Beginnen Sie mit einer einheitlichen und genauen Beschreibung. MT5 - Erstellen des Datenverzeichnisses (nach dem Neuladen nehmen Sie die ersten drei Zeilen der Registerkarte Log):

  1. so viele Charts geöffnet (Screenshot). Speichern Sie es in einer Vorlage. Die Vorlage wurde beigefügt.
  2. Geöffnete andere Diagramme (Screenshot). Speichern Sie sie in einer neuen Vorlage. Die Vorlage wurde beigefügt.
  3. Wiederholen Sie die Schritte 1 und 2.
  4. Angewandte Vorlage №1 - was wir haben.
  5. und dann Vorlage 2 anwenden - das Ergebnis.
Ungefähr so.

Vielen Dank für Ihre schnelle Antwort! Scheint es herausgefunden zu haben, die zuletzt gespeicherte Vorlage wird nicht nur unter ihrem Namen gespeichert, sondern wird automatisch zur Standardvorlage.

Um alles korrekt zu speichern, öffne ich die Standardeinstellungen, füge die erforderlichen Diagramme ein und speichere sie unter meinem Namen.