From a chartist's viewpoint, MT4 is lacking in the option to replicate an object, once drawn, onto all charts of the same symbol, irregardless of timeframe. Some may call this 'linking charts'
E.G. a trendline created on EURUSD D1 should be immediately visible on the EURUSD M15 chart, and when removed on either chart, will be removed from the pair of them automatically. At the moment the best we can do is either manually try and draw with the same values per chart, try and gauge when/where they should start from memory, or save a new template every time, right-click and open on each seperate chart, thus also resetting any configuration we had specific to that chart.
In my opinion, if we could solve this with an efficient script/indicator, it would bring mt4 right up there rivaling subscription-based platforms, which have this option as standard.
The good news is that, and correct me if I am wrong and have missed out any developments, people have come close with the creation of these scripts, which copy and paste objects:
http://www.forexfactory.com/showthread.php?t=327646
The limitation is that the actual replication of objects can only occur once, as the COPY script creates the Global Variables of the host chart, and the PASTE then executes these on the slave chart, causing there to be no new GVs left. To then proceed to a third chart, the GVs must be executed again, by executing the COPY script, etc etc.
Also, upon reversal of 'creating' objects, deleting them, the only way to auto-update the slave chart is to once again execute the COPY script on the host, and PASTE the (now lack of) GVs onto the slave chart. This is not too practical but MT4 allows us to somewhat get round this with use of the ObjectsDeleteAll script:
http://docs.mql4.com/objects/ObjectsDeleteAll
Now, an improvement on these scripts would be very near the competitor's built-in function, something along the lines of the 'Change all Templates' script:
http://www.forexfactory.com/showthread.php?t=301899
As this has the ability to access all charts from the execution of one script.
Though I am aware this uses 'templateindex', I have no idea if something similar can be done with regards to objects.
But the ultimate feature, in my opinion, would be an indicator which does this 'copy-paste' function on an every-tick basis. I.e. it can be loaded as part of all templates and constantly running, copying and pasting to each chart of the same symbol until removed from the chart, and upon removal, leaves all the objects intact. The key to making this fluid is that, while the indicator is running, the deletion of an object also sends the signal to the other charts to mimic the deletion.
The main problem I can guess is being able to replicate off of any given chart would mean the indicator needs to run on every chart, which could cause a variety of issues as to what is the host and slave, what should be deleted, etc?
I really don't know as I am not a coder, so I am just putting my thoughts out there from a user's perspective to see what the coding community, and other traders alike, think.
E.G. a trendline created on EURUSD D1 should be immediately visible on the EURUSD M15 chart, and when removed on either chart, will be removed from the pair of them automatically. At the moment the best we can do is either manually try and draw with the same values per chart, try and gauge when/where they should start from memory, or save a new template every time, right-click and open on each seperate chart, thus also resetting any configuration we had specific to that chart.
In my opinion, if we could solve this with an efficient script/indicator, it would bring mt4 right up there rivaling subscription-based platforms, which have this option as standard.
The good news is that, and correct me if I am wrong and have missed out any developments, people have come close with the creation of these scripts, which copy and paste objects:
http://www.forexfactory.com/showthread.php?t=327646
The limitation is that the actual replication of objects can only occur once, as the COPY script creates the Global Variables of the host chart, and the PASTE then executes these on the slave chart, causing there to be no new GVs left. To then proceed to a third chart, the GVs must be executed again, by executing the COPY script, etc etc.
Also, upon reversal of 'creating' objects, deleting them, the only way to auto-update the slave chart is to once again execute the COPY script on the host, and PASTE the (now lack of) GVs onto the slave chart. This is not too practical but MT4 allows us to somewhat get round this with use of the ObjectsDeleteAll script:
http://docs.mql4.com/objects/ObjectsDeleteAll
Now, an improvement on these scripts would be very near the competitor's built-in function, something along the lines of the 'Change all Templates' script:
http://www.forexfactory.com/showthread.php?t=301899
As this has the ability to access all charts from the execution of one script.
Though I am aware this uses 'templateindex', I have no idea if something similar can be done with regards to objects.
But the ultimate feature, in my opinion, would be an indicator which does this 'copy-paste' function on an every-tick basis. I.e. it can be loaded as part of all templates and constantly running, copying and pasting to each chart of the same symbol until removed from the chart, and upon removal, leaves all the objects intact. The key to making this fluid is that, while the indicator is running, the deletion of an object also sends the signal to the other charts to mimic the deletion.
The main problem I can guess is being able to replicate off of any given chart would mean the indicator needs to run on every chart, which could cause a variety of issues as to what is the host and slave, what should be deleted, etc?
I really don't know as I am not a coder, so I am just putting my thoughts out there from a user's perspective to see what the coding community, and other traders alike, think.