Hilfe bei der Codierung - Seite 135

 

danke mladen .....

funktioniert aber nicht ....

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

//| text.mq4 |

//| Copyright 2013, MetaQuotes Software Corp. |

//| http://www.metaquotes.net |

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

#property copyright "Copyright 2013, MetaQuotes Software Corp."

#property link "http://www.metaquotes.net"

#property indicator_chart_window

extern int timeframe1 = PERIOD_H1;

extern int timeframe2 = PERIOD_D1;

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

//| Custom indicator initialization function |

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

int init()

{

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{

int counted_bars=IndicatorCounted();

//----

string name1="";

string name2="";

color color1;

color color2;

double H1 = iClose(NULL,timeframe1,0);

double D1H = iHigh(NULL,timeframe2,1);

double D1L = iLow(NULL,timeframe2,1);

if(H1>D1H)

{

name1 = "up"; color1 = Blue;

}

if(H1<D1L)

{

name2 = "down"; color2 = Red;

}

ObjectCreate("signal",OBJ_LABEL,0,0,0,0,0);

ObjectSet("signal",OBJPROP_XDISTANCE,3);

ObjectSet("signal",OBJPROP_YDISTANCE,12);

ObjectSetText("signal",name1,12,"Tahoma",color1);

ObjectCreate("signal2",OBJ_LABEL,0,0,0,0,0);

ObjectSet("signal2",OBJPROP_XDISTANCE,59);

ObjectSet("signal2",OBJPROP_YDISTANCE,12);

ObjectSetText("signal2",name2,12,"Tahoma",color2);

//----

return(0);

}

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

Dateien:
1223123.png  22 kb
 
rizkyd:

danke mladen .....

funktioniert aber nicht ....

Ich denke, dass dieser Code Sie interessieren könnte.

Anstelle von Grafikobjekten habe ich normale Puffer verwendet.

Dieses Indi vergleicht IMMER H1 und D1

Also, es wird nicht markieren Preise über H1 Zeitrahmen, aber es wird

auf gleichen oder niedrigeren Zeitfenstern als H1 markieren. Manchmal

sieht es seltsam aus, auf niedrigeren Zeitrahmen (wie Markierung Bars

zu früh), aber wenn man sich die stündliche Verschiebung genauer ansieht, ist es

gut.

dhl_d.mq4

Dateien:
dhl_e.mq4  3 kb
gbpusdh1.png  30 kb
 
Kalenzo:
Ich denke, dass dieser Code Sie interessieren könnte.

Anstelle eines grafischen Objekts habe ich normale Puffer verwendet.

Dieses Indi vergleicht IMMER H1 und D1

Also, es wird nicht markieren Preise über H1 Zeitrahmen, aber es wird

auf gleichen oder niedrigeren Timeframes als H1 markieren. Manchmal

sieht es auf niedrigeren Timeframes seltsam aus (als würde es Bars

zu früh), aber wenn man sich die stündliche Verschiebung genauer ansieht, ist es

gut.

dhl_d.mq4

Dank kalenzo ... wird dies indi versuchen

 
rizkyd:

danke mladen .....

funktioniert aber nicht ....

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

//| text.mq4 |

//| Copyright 2013, MetaQuotes Software Corp. |

//| http://www.metaquotes.net |

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

#property copyright "Copyright 2013, MetaQuotes Software Corp."

#property link "http://www.metaquotes.net"

#property indicator_chart_window

extern int timeframe1 = PERIOD_H1;

extern int timeframe2 = PERIOD_D1;

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

//| Custom indicator initialization function |

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

int init()

{

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

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

//| Custom indicator iteration function |

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

int start()

{

int counted_bars=IndicatorCounted();

//----

string name1="";

string name2="";

color color1;

color color2;

double H1 = iClose(NULL,timeframe1,0);

double D1H = iHigh(NULL,timeframe2,1);

double D1L = iLow(NULL,timeframe2,1);

if(H1>D1H)

{

name1 = "up"; color1 = Blue;

}

if(H1<D1L)

{

name2 = "down"; color2 = Red;

}

ObjectCreate("signal",OBJ_LABEL,0,0,0,0,0);

ObjectSet("signal",OBJPROP_XDISTANCE,3);

ObjectSet("signal",OBJPROP_YDISTANCE,12);

ObjectSetText("signal",name1,12,"Tahoma",color1);

ObjectCreate("signal2",OBJ_LABEL,0,0,0,0,0);

ObjectSet("signal2",OBJPROP_XDISTANCE,59);

ObjectSet("signal2",OBJPROP_YDISTANCE,12);

ObjectSetText("signal2",name2,12,"Tahoma",color2);

//----

return(0);

}

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

Sie vergleichen zwei verschiedene Zeitrahmen

Wenn der aktuelle Balken des Zeitrahmens 1 höher oder niedriger ist als der erste geschlossene Balken des Zeitrahmens 2, dann wird die Meldung angezeigt. Wenn der aktuelle Balken von Zeitrahmen 1 nicht höher oder niedriger ist als das vorherige Hoch und Tief von Zeitrahmen 2, wird nichts angezeigt. Aus dem Code, den Sie gepostet haben, geht hervor, dass dies Ihre Absicht war (in meinen Tests hat es gut funktioniert)

___________________

PS: Es wird kein Text für historische Daten (frühere Daten) angezeigt. Wenn Sie wollen, dass er auf historischen Daten angezeigt wird, dann muss alles ganz anders geschrieben werden als ein klassischer Indikator

 

EA für automatische Platzierung von Stoploss und Take Profit abhängig von Fibo Line

Hallo

Ich möchte einen EA erstellen, der Stop Loss und Take Profit für jede Order setzen kann!

Der EA muss den Verkaufskurs oder Kaufkurs sehen und zum Beispiel für den Kaufkurs:

Wenn der Preis der Eröffnungsbestellung zwischen der Linie 38.2 und 50 liegt, setzt der EA automatisch den Stop Loss auf eine Linie vor dem Fibo=23.6 und den Take Profit auf eine Linie nach dem Fibo=61.8

Mit diesem Verfahren EA tun für Verkaufsposition, zum Beispiel, wenn die Position ist Sell stop@ X Preis und 38,2 Fibo<x<50 Fibo! EA platziert automatisch Take Profit auf 23.6 Fibo und Stop Loss auf 61.8 Fibo Linie!!!

Kann mir jemand mit dem Code von diesem EA helfen oder mir einen ähnlichen Code von diesem EA nennen!!!

****note:

Fibo-Linie wird automatisch durch Low und High des letzten Tages berechnet!!!!

Tnx

 
mladen:
Sie vergleichen zwei verschiedene Zeitrahmen

Wenn der aktuelle Balken des Zeitrahmens 1 höher oder niedriger ist als der erste geschlossene Balken des Zeitrahmens 2, wird die Meldung angezeigt. Wenn der aktuelle Balken des Zeitrahmens 1 nicht höher oder niedriger ist als das vorherige Hoch und Tief des Zeitrahmens 2, wird nichts angezeigt. Aus dem Code, den Sie gepostet haben, geht hervor, dass dies Ihre Absicht war (in meinen Tests hat es gut funktioniert)

___________________

PS: es zeigt keinen Text bei historischen Daten (vorherige Daten). Wenn Sie wollen, dass er historische Daten anzeigt, dann muss alles ganz anders geschrieben werden als bei einem klassischen Indikator

Vielen Dank für Sie mladen ... wenn Sie Zeit haben, bitte machen Sie es, um historische Daten .... zeigen

PS: dieses indi kann mir helfen, den Trend UP oder Trend Down anzuzeigen

 
rizkyd:
Vielen Dank für die mladen ... wenn Sie Zeit haben, bitte machen Sie es zu zeigen, historische Daten .... PS: diese indi kann mir helfen, mir zu zeigen, Trend UP oder Trend Down

rizkyd

Haben Sie versucht, mit Multi-Time-Frame-Donchian-Kanal für diese (zum Beispiel, um den Zeitrahmen der Donchian-Kanal auf täglich und Zeitraum auf 1 und Sie würden fast genau das gleiche, was Sie suchen)

 

Neuankömmling sucht Rat/Hilfe

Hallo zusammen,

Ich bin neu im Forex-Bereich und interessiere mich im Moment für Indikatoren und EAs. Ich habe einige Verständnis über mq4-Code, aber das ist noch nicht genug, um zu bekommen, was ich will. So würde ich gerne Rat/Hilfe von Experten oder Menschen, die genug über mq4 Codierung weiß fragen.

Meine aktuelle Aufgabe ist es, benutzerdefinierte Indikator zu EA hinzufügen, und durch die Art und Weise habe ich eine schöne EA-Vorlage (denken) im gehen, um es mit Ihnen zu teilen

Ok so, meine endgültige Kauf/Verkauf Signale von Indikator sind diese: g_ibuf_BUY[1] und g_ibuf_SELL[1]

hier ein Teil des Codes, wenn der Indikator einen Ton abspielt, ein Pop-up erscheint und eine E-Mail gesendet wird.

void Alert_PlaySound_SendMail() {

string ls_ms = "MS PRO";

if (g_ibuf_BUY[1] == Low[1] - Arrow_Distance * Point && gi_flag_alert != Time[0]) {

if (Alert_PopUp_On) Alert(ls_ms + ": BUY | " + Symbol() + " " + TfToStr(Period()) + " | ", TimeToStr(TimeLocal(), TIME_SECONDS), " | " + DoubleToStr(Ask, 4));

PlaySound(ProcessBuySound(Buy_Sound));

gi_flag_alert = Time[0];

if (Send_Email) {

SendMail(ls_ms + " Alert! ", Symbol() + " " + TfToStr(Period()) + " - BUY signal issued at " + TimeToStr(TimeLocal(), TIME_SECONDS) + " on " + TimeToStr(TimeCurrent(),

TIME_DATE) + " (Last price: " + DoubleToStr(Ask, 4) + ")" + "\r\n \r\n Scalper PRO");

}

}

if (g_ibuf_SELL[1] == High[1] + Arrow_Distance * Point && gi_flag_alert != Time[0]) {

if (Alert_PopUp_On) Alert(ls_ms + ": SELL | " + Symbol() + " " + TfToStr(Period()) + " | ", TimeToStr(TimeLocal(), TIME_SECONDS), " | " + DoubleToStr(Ask, 4));

PlaySound(ProcessSellSound(Sell_Sound));

gi_flag_alert = Time[0];

if (Send_Email) {

SendMail(ls_ms + " Alert! ", Symbol() + " " + TfToStr(Period()) + " - SELL signal issued at " + TimeToStr(TimeLocal(), TIME_SECONDS) + " on " + TimeToStr(TimeCurrent(),

TIME_DATE) + " (Last price: " + DoubleToStr(Ask, 4) + ")" + "\r\n \r\n Scalper PRO");

}

}

}

Der nächste Schritt wäre, diese Signale zu EA-Vorlage hinzufügen? Mhm wie... muss ich iCustom Funktion verwenden oder etwas anderes benötigt, um Indikator hinzufügen, bevor ich es verwenden können? Jede Hilfe wird geschätzt werden. Vielen Dank!

Dateien:
 
otnepx:
Hallo zusammen,

Ich bin neu auf Forex, und im Moment interessiert über Indikatoren und EAs. Ich habe einige Verständnis über mq4-Code, aber das ist noch nicht genug, um zu bekommen, was ich will. So würde ich gerne Rat/Hilfe von Experten oder Menschen, die genug über mq4 Codierung weiß fragen.

Meine aktuelle Aufgabe ist es, benutzerdefinierte Indikator zu EA hinzufügen, und durch die Art und Weise habe ich eine schöne EA-Vorlage (denken) im gehen, um es mit Ihnen zu teilen Ok so, meine endgültige kaufen/verkaufen Signale von Indikator sind diese: g_ibuf_BUY[1] und g_ibuf_SELL[1]

hier ein Teil des Codes, wenn der Indikator einen Ton abspielt, ein Pop-up erscheint und eine E-Mail gesendet wird.

void Alert_PlaySound_SendMail() {

string ls_ms = "MS PRO";

if (g_ibuf_BUY[1] == Low[1] - Arrow_Distance * Point && gi_flag_alert != Time[0]) {

if (Alert_PopUp_On) Alert(ls_ms + ": BUY | " + Symbol() + " " + TfToStr(Period()) + " | ", TimeToStr(TimeLocal(), TIME_SECONDS), " | " + DoubleToStr(Ask, 4));

PlaySound(ProcessBuySound(Buy_Sound));

gi_flag_alert = Time[0];

if (Send_Email) {

SendMail(ls_ms + " Alert! ", Symbol() + " " + TfToStr(Period()) + " - BUY signal issued at " + TimeToStr(TimeLocal(), TIME_SECONDS) + " on " + TimeToStr(TimeCurrent(),

TIME_DATE) + " (Last price: " + DoubleToStr(Ask, 4) + ")" + "\r\n \r\n Scalper PRO");

}

}

if (g_ibuf_SELL[1] == High[1] + Arrow_Distance * Point && gi_flag_alert != Time[0]) {

if (Alert_PopUp_On) Alert(ls_ms + ": SELL | " + Symbol() + " " + TfToStr(Period()) + " | ", TimeToStr(TimeLocal(), TIME_SECONDS), " | " + DoubleToStr(Ask, 4));

PlaySound(ProcessSellSound(Sell_Sound));

gi_flag_alert = Time[0];

if (Send_Email) {

SendMail(ls_ms + " Alert! ", Symbol() + " " + TfToStr(Period()) + " - SELL signal issued at " + TimeToStr(TimeLocal(), TIME_SECONDS) + " on " + TimeToStr(TimeCurrent(),

TIME_DATE) + " (Last price: " + DoubleToStr(Ask, 4) + ")" + "\r\n \r\n Scalper PRO");

}

}

}
Der nächste Schritt wäre, diese Signale zur EA-Vorlage hinzuzufügen? Mhm wie... muss ich iCustom Funktion oder etwas anderes benötigt hinzufügen, um Indikator, bevor ich es verwenden können? Jede Hilfe wird geschätzt werden. Danke, dass Sie.

Sie können keine Alarme in einen anderen Teil des Codes (Indikator, EA) importieren.

Der sauberste Weg zu tun, was Sie wollen, ist mit iCustom()

 

Lieber Mladen/MrTools,

Ich möchte Sie bitten, einen Indikator für den 1-Minuten-Chart zu erstellen, der auf der folgenden Logik basiert ... Es sollte auch mit Kauf/Verkauf Pfeile auf dem Chart alarmieren ..

Logik für Kaufeingang :

einminütiger EMA(90), der den einminütigen EMA(390) überquert (d.h. der EMA 90 der vorherigen Minute ist kleiner als der EMA 390) und der EMA(90) sollte auch größer sein als der EMA(150)

Logik für den Kaufausstieg:

Eine Minute EMA(90) > EMA(390) und das ema(90) < ema(150).

Logik für den Verkaufseinstieg :

einminütiger EMA(90), der den einminütigen EMA(390) nach unten schneidet (d.h. der vorminütige EMA(90) ist größer als der EMA(390)) und der EMA(90) sollte auch kleiner als der EMA(150) sein

Logik für den Verkaufsausstieg:

eine Minute EMA(90) ema(150).

*******************************************************

Nest-Code für die gleiche Logik ist auch unten geteilt:

Kaufalarm-Ausdruck

EMA(CLOSE,90) > EMA(CLOSE,390) und REF(EMA(CLOSE,90),1) EMA(CLOSE,150)

Buy-Exit-Ausdruck

EMA(CLOSE,90) > EMA(CLOSE,390) und EMA(CLOSE,90) < EMA(CLOSE,150)

Verkaufsalarm-Ausdruck

EMA(CLOSE,90) REF(EMA(CLOSE,390),1) und EMA(CLOSE,90) < EMA(CLOSE,150)

Ausdruck "sell exit

EMA(CLOSE,90) EMA(CLOSE,150)

Danke

Vielen Dank!