Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 163

 
zlodei:

Ich habe den einfachsten Indikator in mql4 geschrieben, ich wollte ihn in mql5 übersetzen, und ich habe eine Woche lang gekämpft, aber es funktioniert nicht! Ich gehe mir auf die Nerven, ich hasse mql5, weil ich bereits 88 Zeilen eines einfachen 34-Linien-Indikators in mql5 geschrieben habe!

Hier ist der Code für mql4:

Und hier ist der Code für mql5:

DieIndikatorlinien werden im MT5 nicht korrekt angezeigt.

Was habe ich falsch gemacht?

Liebe Leute, helft mir, habt Mitleid mit dem armen Kerl, ich stehe kurz vor einem Zusammenbruch, ganz ehrlich. Schade, dass man hier nicht fluchen kann!

Moderator, verbieten Sie mich nicht, sondern warnen Sie mich erst, wenn etwas nicht stimmt.

Sie brauchen ArraySetAsSeries(..., true), für alle Puffer (in OnInit()), und alles wird funktionieren. // In MT5, Standard =false.
 
papaklass:

Schauen Sie sich https://www.mql5.com/ru/docs/indicators an.

Dort gibt es einen Kodex von Standardindikatoren

Ich danke Ihnen!

Vielleicht habe ich die Frage nicht richtig gestellt, ich habe es selbst herausgefunden, ich habe danach gesucht:

Документация по MQL5: Операции с графиками / ChartIndicatorAdd
Документация по MQL5: Операции с графиками / ChartIndicatorAdd
  • www.mql5.com
Операции с графиками / ChartIndicatorAdd - Документация по MQL5
 
MetaDriver:
Sie brauchen ArraySetAsSeries(..., true), für alle Puffer (in OnInit()), damit es funktioniert. // In MT5, Standard =false.

Das hilft nicht... Denn bei JEDEM Tick gibt es mehrere (zehntausendfache) Aufrufe der Funktionen CopyOpen und CopyClose, was zum Einfrieren des Indikators und in einigen Fällen auch des Terminals führt.

Außerdem ist es beim CopyOpen offensichtlich, dass das Array überschritten wird, und bei mql5 führt dies zu einem Stopp der Programmausführung. Und die schreckliche CPU-Last, wie sich herausstellte.

Документация по MQL5: Программы MQL5 / Выполнение программ
Документация по MQL5: Программы MQL5 / Выполнение программ
  • www.mql5.com
Программы MQL5 / Выполнение программ - Документация по MQL5
 
Fleder:

Das hilft nicht... Denn bei JEDEM Tick gibt es mehrere (zehntausendfache) Aufrufe der Funktionen CopyOpen und CopyClose, was zum Einfrieren des Indikators und in einigen Fällen auch des Terminals führt.

Außerdem ist es beim CopyOpen offensichtlich, dass das Array überschritten wird, aber bei mql5 führt es zu einem Stopp der Programmausführung. Und die schreckliche Belastung der CPU, wie sich herausstellte...

Was für ein schrecklicher Algorithmus).
 
zfs:
Was für einen gruseligen Algorithmus Sie haben).
Dieser unheimliche Algorithmus ist nicht von mir. Es ist nur so, dass die Person (Autor) um Hilfe gebeten hat und höflich weggeschickt wurde!
 
Fleder:
Dieser unheimliche Algorithmus ist nicht von mir. Es ist nur so, dass die Person (Autor) um Hilfe gebeten hat und höflich weggeschickt wurde!
Das Einzige, was noch zu tun bleibt, ist, die Angelegenheit mit Ihnen zu klären).
 

Guten Tag!

Können Sie mir sagen, wie ich den Handel mit der Demo lerne?

Ich habe einen Short mit Stoploss gemacht, nach 10 Minuten Pause und die Kurse wurden nicht vom Server geladen. Nach dem Download sprang eine 5000 Pips-Kerze und der Stopp war schwach.

Ist das ein Fehler der Demo? Oder kann es auf einem echten Konto passieren?

Ich habe es bereits heruntergeladen, aber ich habe es noch nicht heruntergeladen.

 
sbr080:

Guten Tag!

Können Sie mir sagen, wie ich den Handel mit der Demo lerne?

Ich habe einen Short mit Stoploss gemacht, nach 10 Minuten Pause und die Kurse wurden nicht vom Server geladen. Nach dem Download sprang eine 5000-Pips-Kerze und der Stopp war schwach.

Ist das ein Fehler der Demo? Oder kann es auf einem echten Konto passieren?

Ich habe es bereits heruntergeladen, aber ich habe es noch nicht heruntergeladen.

Die Demo ist simuliert, es gibt keine Garantien für den normalen Betrieb auf ihr. Stopps können auf jedem Konto funktionieren.
 

sbr080:

Oder passiert das auch bei einem echten Konto?

Was passiert dann?

Spikes von hundert Pips?

oder ein Verlustgeschäft?

 

Meine Herren, bitte sagen Sie mir, was ich in die letzten beiden Zeilen schreiben soll, wenn ich einen schwebenden Auftrag ändere, dessen Lebensdauer festgelegt ist. (z.B. 6 Stunden - ).

request.type_time = ORDER_TIME_SPECIFIED; // die Bestellung ist bis zum Ablaufdatum aktiv
request.expiration = TimeCurrent()+6*3600;//letzte bekannte Serverzeit + Anzahl der Stunden*Stunden

Wenn sich die Lebensdauer nicht ändert, können wir dann beim Ändern überhaupt nichts schreiben? In der Standardeinstellung stirbt er von selbst.

Und wenn Sie sein Leben ändern müssen?

Ausstehende Bestellung ändern

Handelsanfrage zur Änderung der Preisniveaus für schwebende Aufträge. 7 Felder sind erforderlich:

-Aktion

-bestellung

-Preis

-sl

-tp

-typ_zeit

-Ablauf

Das sind die beiden Zeilen im Handbuch, die ich nicht verstehen kann:

typ_zeit

Art des Auftrags zum Zeitpunkt des Ablaufs. Wert kann einer der Werte ENUM_ORDER_TYPE_TIMEsein

Ablauf

Verfallszeit des schwebenden Auftrags (für ORDER_TIME_SPECIFIEDAufträge )

Bitte schreiben Sie, wie sie im Experten aussehen sollen, wenn ich sie ändere, werde ich es verstehen. Ich danke Ihnen im Voraus.