Fehler, Irrtümer, Fragen - Seite 1231

 

P./S.: Es ist mir gelungen, ein Produkt aus dem Market in MT5 ohne Autorisierung meines Kontos in MQL5 herunterzuladen (ich habe es nicht in MT4 ohne Autorisierung versucht).

Ich wusste vorher nichts von dieser Möglichkeit.

 
meat:

Und offen gesagt, Ihre Argumente sind seltsam. Diejenigen, die nicht wissen, wie man es benutzt, benutzen es nicht. Haben Sie viele Bullshit-Codes gesehen, in denen FileFlush benutzt wird? Ich habe keinen gesehen.

Fast jeder hat es falsch eingesetzt, und dann haben sie "Metatrader-Lags". Diese WinAPI-Funktion ist extrem langsam.

Als wir zu 600 Builds übergingen, haben wir den gesamten Dateibetrieb komplett umgeschrieben und ihn dutzendfach auf die üblichen kleinteiligen Betriebsarten beschleunigt.


Und daserneute Öffnen der Datei macht den Code noch schwieriger.

Aber es macht Sie sofort über die Konsequenzen nachdenken, nicht setzen FileFlush auf jeden Tick und dann nicht mit den Ergebnissen in der Tester von Handelsstrategien überrascht sein.

 
Renat:

Fast jeder hat es falsch benutzt, und dann haben sie "Metatrader-Bremsen".

Du übertreibst. Vielleicht gab es ein paar schlechte Programmierer, aber verallgemeinere nicht. Aus deinen Worten ergibt sich, dass alle hier Dummköpfe und Idioten sind.

Aber man denkt sofort an die Folgen...

Renat, das kann nicht dein Ernst sein, um Himmels willen! Es hat den Anschein, als würden Sie den Schülern Hausaufgaben aufgeben, als würden sie zwar leiden, aber denken lernen usw. ("hart im Lernen - leicht im Kämpfen"). Positionieren Sie MQL als Schulungshandbuch für Dummies oder als Arbeitsinstrument für Programmierer? Wenn letzteres, warum setzen Sie dann künstliche Stöcke in das Rad?

Wenn jemand etwas nicht weiß oder nicht kann - das ist sein persönliches Problem, soll er es doch lernen. Warum sollten sie die Funktionalität für alle anderen einschränken?

 
meat:

Du übertreibst. Vielleicht gab es ein paar schlechte Programmierer, aber du solltest nicht verallgemeinern. Aus deinen Worten ergibt sich, dass alle hier Nulpen und Idioten sind.

Renat, das kann nicht dein Ernst sein, um Himmels willen! Es hat den Anschein, als würden Sie den Schülern Hausaufgaben aufgeben, als würden sie zwar leiden, aber denken lernen usw. ("hart im Lernen - leicht in der Schlacht"). Stellen Sie MQL als Trainingshandbuch für Dummies oder als Arbeitsinstrument für Programmierer dar? Wenn letzteres, warum stecken Sie dann künstliche Stöcke in die Räder?

Wenn jemand etwas nicht weiß oder nicht kann - das ist sein persönliches Problem, soll er es doch lernen. Warum soll er die Funktionalität für alle anderen einschränken?

Schauen Sie sich bitte in unseren Foren und auf kodobase um.

Wir sind nicht in einer Schule. Wir befinden uns in einer viel schlimmeren Situation, in der es eine Menge schlechten Code gibt und in der MetaQuotes immer von vornherein die Schuld gegeben wird. Wenn Sie es auf diese Weise tun, ist es Ihre Schuld, und wenn Sie es andersherum tun, ist es immer noch Ihre Schuld.

Die Entscheidung, FileFlush zu deaktivieren, beruht auf der Einsicht, dass die Deaktivierung das geringere Übel ist, als zuzusehen, wie Händler langsamer werden und sich beschweren. Wir haben sie nicht einfach nur deaktiviert, sondern den gesamten Dateibetrieb komplett umgeschrieben, so dass es sich jetzt um eine äußerst effiziente und schnelle Engine handelt, die Fehler und ineffiziente Entwicklerpraktiken ausschaltet. Wir haben sehr intensiv nachgedacht.


Zur Information: Ich übertreibe nicht, denn ich führe seit über 13 Jahren persönlich öffentliche Diskussionen in unseren Foren:


 
crOss:
Nehmen Sie einen beliebigen Expert Advisor (aus den MetaQuotes-Beispielen), führen Sie ihn unter Build 975 für einen bestimmten Zeitraum und mit denselben Parametern aus,
Erhalten Sie die Ergebnisse, d.h. die Renditekurve und die Tabelle der Geschäfte.


