Fehler, Irrtümer, Fragen - Seite 1774

 
A100:

Darüber hinaus

class A { public:
    A() { Print( __FUNCTION__ ); } //в MQL вызывается, в С++ - нет
};
void g( int i )
{
    if ( i )
        return;
    static A a;
}
void OnStart()
{
    g( 1 );
}
In C++ zum Beispiel führt nicht jeder Funktionsaufruf automatisch zum Aufruf des A::A-Konstruktors
Danke, das werde ich im Hinterkopf behalten.
 

Zum Beispiel gibt es im MT5-Terminal einige Expert Advisors (MACD Sample und Gleitende Durchschnitte), aber wenn Sie im Code dieser Expert Advisors einen bestimmten TF in das Indikator-Handle einfügen, z.B. PERIOD_H4, anstelle von "_Period", dann erscheint während des Tests durch offene Preise auf höheren TFs ein Fehler beim Laden des Indikators: cannot load indicator 'MACD' [4805] und als Ergebnis: Tester gestoppt, weil OnInit fehlgeschlagen ist. Was ist Ihre Meinung? Vielleicht mache ich etwas falsch?

Das Problem ist, dass die Autovalidierung Expert Advisors anhand ihrer offenen Preise überprüft, und das ist ein Problem. Ich habe versucht, den Indikator als benutzerdefinierten Indikator einzufügen, der Fehler ist derselbe.

int OnInit(void)
{
//--- Handelsklasse vorbereiten, um Positionen zu kontrollieren, wenn der Absicherungsmodus aktiv ist
ExtHedging=((ENUM_ACCOUNT_MARGIN_MODE)AccountInfoInteger(ACCOUNT_MARGIN_MODE)==ACCOUNT_MARGIN_MODE_RETAIL_HEDGING);
ExtTrade.SetExpertMagicNumber(MA_MAGIC);
ExtTrade.SetMarginMode();
//--- Gleitender Durchschnittsindikator
ExtHandle=iMA(_Symbol,PERIOD_H4,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE);
if(ExtHandle==INVALID_HANDLE)
{
printf("Fehler beim Erstellen des MA-Indikators");
return(INIT_FAILED);
}
//--- ok
return(INIT_SUCCEED);
}

 
Alexandr Bryzgalov:

Ich kann meinen Kunden nicht privat antworten, finanzielle Transaktionen werden blockiert, Kunden sind empört, weil sie die gekauften Produkte nicht aktivieren können.

schrieb eine Anfrage an SD #1656656

Bitte bringen Sie das am Ende in Ordnung.

Ich habe versucht, Geld abzuheben, aber die Finanztransaktionen sind blockiert.

sollten Sie zumindest angeben, dass Sie nicht zurücktreten müssen und wann dies möglich sein wird.
 

Ich habe bereits zwei Anfragen gestellt, keine Antwort auf #1656656, #1655558:


 

Beim MT4-Wechsel von MetaQuotes-Demo auf den JustForex-Live-Handelsserver (und zurück) wird die rechte Preisskala abgeschnitten.

Das kann daran liegen, dass die Symbole in JustForex-Live EURUSD.ecn heißen.

 
fxsaber:

Beim MT4-Wechsel von MetaQuotes-Demo auf den JustForex-Live-Handelsserver (und zurück) wird die rechte Preisskala abgeschnitten.

Vielleicht liegt es daran, dass die Symbole in JustForex-Live EURUSD.ecn heißen.

Auch wenn Sie von einem 5-stelligen Server zu einem 4-stelligen Server wechseln - und wieder zurück - bleiben manchmal 4 Ziffern auf der Skala

 
Was bedeutet das?


"Max. deposit load: 125.30%"


In einem der Signale

 

Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests

Liste der Änderungen in MetaTrader 5 Client Terminal Builds

MetaQuotes Software Corp., 2017.01.26 13:30

Neue Version von MetaTrader 5 build 1525: Darstellung der Historie als Positionen und Verbesserung des Testers

  1. Tester: Der Strategietester bleibt jetzt im Optimierungsmodus, nachdem ein einzelner Test ausgeführt wurde. Wenn bisher ein Einzeltest von der Registerkarte Optimierungsergebnisse aus gestartet wurde, wechselte der Strategietester vollständig in den Einzeltestmodus. Es war notwendig, sie in den Einstellungen wieder zu aktivieren, um die Optimierung erneut durchführen zu können.

Da das Modell des Optimierers agentenbasiert ist, was verhindert, dass ein einzelner Lauf, der bereits durch den Optimierer läuft, noch nicht abgeschlossen ist?

Zum Beispiel die Optimierung. Es bleiben noch ein paar Stunden. Aber ich sehe bereits interessante Ergebnisse. Ich möchte einige gute Einzelergebnisse sehen, um sie im Backtester laufen zu lassen. Gleichzeitig darf man aber nicht aufhören zu optimieren (dies gilt insbesondere für GAs). Ist es in dieser Situation möglich, einen der lokalen Agenten freizugeben und ihm einen einzelnen Lauf zu senden? Und dann fahren Sie fort, diesen Agenten mit Optimierungspaketen zu laden.

Jetzt werden die Studien gestoppt, bis der Optimierer fertig ist. Das kann sehr lange dauern.

 
fxsaber:

Da das Optimierungsmodell agentenbasiert ist, was hindert Sie daran, einen einzelnen Lauf zu implementieren, der bereits durch einen Optimierer gelaufen ist, der noch nicht abgeschlossen ist?

Nein, niemand wird das Prüfgerät um seiner selbst willen verkomplizieren.

Das Problem kann leicht durch die zweite Instanz des Terminals gelöst werden, wo man eine einzelne Berechnung parallel laufen lassen kann, während eine lange Optimierung im Gange ist.

Jeder Händler, der aktiv in der Forschung tätig ist, hat mehr als ein oder zwei Terminals. Auf der einen Seite wird gehandelt, auf der anderen getestet und so weiter, je nach den Anforderungen.

 
Renat Fatkhullin:

Nein, niemand wird das Prüfgerät um seiner selbst willen verkomplizieren.

Das Problem kann leicht mit der zweiten Kopie des Terminals gelöst werden, wo man einzelne Berechnungen parallel laufen lassen kann, während eine lange Optimierung läuft.

Jeder Händler, der aktiv in der Forschung tätig ist, hat nicht nur ein, sondern zwei Terminals. Auf der einen Seite wird gehandelt, auf der anderen getestet und so weiter, je nach den Anforderungen.

Das ist richtig. Aber wie überträgt man die Eingabeparameter eines einzelnen Laufs auf den Tester eines anderen Terminals, der sich in der Registerkarte Ergebnisse einer noch unvollständigen Optimierung befindet?

Und wird es keinen Konflikt geben, wenn das zweite Terminal als terminal64-2.exe (/portable) ausgeführt wird - eine Kopie von terminal64.exe im selben Ordner. Es soll derselbe Bases-Ordner verwendet werden. Oder reicht es aus, über mklink einen gemeinsamen Ordner Bases zu erstellen?