A lot of errors here :
double ma[2000];
- You are copying 10 values, so you don't need an array with 2000 values
if(CopyBuffer(ExtHandle,0,0,10,ma)!=1)
- CopyBuffer returns the number of copied values, so as you are asking 10 values, you only get an error if CopyBuffer returns a value less than 10, not !=1.
- In mql5, array are indexed in a standard way from 0 (the oldest value) to n (the newest value), you have to use ArraySetAsSeries the change this indexation if you need it.
- If you need 3 values, use an array of 3 values or use a dynamic array :
double ma[3]; if(CopyBuffer(ExtHandle,0,0,3,ma)!=3) { Print("CopyBuffer from MA failed, no data,error: ",GetLastError()); return; } ArraySetAsSeries(ma,true); Print("Value of current bar= ",ma[0]); Print("Value of last closed bar= ",ma[1]); Print("Value close bar(2)= ",ma[2]);
Thank you for this example, it was very helpfull.
One little thinks i making wrong, i get the message that ArraySetAsSeries() cannot be use for static arrays, how can i create another array type?
Trading:
Thank you for this example, it was very helpfull.
One little thinks i making wrong, i get the message that ArraySetAsSeries() cannot be use for static arrays, how can i create another array type?
You are right, it's my fault. Simply declare ma array as :
double ma[];
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Hello,
I am trying to make somethink simple but i dont know what i have wrong in my Code.
I am trying to get the last 2 Moving Average Values with the following code:
i did think that i can get then from the Array ma[] the last 10 Moving average values, for example ma[0] should have the current bar values and ma[1] the last closed and ma[2] the values from bar 2, but it is not working, i just get error 4007.µCan somebody tell me how i must write this code that it work and that i get the values wich i want?