Getting the index of the lowest close price for the last 30 Candles.

MQL5 Experts Consultation

Tâche terminée

Temps d'exécution 28 minutes
Commentaires de l'employé
Excellent customer and developer. Thanks.
Commentaires du client
Developer was very patient and knowledgeable will definately work with The Huy Phan again

Spécifications

I have written an EA buy I am struggling to use ILowest within a loop.

If I print out ILowest I get the correct value. But If I iterate through a loop and increase the start position of ILowest I get different values.

Surely the logic is the same for printing it out on each new candle as it is changing the start index.

I require help to work out this logic.

Basically I want to save the previous lowest candle for the last 25 candles into an arraybased on close price.

If candle[1] is the lowest array[0] = 0

if candle[2] is also lowest array[1]=0

if candle[3] is second lowest array[2]=1 

   if(!isNewBar() && InpTradeOnNewBar)
     {
      return;
     }
       
  //Something like this can be done
  ArrayResize(buyarr,30)

  buyarr[0] = ilowest(Symbol(),Period(),Mode_close,InpLookBackPeriod,1) - 1;

  //Shift values up one

   if(CopyRates(Symbol(),Period(),0,InpLookBackPeriod,BuyRates) < InpLookBackPeriod ||
      CopyRates(Symbol(),Period(),0,InpSLookBackPeriod,SellRates) < InpSLookBackPeriod)
     {
      return;
     }

   buyrank=iLowest(Symbol(),Period(),MODE_CLOSE,InpLookBackPeriod,1) - 1;
   sellrank=iHighest(Symbol(),Period(),MODE_CLOSE,InpSLookBackPeriod,1) - 1;


   
   Print(buyrank); //this prints the correct value. I would like to save this value for the previous 25 candles

   ArrayResize(buyarr,InpLookBackPeriod);

   for(int i=0; i<InpLookBackPeriod; i++)
     {
      buyarr[i] = iLowest(Symbol(),Period(),MODE_CLOSE,InpLookBackPeriod,i+1) - 1;
     }
ArrayPrint(buyarr); // This prints out totally incorrect values.

Répondu

1
Développeur 1
Évaluation
(71)
Projets
103
20%
Arbitrage
6
0% / 83%
En retard
3
3%
Gratuit
2
Développeur 2
Évaluation
(169)
Projets
204
30%
Arbitrage
25
40% / 44%
En retard
12
6%
Gratuit
3
Développeur 3
Évaluation
(75)
Projets
124
44%
Arbitrage
14
29% / 50%
En retard
17
14%
Gratuit
4
Développeur 4
Évaluation
(361)
Projets
644
26%
Arbitrage
92
72% / 14%
En retard
12
2%
Travail
Publié : 1 code

Informations sur le projet

Budget
30+ USD
Délais
à 1 jour(s)