Fehler, Irrtümer, Fragen - Seite 2492

 

Ist es normal, dass Agenten nach der Erledigung einer Aufgabe in der Cloud keinen Arbeitsspeicher freigeben?



Version 2085, 13. Juni 2019.

Hält RAM für mindestens 1 Stunde.

 
SEM:

Ist es normal, dass Agenten nach einer Aufgabe in der Cloud den Arbeitsspeicher nicht freigeben?


Die Frage ist nicht vollständig. Wie lange halten Ihre Agenten die Erinnerung aufrecht? Wie ist das Terminal aufgebaut?

 
A100:

Fehler bei der Ausführung:

Ergebnis: 1

Erwartung: 2 oder (wie in C++) - Kompilierungsfehler

Vielen Dank für diesen Beitrag!

MQL5 unterstützt das Überschreiben (und/oder Ausblenden) von Klassenmethoden nicht.

Wenn ich mich richtig erinnere, haben wir diese Funktion bereits vor einigen Jahren diskutiert, wobei es allerdings um die Frage ging, welche Überladung in der Vererbung am engsten oder in Bezug auf die Parameter am genauesten aufgerufen werden sollte.


In der neuen Version des Compilers wird das Überschreiben wie in C++ funktionieren.

Das heißt, wenn Sie eine übergeordnete Methode überschreiben, ist es nur möglich, sie mit "b.A::f()" aufzurufen. Der Versuch, b.f(10) aufzurufen, führt zu einem Fehler, da die Methode b.f() - keinen Parameter hat und die Methode A::f(int) nicht verfügbar (versteckt) ist, da sie überschrieben wurde.

 
Vladimir Karputov:

Die Frage ist nicht vollständig. Wie lange behalten Ihre Agenten das Gedächtnis? Wie ist das Terminal aufgebaut?


Es wurde geändert.

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Wanzen, Wanzen, Fragen

SEM, 2019.07.01 09:03

Ist es normal, dass Agenten den Arbeitsspeicher nach der Ausführung eines Cloud-Jobs nicht freigeben?



Version 2085, 13. Juni 2019.

Hält RAM für mindestens 1 Stunde.


 

Ich möchte das Problem des "gewichteten Durchschnittspreises" in der CPositionInfo-Beschreibung, Befehl PriceOpen(), wieder aufgreifen

Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests

Service Desk. Beschwerden, Vorschläge.

Francuz, 2019.06.13 11:36

Fehler in der Beschreibung der Standardbibliothek

Speziell in der Beschreibung des Befehls CPositionInfo, PriceOpen()

https://www.mql5.com/ru/docs/standardlibrary/tradeclasses/cpositioninfo/cpositioninfopriceopen

Der zurückgegebene Wert ist nicht der "Eröffnungspreis", sondern der"gewichtete durchschnittliche Eröffnungspreis".

Ein Beispiel:

Wir eröffnen eine Position für 1 Lot zum Preis von 61532. In diesem Fall wird PriceOpen() 61532 zurückgeben.

Wir erhöhen unsere Position zusätzlich um 1 Lot bei 61615. In diesem Fall gibt PriceOpen() den gewichteten Durchschnittspreis von zwei Lots 61573,5 zurück, nicht den Eröffnungskurs der Position.

Ich würde mir wünschen, dass in der Beschreibung nicht nur ein einziges Wort korrigiert wird, sondern auch eine kurze Erklärung bzw. Illustration.


Das Problem desgewichteten durchschnittlichen Eröffnungspreises hat unangenehme Folgen.

Das Problem ist, dass, wenn man eine Position auf den Betrag erhöht, der nicht ohne den Rest geteilt werden kann, Pfennige geteilt werden, die beim Runden verloren gehen. Das hat zur Folge, dass sich der Saldo am Ende nicht addiert. Alle Transaktionen werden ausschließlich in ganzen Rubeln durchgeführt, der Endsaldo konvergiert nicht aufgrund der verlorenen Kopeken.

Schema der Reproduktion des Fehlers mit dem Verlust von Kopeken in der Waage, auch im manuellen Handel.

1 Los zu einem geraden Preis kaufen, 1 Los zu einem ungeraden Preis kaufen, 1 Los zu einem geraden Preis kaufen, 1 Los verkaufen, 1 Los verkaufen, 1 Los verkaufen.

Ich werde zusätzlich erklären, worin der Fehler besteht:

Erläuterung

Spalte "A" sind die Istwerte (Transaktionspreise). Spalte "B" ist eine Ableitung von Spalte "A" mit einem Verlust an Genauigkeit. Jeder qualifizierte Buchhalter wird Ihnen erklären, dass die Bilanz nur mit den tatsächlichen Werten und niemals mit den Derivaten zur Absicherung von Verlusten abgeglichen werden sollte.

