Hilfe bei der Codierung - Seite 450

 

Hallo König mladen Sir,

In dieser Datei, ich brauche eine Änderung, aktuelle Kerze hoch / niedrig engulf vorherige Kerze öffnen schließen Körper., ein Schritt laufenden bar Sie bereits hinzugefügt, die zeigt, dass Sie bereits weiß, du bist Genie, jeder weiß.

Grüße

Dateien:
audusdh15.png  28 kb
 
keansajeweki:
Hallo Mladen. Kannst du dir bitte diesen Threat ansehen, denn wenn ich ihn in meinen MT4 einfüge und neu starte, habe ich keine ex-Datei. es ist der USC Murrey Math Oscillator V2

Bitte fügen Sie die genaue Datei an, die Sie verwenden, damit jemand einen Blick darauf werfen kann

 
hanic:
Hallo King mladen Sir,

In dieser Datei, ich brauche eine Änderung, aktuelle Kerze hoch / niedrig engulf vorherigen Kerze öffnen schließen Körper., ein Schritt laufenden bar Sie bereits hinzugefügt, was zeigt, dass Sie bereits weiß, du bist Genie, jeder weiß.

mit freundlichen Grüßen

Diese Kerze hoch nicht verschlingen vorherigen 3 Bars Hochs (werfen Sie einen genaueren Blick auf das Hoch von dieser Bar und vergleichen Sie es mit dem Hoch 2 Bars zurück)

Außerdem kann man nicht Äpfel mit Birnen vergleichen: Wenn man open/close (den body) vergleicht, werden nicht high und low des aktuellen Balkens verwendet, sondern open/close (body) ebenfalls. Wenn Sie high/low verwenden, werden die Hochs/Tiefs der verglichenen Leisten ebenfalls verwendet.

 

Pivot Point Confluence Text

Ich habe einen schönen MT4 Pivot Point Confluence Indicator gefunden, aber er zeigt keine Textbeschriftungen und Zahlen wie auf dem Bild unten. Es zeichnet nur Linien, aber ich möchte auch Text und Zahlen zu sehen.

Dateien:
 
keansajeweki:
Hallo Mladen. Kannst du dir bitte diesen Threat ansehen, denn wenn ich ihn in meinen MT4 einfüge und neu starte, habe ich keine ex-Datei. es ist der USC Murrey Math Oscillator V2

keansajeweki

Das ist tradingView Code (nicht metatrader Code)

Jemand hat es als mq4 gepostet, aber es hat nichts mit metatrader zu tun

 

Könnte eine freundliche Person dies bitte so ändern, dass es bei einem 6-stelligen Broker funktioniert?

//+------------------------------------------------------------------+

//| 70/50VolBreakout.mq4 |

//| Keris2112 |

//| |

//+------------------------------------------------------------------+

#Eigenschaft Copyright "Keris2112"

#property link ""

#property indicator_chart_window

#Eigenschaft indicator_buffers 4

#property indicator_color1 DodgerBlue

#property indicator_color2 Rot

#property indicator_color3 Sienna

#property indicator_color4 Limette

#Eigenschaft indicator_width1 5

#Eigenschaft indicator_width2 3

#Eigenschaft indicator_width3 5

#property indicator_width4 3

extern int EntryPercent = 70;

extern int StopPercent = 50;

int i=1, Verschiebung;

double PrevRange;

double LongEntry;

double LongStop;

double ShortEntry;

double ShortStop;

bool Ergebnis;

//---- Puffer

double ExtMapBuffer1[];

double ExtMapBuffer2[];

double ExtMapBuffer3[];

double ExtMapBuffer4[];

double ExtMapBuffer5[];

bool isNewDay(int _shift)

{

//----

result=false;

if ( (TimeHour(Time[_shift])==0) && (TimeMinute(Time[_shift])==0) ) result=true;

//----

return(result);

}

void GetRS1ofDay(int _shift)

{

int prevDay=TimeDay(Time[_shift+1]);

//----

i=1;

while (TimeDay(Time[_shift+i])==prevDay) i++;

i--;

PrevRange=High - Low[Lowest(NULL,0,MODE_LOW,i,_shift+1)];

LongEntry = Open[_shift] + (PrevRange * (EntryPercent*0,01));

LongStop = LongEntry - (PrevRange * (StopPercent*0,01));

ShortEntry = Open[_shift] - (PrevRange * (EntryPercent*0,01));

ShortStop = ShortEntry + (PrevRange * (StopPercent*0,01));

ExtMapBuffer1[_shift] = LongEntry;

ExtMapBuffer2[_shift] = LongStop;

ExtMapBuffer3[_shift] = ShortEntry;

ExtMapBuffer4[_shift] = ShortStop;

Comment(

"Vorheriger Bereich: ",PrevRange*1/Point," pips",

"\n",(EntryPercent),"% of Previous Range: ",MathRound((EntryPercent*PrevRange*(0.01/Point)))," pips",

"\n",(StopPercent),"% der vorherigen Range: ",MathRound((StopPercent*PrevRange*(0.01/Point)))," pips",

"\nOpen: ",Open[_shift],

"\nBuyStop eingeben bei: ",ExtMapBuffer1[_shift]," mit StopLoss bei: ",ExtMapBuffer2[_shift],

"\nSellStop eingeben bei: ",ExtMapBuffer3[_shift]," mit StopLoss bei: ",ExtMapBuffer4[_shift]);

}

void CopyLevels1Day(int _shift)

{

ExtMapBuffer1[_shift]=ExtMapBuffer1[_shift+1];

ExtMapBuffer2[_shift]=ExtMapBuffer2[_shift+1];

ExtMapBuffer3[_shift]=ExtMapBuffer3[_shift+1];

ExtMapBuffer4[_shift]=ExtMapBuffer4[_shift+1];

ExtMapBuffer5[_shift]=ExtMapBuffer5[_shift];

}

//+------------------------------------------------------------------+

//| Benutzerdefinierte Indikator-Initialisierungsfunktion |

//+------------------------------------------------------------------+

int init()

{

//---- Indikatoren

IndicatorBuffers(4);

SetIndexStyle(0,DRAW_ARROW);

SetIndexPfeil(0,160);

SetIndexPuffer(0,ExtMapPuffer1);

SetIndexEmptyValue(0,0.0);

SetIndexLabel(0,0);

SetIndexStyle(1,DRAW_ARROW);

SetIndexPfeil(1,160);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexEmptyValue(1,0.0);

SetIndexLabel(1,0);

SetIndexStyle(2,DRAW_ARROW);

SetIndexPfeil(2,160);

SetIndexBuffer(2,ExtMapBuffer3);

SetIndexEmptyValue(2,0.0);

SetIndexLabel(2,0);

SetIndexStyle(3,DRAW_ARROW);

SetIndexPfeil(3,160);

SetIndexBuffer(3,ExtMapBuffer4);

SetIndexEmptyValue(3,0.0);

SetIndexLabel(3,0);

SetIndexPuffer(0,ExtMapPuffer5);

//----

return(0);

}

//+------------------------------------------------------------------+

Funktion zur Deinitialisierung des Custor-Indikators //|

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| Benutzerdefinierte Indikator-Iterationsfunktion |

//+------------------------------------------------------------------+

int start()

{

int limit,firstDay;

int gezählte_Balken=IndikatorGezählt();

if (gezählte_Balken<0) return(0);

if (gezählte_Balken==0)

{

limit=Balken-1;

i=1;

firstDay=TimeDay(Time[limit]);

while (TimeDay(Time[limit-i])==firstDay) i++;

limit=limit-i-PERIOD_D1/Period();

}

if (gezählte_Balken>0) limit=Balken-gezählte_Balken;

//----

if (Zeitraum()>PERIOD_D1) return;

for (shift=limit;shift>=0;shift--)

{

if (isNewDay(shift)) GetRS1ofDay(shift); sonst CopyLevels1Day(shift);

}

//----

return(0);

}

//+------------------------------------------------------------------+

 

Hallo Mladen - wie immer vielen Dank für deine Antwort - liegt es in deinem Kompetenzbereich, einen solchen Indikator zu erstellen? nochmals vielen Dank im Voraus.

mladen:
Soweit ich recherchiert habe, gibt es keinen solchen Indikator
 
angrysky:
Könnte eine freundliche Person dies bitte so ändern, dass es bei einem 6-stelligen Broker funktioniert?

//+------------------------------------------------------------------+

//| 70/50VolBreakout.mq4 |

| Keris2112 |

//| |

//+------------------------------------------------------------------+

#Eigenschaft Copyright "Keris2112"

#property link ""

#property indicator_chart_window

#Eigenschaft indicator_buffers 4

#property indicator_color1 DodgerBlue

#property indicator_color2 Rot

#property indicator_color3 Sienna

#property indicator_color4 Limette

#Eigenschaft indicator_width1 5

#Eigenschaft indicator_width2 3

#Eigenschaft indicator_width3 5

#property indicator_width4 3

extern int EntryPercent = 70;

extern int StopPercent = 50;

int i=1, Verschiebung;

double PrevRange;

double LongEntry;

double LongStop;

double ShortEntry;

double ShortStop;

bool Ergebnis;

//---- Puffer

double ExtMapBuffer1[];

double ExtMapBuffer2[];

double ExtMapBuffer3[];

double ExtMapBuffer4[];

double ExtMapBuffer5[];

bool isNewDay(int _shift)

{

//----

result=false;

if ( (TimeHour(Time[_shift])==0) && (TimeMinute(Time[_shift])==0) ) result=true;

//----

return(result);

}

void GetRS1ofDay(int _shift)

{

int prevDay=TimeDay(Time[_shift+1]);

//----

i=1;

while (TimeDay(Time[_shift+i])==prevDay) i++;

i--;

PrevRange=High - Low[Lowest(NULL,0,MODE_LOW,i,_shift+1)];

LongEntry = Open[_shift] + (PrevRange * (EntryPercent*0,01));

LongStop = LongEntry - (PrevRange * (StopPercent*0,01));

ShortEntry = Open[_shift] - (PrevRange * (EntryPercent*0,01));

ShortStop = ShortEntry + (PrevRange * (StopPercent*0,01));

ExtMapBuffer1[_shift] = LongEntry;

ExtMapBuffer2[_shift] = LongStop;

ExtMapBuffer3[_shift] = ShortEntry;

ExtMapBuffer4[_shift] = ShortStop;

Comment(

"Vorheriger Bereich: ",PrevRange*1/Point," pips",

"\n",(EntryPercent),"% of Previous Range: ",MathRound((EntryPercent*PrevRange*(0.01/Point)))," pips",

"\n",(StopPercent),"% der vorherigen Range: ",MathRound((StopPercent*PrevRange*(0.01/Point)))," pips",

"\nOpen: ",Open[_shift],

"\nBuyStop eingeben bei: ",ExtMapBuffer1[_shift]," mit StopLoss bei: ",ExtMapBuffer2[_shift],

"\nSellStop eingeben bei: ",ExtMapBuffer3[_shift]," mit StopLoss bei: ",ExtMapBuffer4[_shift]);

}

void CopyLevels1Day(int _shift)

{

ExtMapBuffer1[_shift]=ExtMapBuffer1[_shift+1];

ExtMapBuffer2[_shift]=ExtMapBuffer2[_shift+1];

ExtMapBuffer3[_shift]=ExtMapBuffer3[_shift+1];

ExtMapBuffer4[_shift]=ExtMapBuffer4[_shift+1];

ExtMapBuffer5[_shift]=ExtMapBuffer5[_shift];

}

//+------------------------------------------------------------------+

//| Benutzerdefinierte Indikator-Initialisierungsfunktion |

//+------------------------------------------------------------------+

int init()

{

//---- Indikatoren

IndicatorBuffers(4);

SetIndexStyle(0,DRAW_ARROW);

SetIndexPfeil(0,160);

SetIndexPuffer(0,ExtMapPuffer1);

SetIndexEmptyValue(0,0.0);

SetIndexLabel(0,0);

SetIndexStyle(1,DRAW_ARROW);

SetIndexPfeil(1,160);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexEmptyValue(1,0.0);

SetIndexLabel(1,0);

SetIndexStyle(2,DRAW_ARROW);

SetIndexPfeil(2,160);

SetIndexBuffer(2,ExtMapBuffer3);

SetIndexEmptyValue(2,0.0);

SetIndexLabel(2,0);

SetIndexStyle(3,DRAW_ARROW);

SetIndexPfeil(3,160);

SetIndexBuffer(3,ExtMapBuffer4);

SetIndexEmptyValue(3,0.0);

SetIndexLabel(3,0);

SetIndexPuffer(0,ExtMapPuffer5);

//----

return(0);

}

//+------------------------------------------------------------------+

Funktion zur Deinitialisierung des Custor-Indikators //|

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| Benutzerdefinierte Indikator-Iterationsfunktion |

//+------------------------------------------------------------------+

int start()

{

int limit,firstDay;

int gezählte_Balken=IndikatorGezählt();

if (gezählte_Balken<0) return(0);

if (gezählte_Balken==0)

{

limit=Balken-1;

i=1;

firstDay=TimeDay(Time[limit]);

while (TimeDay(Time[limit-i])==firstDay) i++;

limit=limit-i-PERIOD_D1/Period();

}

if (gezählte_Balken>0) limit=Balken-gezählte_Balken;

//----

if (Zeitraum()>PERIOD_D1) return;

for (shift=limit;shift>=0;shift--)

{

if (isNewDay(shift)) GetRS1ofDay(shift); sonst CopyLevels1Day(shift);

}

//----

return(0);

}

//+------------------------------------------------------------------+

Es scheint zu funktionieren

Was ist das Problem, das Sie haben?

Dateien:
test.gif  71 kb
 

Hallo Herr,

wenn wir die Gleichung vergleichen, d.h. vorherige Kerze niedrig oder hoch, größer oder kleiner als die vorherige Kerze, Metatrader erlaubt es nicht?

In belthold Muster diese Formel verwendet wird, in diesem c >h1.

ist es wahr, dass, wir können nicht vergleichen, hoch niedrig mit offenen schließen Körper? ich denke, in vielen Fällen, in vielen Candlestick-Muster Formel hoch niedrig ist mit Kerze Körper verglichen.

Grüße

Dateien:
mdsir.png  16 kb
belthold.png  20 kb
 
triip:
Ich habe einen schönen MT4 Pivot Point Confluence Indicator gefunden, aber er zeigt keine Textbeschriftungen und Zahlen wie auf dem Bild unten. Es zeichnet nur Linien, aber ich möchte auch Text und Zahlen zu sehen.

Ich weiß nicht, welche Version verwendet wurde, um so anzuzeigen, aber in der alten Version von Metatrader wird es auch nicht so angezeigt (ich habe es auch in Build 432 versucht, und es wird genau so angezeigt wie in den neuen Builds)