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

 
Alexander Avksentyev #:

Preis - SL-Niveau

und dann

mit dem zulässigen Mindest-SL vergleicht.

Vorausgesetzt, es wird weiterhin eine klare Sicht gewährleistet.

Wenn es nicht richtig ist, dann ist es falsch.

Sie wollen, dass ich das, was ich berechnet habe, normalisiere, aber die von MarketI erhaltenen Informationen sind bereits lesbar? Es wird also ein normaler Vergleich sein.

Ja?

Nein

doubleNormalizeDouble(
doubleWert,

(Bid - sl_lev)

// zu normalisierende Zahl


int-Ziffern

Digits

// Anzahl der Stellen nach dem Dezimalpunkt
);

 
Kedrov #:

Hallo zusammen!

Bitte um Hilfe!

Der common_sr-Indikator zeigt das gestrige Maximum/Minimum nur heute, im aktuellen Zeitraum, an. D.h. diese Niveaus und Grenzen werden nicht für den gestrigen Tag angezeigt, sondern nur für heute. Und das ist richtig!

Und der gleiche Indikator, der die Höchst-/Maximalwerte der Vorwoche anzeigt, zeichnet sie auch in der Vorwoche. Obwohl es logischerweise nur die aktuelle Woche zeichnen sollte.

Ich habe versucht, diese Ideen im Screenshot darzustellen. Wenn ich Fragen habe, werde ich Ihnen die Antworten geben.

Werden Sie das in irgendeiner Weise korrigieren können?

Vielen Dank für die Hilfe!

Dateien:
common_sr.mq4  39 kb
 

Alexander Avksentyev #:

Ich nahm an, dass es von nun an klarer aussehen würde.


double price=NormalizeDouble(Bid - sl_lev,Digits);
if(price < MarketInfo(Symbol(),MODE_STOPLEVEL) * Point) return;
 
Tretyakov Rostyslav #:

Rostislav!

Vielen Dank für Ihr Interesse!

Und für das Ergebnis!

Vielen Dank!

Viel Glück!

 
Tretyakov Rostyslav #:

Rostislav!

Und dieser "Strom" kann dauerhaft in den mq4-Code eingefügt werden. Sie müssen nicht jedes Mal die erforderliche TF einstellen. Das ist mir nicht gelungen.

 
Kedrov #:

Rostislav!

Und dieser "Strom" kann dauerhaft in den mq4-Code eingefügt werden. Sie müssen nicht jedes Mal die erforderliche TF einstellen. Bei mir hat es nicht funktioniert.

Diese Zeile am Anfang des Codes

input ENUM_TIMEFRAMES Precision=PERIOD_D1; // Precision   PERIOD_H1

Ersetzen Sie es durch


input ENUM_TIMEFRAMES Precision=PERIOD_CURRENT; // Precision   PERIOD_H1
 
Tretyakov Rostyslav #:

Diese Zeile am Anfang des Codes

ersetzen Sie es durch...


Herzlichen Dank, Rostislav!

Alles hat funktioniert!

Viel Glück!

 

Sagen Sie mir auch, wie aus MakarFH Rostislav wurde.

Wo gibt es irgendeine Übereinstimmung... überhaupt irgendetwas?

 
Maxim Kuznetsov #:

Sagen Sie mir auch, wie aus MakarFH Rostislav wurde.

Wo ist da überhaupt ein Gleichklang ... irgendwas da.

dekompilieren)

 

Hallo zusammen. Können Sie mich bitte beraten:

Ich versuche, einen Crossover auf einem Standard-MACD aus einer Signallinie und einem Histogramm zu berechnen. Die Idee ist folgende: Bei jedem neuen Balken nehmen wir die beiden vorherigen Kerzen und ermitteln die Indikatorwerte für jede von ihnen. Wenn der MACD-Wert an der zweiten Kerze größer als der Signalwert ist und der MACD-Wert an der ersten Kerze bereits unter dem Signalwert liegt und alle Werte über Null sind, bedeutet dies, dass es einen Crossover an der Spitze gibt und umgekehrt.

Aber in dem Moment, in dem man den Wert erhält, wird er irgendwie riesig. Und nur eine - die Signallinie der zweiten Kerze. Es kann 8 sein, wie viel, 4,5, 7 usw. Wenn der nächste Balken erscheint, kann der Wert der Signallinie des zweiten Balkens ab dem neuen Balken bereits normal sein. Alle anderen haben sich als richtig erwiesen. Und im Datenfenster ist der Wert auch korrekt. Ich kann nicht verstehen, warum. Was mache ich falsch?

PrevMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_MAIN,1);
PrevSignalMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);
CtrlMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_MAIN,2);
CtrlSignalMACD = iMACD(_Symbol,_Period,12,26,9,PRICE_CLOSE,MODE_SIGNAL,2);

Сomment(CtrlMACD+" "+CtrlSignalMACD+" "+PrevMACD+" "+PrevSignalMACD);

Ich habe das Gefühl, dass es sich um einen variablen Doppelgänger handelt. Denn der Wert im Datenfenster ist 0,000081, aber es stellt sich heraus, 8,1....., das Gleiche habe ich mit einem anderen Wert bemerkt - im Datenfenster 0,000071, aber in der Variable 7,1..... Sie sind jedoch alle als Doppelvariablen definiert.

Dateien: