Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Telegram!
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Ansichten:
915
Rating:
(22)
Veröffentlicht:
2017.02.07 14:56
ColorDay.mq5 (7.48 KB) ansehen
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Der Indikator Color Day zeichnet mit einer Farbe eines Stier- oder Bärentages.

Wenn der Exit-Preis des Tages mehr als der Preis der Eröffnung ist, färben wir es mit der blauen Farbe (es wird in Einstellungen gegeben).

input color UP = Blue;  // Die Farbe eines Stiertages 

Wenn der Exit-Preis des Tages weniger als der Preis der Eröffnung ist, färben wir es mit der roten Farbe (es wird in Einstellungen gegeben).

input color DN = Red;   // Die Farbe eines Bärentages

Wir kopieren die Preise der Eröffnung, der Schließung und die Zeit der Eröffnung für die angegebene Zahl der Tage Days:

CopyTime(NULL,PERIOD_D1,0,Days+1,tm);
      CopyOpen(NULL,PERIOD_D1,0,Days+1,op);
      CopyClose(NULL,PERIOD_D1,0,Days+1,cl);

in die entsprechenden Arrays:

datetime tm[];
double op[];
double cl[];

Vor der Setzung des Indikators auf das Chart werden wir die Dimension der Arrays geben:

int OnInit()
  {
//--- indicator buffers mapping
   Comment("");
   ArrayResize(tm,Days);
   ArrayResize(op,Days);
   ArrayResize(cl,Days);
//---
   return(INIT_SUCCEEDED);
  }

Wir ordnen der Variablen die Werte der Arrays-Zellen zu und wir bestimmen die Schließungszeit des Tages time1:

datetime time0=tm[i];
      datetime time1=time0+3600*24;
      double dopen=op[i];
      double dclose=cl[i];

Mit Hilfe der Funktion PutRect():

void PutRect(string name,datetime t1,double p1,datetime t2,double p2,color clr)
  {
   ObjectDelete(0,name);
//--- wir erstellen das Rechteck nach den aufgegebenen Koordinaten 
   ObjectCreate(0,name,OBJ_RECTANGLE,0,t1,p1,t2,p2);
//--- wir setzen die Farbe des Rechteckes
   ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- Wir aktivieren (true) oder deaktivieren (false) die Ausfüllung des Rechteckes 
   ObjectSetInteger(0,name,OBJPROP_FILL,true);
  }

Wir werden den Tag je nachdem färben, wohin der Preis gegangen ist:

if(dclose<dopen) PutRect("Rect"+(string)dopen,time0,dopen,time1,dclose,DN);
      if(dclose>dopen) PutRect("Rect"+(string)dopen,time0,dopen,time1,dclose,UP);

In der Loop bearbeiten wir alle Tage, die in den Einstellungen Days eingegeben sind:

for(int i=0;i<=Days;i++)
     {
      CopyTime(NULL,PERIOD_D1,0,Days+1,tm);
      CopyOpen(NULL,PERIOD_D1,0,Days+1,op);
      CopyClose(NULL,PERIOD_D1,0,Days+1,cl);

      datetime time0=tm[i];
      datetime time1=time0+3600*24;
      double dopen=op[i];
      double dclose=cl[i];

      if(dclose<dopen) PutRect("Rect"+(string)dopen,time0,dopen,time1,dclose,DN);
      if(dclose>dopen) PutRect("Rect"+(string)dopen,time0,dopen,time1,dclose,UP);

Bei der Entfernung des Indikators vom Chart, mit Hilfe der Funktion DeleteObjects():

void DeleteObjects()
  {
   for(int i=ObjectsTotal(0,0,OBJ_RECTANGLE)-1;i>=0;i--)
     {
      string name=ObjectName(0,i,0,OBJ_RECTANGLE);
      if(StringFind(name,"Rect",0)>=0) ObjectDelete(0,name);
     }
  }


Wir entfernen die erstellten Objekte vom Chart:

void OnDeinit(const int reason)
  {
   Comment("");
   DeleteObjects();
  }

Einstellungen:

input int   Days = 11;  // Die Tage für die Berechnung 
input color UP = Blue;  // Die Farbe eines Stiertages 
input color DN = Red;   // Die Farbe eines Bärentages

in Abb 1. Der Indikator im Chart


Tipps:

  • Der Indikator Color Day — der visuelle Helfer beim Handeln.

Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/16383

ColorJSatl_Digit ColorJSatl_Digit

Der glättende schnelle digitale Filter JSatl mit der Anzeige des letzten Wertes in Form von einer Preismarkierung und mit der Möglichkeit, die Ebene des Indikators zur erforderlichen Anzahl der Ordnung abzurunden.

Exp_JSatl_Digit_System Exp_JSatl_Digit_System

Das Handelssystem, welches aufgrund der Signale des Indikators JSatl_Digit_System gebaut wurde.

si_q_asi si_q_asi

Die kurzfristige und accumulation Indexe der Preisschwankung.

Bear_Bulls_Power Bear_Bulls_Power

Der Indikator zeigt die Kraft der "Stiere" und "Bären" nach einer einfachen Weise in einem Fenster.