Der Penny wird nicht nur falsch im Terminal angezeigt, sondern bewegt sich tatsächlich zwischen dem Konto des Kunden und dem des Brokers. Jeder Anwalt oder Finanzbeamte wird Ihnen sagen, dass dies ein "Betrug" ist und Gegenstand eines Rechtsstreits zwischen dem Händler und dem Broker sein könnte.

Was ist das?

Die Behauptung, dass die Groschen wirklich verloren sind, wird durch die Durchführung einer Korrektur nach einer beträchtlichen Zeitspanne bestätigt. Welche Art von Korrektur? Warum diese seltsamen Mengen?

Документация по MQL5: Стандартная библиотека / Торговые классы / CPositionInfo / PriceOpen
Документация по MQL5: Стандартная библиотека / Торговые классы / CPositionInfo / PriceOpen
  • www.mql5.com
Стандартная библиотека / Торговые классы / CPositionInfo / PriceOpen - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Francuz:

Ich möchte das Problem des "gewichteten Durchschnittspreises" in der CPositionInfo-Beschreibung, Befehl PriceOpen(), wieder aufgreifen

Schauen wir es uns an.

Es wird uns sehr helfen, wenn Sie uns Ihr Investoren-Passwort vorübergehend in Ihrem persönlichen Konto für ein paar Stunden zur Verfügung stellen. Wir möchten die Preise und eventuelle Rundungen in Ihrer Transaktionstabelle überprüfen. Sie werden kontaktiert.

Die Bestätigung der Aussage, dass Groschen wirklich verloren sind, ist eine Korrektur nach einer erheblichen Zeitspanne. Welche Art von Korrektur? Warum in solch seltsamen Mengen?

Eine Korrektur ist etwas anderes.

 
MetaQuotes Software Corp.:

Schauen wir es uns an.

Es wird uns sehr helfen, wenn Sie uns Ihr temporäres Investoren-Passwort für ein paar Stunden mitteilen. Wir möchten die Preise und eventuelle Rundungen in Ihrer Kalkulationstabelle überprüfen. Sie werden von uns kontaktiert.

Die Korrektur ist anders.

Otkritie Broker

Server Open-Demo
Anmeldung : 1010955
Passwort : B7NhSEwx
Anleger B7NhSEwx (nur Lesezugriff)

In der Demo ist das Anlegerpasswort dasselbe wie das Kontopasswort, es gibt also keinen Unterschied zwischen den beiden.
 
Торговые сигналы для MetaTrader 5: Error
Торговые сигналы для MetaTrader 5: Error
  • www.mql5.com
Символ Сделки Sell Buy Символ Общая прибыль, USD Убыток, USD Прибыль, USD Символ Общая прибыль, pips Убыток, pips Прибыль, pips Точечные графики распределения MFE и MAE Для каждой открытой позиции в течение ее жизни записываются значения максимальной прибыли (MFE) и максимального убытка (MAE). Эти показатели дополнительно...
 
Ilyas:

Wenn ich mich richtig erinnere, haben wir diese Funktion bereits vor einigen Jahren diskutiert, allerdings ging es dabei um die Frage, welche Überladung am ehesten durch Vererbung oder genauer durch Parameter aufgerufen werden sollte.

Ja... Ich erinnere mich... C++ verwendet die nächstgelegene Vererbungsüberladung - so dass spätere Änderungen in Basisklassen (Auftreten einer neuen parametergenauen Überladung) die Reihenfolge der Berechnungen in abgeleiteten Klassen nicht beeinflussen würden (diese neue Überladung würde nicht aufgerufen werden)

Bitte beachten Sie die folgenden Hinweise:

void f( int a,     int b = 2 ); //(1)
//...
void f( int a = 1, int b     ); //(2) //Error: 'b' - missing default value for parameter
//...
void f( int a, int b ) {}

Es scheint eine Lappalie zu sein - schreiben Sie einfach

void f( int a = 1, int b = 2 ); //(2) //нормально

und glücklich sein, aber der Punkt ist genau, dass es nicht notwendig ist, zweimal oder mehrmals b = 2 zu schreiben, und daher bei weiterer Änderung auf, sagen wir: b = 3 - es wird notwendig sein, nur an einer Stelle zu ändern (und nicht an zwei oder mehr), und daher (unter Berücksichtigung der Verteilung des Programms) ist es unmöglich, es an anderen Stellen zu vergessen

 

Hilfe

2019.07.02 19:41:56.305 my_HMA7C_121 (FTSE100,H6)       BarsCalculated() вернул -1, код ошибки 4806

ERR_INDICATOR_DATA_NOT_FOUND

4806

Angeforderte Daten nicht gefunden

Gleichzeitig wird der Indikator auf dem Diagramm normal angezeigt.

Was sollte ich tun?