Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1163

 
den Balkenindex und ich nehme ihn, um das Timing des Balkens zu bestimmen. Offensichtlich müssen wir hier tiefer graben, indem wir auf Sekunden in der Taktzeit gehen
 
Evgeniy Butakov:
Ich nehme den Taktindex, um die Zeit des Taktes zu bestimmen. Offensichtlich müssen wir hier tiefer graben, um zu den Sekunden in Taktformation zu gelangen

Lesen Sie die Dokumentation sorgfältig durch. Achten Sie auf die Funktionsüberlastungen.

Warum nehmen Sie die Anzahl der Balken von Zeit zu Zeit? Ich schreibe Ihnen von Zeit zu Zeit.

int  CopyRates( 
   string           symbol_name,       // имя символа 
   ENUM_TIMEFRAMES  timeframe,         // период 
   datetime         start_time,        // с какой даты 
   datetime         stop_time,         // по какую дату 
   MqlRates         rates_array[]      // массив, куда будут скопированы данные 
   );

Von welchem Datum bis zu welchem Datum, nicht nur Datum, sondern Datum_Zeit. Nehmen Sie also von der Eröffnungszeit des Balkens minus 2*PeriodSeconds(PERIOD_M15) bis zum Zeitpunkt des nächsten Balkens H4

 
Alexey Viktorov:

Lesen Sie die Dokumentation sorgfältig durch. Achten Sie auf die Funktionsüberlastungen.

Warum nehmen Sie die Anzahl der Balken von Zeit zu Zeit? Ich schreibe Ihnen von Zeit zu Zeit.

Von welchem Datum bis zu welchem Datum, nicht nur Datum, sondern Datum_Zeit. Sie müssen von der Eröffnungszeit des Balkens minus 2*PeriodSeconds(PERIOD_M15) bis zum Zeitpunkt des nächsten Balkens H4 nehmen

Ich habe den Dreh raus... Ich habe die benötigte Zeit "von welchem Datum" und "bis zu welchem Datum" in Sekunden umgewandelt und ich folge ihr... Und warum genau 2*PeriodSeconds(PERIOD_M15)? 900 Sekunden sind genug für mich, d.h. ein Bar auf M15. Herzlichen Dank!!!

 
Evgeniy Butakov:

Ich habe es herausgefunden... Ich habe die geforderte Zeit "von welchem Datum" und "bis zu welchem Datum" in Sekunden umgewandelt und ich tanze von ihnen... Und warum genau 2*PeriodSeconds(PERIOD_M15)? 900 Sekunden reichen mir, d.h. ein Balken auf M15. Herzlichen Dank!!!

Auf der Grundlage dieses Wunsches

Evgeniy Butakov:

Guten Tag!

Zum zweiten Mal mit meiner Aufgabe, innerhalb des Balkens des höheren Rahmens (H4) auf Kosten der Balken des niedrigeren zu berechnen. Ich habe verstanden, wie man die Daten auf M15 auf dem Balken von H4 erhält. Aber ich bin an dieser Stelle stecken geblieben. Ich sammle zum Beispiel Daten vom M15 TF auf der 3. H4-Kerze und als Ergebnis werden alle 16 Kerzen innerhalb des 3. Aber wie erhalte ich zusätzlich zu den 16 Balken auf M15 weitere Balken, da diese bereits von der 4. Kerze auf H4 stammen werden? Bitte führen Sie mich, geben Sie mir einen Tipp.

Zum Abrufen von Daten aus M15 wird der folgende Code verwendet:

Wenn du nur einen Balken brauchst, brauchst du nicht zu multiplizieren, und das war's.

Und noch ein kostenloser Tipp: Verzichten Sie auf Nachschlag. Was ist klarer, wenn Sie den Code eines anderen oder Ihren eigenen Code nach einiger Zeit lesen? 1800 oder 2*PeriodSeconds(PERIOD_M15), was 2 Balken der Periode M15 in Sekunden bedeutet. Und was wird eine Woche oder ein Monat in Sekunden sein? Sollte ich jedes Mal nachrechnen oder meine Speicherzellen mit unnötigen Informationen verstopfen?

 
Alexey Viktorov:

Basierend auf diesem Wunsch.

Wenn du nur einen Balken brauchst, brauchst du nicht zu multiplizieren, und das war's.

Und noch ein kostenloser Tipp: Verzichten Sie auf Nachschlag. Was ist klarer, wenn Sie den Code eines anderen oder Ihren eigenen Code nach einiger Zeit lesen? 1800 oder 2*PeriodSeconds(PERIOD_M15), was 2 Balken der Periode M15 in Sekunden bedeutet. Und was wird eine Woche oder ein Monat in Sekunden sein? Sollte ich jedes Mal nachrechnen oder meine Speicherzellen mit unnötigen Informationen verstopfen?

Ja, Alexey, danke für die Anleitung und die Hinweise. Ich habe die Funktion PeriodSeconds völlig vergessen ;).
 
int file = FileOpen("expert_file", FILE_WRITE | FILE_BIN);
   if (file != INVALID_HANDLE){
      uint file_bytes = FileWriteArray(file, file_data);
      FileClose(file);
      Print("Bytes count: ", file_bytes);
      Print("Error: ", GetLastError());
   } else{
      return false;  
   }    

Versucht, ein Array von Bytes in eine Datei zu schreiben.

Protokoll

Die Datei selbst.

Das heißt, das Programm gibt zurück, dass es 186368 Bytes in die Datei geschrieben hat, aber die Datei selbst ist völlig leer. Und es liegt kein Fehler vor.

 

Hallo.

Es gibt ein Problem. Eine Einzahlung von, sagen wir, 1k wurde auf ein Maklerkonto vorgenommen. Dann wurde dieses Depot mit weiteren 5k aufgefüllt. Als Ergebnis in MT5 "Geschichte" Bericht der anfänglichen 1k wird als eine Einzahlung und die Auffüllung wird als ein Gewinn angezeigt, und natürlich alle Handelsergebnisse sind über die Spitze gehen.


Frage: Kann ich die Höhe des anfänglichen Handelsguthabens, von dem aus der Gewinn berechnet werden soll, manuell festlegen?


Vielen Dank im Voraus ^^

 
MQL_User:

Gibt es eine Möglichkeit, aus dem OnChartEvent zu ermitteln, ob eine Taste auf der Tastatur gedrückt wurde, als die Maus auf die Grafik geklickt hat?

Es gibt eine Funktion namens GetAsyncKeyState. Kann sie im Code verwendet werden?

Ich habe eine solche Konstruktion ausprobiert:

#import "user32.dll"
int GetAsyncKeyState(int a0);
#import

printf("--"+(GetAsyncKeyState(88)));

Aber das Laden der DLL ist nicht erlaubt.

Ich habe zu Beginn das Kontrollkästchen " DLL-Importe zulassen" aktiviert. Das hat nicht geholfen.
 
Vielleicht bin ich im falschen Thread. Mögen die Götter mir verzeihen Mcl!!! Ich brauche einen Indikator zu schreiben, die ein Signal aus einer Kombination von vier oder fünf Indikatoren geben würde.Set im Keller.Vielleicht gibt es eine Vorlage. Oder ein fertiger Berater Mögliche Ratschläge bitte!!!!!!!!!!
 
Wie kann ich einen Expert Advisor zu einem mql5-Ordner hinzufügen, damit er im Advisor-Bereich angezeigt wird?
Grund der Beschwerde: