Fehrler in der Liene

Carl Schreiber  
Frage: Was soll denn das für ein Fehler sein?
amando  
Carl Schreiber:
Frage: Was soll denn das für ein Fehler sein?

da ist keine Fehlermeldung, wenn der Indikator nicht richtig anzeigt, stelle den Code richtig

adriafpd  
Carl Schreiber:
Frage: Was soll denn das für ein Fehler sein?

er zeichnet und wechselt die farbe durch das gibt er ein signal soll nicht sein

wie kann ich das ändern

adriafpd  
amando:

da ist keine Fehlermeldung, wenn der Indikator nicht richtig anzeigt, stelle den Code richtig

er zeichnet und wechselt die farbe durch das gibt er ein signal soll nicht sein

wie kann ich das ändern

Carl Schreiber  
adriafpd:

er zeichnet und wechselt die farbe durch das gibt er ein signal soll nicht sein

wie kann ich das ändern

Für beide Puffer dieselbe Farbe verwenden.
adriafpd  

darum frage ich wer kann helfen und dann schicke ich ihne

adriafpd  
double Up[];
double Dn[];
double Up1[];
double Dn1[];
double Direction[];
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[])
{
   totalBars=rates_total;
   if (ArraySize(Direction)!=rates_total)
   {
      ArrayResize(Up,rates_total);
      ArrayResize(Dn,rates_total);
      ArrayResize(Up1,rates_total);
      ArrayResize(Dn1,rates_total);
      ArrayResize(Direction,rates_total);
   }      

   //
   //
   //
   //
   //

   for (int i=(int)MathMax(prev_calculated-1,1); i<rates_total; i++)
   {
       
        double atr = 0;
         for (int k=0;k< hullPeriod  && (i-k-1)>=0; k++)
         
                atr += MathMax(high[i-k],close[i-k-1])-MathMin(low[i-k],close[i-k-1]);
               
          
         atr /= atrPeriod;
                     
        double atr1 = 0;
         
         for (int k=0;k< hullPeriod  && (i-k-1)>=0; k++)
         {
               atr1 += MathMax(high[i-k],close[i-k-1])-MathMin(low[i-k],close[i-k-1]);
                
                atr1 /= atrPeriod;      
                {
                atr1 /= atrPeriod;
                }
         }          
         //
         
         
         
   
         //
         
         //
         //
         double cprice = low[i];   // Einstieg unten bei High früher
         double aprice = close[i];
         double oprice = iCustomMa(AvgMethod,getPrice(Price,open,close,high,low,i,rates_total),AvgPeriod,tick_volume,i);
        // double uprice = iCustomMa(AvgMethod,getPrice(Price1,open,close,high,low,i,rates_total),AvgPeriod,tick_volume,i);
                Up[i]  = oprice+(atrMultiplier)*atr;  // untere Liene
                Dn[i]  = oprice-(atrMultiplier)*atr;  // Obere Liene
                {Up1[i] = oprice+(atrMultiplierDn)*atr1;
                Dn1[i] = oprice-(atrMultiplierUp)*atr1;}
         
         //
         /*if(k % 05 == 0)
            {
                atr1 /= atrPeriod;
            }*/
         //
         //
         //

         colorBuffer[i] = colorBuffer[i-1];
         Direction[i]   = Direction[i-1];
            if (cprice > Up[i-1])
                Direction[i] =  1;
            if (aprice < Dn[i-1])
               Direction[i] = -1;
            if (Direction[i] > 0)
                  {
                  Dn[i] = MathMax(Dn[i],Dn[i-1]);
                  }
            else  
                  {
                  Up[i] = MathMin(Up[i],Up[i-1]);
                  }
            if(Direction[i] > 0)
                  {
                  Dn1[i] = MathMax(Dn1[i],Dn1[i-1]-atr1);
                  st[i] = Dn1[i];
                  }
            else  
                  {
                  Up1[i] = MathMin(Up1[i],Up1[i-1]+atr1);
                  st[i] = Up1[i];
                  }
            if (Direction[i]== 1)
               colorBuffer[i] = 0;
            if (Direction[i]==-1)
               colorBuffer[i] = 1;
               
               if(ArraySize(colorBuffer)-1>i)
        {
         if(Direction[i]==1&& Direction[i-1]!=1)
           {
            ObjectCreate(0,"data "+TimeToString(time[i]),OBJ_TEXT,0,time[i],st[i]);
            ObjectSetString(0,"data "+TimeToString(time[i]),OBJPROP_TEXT,"Buy");
            ObjectSetInteger(0,"data "+TimeToString(time[i]), OBJPROP_COLOR, clrGreen);
            if(time[i]+PeriodSeconds()+30 > iTime(Symbol(),PERIOD_CURRENT,0))alert("Buy");
            ObjectSetInteger(0,"data "+TimeToString(time[i]), OBJPROP_ANCHOR, ANCHOR_UPPER);
           }
           
          if(Direction[i]!=1&& Direction[i-1]==1)
           {
            ObjectCreate(0,"data "+TimeToString(time[i]),OBJ_TEXT,0,time[i],st[i]);
            ObjectSetString(0,"data "+TimeToString(time[i]),OBJPROP_TEXT,"Sell");
            
            ObjectSetInteger(0,"data "+TimeToString(time[i]), OBJPROP_ANCHOR, ANCHOR_LOWER);
            ObjectSetInteger(0,"data "+TimeToString(time[i]), OBJPROP_COLOR, clrRed);
            if(time[i]+PeriodSeconds()+30 > iTime(Symbol(),PERIOD_CURRENT,0))alert("Sell");
           }
        }

   }
   return(rates_total);
}
amando  
Bitte mit codebutton posten, dann kann man es auch lesen
Grund der Beschwerde: