New metatrader 4 compatible indicators - page 44

 
hotchilox:
Thank you so much for explanation Sir Mladen, u are the best One more thing please, where i can find XO indicator?

That one is actually this indicator : https://www.mql5.com/en/forum/179807/page42 crippled (parameters made invisible, that nonsense fixed minimum and maximum added and the drawing style changed along with some other things that were made in order to hide what is that indicator actually).

One quite good version (using atr instead of using fixed size boxes for XO) you can download from here https://www.mql5.com/en/forum/173574/page311

Or you can use the version attached here (it is a "basic" multi time frame version with alerts added - set the box size to 20 and you will get exactly the same results as the "jaguar")

Files:
 
mladen:
Tzuman

Here is a version that works OK

As of arrays : no, it would not be better. I was trying to do so when I was solving the problem of necessary calculating buffers, but then, cases when the array should be resized, you have to do the

ArraySetAsSeries(array,false);

ArrayResize(arraySize);

ArraySetAsSeries(array,true);

since metatrader had problems resizing arrays set as series properly, and then you might encounter 2 issues :

  1. it is not sure that the job will be done as it should (that the correct values are going to be at correct indexes - there were some builds of metatrader that messed up the whole array after that)
  2. the builds that did that correctly took ages for that (my guess is that they copied values 1 by 1 in order to keep the original contents of the array elements)

So I decided to use classical C like arrays (and metatader 5, btw) and am using them this way ever since wth no issue at all. It is fast, simple to use once when you get used to it and in some cases I could be able to use equivalent of over 200 buffers that way (imagine just the upper block of code done on all those 200+ arrays)

Now, with strict applied we shall have some work to do, but admit it - it is due to us (coders) being lazy at the first place when the original code was written so we skipped the necessary checks. Man, when I think what would C/C++ do to me if I would do something like that using it - it was able to kill windows when array elements were addressed improperly

Thanks so much for the prompt and thorough explanation. You educated me on Series arrays. I had assumed that setting as a series in Init would carry through the necessary resizings in the Start function. Did not think about having to unset resize and then reset to increase the array.

Tzuman

 

Hi, can we please have this one made nmc?

spaghetti_macd.mq4

Files:
 
Gfuchs:
Hi, can we please have this one made nmc? spaghetti_macd.mq4

Gfuchs

Here you go

Files:
 
mladen:
Gfuchs Here you go

"char" recoded to "tchar" I see....

Thanks Mladen!

 

Hello, can someone please recode the attached indicators so they run on new metatrader 4?

 
camisa:
Hello, can someone please recode the attached indicators so they run on new metatrader 4?

camisa

RSI of Kaufman ama histo does not need any change (just compile it)

T3 adaptive made compatible with the new metatrader 4

 
Gfuchs:
"char" recoded to "tchar" I see.... Thanks Mladen!

Yep "char" as a name of a variable was allowed in previous metatrader and now is not (since now it is a data type). Sometimes these changes are simple but sometimes can be very difficult to find what must be done due to much bigger incompatibilities than just a name of the variable

 

Dear Mladen

Is it possible to make attached indicator compatible with new build ( )

Thanks for any help

secretcode

 
secretcode:
Dear Mladen

Is it possible to make attached indicator compatible with new build ( )

Thanks for any help

secretcode

secretcode

Here you go . You will have a couple of warning but I left those since if I correct it, then some averages (like hull) will not work. Also, Geometric Mean (type 14) does not work in this version nor does it work the original at all (used build 509 to test it and ir does not work in build 509 either). Left it as is. All in all, do not try applying strict to this indicator because in that case it has to be rewritten completely. Without the strict (like the one attached here) now it works the same as the original