Merkmale der Sprache mql5, Feinheiten und Techniken - Seite 230

 

begDayBar= iBarShift(_Symbol,_Periode,begDayTime,false) laut Dokumentation gibt die Funktion -1 oder den nächstgelegenen Bar-Offset zurück, abhängig vom genauen Parameter.

aber heute gibt sie aus irgendeinem Grund -1 zurück, wenn begDayTime=2023.01.26 00:00:00, obwohl es solche Balken gibt und sie nicht die letzten sind.

2023.02.15 15:19:23.254 !indDAY_WSOWROhLine (EURRUB_TOM,M15) begDayTime=2023.01.26 00:00:00 endDayTime=2023.01.27 00:00:00 begDayBar=-2 endDayBar=-1 indATR=0 Q5days=0

kann -1 zurückgegeben werden, oder es kann der richtige Balken zurückgegeben werden.

Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
  • www.mql5.com
iBarShift - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
IuriiPrugov #:

heute aus irgendeinem Grund, wenn begDayTime=2023.01.26 00:00:00 -1 zurückgibt, obwohl es solche Balken gibt und sie nicht die letzten sind

Stellen Sie alle Daten für die Wiedergabe bereit.
 
fxsaber #:
Alle Daten für die Wiedergabe bereitstellen.

begDayTime=iTime(Symbol(),Inp_period,bar);begDayBar=iBarShift(_Symbol,_Periode,begDayTime,false)-1;

Eingabezeitraum = M15

2023.02.19 13:02:42.517 !indDAY_WSOWROhLine (EURRUB_TOM,M15) bar=14 begDayTime=2023.01.30 00:00:00 endDayTime=2023.01.31 00:00:00 begDayBar=-2 endDayBar=673 indATR=0 Q5days=0
if you insert

if (begDayBar<0) { k=0; do {k++;} while(begDayTime<time[k] && !IsStopped()); begDayBar=k; }

dann ist alles in Ordnung (d.h. iBarShift reparieren, wenn es fehlschlägt)

 
IuriiPrugov #:

Es sind keine Daten.

 
fxsaber #:

Es sind keine Daten.

Welche anderen Daten? Inp_period = D1 wird für 15 Tage in einem Zyklus gesucht! begDayTime= bar= bar =14

begDayTime=iTime(Symbol(),Inp_period,bar); _Symbol= EURRUB_TOM; _Period= M15; danach

iBarShift(_Symbol,_Period,begDayTime,false) kann einen normalen Balken oder -1 erzeugen, oder es hat keine Zeit, Balken zu zählen oder so.

Im Allgemeinen funktioniert es instabil, wenn Sie den Indikator wechseln (drücken Sie einfach eine andere Periode auf dem "Chart Periode" Panel), zum Beispiel, auf M30 kann es einen normalen Bar oder -1 produzieren.

dasselbe auf einem anderen Instrument, wenn nicht eingefügt if (begDayBar<0) { k=0; do {k++;} while(begDayTime<time[k] && !IsStopped()); begDayBar=k; } dann wird ein Fehler angezeigt

2023.02.20 07:58:01.698 !indDAY_WSOWROhLine (CNYRUB_TOM,M15) array out of range in '!indDAY_WSOWROhLine.mq5' (202,148)

und so weiter nach ein oder zwei Malen. Sie können es selbst ausprobieren.

Fügen Sie diesen Teil in den einfachsten Indikator ein und wechseln Sie im Feld "Chartperiode" zu einem anderen Zeitraum.

 
IuriiPrugov #:

und welche anderen Daten?

Vollständiger Quellcode und Umgebungsdaten zur Reproduktion. D.h. jeder könnte das Problem innerhalb einer Minute nach dem Lesen reproduzieren.
 

ok

Ich bin neu bei MQL4 und jetzt bei MQL5.

Ich war früher Programmierer in Visual C/C++, weiß also, WIE man programmiert.

Aber ich bin nicht vertraut mit den Bibliotheken und so hier. gut die Sprache.

Meine erste Frage ist, wenn ich eine Vorlage lade und diese ein Diagramm in Oanda erzeugt, wie muss ich dann den Code einrichten und so weiter?

Ich möchte mein Papier-Handelskonto verwenden und Code entwickeln, um einige Handelsstrategien zu testen.

Ich möchte das Rad nicht neu erfinden, wenn ich also ein paar Codeschnipsel bekommen kann, die "Standard"-Sachen machen wie

das Konto und die Server-/Datenbankverbindungen abrufen

-Projekt einrichten

-ein Projekt einrichten - vielleicht einen bereits existierenden Code ausführen und dann üben, Mods zu erstellen und zu "kompilieren", wenn es so funktioniert, oder einen Build meines Projekts ausführen

Ich habe vor, in dieser Community aktiv zu werden, sobald ich mich zurechtgefunden habe. Ich bin es leid, zu versuchen, manuell zu handeln.

Oh, kann ich damit auch mit Kryptowährungen handeln?

entschuldigung, wenn ich mich nicht besser vorbereitet habe - ich habe diesen Kommentar erst geschrieben, nachdem ich mich ein wenig umgesehen habe - ich bin erst seit heute dabei.

thx!

RayRay

RR

 
@rrb1002 #: neu bei MQL4 und jetzt MQL5....

Sie haben Artikel, die detailliert beschreiben, wie man etwas macht.

Sie haben die CodeBase mit Codebeispielen, die von Anwendern geschrieben wurden, die von absoluten Anfängern bis zu sehr erfahrenen Entwicklern reichen.

Und Sie haben die Online-Version der Dokumentation (auch in MetaEditor verfügbar).

rrb1002 #: kann ich damit mit Kryptowährungen handeln?

Sie können mit allem handeln, was Ihr Broker anbietet, also auch mit Kryptowährungen.

 
Ok, ich bin hier verwirrt. Ich bin neu. Ich dachte, es als MQL4 Sprache. Ist die neuere kommende Sprache MQL5? Wird MQL4 aufwärtskompatibel zu MQL5 sein und hoffentlich und erweitern Sie einfach die MQL4 Sprache?
 
@rrb1002 #: Ok, ich bin hier verwirrt. Ich bin neu. Ich dachte, es als MQL4 Sprache. Ist die neuere kommende Sprache MQL5? Wird MQL4 aufwärtskompatibel zu MQL5 sein und hoffentlich und erweitern Sie einfach die MQL4 Sprache?

MQL5 gibt es schon seit mehr als einem Jahrzehnt. Sie ist nicht "neu". Sie ist ausgereift.

MetaTrader 4 und MQL4 werden schon seit mehreren Jahren nicht mehr weiterentwickelt (wahrscheinlich 6-8 Jahre, denke ich). Lediglich kritische Updates werden sporadisch durchgeführt.

Die Sprachen sind sehr ähnlich und ein Großteil der Funktionen ist einigermaßen kompatibel, aber die Handelsfunktionen sind völlig unterschiedlich und überhaupt nicht kompatibel.

Grund der Beschwerde: