Job finished
Execution time 28 minutes
Feedback from employee
Excellent customer and developer.
Thanks.
Feedback from customer
Developer was very patient and knowledgeable will definately work with The Huy Phan again
Specification
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.
Responded
1
Rating
Projects
103
20%
Arbitration
6
0%
/
83%
Overdue
3
3%
Free
2
Rating
Projects
204
30%
Arbitration
25
40%
/
44%
Overdue
12
6%
Free
3
Rating
Projects
124
44%
Arbitration
14
29%
/
50%
Overdue
17
14%
Free
4
Rating
Projects
643
26%
Arbitration
92
72%
/
14%
Overdue
12
2%
Working
Published: 1 code
Project information
Budget
30+ USD
Deadline
to 1 day(s)