Aleksei Stepanenko: Verblüffend. Versucht, von Excel aus ein Buch mit 3 Blättern als csv zu speichern:
In der csv-Datei gibt es nur Spaltentrennzeichen, keine anderen Markierungen.
Ups! Ich wusste nicht, dass dies eine Funktion des Formats ist. Wenn ich versuche, ein Buch mit mehreren Blättern zu speichern, lässt es sich nicht auf diese Weise abbestellen... Es löscht einfach das vorherige Blatt und speichert ein neues leeres Blatt
Guten Tag. Bitte sagen Sie mir, bitte, ichschrieb einen Indikator mit Alert (Nachricht und Sound-Ausgänge unter bestimmten Bedingungen), alles funktioniert, aber jedes Mal, wenn ich Timeframe Chart ändern, es gibt ein Signal wieder. Wie kann ich es reparieren? Der Warncode wird in einer separaten Funktion platziert, die zur Überprüfung von OnCalculate aufgerufen wird. Wenn es nur ein EA ist, funktioniert es gut, aber ich brauche es mit grafischer Darstellung, wie ich getan habe, ohne Triggerung wieder, wenn der Zeitrahmen ändern.
Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 (MQL5), среда разработки MetaEditor и инструменты тестирования стратегий. Любую информацию о разработке торговых стратегий на языке MQL5 можно найти на официальном сайте MQL5.community. На этом же сайте в разделе Code Base могут быть...
Progaus: Guten Tag. Können Sie mir bitte sagen, bitte, ichschrieb einen Indikator mit Alert (Nachricht und Sound-Ausgänge unter bestimmten Bedingungen), alles funktioniert, aber jedes Mal, wenn Sie Timeframe-Chart ändern, gibt wieder ein Signal. Wie kann ich es reparieren? Der Warncode wird in einer separaten Funktion platziert, die zur Überprüfung von OnCalculate aufgerufen wird. Wenn es nur ein EA ist, funktioniert es gut, aber ich brauche es mit grafischer Darstellung, wie ich es getan habe, ohne Triggerung wieder, wenn der Zeitrahmen ändern.
Wenn der Zeitrahmen gewechselt wird, beginnt der Indikator bei 0.
Dementsprechend sollten wir ihm beibringen, sich daran zu erinnern, dass Alert bereits ausgegeben wurde - zuverlässig, indem wir solche Informationen in globalen Variablen des Terminals oder in einer temporären Datei speichern, und es scheint möglich zu sein (ich habe es selbst nicht benutzt), einfach eine statische Variable zu erstellen.
Sie können zum Beispiel die Zeit des letzten Alarms speichern und keinen neuen Alarm pfeifen, wenn weniger als 2 Sekunden vergangen sind.
Es scheint möglich zu sein (ich habe es selbst noch nicht benutzt), einfach eine statische Variable zu erstellen.
Wenn Sie die TF wechseln, wird eine neue Kopie des Indikators erstellt und die alte gelöscht.
für EA ist es möglich (und notwendig?), statische (oder global deklarierte) Variablen zu verwenden ... es gibt jedoch einige Nuancen, aber im Allgemeinen gibt es keine Probleme
Maxim Kuznetsov:
Wenn Sie den Zeitrahmen wechseln, beginnt der Indikator bei 0.
prev_calculated wird beim ersten Aufruf von OnCalculated() auf Null zurückgesetzt
d.h. eine globale Variable des Terminals oder ein grafisches Objekt als Marker dafür anlegen, dass der Indikator bereits auf diesem Chart war und beim ersten Aufruf nach diesem grafischen Objekt suchen.
Aleksey Masterov: Liebe Kolleginnen und Kollegen, entschuldigen Sie bitte sofort die elementare Frage, ich habe einfach keinen Computer, aber ich muss.
Wie kann man am besten die aktuelle Uhrzeit in Minuten herausfinden?
Verwenden Sie die zweite Version der Signatur dieser Funktion:
datetimeTimeCurrent(
MqlDateTime& dt_struct // переменная типа структуры
);
ZS: Ich sollte sofort sagen - es funktioniert in MT4, ich habe es benutzt ;)
UPD: in MT4 habe ich auch Hour() und Minute() benutzt - ich benutze sie schon lange nicht mehr, aber sie sollten die letzte Serverzeit in Stunden und Minuten angeben
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Erlauben Sie die Verwendung von Cookies, um sich auf der Website MQL5.com anzumelden.
Bitte aktivieren Sie die notwendige Einstellung in Ihrem Browser, da Sie sich sonst nicht einloggen können.
Sie sind angemeldet. Die Zwei-Faktor-Authentifizierung wurde deaktiviert. Richten Sie sie erneut ein und scannen Sie einen neuen QR-Code oder fahren Sie mit deaktivierter Zwei-Faktor-Authentifizierung fort.
datetime o_open = OrderOpenTime();
MqlDateTime dt_struct;
TimeToStruct( o_open, dt_struct;)
int min = dt_struct.min;
neue Blätter beim Schreiben in csv

Es gibt nur Spaltentrennzeichen in der csv-Datei, ich glaube nicht, dass es andere Markierungen gibt.Verblüffend. Versucht, von Excel aus ein Buch mit 3 Blättern als csv zu speichern:
In der csv-Datei gibt es nur Spaltentrennzeichen, keine anderen Markierungen.Ups! Ich wusste nicht, dass dies eine Funktion des Formats ist. Wenn ich versuche, ein Buch mit mehreren Blättern zu speichern, lässt es sich nicht auf diese Weise abbestellen... Es löscht einfach das vorherige Blatt und speichert ein neues leeres Blatt
Danke!
Gern geschehen :)
Guten Tag. Können Sie mir bitte sagen, bitte, ichschrieb einen Indikator mit Alert (Nachricht und Sound-Ausgänge unter bestimmten Bedingungen), alles funktioniert, aber jedes Mal, wenn Sie Timeframe-Chart ändern, gibt wieder ein Signal. Wie kann ich es reparieren? Der Warncode wird in einer separaten Funktion platziert, die zur Überprüfung von OnCalculate aufgerufen wird. Wenn es nur ein EA ist, funktioniert es gut, aber ich brauche es mit grafischer Darstellung, wie ich es getan habe, ohne Triggerung wieder, wenn der Zeitrahmen ändern.
Wenn der Zeitrahmen gewechselt wird, beginnt der Indikator bei 0.
Dementsprechend sollten wir ihm beibringen, sich daran zu erinnern, dass Alert bereits ausgegeben wurde - zuverlässig, indem wir solche Informationen in globalen Variablen des Terminals oder in einer temporären Datei speichern, und es scheint möglich zu sein (ich habe es selbst nicht benutzt), einfach eine statische Variable zu erstellen.
Sie können zum Beispiel die Zeit des letzten Alarms speichern und keinen neuen Alarm pfeifen, wenn weniger als 2 Sekunden vergangen sind.
Es scheint möglich zu sein (ich habe es selbst noch nicht benutzt), einfach eine statische Variable zu erstellen.
Wenn Sie die TF wechseln, wird eine neue Kopie des Indikators erstellt und die alte gelöscht.
für EA ist es möglich (und notwendig?), statische (oder global deklarierte) Variablen zu verwenden ... es gibt jedoch einige Nuancen, aber im Allgemeinen gibt es keine Probleme
Wenn Sie den Zeitrahmen wechseln, beginnt der Indikator bei 0.
prev_calculated wird beim ersten Aufruf von OnCalculated() auf Null zurückgesetzt
d.h. eine globale Variable des Terminals oder ein grafisches Objekt als Marker dafür anlegen, dass der Indikator bereits auf diesem Chart war und beim ersten Aufruf nach diesem grafischen Objekt suchen.
Liebe Kolleginnen und Kollegen, entschuldigen Sie bitte sofort die elementare Frage, ich habe einfach keinen Computer, aber ich muss.
TimeCurrent()https://www.mql5.com/ru/docs/dateandtime/timecurrent
Verwenden Sie die zweite Version der Signatur dieser Funktion:
ZS: Ich sollte sofort sagen - es funktioniert in MT4, ich habe es benutzt ;)
UPD: in MT4 habe ich auch Hour() und Minute() benutzt - ich benutze sie schon lange nicht mehr, aber sie sollten die letzte Serverzeit in Stunden und Minuten angeben