iHighest der letzten 20 Tage und länger - Seite 2

 
Otto Pauser:

Willst du das nur auf dem Chart eingezeichnet haben, oder auch für eine EA als Indikator haben?

Also am Schluss  soll es schon, wenn es geht über ein EA  Indikator, aber für den Anfang und zum ausprobieren, will ich ihn erstmal auf den chart angezeigt bekommen.


So, also ich hab es jetzt soweit geschafft, das mir die obere und untere Linie angezeigt wird. aber Leider er zeigt mir in dem ganzen Zeitraum immer die höchste der Tages Kerze an., ich will aber das er mir das Höchste anzeigt der letzten 20 Tagen.


hier der Code:



//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+

#property indicator_chart_window 
#property indicator_buffers 12
#property indicator_plots   6

#property indicator_label1  "10 Tage Hoch"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrRed   

#property indicator_label2  "10 Tage Tief"
#property indicator_type2   DRAW_LINE
#property indicator_color2  clrRed  
 
#property indicator_label3  "20 Tage Hoch"
#property indicator_type3   DRAW_LINE
#property indicator_color3  clrBlue   

#property indicator_label4  "20 Tage Tief"
#property indicator_type4   DRAW_LINE
#property indicator_color4  clrBlue   

#property indicator_label5  "30 Tage Hoch"
#property indicator_type5   DRAW_LINE
#property indicator_color5  clrBlack

#property indicator_label6  "30 Tage Tief"
#property indicator_type6   DRAW_LINE
#property indicator_color6  clrBlack  
 
input ENUM_TIMEFRAMES InpPeriod=PERIOD_D1; 

double SHigh[],MHigh[],LHigh[];
double SLow[],MLow[],LLow[];

int SSHigh;
    
    
int OnInit()
{
      SetIndexBuffer(0,SHigh, INDICATOR_DATA);
      SetIndexBuffer(1,SLow,INDICATOR_DATA);
      SetIndexBuffer(2,MHigh,INDICATOR_DATA);
      SetIndexBuffer(3,MLow,INDICATOR_DATA);
      SetIndexBuffer(4,LHigh,INDICATOR_DATA);
      SetIndexBuffer(5,LLow,INDICATOR_DATA);
    
//---
     
      for(int i=0;i<5;i++)
     {
      PlotIndexSetInteger(i,PLOT_DRAW_TYPE,DRAW_LINE); // der Typ der graphischen Konstruktion
      PlotIndexSetInteger(i,PLOT_LINE_STYLE,STYLE_SOLID); // der Stil der Linie auf die Zeichnung
      PlotIndexSetInteger(i,PLOT_LINE_WIDTH,1);           // die Dicke der Linie auf die Zeichnung
     }

return(INIT_SUCCEEDED);

}

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
  
   ArraySetAsSeries(SHigh,true);
   ArraySetAsSeries(SLow,true);
   ArraySetAsSeries(MHigh,true);
   ArraySetAsSeries(MLow,true);
   ArraySetAsSeries(LHigh,true);
   ArraySetAsSeries(LLow,true);
   
   for(int i=0;i<100;i++){
   
   CopyHigh(_Symbol,0,i,10,SHigh);
   ArrayMaximum(SHigh,i,10);
   CopyLow(_Symbol,0,i,10,SLow);
   ArrayMinimum(SLow,i,10);
   
   CopyHigh(_Symbol,0,i,20,MHigh);
   ArrayMaximum(MHigh,i,20); 
   CopyLow(_Symbol,0,i,20,MLow);
   ArrayMinimum(MLow,i,20);
   
   CopyHigh(_Symbol,0,i,30,LHigh);
   ArrayMaximum(LHigh,i,30); 
   CopyLow(_Symbol,0,i,30,LLow);
   ArrayMinimum(LLow,i,30);
   
   
   }
        
     
         
//--- return value of prev_calculated for next call
   return(rates_total);
  }
---------------------------------+



result:


 
  1. Verwende den Styler des Editors für Deinen Code!
  2. Orientiere Dich am Donchain Channel: https://www.mql5.com/de/code/20444
Donchain counter
Donchain counter
  • www.mql5.com
Der Expert Advisor verwendet den Indikator Donchian Channel. Einschränkungen: Es kann nicht mehr als eine Position auf dem Markt existieren, die nächste Position kann frühestens nach 24 Stunden eröffnet werden. Die Indikatorwerte des Donchian Channels werden als Signale für das Öffnen einer Position und das Anwenden der Trailing-Stop-Funktion...
Grund der Beschwerde: