MetaTrader 4 Build 529 beta mit neuem Compiler veröffentlicht - Seite 26

 
Hier ist der Beweis, dass der Indikator mehrfach ausgeführt werden kann.
Der Indikator zieht in den ersten 200 Balken an.
Und so sieht es auch auf dem Bild aus, das 2 mal gelaufen ist.

Ich habe etwa 10 Hinrichtungen gesehen, als ich umdisponiert habe.

 
mladen:

Es gibt ein schwerwiegendes Problem mit dem neuen Metatrader, das externe String-Parameter betrifft. Anfänglich haben sie einen korrekten Wert, aber sobald der Zeitrahmen oder das Symbol geändert wird, geht der Inhalt eines Stringparameters verloren. Hier ist ein einfaches Beispiel, das genau zeigt, was passiert. Dieses Problem tritt auch auf, wenn solche Indikatoren durch iCustom()-Aufrufe verwendet werden, und das macht jeden solchen Indikator unbrauchbar von jedem EA oder anderen Code

Festgelegt
 
komposter:
6. Slip in tester "schläft" nicht historische Zeit, sondern Echtzeit =)

Korrigiert

Außerdem wurden die Punkte 1 und 2 korrigiert.

Punkt 3: Fehlersuche

Für die Punkte 4 und 5 müssen wir wissen, wie wir sie reproduzieren können. Schritt für Schritt. Sie ist nicht spontan reproduzierbar.

 
VOLDEMAR:

Ich habe den Moment erwischt, in dem sich der Berater selbst löscht und sich das Terminal aufhängt



Lassen Sie uns in der Servicestelle ein Gespräch führen, ja?

Wir benötigen den Quellcode Ihres EA, um das Problem zu reproduzieren

 
Antonsan:
Hier ist der Beweis, dass der Indikator mehrfach ausgeführt werden kann.
Der Indikator zieht in den ersten 200 Balken an.
Und so sieht es auch auf dem Bild aus, das 2 mal gelaufen ist.

Ich habe etwa 10 Hinrichtungen gesehen, als ich umdisponiert habe.


Es wird besser sein, wenn Sie Ihr Problem auf Englisch beschreiben. Mit Details, Schritt für Schritt
 

Ich schreibe auf Spanisch. Und ich übersetze mit Google.

Die Übersetzung ins Englische ist genauso schlecht wie die russische Übersetzung.

Dieser Indikator ist auf EA vorbereitet und zeichnet nur wenige Balken.
Beim Ändern des Zeitrahmens habe ich festgestellt, dass der Indikator manchmal wiederholt auf dem Bildschirm erscheint.
Manchmal scheint er mehrmals zu laufen und die Linie richtig zu ziehen, ein anderes Mal scheint es sich um identische Kopien zu handeln, die in der Geschichte angeordnet sind.

Dies hatte drei identische Kopien in der Geschichte, aber um den Screenshot zu reduzieren, sahen nur zwei.

 
VOLDEMAR:

Ich habe den Moment erwischt, in dem sich der Expert Advisor selbst löscht und sich das Terminal aufhängt


Diese Funktion führt nicht zu einem Fehler

extern string symbol =""; // Symbol

string sym    ()
{ 
 string symm = symbol;
 if ( symm == "" ) 
 symm=Symbol () ;
  return (symm);
}

Diese Funktion verursacht einen Fehler:

extern string symbol    = ""    ; // Symbol 

string sym ()
{
if (symbol=="")symbol = Symbol();
return symbol ;
} 
Странно сейчас тестирую и проверяю под виндовс ХР  проблем нет ...  В сервис деск отправил ...
 
Barbarian:

Renat, habe viele Informationen über den Zweck von X:\Users\xxx\AppData\ im Allgemeinen und X:\Users\xxx\AppData\Roaming neu gelesen. Ich stimme zu, dass dies eine Notwendigkeit ist, um anwendungsspezifische Benutzereinstellungen in \Roaming zu erstellen, aber warum sollten ausführbare Dateien, d. h. Indikatoren, Skripte und EAs, in dieses Verzeichnis verschoben werden? Schließlich verletzen einige EAs dadurch ständig die Logik ihrer Arbeit, ich meine diejenigen, die in ihrer Logik Lese- und Schreibdateien verwenden.

Übrigens, dem Vorschlag von Microsoft zu folgen, X:\Users\xxx\AppData\ zu verwenden, wird höchstwahrscheinlich von nichts unterstützt, außer von Einzelfällen. Ich kenne keinen Händler, der Außenstehende (andere Benutzer) auf seinen PC mit Terminals lässt, auch nicht unter seinen eigenen Konten, UAK ist bei diesem Thema überhaupt nicht anwendbar. Dies ist höchstwahrscheinlich eine Ausnahme von den Sicherheitsregeln, so dass dieser Microsoft-Trend nicht für Händler geeignet ist. Wer seine Einstellungen und ausführbaren Dateien in X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\B5589D10299052C8D921603EBD1F9752\ vor anderen versteckt, ist in Sachen Sicherheit paranoid.


Das Problem liegt höchstwahrscheinlich darin, dass das System nicht zulässt, dass Sie etwas in Programmdateien schreiben, was in Ordnung ist, solange Sie nicht als Administrator arbeiten. Aber als Administrator ist das Betriebssystem nicht sehr sicher, weil man für alle Viren und dergleichen offen ist. Vielmehr geht MS endlich dazu über, ein Unix-ähnliches Verhalten an den Tag zu legen, bei dem man anstelle seines eigenen persönlichen Ordners keinen Schreibzugriff hat (und tmp natürlich, aber das wird regelmäßig gelöscht). Dies ist viel sicherer und verhindert die Verbreitung von Viren, da es auf *nix nicht so viele Viren gibt wie auf Win. Ich bin sehr dafür. Aber es wäre schön, wenn es möglich wäre, für ein bestimmtes Terminal einen Ordner mit Experten zu konfigurieren, denn der gemeinsame Ordner für alle Terminals ist nicht immer geeignet.
 
Interesting:
Ich werde die Liste um "SymbolSelect" erweitern. +1 zum Wunsch nach neuen Baubeschreibungen.
Was hindert Sie daran, Ihre SymbolSelect-Funktion zu bauen?
 
ms502040:

Wahrscheinlich liegt das Problem darin, dass das System Ihnen nicht erlaubt, etwas in Programmdateien zu schreiben, was auch richtig ist, es sei denn, Sie arbeiten als Administrator. Aber als Administrator des Betriebssystems ist man nicht sehr sicher, da das Betriebssystem für alle Viren usw. offen ist. Vielmehr geht MS endlich zu einem Unix-ähnlichen Verhalten über, bei dem man anstelle eines privaten Ordners keinen Schreibzugriff hat (und tmp natürlich, aber das wird regelmäßig gelöscht). Dies ist viel sicherer und verhindert die Verbreitung von Viren, da es auf *nix nicht so viele Viren gibt wie auf Win. Ich bin sehr dafür. Aber es wäre schön, wenn es möglich wäre, für ein bestimmtes Terminal einen Ordner mit Experten zu konfigurieren, denn der gemeinsame Ordner für alle Terminals ist nicht immer geeignet.

Sie haben wahrscheinlich nicht gelesen, mein Beitrag oben, wo ich beschrieben, was geschrieben wird, um jetzt mit Beta-Versionen von MT4. In "nix" arbeiten alle komplett in ihren eigenen Sandkästen, nur der Benutzer "root" stellt gemeinsame Programme ein und vergibt Rechte für deren Nutzung durch andere Benutzer. Die Ideologie ist dort völlig anders, obwohl sie ähnlich wie bei Microsoft zu sein scheint. Übrigens stört es mich nicht, dass die Beta-Version die Benutzereinstellungen in X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\ schreibt, mich stört das Folgende:

1. Dass es ein Unterverzeichnis X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\B5589D10299052C8D921603EBD1F9752\ erstellt, dessen Namen man nicht kennt, bis man dort hinkommt, außerdem ändert es seinen Namen bei jeder Aktualisierung.

2. Dieser Pfad wird nicht nur zum Schreiben von Benutzereinstellungen verwendet, sondern auch für ausführbare Dateien - Indikatoren, Expert Advisors, Skripte usw., also für all die Dinge, die Sie einem Fremden nicht auf Ihren PC lassen würden, auch nicht unter einem anderen Benutzernamen. Dies kann natürlich später vermieden werden, aber zu welchem Preis.

Der erste Punkt macht mir am meisten Angst, weil der Code für die Verwendung dieser Operationen durch Lesen/Schreiben in Dateien komplizierter wird.

Grund der Beschwerde: