Discussion of article "Strategy builder based on Merill patterns"

 

New article Strategy builder based on Merill patterns has been published:

In the previous article, we considered application of Merill patterns to various data, such as to a price value on a currency symbol chart and values of standard MetaTrader 5 indicators: ATR, WPR, CCI, RSI, among others. Now, let us try to create a strategy construction set based on Merill patterns.

As an example, I decided to record a short video, which shows the operation of the strategy builder.

Author: Alexander Fedosov

 

I have unpacked the zip archive and copied all files to their destination.

After compilation, the EA is not loaded and the message appears in the Experts tab of the terminal:

"CElement::CreateCanvas > Failed to create a canvas for drawing the(CButton) control: 4016"

Who has an idea to get the EA to work?


traderdoc

 
WOLFRAM STEFFEN SIEGERT:

I have unpacked the zip archive and copied all the files to their destination.

After compilation, the EA is not loaded and the message appears in the Experts tab of the terminal:

"CElement::CreateCanvas > Failed to create a canvas for drawing the (CButton) control: 4016"

Who has an idea to get the EA to work?


traderdoc

You are probably using build 2280.

There is a bug in the Canvas.mqh.

Remove the following string "(string)CharId + " from line 254.

Then recompile and the error should no longer occur.


Line 254 in Canvas.mqh after the correction:

m_rcname="::"+name+(string)(GetTickCount()+MathRand());


Greetings

 

Yes, thank you very much!

I had come to this point in the meantime and had the original line

m_rcname=":: "+name+(string)ChartID()+(string)(GetTickCount()+MathRand());

then to

m_rcname=":: "+name+(string)ChartID();

shortened.

This also works.


traderdoc

 
WOLFRAM STEFFEN SIEGERT:

Yes, thank you very much!

I had come to that point in the meantime and had the original line

m_rcname=":: "+name+(string)ChartID()+(string)(GetTickCount()+MathRand());

then to

m_rcname=":: "+name+(string)ChartID();

shortened.

This also works.


traderdoc

In principle, only the generated name is too long.

I don't know whether the random component GetTickCount() is important. Don't try or use all the GFX stuff.

Are you the traderdoc from known forums ?

Greetings