Führen Sie nun denselben Expert Advisor unter 1010 Build für denselben Zeitraum und mit denselben Parametern aus, erhalten Sie völlig andere Ergebnisse...

P.S. Metatester ist 32 Bit.

Was zeigt die Deal-Analyse im 975-Build- und 1010-Build-Tester?

Suchen Sie zunächst den Divergenzpunkt. Vergleichen Sie den Wert der Swaps. Betrachten Sie das Volumen der Geschäfte

 
Da ich seit einer Woche nichts mehr vom Service Desk gehört habe, werde ich das Problem hier ansprechen(MT4 745 build):
1. Ich habe einen Indikator mit diesem Code:
#property strict
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
{
   EventSetTimer(10);
   return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start ()
{
   return 0;
}
//+------------------------------------------------------------------+

void OnTimer()
{
   ChartSetSymbolPeriod(0, _Symbol, 1);
}
2. Ich habe einen Expert Advisor mit diesem Code:
#include <ChartObjects\ChartObjectsTxtControls.mqh>     


CChartObjectButton *p_button1 = NULL;                              
int OnInit()
{
   p_button1 = new CChartObjectButton; 
   p_button1.Create(0, "ddd", 0, 10, 20, 30, 40); // create button
 
   return INIT_SUCCEEDED;
}

void OnDeinit(const int reason)
{
   if (p_button1 != NULL)
   {
      p_button1.Delete();
      delete p_button1;
   }
}
void OnTick(void)
{
}

3. Zuerst den Indikator anhängen, dann den Expert Advisor
4. Wir stehlen das Diagramm und warten darauf, dass es hängen bleibt, wenn wirChartSetSymbolPeriod
5 verwenden. Alles funktioniert mit manueller TF-Umschaltung undmit manueller Umschaltung der Währungspaare. Aber es funktioniert nicht mit Software (entweder Stack on curve release oder ein Leck ....)


Es ist mir gelungen, das Problem mit dem TF-Switching zu lösen - API erweist sich wieder einmal als zuverlässiger
Aber wie kann man ein Währungspaar mit API wechseln?

 
ALXIMIKS:
Da es seit einer Woche keine Rückmeldung vom Service Desk gibt, melde ich das Problem hier(MT4 745 build):
1. Es gibt einen Indikator mit diesem Code:
2. Es gibt einen Expert Advisor mit diesem Code:

3. Zuerst den Indikator anbringen, dann den Experten
4. Das Diagramm stehlen und warten, bis es bei der Verwendung vonChartSetSymbolPeriod hängen bleibt
5. Alles funktioniert mit manueller Umschaltung von TF undmit manueller Umschaltung von Währungspaaren. Aber es funktioniert nicht mit Software (entweder Stack on curve release oder ein Leck ....)


Es ist mir gelungen, das Problem mit der TF-Umschaltung zu lösen - die API erweist sich einmal mehr als zuverlässiger
Aber wie kann man das Währungspaar mit API auf das gewünschte umstellen?

Ihre Bewerbung ist nicht verloren.

Wir werden Ihnen auf jeden Fall antworten.

 
Kann jemand aufklären: Mein Rang (Profil) ist in den letzten Tagen gesunken. Handelt es sich dabei um eine neue Funktion, eine Änderung im Algorithmus der Website oder um etwas anderes?
 
Renat:

Schauen Sie sich bitte in unseren Foren und auf kodobaza um.

Wir sind nicht in einer Schule. Wir befinden uns in einer viel schlimmeren Situation, in der es eine Menge schlechten Code gibt und in der MetaQuotes immer von vornherein an allem Schuld ist. Wenn Sie es auf diese Weise tun, ist es Ihre Schuld; wenn Sie es andersherum tun, ist es immer noch Ihre Schuld.

Haben Sie schon einmal darüber nachgedacht, dass Sie vielleicht selbst für die Verbreitung dieser Geschichte verantwortlich sind? Es stellt sich also heraus, dass Sie sich von vornherein die Schuld geben.Einige Neulinge wenden sich an Sie, weil sie sich beschweren, dass etwas nicht funktioniert, und anstatt es ihnen höflich zu erklären oder sie zu schicken, um die Fakten zu studieren, knicken Sie vor ihnen ein und bauen Ihr Produkt um, um ihre Unwissenheit zu befriedigen. Am Ende leidet die Qualität des Produkts, und diese Leute lernen nichts.

Ich verstehe, wenn wir über eine Handelsplattform sprechen würden. Aber wir sprechen über eine Programmiersprache, in der Flexibilität wichtig ist. Und Sie nehmen diese Flexibilität weg. Sie sind selbst Programmierer und wissen wahrscheinlich, dass es keine Universallösungen gibt. Ihr vermeintlich effektiver Mechanismus ist nur für einige bestimmte Fälle geeignet und in anderen Fällen absolut nutzlos.Der eine muss alle 10 Sekunden Daten auf die Festplatte ausgeben, der andere alle 10 MB, der dritte bei jedem Tick (ja, ja, das ist notwendig, wenn die Informationen sehr wichtig sind). Und noch einmal: Wenn jemand etwas falsch verwendet, ist das sein persönliches Problem, kein Grund, seiner Unwissenheit nachzugeben und sich ihr zu beugen.

Ich hatte einen Code, bei dem FileFlush in regelmäßigen Abständen Informationen auf die Festplatte ausgibt. Und in letzter Zeit ist mir aufgefallen, dass nichts gedumpt wird, obwohl ich 30-40 Mb an Daten speichere. Und wenn das Terminal abstürzt (was nicht selten vorkommt), ist alles verloren. Und Sie haben sich nicht einmal die Mühe gemacht, uns wenigstens davor zu warnen. Es untergräbt das Vertrauen in MQL gründlich, wenn jede Funktion jederzeit aufhören kann zu funktionieren.

 
meat:

Haben Sie schon einmal darüber nachgedacht, dass Sie selbst zur Verbreitung dieser Geschichte beitragen könnten? Es stellt sich also heraus, dass Sie sich von vornherein für schuldig halten.Einige Neulinge wenden sich an Sie, weil sie sich beschweren, dass etwas nicht funktioniert, und anstatt es ihnen höflich zu erklären oder sie zu schicken, um die Fakten zu studieren, geben Sie klein bei und bauen Ihr Produkt um, um ihre Unwissenheit zu befriedigen. Am Ende leidet die Qualität des Produkts, und diese Leute lernen nichts.

Wir denken ständig und tief genug. Folglich treffen wir solche Entscheidungen, damit jeder weniger Fehler macht.


Ich verstehe, wenn wir über eine Handelsplattform sprechen würden. Aber wir reden hier über eine Programmiersprache, in der Flexibilität wichtig ist. Und Sie nehmen diese Flexibilität weg. Sie sind selbst Programmierer und wissen wahrscheinlich, dass es keine Universallösungen gibt. Ihr vermeintlich effektiver Mechanismus ist nur für bestimmte Fälle geeignet und in anderen Fällen absolut nutzlos.Der eine muss alle 10 Sekunden Daten auf die Festplatte ausgeben, der andere alle 10 MB, der dritte bei jedem Tick (ja, ja, das ist notwendig, wenn die Informationen sehr wichtig sind). Und noch einmal: Wenn jemand etwas falsch verwendet, ist das sein persönliches Problem, kein Grund, seiner Unwissenheit nachzugeben und sich ihr zu beugen.

Lassen Sie sich für uns antworten, so "das sind Ihre persönlichen Probleme" auf unseren Foren. Mal sehen, wie viele Stunden Sie aushalten können, bevor man Ihnen sagt, wie Sie vorgehen sollen und warum Sie falsch liegen.


Ich habe das alles nicht umsonst gemacht: Ich hatte einen Code, bei dem FileFlush regelmäßig Informationen auf die Festplatte geschrieben hat. Und in letzter Zeit ist mir aufgefallen, dass nichts gedumpt wird, obwohl die Menge der gesammelten Daten 30-40 Mb beträgt. Das Ergebnis ist, dass bei einem Terminalabsturz (und das ist kein seltenes Ereignis) alles verloren ist. Und Sie haben sich nicht einmal die Mühe gemacht, uns wenigstens davor zu warnen. Es untergräbt das Vertrauen in MQL gründlich, wenn jede Funktion jederzeit aufhören kann zu funktionieren.

Ich habe bereits darauf hingewiesen, dass unsere Priorität darin besteht, effizient zu arbeiten und die Leistung unserer Plattform zu maximieren, und nicht, nebenbei zu arbeiten. Dies gilt in erster Linie für alle Dateioperationen: Protokolle, Datenbanken und Expertendateien.

Wenn Sie so sehr daran interessiert sind, extern mit offenen(und das ist an sich schon ein ernstes Problem) Dateien zu arbeiten, dann sollten Sie etwas unternehmen.

Kein Grund, gegen die Wand zu fahren - diese Entscheidung ist bewusst und wird nicht geändert werden.

Grund der Beschwerde: