Fragen von einem "Dummy" - Seite 87

 

Nein, so funktioniert es nicht, außer dass MQ Ausnahmen für den Präprozessor behandelt.

Ich kann Ihnen raten, eine Vorlage zu schreiben und die gleiche Art von Code zu generieren. Das wird die Anzahl der Zeilen nicht verringern, aber die Anzahl der über die Tastatur eingegebenen Zeichen.

 
Urain:

Nein, so wird es nicht funktionieren, es sei denn, MQ behandelt Ausnahmen für den Präprozessor.

Ich schlage vor, eine Vorlage zu schreiben und dieselbe Art von Code zu generieren. Dadurch wird die Anzahl der Zeilen nicht verringert, aber die Anzahl der über die Tastatur eingegebenen Zeichen wird reduziert.

Ja, ich hatte sofort die Idee, einen solchen Code in Perl zu generieren und an MetaEditor zu übergeben... aber ich hoffte immer noch auf einheimische Werkzeuge.
 
x100intraday:
Ich hatte sofort die Idee, sie in Perl zu generieren und an MetaEditor zu übergeben... Aber ich hatte gehofft, einheimische Werkzeuge verwenden zu können.

Ich generiere regelmäßig in MQL5, zum Beispiel hier:

void OnStart()
  {
//---
   WriteFile("_Case_iCustom_");   
  }
//+------------------------------------------------------------------+
void WriteFile(string folder_)
  {
   int han=FileOpen(folder_+".mqh",FILE_WRITE|FILE_CSV|FILE_ANSI," ");
   if(han!=INVALID_HANDLE)
     {
      for(int i=1;i<62;i++)
        {
         string temp="";
         for(int j=0;j<i;j++)
           {
            temp+=",_P(pr["+(string)j+"])";
           }
         FileWrite(han,"case  "+(string)i+": hndl=iCustom(symbol,period,name"+temp+"); break;");
        }

      FileClose(han);
     }
   else Print(__FUNCTION__+" File open failed "+folder_+".mqh, error",GetLastError());
   ResetLastError();
   Print("В директории File был сгенерирован файл "+folder_+".mqh");
  }
//+------------------------------------------------------------------+

Dann kopiere ich das generierte Fragment und füge es in den Code ein.

 
Urain:

In MQL5 generiere ich z.B. hier einen Stammkunden:

Dann kopiere ich das generierte Fragment und füge es in meinen Code ein.

Und was ist das für ein seltsames Ding, das Sie erzeugt haben? Ich lasse es laufen, um zu sehen)). Oder ist es nur ein Beispiel?
 
Urain:

In MQL5 generiere ich z.B. hier einen Stammkunden:

Dann kopiere ich das generierte Fragment und füge es in meinen Code ein.

Ich hatte gehofft, die nativen Tools - Klassen und Strukturen, Arrays und Schleifeninitialisierung, aber nicht die Generierung durch MQL - verwenden zu können. Aber ich werde ein Beispiel im Hinterkopf behalten, danke.
 
x100intraday:

Renat, die Frage war eher theoretisch als praktisch.

Um nicht im Nebel zu versinken, verweise ich auf ein Beispiel aus der iFractals-Hilfe. Es stimmt zwar, dass es dort einen Indikator gibt, aber vereinfachen wir die Aufgabe auf eine einmalige Berechnung des grafischen Layouts durch ein Skript.

Angenommen, ich möchte die Zeit aller fraktalen Spitzenbalken in der gesamten Geschichte (oder in einem beträchtlichen Teil davon in einem mittleren Zeitrahmen, in dem es viele Fraktale gibt) herausfinden. Habe ich richtig verstanden, dass es besser ist,CopyTime in der Schleife bei FrUpBuffer[shift]!=EMPTY_VALUE bis zu einer Tiefe von 1 Element wiederholt zu stören:

und schnellere Ergebnisse zu erhalten, als die Geschichte mit CopyTime in einer Tiefe von FrUpBuffer zu fressen:

Wenn die erste Option schneller ist, handelt es sich dann um einen absoluten Gewinn oder hängt alles von der Gesamtzahl der gefangenen Fraktale ab (z. B. gibt es deutlich mehr bei kleinen TFs)?

Es ist besser, dies in der Praxis zu überprüfen.

Grob gesagt: Wenn die Anzahl der Fraktale 1 pro 100 Balken beträgt, dann kann die Methode, jeweils einen Balken herauszuziehen, schneller sein. Andernfalls ist es besser, das Korrekturlesen in Blöcken von z. B. 16384 Elementen durchzuführen. Dies ist ein Kompromiss zwischen Geschwindigkeit und Speicherplatz.

 
tol64:
Was ist das für eine obskure Sache, die Sie da geschaffen haben? Ich lasse es laufen, um zu sehen.) Oder ist das nur ein Beispiel?
Ich habe die Funktion, die iCustom aufruft, mit zwei Zeichenketten als Parameter geschrieben.
x100intraday:
Ich hatte gehofft, für die nativen Werkzeuge - Klassen und Strukturen, Arrays von Arrays, Initialisierung in der Schleife, ich meine, nicht Generation von MQL bedeutet. Aber ich habe noch ein Beispiel im Kopf, danke.
Ich habe diese Methode in meinem Artikel Verwendung von Pseudo-Vorlagen als Alternative zu C++-Vorlagen beschrieben.
 

Ich erinnerte mich an meine Frage an Renate. Kann jemand klären, was damit gemeint war?

Если я использую IndicatorRelease(), значит я совершаю огромную и концептуальную ошибку. 

Und warum?
 

Frage Nummer 1. Auf Windows 7 64 bit habe ich tester 527 build installiert, wenn ich das Programm im Taskmanager schließe, verschwindet auch der Prozess mit dem gleichen Namen, es kommt heraus, dass tester seine Aufgaben nicht im stillen Modus ausführt. Wie kann ich es reparieren?

Frage Nr. 2. Wenn Sie das Betriebssystem zu booten, das Prüfgerät nicht neu starten, der einzige Weg für sich selbst fand eine direkte Hände legen Sie das Programm auf Autostart, die nicht bequem ist, weil beim Start erscheint ein Fenster mit dem Programm, würde ich gerne stillen Modus des Betriebs

Frage Nr. 3. Nach welchem Prinzip verteilt Aufgaben, Arbeit Computer mit einem 4-Kern und nicht ahti Internet, tut viel mehr Aufgaben als zu Hause zu, 4-Kern (aber viele Male produktiver) tut Aufgaben weniger, und dann steht einfach. Ich habe gelesen, dass die Tester der Leute Gigabytes an Geschichten ausstoßen. Wo kann dies eingesehen werden, wo wird es gepumpt.

Frage Nr. 4. Hat jemand ein Problem mit dem Senden einer SMS mit einem Code. Dies ist das dritte Mal, dass ich versuche, die SMS zu erhalten, es kommt immer mit Trabble heraus.

Vielen Dank im Voraus für die Antworten.