Indicators: 3DMa

 

3DMa:

Buffer-free indicator implemented on iCanvas

3DMa

Author: Nikolai Semko

 
I am recommending using the MQL5 version.
https://www.mql5.com/en/code/24798
 
Version 1.02. Some bugs fixed.
 
Really nice, except it needs some kind of "locking" mechanism so it won't move when unwanted. I need to click the chart for other reasons and this indicator goes all out of whack when it is supposed to stay put. Thank you for the code.
 
whoowl:
Really nice, except it needs some kind of "locking" mechanism so it won't move when unwanted. I need to click the chart for other reasons and this indicator goes all out of whack when it is supposed to stay put. Thank you for the code.

I have figured out how to alter the source code to prevent further clicking from rearranging the lines, but I can't understand how to prevent that when the timeframe is changed. I wish it would remain fixed after the first click.

 
whoowl:

I have figured out how to alter the source code to prevent further clicking from rearranging the lines, but I can't understand how to prevent that when the timeframe is changed. I wish it would remain fixed after the first click.

here is such an option, when changes will occur from the moment you press the M key (modify) until you press any other key or click the mouse.

Files:
3DMa.mq5  12 kb
 
Nikolai Semko:

here is such an option, when changes will occur from the moment you press the M key (modify) until you press any other key or click the mouse.


Thanks!


But it's not compiling and I don't know how to fix it.

I use MT4, in case it matters.


'3DMa_new.mq4'  3DMa_new.mq4    1       1
'iCanvas.mqh'   iCanvas.mqh     1       1
'Canvas.mqh'    Canvas.mqh      1       1
'FileBin.mqh'   FileBin.mqh     1       1
'File.mqh'      File.mqh        1       1
'Object.mqh'    Object.mqh      1       1
'StdLibErr.mqh' StdLibErr.mqh   1       1
'Rect.mqh'      Rect.mqh        1       1
'Close' - variable already defined      3DMa_new.mq4    15      9
   see previous declaration of variable 'Close'         0       0
'' - 'const' variable must be initialized               0       0
'CopyClose' - no one of the overloads can be applied to the function call       3DMa_new.mq4    26      9
could be one of 3 function(s)   3DMa_new.mq4    26      9
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,int,int,double&[])      3DMa_new.mq4    26      9
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,datetime,int,double&[]) 3DMa_new.mq4    26      9
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,datetime,datetime,double&[])    3DMa_new.mq4    26      9
'CopyClose' - no one of the overloads can be applied to the function call       3DMa_new.mq4    36      12
could be one of 3 function(s)   3DMa_new.mq4    36      12
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,int,int,double&[])      3DMa_new.mq4    36      12
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,datetime,int,double&[]) 3DMa_new.mq4    36      12
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,datetime,datetime,double&[])    3DMa_new.mq4    36      12
'CopyClose' - no one of the overloads can be applied to the function call       3DMa_new.mq4    67      12
could be one of 3 function(s)   3DMa_new.mq4    67      12
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,int,int,double&[])      3DMa_new.mq4    67      12
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,datetime,int,double&[]) 3DMa_new.mq4    67      12
   built-in: int CopyClose(const string,ENUM_TIMEFRAMES,datetime,datetime,double&[])    3DMa_new.mq4    67      12
5 errors, 0 warnings            6       1
 
whoowl:


Thanks!


But it's not compiling and I don't know how to fix it.

I use MT4, in case it matters.


Oh, I'm sorry, I didn't see that this is MT4.

But I recommend you to use the MT5 version on MetaTrader 5, as it works much faster than MT4 and there are no delays.

You can download the free version of MetaTrader 5 from this site below in the footer and open a demo account.


 
whoowl:


Thanks!


But it's not compiling and I don't know how to fix it.

I use MT4, in case it matters.


You can also see this code. It's the same, but real 3D.
https://www.mql5.com/en/code/27733


 

Do you mean it can't be done on MT4? :-(

I have thought about migrating and have decided I will not. I have too much code invested in MT4, porting it would be too much work for no relevant benefit.

I don't want any bells and whistles. I just it not to change anymore after set, even if the timeframe changes.
 
whoowl:

Do you mean it can't be done on MT4? :-(

I have thought about migrating and have decided I will not. I have too much code invested in MT4, porting it would be too much work for no relevant benefit.

I don't want any bells and whistles. I just it not to change anymore after set, even if the timeframe changes.

Very strange. I remember exactly that I attached the MT4 version. Send again.

Do you really use this indicator in trading? Lol.

The later you switch to MT5, the more you steal from yourself.

Files:
3DMa.mq4  10 kb