mql5 - vertikale Linie nach einer bestimmten Zeit seit dem letzten Handel - Seite 6

 
Ich glaube, ich habe es geschafft - ich habe die Datei angehängt :)
Die Linie verschiebt sich nach dem angegebenen Algorithmus um die angegebene Anzahl von Stunden seit Abschluss des letzten Geschäfts. Ich habe sie nicht um 1/2/24 Stunden, sondern um 1/2/12 Stunden verschoben, d. h. ein ganzer Tag ist zu viel für eine Atempause. In jedem Fall werden diese Variablen der Einfachheit halber in externe Parameter verschoben. Glitch Ich kündigte an, früher mit ACID_NW nicht einmal sah, später in den Prozess der Prüfung und mögliche Erkennung von neuen Glitches wird bereits verstehen
 
Dann zeige ich in Comment den Zeitpunkt der Schließung des letzten Handels und den Zeitpunkt an, um den die Linie verschoben wird, d.h. wann ich den Handel nach einer Pause wieder aufnehmen kann. Es sieht so aus, als sollte es ganz einfach sein, wenn man bedenkt, dass Variablen mit den erforderlichen Daten bereits erstellt und berechnet wurden - konvertieren Sie einfach das Format von Sekunden in Datum, aber aus irgendeinem Grund hat es nicht sofort funktioniert :(
 
renatmt5:
Dann zeige ich in Comment den Zeitpunkt der Schließung des letzten Handels und den Zeitpunkt an, um den die Linie verschoben wurde, d.h. wann ich den Handel nach einer Pause wieder aufnehmen kann. Es sieht so aus, als sollte es ganz einfach sein, wenn man bedenkt, dass Variablen mit den erforderlichen Daten bereits erstellt und berechnet wurden - konvertieren Sie einfach das Format von Sekunden in Datum, aber aus irgendeinem Grund hat es nicht sofort funktioniert :(
TimeToString()
 

Sergej, ich danke dir! Genau das habe ich versucht, aber aus irgendeinem Grund kam ich auf Null. Ich habe nicht lange gebraucht, um herauszufinden, was ich falsch gemacht habe - ich glaube nicht, dass das ein großes Problem sein wird.

 
Ich habe in einem anderen Forum eine Erklärung zu ACID_NW gelesen: "Wenn am Ende des Handelstages der Betrag der Bonusgelder auf Ihrem Konto das zulässige Limit überschreitet, wird der überschüssige Betrag automatisch auf Ihr Bonuskonto überw iesen.Bei der Überweisung werden die folgenden Abkürzungen im Kommentar zur Saldotransaktion angezeigt: _ACID_NW, wobei ACID für Automatic Adjustment und NW für Bonus Funds steht.
Da ich aus diesem Grund ein Problem mit dem Indikator habe - der Indikator setzt die Daten auf den letzten Handel und das Ergebnis des letzten Tages zurück -, sehe ich die einfachste Möglichkeit darin, das Bonusgeld ganz vom Konto zu entfernen. Verstehe ich das richtig, dann wird dieses _ACID_NW per Definition nicht auftreten? Während des Handels werden die neuen Bonusgelder nicht dem Handelskonto, sondern dem Bonuskonto gutgeschrieben?
 
renatmt5:
Ich habe auch über ACID_NW in der Erklärung im Forum gelesen: "Wenn am Ende eines Handelstages der Betrag der Bonusgelder auf Ihrem Konto das zulässige Limit übersteigt, wird der überschüssige Betrag automatisch auf Ihr Bonuskonto übertragen. Bei der Überweisung werden die folgenden Abkürzungen im Kommentar zur Saldotransaktion angezeigt: _ACID_NW, wobei ACID für Automatic Adjustment und NW für Bonus Funds steht.
Da ich aus diesem Grund ein Problem mit dem Indikator habe - der Indikator setzt die Daten auf den letzten Handel und das Ergebnis des letzten Tages zurück -, sehe ich die einfachste Möglichkeit darin, das Bonusgeld ganz vom Konto zu entfernen. Verstehe ich das richtig, dann wird dieses _ACID_NW per Definition nicht auftreten? Während des Handels werden die neuen Bonusgelder nicht dem Handelskonto, sondern dem Bonuskonto gutgeschrieben?

Nehmen Sie sich Zeit. Führen Sie das ScriptHistorische Angebote und Bestellungen aus.

Geben Sie die Daten Von-Datum und Bis-Datum ein. Belassen Sie die Informationsausgabe als Standard (sie wird in den Dateinamen ausgegeben).

Danach müssen Sie, um die Textdatei zu sehen und zu öffnen, Folgendes tun

  • Schritt 1: Wählen Sie das Menü Datei und wählen Sie Datenordner öffnen;
  • Schritt 2: Gehen Sie in dem sich öffnenden Explorer nacheinander zum Ordner "MQL5\Files".

Fügen Sie alle Informationen aus der Datei als Code in den Beitrag ein (drücken Sie Alt+S).

 
Ich habe eine Ausgabe für einen Tag gemacht - ich kann sie nicht codieren, zu viele Zeichen. Mit einer Datei sichern oder das Intervall auf ein paar Stunden eingrenzen, um eine Transaktion und das anschließendeACID_NW zu erfassen?
 

Es wurde ein Fehler behoben, der dazu führte, dass der Indikator nicht den Gewinn des letzten Geschäfts und den Tag des letzten Geschäfts an einem neuen Tag berechnete. Es stellte sich heraus, dass das Problem nicht in der Operation_ACID_NW lag, sondern in der Tatsache, dass der Wert der Variable from_date (Anfangsdatum, ab dem die Historie der Geschäfte geladen wurde) falsch gesetzt war. Im Code wurde es als "from_date=iTime(Symbol(),PERIOD_D1,0)" beschrieben, d.h., so wie ich es verstanden habe, ist der Ausgangspunkt der Beginn des aktuellen Tages. Und sollte die Historie für 24 Stunden geladen werden, da sonst die Ergebnisse von gestern nicht berücksichtigt wurden. Der Einfachheit halber habe ich das nicht für die letzten 24 Stunden gemacht, sondern seit Anfang gestern. 24 Stunden und seit Beginn des gestrigen Tages, d.h.from_date = iTime(Symbol(),PERIOD_D1,1) - alles wurde korrekt berechnet!

 

Leute, bitte beratet mich, wie man den Wert einer Datumsvariablen ausgibt.

Ich habe eine Variable mit datetime string last_deal_day=time[rates_total-1]-fromlastdeal_seconds;

Wenn ich den Wert dieser Variablen ausgeben möchte Comment("last_deal_day = ",last_deal_day) gebe ich Datum und Uhrzeit aus wie "2019.03.21 02:48:19"
Wie kann ich diesen Wert in zwei Variablen aufteilen, um Datum und Uhrzeit getrennt auszugeben?

 
renatmt5:

Leute, bitte beratet mich, wie man den Wert einer Datumsvariablen ausgibt.

Meine Variable wird durch datetime last_deal_day=time[rates_total-1]-fromlastdeal_seconds gesetzt;

Wenn ich den Wert dieser Variablen Comment("last_deal_day = ",last_deal_day) ausgeben möchte, werden Datum und Uhrzeit wie "2019.03.21 02:48:19" ausgegeben
Wie kann ich diesen Wert in zwei Variablen aufteilen, um das Datum und die Uhrzeit getrennt auszugeben?

TimeToString


    Comment(TimeToString(last_deal_day,TIME_DATE)+" "+TimeToString(last_deal_day,TIME_SECONDS)