Hilfe bei der Codierung - Seite 227

 
Air92:
Hallo Mladen, du hast die Version dieses Indikators erstellt. Ich möchte Sie bitten, hier separat gleitenden Durchschnitt zu machen, wie auf dem Beispiel des anderen Indikators, wenn es möglich ist. Danke.

Luft92

Es ist nicht möglich (bereits 8 Zeichenpuffer verwendet - Metatrader 4 erlaubt nicht mehr als 8 Zeichenpuffer)

 
mladen:
Air92 Es ist nicht möglich (bereits 8 Zeichenpuffer verwendet - Metatrader 4 erlaubt nicht mehr als 8 Zeichenpuffer)

Ok, Mladen. Ich habe verstanden. Danke.

 

Hallo Mladen,

Könnten Sie bitte konvertieren diese MACD MTF indi zu einem EA, kaufen, wenn macd ist grün auf jeder 3 tf, verkaufen, wenn alle drei rot. schließen Handel und öffnen Sie neue auf umgekehrten Trend.

Einstellungen benötigt: trail, breakeven, sloss, Eintrag auf offene oder geschlossene bar, Magische Zahl und Losgröße . Auf unteren tf es funktioniert gut! Wird zu schätzen wissen. Danke

Dateien:
 

Hallo, ich fand etwas Interessantes für alle von uns im forum.there ist diese Software, die helfen können, um die Richtung der nächsten candle.I vorherzusagen, haben auf dieser mt4 Skript arbeiten, um Volatilität, um es hinzuzufügen, konnte aber nicht.I wollen auch die Warnung, um in der Nähe der aktuellen Kerze kommen und sagen Sie uns die Richtung der nächsten über-zu bilden Kerze.die Volatilität wird uns sagen, die Größe oder wie weit der Preis wird stretch.the Prinzip war nicht mine.i kopieren Sie es von somewhere.the Skript ist wirklich working.i wollen ein Programmierer wie Codergurus und Mladin, um bitte in diesem script.It ist nicht wirklich gut funktionieren now.as der Alarm halten auf reaping und repainting.

#property indicator_chart_window

#Eigenschaft indicator_buffers 2

#property indicator_color1 Kalk

#property indicator_color2 Rot

#Eigenschaft indicator_width1 4

#Eigenschaft indicator_width2 4

extern bool Alerts = TRUE;

double CrossUp[];

double CrossDown[];

bool CrossedUp = false;

bool CrossedDown = false;

int SignalLabeled = 0; // 0: Ausgangszustand; 1: oben; 2: unten.

int upalert=false,downalert=false;

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

//| Benutzerdefinierte Indikator-Initialisierungsfunktion |

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

int init()

{

//---- Indikatoren

SetIndexStyle(0,DRAW_ARROW, EMPTY);

SetIndexPfeil(0,233);

SetIndexPuffer(0,CrossUp);

SetIndexStyle(1,DRAW_ARROW, EMPTY);

SetIndexArrow(1,234);

SetIndexBuffer(1,CrossDown);

//----

return(0);

}

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

//| Benutzerdefinierte Funktion zur Deinitialisierung des Indikators |

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

int deinit()

{

//----

//----

return(0);

}

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

//| Benutzerdefinierte Indikator-Iterationsfunktion |

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

int start(){

int limit,i,counter;

double pnow;

double p1,p2,p3,p4,p5,p6,p7,p8,p9,p10;

double SOT,SOT1,SOT2,SOT3,SOT4,SOT5,SOT6,SOT7,SOT8,SOT9,SOT10;

double SOTAV10;

double SOTAV2;

double Bereich, AvgRange;

int counted_bars=IndicatorCounted();

//---- Prüfung auf mögliche Fehler

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

//---- zuletzt gezählte Balken werden neu gezählt

if(gezählte_Balken>0) gezählte_Balken--;

limit=Balken-gezählt_Balken;

for(i = 0; i <= limit; i++) {

counter=i;

Range=0;

AvgRange=0;

for (counter=i;counter<=i+12;counter++)

{

AvgRange=AvgRange+MathAbs(High[Zähler]-Low[Zähler]);

}

Range=AvgRange/10;

// Aktueller Preis Close und Open

double OpenPricenow = Open ;

double ClosePricenow = Close ;

double Volumenow = Volumen ;

// Kerze 1

double OpenPrice1 = Open ;

double ClosePreis1 = Schlusskurs ;

double Volumen1 = Volumen ;

// Kerze 2

double OpenPrice2 = Open ;

double ClosePrice2 = Schließen ;

double Volumen2 = Volumen ;

// Kerze 3

double OpenPrice3 = Open ;

double ClosePrice3 = Schließen ;

double Volumen3 = Volumen ;

// Kerze 4

double OpenPrice4 = Eröffnen ;

double ClosePrice4 = Schließen ;

double Volumen4 = Volumen ;

// Kerze 5

double OpenPrice5 = Eröffnen ;

double ClosePrice5 = Schließen ;

double Volumen5 = Volumen ;

// Kerze 6

double OpenPrice6 = Eröffnen ;

double ClosePrice6 = Schließen ;

double Volumen6=Volumen ;

// Kerze 7

double OpenPrice7 = Eröffnen ;

double ClosePrice7 = Schließen ;

double Volumen7 = Volumen ;

// Kerze 8

double OpenPrice8 =Open ;

double ClosePreis8 =Schließen ;

double Volumen8 =Volumen;

// Kerze 9

double OpenPrice9 =Open ;

double ClosePrice9 = Schließen ;

double Volumen9 = Volumen ;

// Kerze 10

double OpenPrice10 =Open;

double ClosePrice10=Close;

double Volumen10=Volumen;

pnow =(ClosePricenow - OpenPricenow);

SOT = (pnow / Volumenow)*10000;

p1 = (ClosePreis1 - OpenPreis1);

SOT1= (p1 / Volumen1) *10000;

p2 = (ClosePrice2 - OpenPrice2);

SOT2 = (p2/Volumen2) *10000;

p3 =(ClosePrice3 - OpenPrice3);

SOT3 =(p3/Volumen3)*10000;

p4=(ClosePrice4 - OpenPrice4);

SOT4=(p4/Volume4)*10000;

p5=(ClosePrice5 - OpenPrice5);

SOT5 =(p5/Umsatz5)*10000;

p6=(ClosePrice6 - OpenPrice6);

SOT6 =(p6/Umsatz6)*10000;

p7=(ClosePrice7 - OpenPrice7);

SOT7 =(p7/Volumen7)*10000;

p8 =(SchlussKurs8 - Eröffnungskurs8);

SOT8=(p8/Volume8)*10000;

p9 =(ClosePrice9-OpenPrice9);

SOT9 =(p9/Volumen9)*10000;

p10 =(SchlussKurs10 -ÖffnungsKurs10);

SOT10 = (p10/Volumen10)*10000;

SOTAV10=(SOT1+SOT2+SOT3+SOT4+SOT5+SOT6+SOT7+SOT8+SOT9+SOT10/100*10);

SOTAV2 = (SOTAV10*2);

if ((SOT>SOTAV2)&&(ClosePrice1<OpenPrice1)&&(ClosePricenow<OpenPrice1)){

CrossedUp = true;

CrossedDown= false;

}

sonst

if((SOT>SOTAV2)&&(ClosePrice1>OpenPrice1)&&(ClosePricenow>OpenPricenow)){

CrossedUp = false;

CrossedDown = true;

}

if((CrossedUp==true)&&(SignalLabeled!=1)){

CrossUp=Low-Range*1.3;

if(i<=2 && Alerts && !upalert)

{

Alert (Symbol()," ",Zeitraum()," M Preis UP ");

//SendMail("Kaufen "+Symbol(),"");

upalert=true;

downalert=false;

}

SignalLabeled = 1;

}

if ((CrossedDown == true) && (SignalLabeled != 2)) {

CrossDown = Hoch + Range*1,3;

if(i<=2 && Alerts && !downalert)

{

Alert (Symbol()," ",Period(), "M Preis DOWN ");

//SendMail("Verkaufen "+Symbol(),"");

downalert=true;

upalert=false;

}

SignalLabeled = 2;

}

}

return(0);

}

Dies ist das Prinzip, das dieser Software zu Grunde liegt:

Handelsgeschwindigkeit = (Preisänderung/Volumen) pro Zeiteinheit = (Open-Close)/Tick-Volumen in der Standardperiode.

Wenn die SoT der aktuellen Kerze größer ist als das Doppelte der durchschnittlichen SoT der ausgewählten Periode, wird die nächste Kerze in die gleiche Richtung wie die aktuelle Kerze gehen. (Unsere Signale können zum Schluss der aktuellen Kerze gegeben werden).

Achtung! Wenn auf die aktuelle Kerze 2-3 gleichfarbige Kerzen folgen, wird kein Signal gegeben. Ein Beispiel: Datum E/J(Open) E/J(High) E/J(Low) E/J(Close) Volume(E/J) Direction Price change Speed 11/06/2012 03:56:00 102.456 102.456 102.429 102.429 96 DOWN -0.027 2.81 11/06/2012 03:57:00 102.429 102.429 102.398 102.413 158 DOWN -0.016 1.01 da die Geschwindigkeit größer als 1.70 (Durchschnitt von 14 Kerzen) ist, sagt er voraus, dass die nächste Kerze nach unten gehen wird. Dieser Indikator kann so gestaltet werden, dass er wie ein Tachometer aussieht, oder es kann nur die Zahl mit dem Signal auf der Kerze erscheinen. Ich denke, dass dies eine große Hilfe bei der Entscheidungsfindung sein wird. Die Theorie dahinter ist, dass jeder Anstieg oder Fall eine Kraft oder Trägheit benötigt, die größer ist als die bestehende Kraft. Sobald wir also eine solche zusätzliche Kraft sehen oder erfassen, können wir auch die nächste Kerzenrichtung und die Werte bestimmen.

......................................................................................................................

 
Mastercash:
Hallo, ich fand etwas Interessantes für uns alle im forum.there ist diese Software, die helfen können, um die Richtung der nächsten candle.I vorherzusagen, haben auf dieser mt4 Skript arbeiten, um Volatilität, um es hinzuzufügen, konnte aber nicht.I wollen auch die Warnung, um in der Nähe der aktuellen Kerze kommen und sagen uns die Richtung der nächsten Kerze zu bilden.die Volatilität wird uns sagen, die Größe oder wie weit der Preis wird stretch.the Prinzip war nicht mine.i kopieren Sie es von somewhere.the Skript ist wirklich working.i wollen, dass ein Programmierer wie Codergurus und Mladin, um bitte in diesem script.It ist nicht wirklich gut funktionieren now.as der Alarm halten auf reaping und repainting.

#property indicator_chart_window

#Eigenschaft indicator_buffers 2

#property indicator_color1 Kalk

#Eigenschaft indicator_color2 Rot

#Eigenschaft indicator_width1 4

#Eigenschaft indicator_width2 4

extern bool Alerts = TRUE;

double CrossUp[];

double CrossDown[];

bool CrossedUp = false;

bool CrossedDown = false;

int SignalLabeled = 0; // 0: Ausgangszustand; 1: oben; 2: unten.

int upalert=false,downalert=false;

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

//| Benutzerdefinierte Indikator-Initialisierungsfunktion |

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

int init()

{

//---- Indikatoren

SetIndexStyle(0,DRAW_ARROW, EMPTY);

SetIndexPfeil(0,233);

SetIndexPuffer(0,CrossUp);

SetIndexStyle(1,DRAW_ARROW, EMPTY);

SetIndexArrow(1,234);

SetIndexBuffer(1,CrossDown);

//----

return(0);

}

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

//| Benutzerdefinierte Funktion zur Deinitialisierung des Indikators |

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

int deinit()

{

//----

//----

return(0);

}

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

//| Benutzerdefinierte Indikator-Iterationsfunktion |

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

int start(){

int limit,i,counter;

double pnow;

double p1,p2,p3,p4,p5,p6,p7,p8,p9,p10;

double SOT,SOT1,SOT2,SOT3,SOT4,SOT5,SOT6,SOT7,SOT8,SOT9,SOT10;

double SOTAV10;

double SOTAV2;

double Bereich, AvgRange;

int counted_bars=IndicatorCounted();

//---- Prüfung auf mögliche Fehler

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

//---- zuletzt gezählte Balken werden neu gezählt

if(gezählte_Balken>0) gezählte_Balken--;

limit=Balken-gezählt_Balken;

for(i = 0; i <= limit; i++) {

counter=i;

Range=0;

AvgRange=0;

for (counter=i;counter<=i+12;counter++)

{

AvgRange=AvgRange+MathAbs(High[Zähler]-Low[Zähler]);

}

Range=AvgRange/10;

// Aktueller Preis Close und Open

double OpenPricenow = Open ;

double ClosePricenow = Close ;

double Volumenow = Volumen ;

// Kerze 1

double OpenPrice1 = Open ;

double ClosePreis1 = Schlusskurs ;

double Volumen1 = Volumen ;

// Kerze 2

double OpenPrice2 = Open ;

double ClosePrice2 = Schließen ;

double Volumen2 = Volumen ;

// Kerze 3

double OpenPrice3 = Open ;

double ClosePrice3 = Schließen ;

double Volumen3 = Volumen ;

// Kerze 4

double OpenPrice4 = Eröffnen ;

double ClosePrice4 = Schließen ;

double Volumen4 = Volumen ;

// Kerze 5

double OpenPrice5 = Eröffnen ;

double ClosePrice5 = Schließen ;

double Volumen5 = Volumen ;

// Kerze 6

double OpenPrice6 = Eröffnen ;

double ClosePrice6 = Schließen ;

double Volumen6=Volumen ;

// Kerze 7

double OpenPrice7 = Eröffnen ;

double ClosePrice7 = Schließen ;

double Volumen7 = Volumen ;

// Kerze 8

double OpenPrice8 =Open ;

double ClosePreis8 =Schließen ;

double Volumen8 =Volumen;

// Kerze 9

double OpenPrice9 =Open ;

double ClosePrice9 = Schließen ;

double Volumen9 = Volumen ;

// Kerze 10

double OpenPrice10 =Open;

double ClosePrice10=Close;

double Volumen10=Volumen;

pnow =(ClosePricenow - OpenPricenow);

SOT = (pnow / Volumenow)*10000;

p1 = (ClosePreis1 - OpenPreis1);

SOT1= (p1 / Volumen1) *10000;

p2 = (ClosePrice2 - OpenPrice2);

SOT2 = (p2/Volumen2) *10000;

p3 =(ClosePrice3 - OpenPrice3);

SOT3 =(p3/Volumen3)*10000;

p4=(ClosePrice4 - OpenPrice4);

SOT4=(p4/Volume4)*10000;

p5=(ClosePrice5 - OpenPrice5);

SOT5 =(p5/Umsatz5)*10000;

p6=(ClosePrice6 - OpenPrice6);

SOT6 =(p6/Umsatz6)*10000;

p7=(ClosePrice7 - OpenPrice7);

SOT7 =(p7/Volumen7)*10000;

p8 =(SchlussKurs8 - Eröffnungskurs8);

SOT8=(p8/Volume8)*10000;

p9 =(ClosePrice9-OpenPrice9);

SOT9 =(p9/Volumen9)*10000;

p10 =(SchlussKurs10 -ÖffnungsKurs10);

SOT10 = (p10/Volumen10)*10000;

SOTAV10=(SOT1+SOT2+SOT3+SOT4+SOT5+SOT6+SOT7+SOT8+SOT9+SOT10/100*10);

SOTAV2 = (SOTAV10*2);

if ((SOT>SOTAV2)&&(ClosePrice1<OpenPrice1)&&(ClosePricenow<OpenPrice1)){

CrossedUp = true;

CrossedDown= false;

}

sonst

if((SOT>SOTAV2)&&(ClosePrice1>OpenPrice1)&&(ClosePricenow>OpenPricenow)){

CrossedUp = false;

CrossedDown = true;

}

if((CrossedUp==true)&&(SignalLabeled!=1)){

CrossUp=Low-Range*1.3;

if(i<=2 && Alerts && !upalert)

{

Alert (Symbol()," ",Zeitraum()," M Preis UP ");

//SendMail("Kaufen "+Symbol(),"");

upalert=true;

downalert=false;

}

SignalLabeled = 1;

}

if ((CrossedDown == true) && (SignalLabeled != 2)) {

CrossDown = Hoch + Range*1,3;

if(i<=2 && Alerts && !downalert)

{

Alert (Symbol()," ",Period(), "M Preis DOWN ");

//SendMail("Verkaufen "+Symbol(),"");

downalert=true;

upalert=false;

}

SignalLabeled = 2;

}

}

return(0);

}

Dies ist das Prinzip, das dieser Software zu Grunde liegt:

Handelsgeschwindigkeit = (Preisänderung/Volumen) pro Zeiteinheit = (Open-Close)/Tick-Volumen in der Standardperiode.

Wenn die SoT der aktuellen Kerze größer ist als das Doppelte der durchschnittlichen SoT der ausgewählten Periode, wird die nächste Kerze in die gleiche Richtung wie die aktuelle Kerze gehen. (Unsere Signale können zum Schluss der aktuellen Kerze gegeben werden).

Achtung! Wenn auf die aktuelle Kerze 2-3 gleichfarbige Kerzen folgen, wird kein Signal gegeben. Ein Beispiel: Datum E/J(Open) E/J(High) E/J(Low) E/J(Close) Volume(E/J) Direction Price change Speed 11/06/2012 03:56:00 102.456 102.456 102.429 102.429 96 DOWN -0.027 2.81 11/06/2012 03:57:00 102.429 102.429 102.398 102.413 158 DOWN -0.016 1.01 da die Geschwindigkeit größer als 1.70 (Durchschnitt von 14 Kerzen) ist, sagt er voraus, dass die nächste Kerze nach unten gehen wird. Dieser Indikator kann so gestaltet werden, dass er wie ein Tachometer aussieht, oder es kann nur die Zahl mit dem Signal auf der Kerze erscheinen. Ich denke, dass dies eine große Hilfe bei der Entscheidungsfindung sein wird. Die Theorie dahinter ist, dass jeder Anstieg oder Fall eine Kraft oder Trägheit benötigt, die größer ist als die bestehende Kraft. Sobald wir also eine solche zusätzliche Kraft sehen oder erfassen, können wir auch die nächste Kerzenrichtung und die Werte bestimmen.

......................................................................................................................

Mastercash

Meines Erachtens müssen einige Laufzeittests durchgeführt werden, bevor etwas am Code getan wird. Sobald der Markt eröffnet wird sehen, was getan werden kann

 

Hallo

könnte mir jemand helfen, etwas Code zu diesem Skript hinzuzufügen.jarroo_level_picker.mq4

Dieses Skript zeichnet eine Linie beim Öffnen oder Schließen der Kerze, je nachdem, ob wir sie unter oder unter der Hälfte der Kerze fallen lassen, und ich möchte, dass es auch einen kleinen Pfeil unter oder unter der Kerze zeichnet, um später zu sehen, auf welcher Kerze es verwendet wurde.

Vielen Dank im Voraus.

Dateien:
 
Andrewsurfer:
Hallo

Könnte mir jemand helfen, diesem Skript etwas Code hinzuzufügen.jarroo_level_picker.mq4

Dieses Skript zeichnet eine Linie beim Öffnen oder Schließen der Kerze, je nachdem, ob wir sie unter oder unter der Hälfte der Kerze fallen lassen, und ich möchte, dass es auch einen kleinen Pfeil unter oder unter der Kerze zeichnet, um später zu sehen, auf welcher Kerze es verwendet wurde

vielen Dank im Voraus.

Andrewsurfer

Versuchen Sie diese Version. Sie fügt keinen Pfeil hinzu, sondern einen Balken in der gleichen Farbe wie die Linienfarbe an der Leiste, welche Kerze verwendet wurde

Dateien:
 
mladen:
Andrewsurfer Versuchen Sie diese Version. Sie fügt keinen Pfeil hinzu, sondern einen Balken in der gleichen Farbe wie die Farbe der Linie an dem Balken, der als Kerze verwendet wurde

Es tut mir leid, aber ich sehe keine Änderungen. Es ist immer noch nur die blaue Linie ohne andere Zeichen.

 
Andrewsurfer:
Es tut mir leid, aber ich kann keine Änderungen erkennen. Es ist immer noch nur die blaue Linie ohne andere Zeichen.

Es gibt eine zusätzliche Zeile (wie auf dem Bild) und sie wird an der Leiste erstellt, an der Sie das Skript ablegen

Dateien:
v_line.gif  36 kb
 
mladen:
Es gibt eine zusätzliche Zeile (wie auf dem Bild) und sie wird an dem Balken erstellt, an dem Sie das Skript ablegen

Ich hatte falsche Einstellungen des MT4-Charts im Vordergrund und jetzt funktioniert es.

Vielen Dank!

Grund der Beschwerde: