I am BlueMental, and though I am familiar with mq4, mq5 is very new to me. It has enormous scope and I look forward to learning as I go.
As the Subject above states, I would like to make a suggestion to the Metaquotes coders/designers.
As a user of the Mt4/Mt5 trading platform, I wish to place (for example) a Gann Grid on my chart. So I use the drawing tool appropriate and do so. The way it works in Mt4 is simple and effective. You can easily adjust the angle (scale) by dragging the start and end of the main Grid Line. To change the 'width' of the grid, in other words how far apart each line is from the next, all one has to do is change the time placement of either the start or end time in the properties section. While in instrument form, for some reason (bug) if one changes the scale of the grid, it does not change on the chart, so one has to delete the object (in code of instrument) and then redraw it after changing scale. That places the 'new' grid at the Time/Price coordinates with the new scale intact.
Mt5 addressed this in a way, and gave us a different way of adjusting the Gann Grid. One can move it around and adjust the 'width' or time placement, but not the scale. To do that, one needs to put a new datum in the properties in number form. One other problem is that to place the start of the grid on a precise Price point, for example on High of Bar x, then one has to do this by number in the properties of the grid. The mouse drag, if used on the start position automatically changes the 'width' without changing the price level. To change the price level, one needs to drag the centre of the main grid line. This in turn means that one can not 'magnet click' the start price. It can only be done by eye.
So in Mt4, it was easy enough for me to write an indicator where I place a trend line, called 'ScalePriceLine' at a fixed start position. It started on Time ,Low and ended on Time,High while a second line called 'WidthLine' was placed at Time,Low and ended on Time,Low. With a bit of calculating to convert Price change:time into scale, one could use the ScalePriceLine to change the Gann Grid Start Point, End Point and Scale. While the width of the Grid is changed by altering the Time width of the WidthLine (regardless of price change). This means that if the user moves or changes the ScalePriceLine, the indicator would move the WidthLine to be at the Start coordinates of the ScalePriceLine, and if the user changes the Width, then the ScalePriceLine end coordinate is changed while keeping the same angle(scale).
The way that Mt4 works is that the indicator only responds or acts with a new tick or chart change. The other thing that the indicator allows is for the minutes per bar ratio to be taken into account so that regardless of if the grid is on m5 or H4, the angle remains the same and the Grid starts on the same low and goes through the same high regardless of the timeframe. There were problems of minutes/period=bars moved, specially on the longer timeframes, because the weekends and public holidays showing no trade had to be accounted for. Never the less, it was solvable (yes a for loop count of bars from 0 to end of ScalePriceLine's Time).
So my suggestion is this, it would be great if the Mt5 program allowed the user to create 'custom' drawing tools. This is probably already achievable via script since one can 'activate' Mt5 without having to wait for a tick. But what I am proposing is an substructure that allows us users to write code that gives us wysiwyg drag and place of lines/ellipses/user defined grids or whatever just as the Mt5 drawing tools operate.
Let us say that I would like to see vertical and horizontal crosshairs on my trendlines while I drag them because it makes it easier for me. I would like to be able to open the existing trendline code and just add a few lines to achieve this. Or let us say that I would like to use Blue on up angled lines and Red on down angled lines, I would like to be able to access and edit the code and to create my own if I wished.
This in turn could allow us users to offer 'JohnsEllipseWithFibRayLinesInPinkAndBlue.q5t' (.q5t -q5 tool- being the file type for example) to the other MQL users and abusers.
Please feel free to comment. Since I am new with Mt5 it might easily already be possible to do what I am suggesting but not in a formal 'Click Tools/Design on menu' kind of way with a file type of its own. If it is, then just slap me upside the head and tell me to stop wasting everyones time and energy :).
The Metaquotes coders/designers have put an incredible amount of effort and energy into producing a seriously brilliant trading architecture. In a way, Metaquotes is responsible for getting Forex Trading from the 'Elite Institution' structure that it used to be to the 'Open to the Public' trading structure it now is. Without them there would be no 'us' to sit and talk shop about coding EA's or Indicators.
MT4 is like the Traders foundation with an infrastructure so well entrenched that if one were to say, "I trade Forex," his living dictionary would include 'indicator, EA, mq4'.
I thank whoever the person/people whoever they are who first came up with the idea of creating the Mt1 (most of us have never seen anything other than Mt3,Mt4 and Mt5) in the first place.
BlueMental, over and out.
<edit> Something else I realised I left out. It would also be great to have a TimeToBarCount() option.</edit>
Trade Copier Pro is a powerful tool to copy trade remotely between multiple accounts at different locations over internet. This is an ideal solution for signal provider, who want to share his trade with the others globally on his own rules. One provider can copy trades to multiple receivers and one receiver can get trade from multiple providers as well. The provider can even set the subscription expiry for each receiver, so that receiver will not be able to receive the signal after that
Safe Automatic is a safe MetaТrader 5 trading robot working autonomously on a VPS server. The good results are achieved on EURUSD.
The EA applies modified versions of a trend-following strategy, half-pyramiding, scalping, Elliott Wave method and speculating trading with a deposit protection. The EA switches the strategies automatically. The program also takes the news calendar into account: the robot does not enter the market in a 10-minute interval before and after a news rel
Pipfinite creates unique, high quality and affordable trading tools.
Our tools may or may not work for you, so we strongly suggest to try the Demo Version for MT4 first. Please test the indicator prior to purchasing to determine if it works for you.
We want your good reviews, so hurry up and test it for free...we hope you will find it useful.
Breakout Analyzer with Volume Critical
Strategy: Enter confirmed reversal setups Watch Video: (Click Here)Breakout Analyzer with Strength
DeltaVolumeDistribution indicator can be considered as the fusion of the DeltaVolume and TradeSizeDistribution indicators.
This indicator, inspired by the MarketDelta-family charts, computes the net difference between trades occurring at bid and at ask, while trades occurring between bid and ask quotes are not computed. The indicator plots the resulting DeltaVolume as a unique distribution plot.
With the DeltaVolumeDistribution indicator you will actually be able to see the order flow entering
Auto Trade Copier is designed to copy trades between multi MetaTrader 5 accounts/terminals with 100% accuracy.
With this tool, you can act as either a provider (source) or a receiver (destination). All trading actions will be copied from the provider to the receiver with no delay.
Note: Demo version for testing can be downloaded at: https://www.mql5.com/en/market/product/5006.
Followings are highlight features:
Switch between Provider or Receiver role within one tool.One provider can copy tr
Market Profile defines a number of day types that can help the trader to determine market behaviour. A key feature is the Value Area, representing the range of price action where 70% of trading took place. Understanding the Value Area can give traders valuable insight into market direction and establish the higher odds trade. It is an excellent addition to any system you may be using.
Blahtech Limited presents their Market Profile indicator for the MetaTrader community. Inspired by Jim Dalton’s
The most profitable trend traders are the ones who know how to recognize not only the market trend, but also the trading opportunities that arise once a trend has been established. The Pz Trend Trading indicator has been designed to profit has much as possible from trends taking place in the maket.
Established trends offer dozens of trading opportunities, but most trend trading indicators neglect them completely, and leave the trader completely uninformed about what the market is doing during a
The script allows users to easily close positions if their profit/loss reaches or exceeds a value specified in pips.
Please set slippage value first. Sometimes some positions do not close due to high volatility of the market. Please set larger slippage or restart the script.
Easy Order is an Expert Advisor allowing you to enter any type of trade with one click based on your RISK preferences.
You can choose to enter a trade and automatically calculate your lot size based on how much of your account you want to risk. Risk is calculated based on your Stop Loss placement. You can use a fixed lot size if you don't want to use risk based calculation of lot size. Your previous setting of risk based or fixed lot size remains saved for your next use of this Expert Advi
Does not support hedging orders on a single symbol on MT5
MultiMTCopier MT5Receiver - new and improved multi-terminal positions copier for your real/demo account, works faster, requires less, flexible in managing and upgrading, new information support. This Expert Advisor is designed for the MetaTrader 5 terminal, trades will be copied into this terminal.
The EA will copy all positions without delays Additionally integrated notification in situations requiring user attention
MetaCOT 2 is a set of indicators and specialized utilities for the analysis of the U.S. Commodity Futures Trading Commission reports. Thanks to the reports issued by the Commission, it is possible to analyze the size and direction of the positions of the major market participants, which brings the long-term price prediction accuracy to a new higher-quality level, inaccessible to most traders.
These indicators, related to the fundamental analysis, can also be used as an effective long-term filte
This indicator allows you to enjoy the two most popular products for analyzing request volumes and market deals at a favorable price:
Actual Depth of Market Chart Actual Tick Footprint Volume ChartThis product combines the power of both indicators and is provided as a single file.
The functionality of Actual COMBO Depth of Market AND Tick Volume Chart is fully identical to the original indicators. You will enjoy the power of these two products combined into the single super-indicator!
Virtual TrailingStop is an Expert Advisor that manages trailing stop without sending its information to the broker server.
EnableVirtualTrailingStop: enable or disable whole function VirtualTrailingStop: the pip use for determine how far the Virtual Trailing Stop will placed calculated from current price StartFromBreakEven: true/false. If true, Virtual Trailing Stop will placed after breakeven BreakEvenPoint: point profit from order open price where the Virtual T
Auto Trade Driver is an automatic powerful tool (run as Expert Advisor) that helps you to manage risk and control orders and maximize your profit in multi-protect/trailing-stop rules.
This tool is very useful for both scalpers and trend followers. It not only calculates the trade risk exactly, but also protects and maximizes your profits in real-time.
With this tool, the only thing you have to do is to enter trade by your own strategy, then it will auto-drive your position with exit strategy y
The main purpose of the indicator is to detect and mark on a chart the following trade signals described in "New Trading Dimensions":
Bullish and bearish reverse bars with angulation (including squat). Bars in the green and red zones according to the histogram color of Awesome Oscillator and Accelerator Oscillator. Bars in the grey zone, when the Awesome Oscillator and Accelerator Oscillator histograms below these bars have opposite directions. Blue squat bars on chart independent of the
We present you an effective software solution for arbitrage between brokers.
The Arbitrage on the market became widespread due to decentralization. There are many liquidity providers, whose quotes differ for various reasons. By tracking the dynamics of changes in the quotes of different brokers, it is possible to determine the delayed and leading brokers, thereby predicting the future prices of the delayed broker for a short time. Knowing these prices and using efficient built-in software filte
The Expert Advisor implements the classic "triangular arbitrage", which is successfully used by hedge funds.
"Triangular" arbitrage refers to a class of neutral-market strategies, in which the profit or loss of open positions does not depend on the direction of the market movement as a whole.
In order to take profit, the EA exploits a weak spot of market makers - it utilizes the difficulty of balancing cross rates of all currency pairs.
The advantages of the strategy are the following:
The indicator displays the current market information about the recent trades (their direction and volume).
BackColor - general background color of the indicator; AboveAskBackColor - background color of the line with information about the last trade in case it was performed at the price above Ask; AboveAskFontColor - color of the text entered in the line with information about the last trade in case it was performed at the price above Ask; AtAskBackColor - background color of the
Does not support hedging orders on a single symbol on MT5
MultiMTCopier MT5Source - new and improved multi-terminal positions copier for your real / demo account, works faster, requires less, flexible in managing and upgrading, new information support. This expert is designed for terminal MetaTrader5 from which the position will be copied.
The EA will copy all positions without delays Additionally integrated notification in situations requiring user attention Buttons for re
The indicator displays economic news on the currency chart (the appropriate data must be downloaded from the Internet - please see the download instructions on the screenshots provided). The list of currencies (countries) is customizable. By default it shows all currencies. The main parameters come with a built-in description. In addition, there are parameters for advanced users. News items are divided into 3 categories by degree of importance. There is a great flexibility in display parameter s
The indicator determines the inside bar and marks its High/Low. It is plotted based on the closed candles (does not redraw). The identified inside bar can be displayed on the smaller periods. You may set a higher period (to search for the inside bar) and analyze on a smaller one. Also you can see the levels for Mother bar.
Period to find Inside Bar — the period to search for the inside bar. If a specific period is set, the search will be performed in that period. Al
The fractal analysis of the markets is used in the indicator operation algorithm. According to the fractals theory, after the breakthrough of the fractal level confirmed by the closing price located below or above the fractal, the trend wave in the direction of the breakthrough starts to develop. Until the fractal has been passed in the opposite direction, the trend is considered to be acting even if the price is flat or moves backwards. If a bullish fractal has been previously broken through on
Fast Copy MT5 allows to copy trades between different MetaTrader 5 (netting)(hedge) and MetaTrader 4 accounts in any direction and amount, quickly and easily (without loading the system).
Any type of copying is available
MT5 —> MT5 MT5 —> MT4 MT4 —> MT5 MT4 —> MT4
* For any interaction with the MT4, it is necessary to additionally install Fast Copy MT4
One tool for sending and receiving transactions: [master] > [slave] operation mode can be selected in
Ichimoku Kinko Hyo is a purpose-built trend trading charting system that has been successfully used in nearly every tradable market. It is unique in many ways, but its primary strength is its use of multiple data points to give the trader a deeper, more comprehensive view into price action. This deeper view, and the fact that Ichimoku is a very visual system, enables the trader to quickly discern and filter "at a glance" the low-probability trading setups from those of higher proba
Exp COPYLOT CLIENT for MT5 is a copier for the МetaТrader 5 platform. It copies forex trades from any accounts. Including those from terminals МТ5 and МТ4.
Install the Expert Advisor in the terminal where you want to copy trades. Specify any text label name as pathRead, for example, "COPY". This should match the master terminal (to bind the two terminals). To copy trades, you need to install the free Master copier in the terminal from where you want to copy the trades: COPYLOT
The script is intended for automatic placing of Buy Stop pending orders, Stop Losses and Take Profits on the user specified levels.
Avoiding unwanted entering a long position in case of false hitting the level as a result of widening of the spread by a dealing center. Avoiding unwanted triggering of a Stop Loss in case a quote pierces a significant level (fractal) without further confirmation with the close price. Setting a necessary virtual order and entering the market in
COSMOS4U Volume indicator facilitates your trade decisions. It gives confirmation of the running movement and market trends. It highlights current and past accumulation and distribution volumes, comparing them to moving average volume and the highest volume. In addition, it identifies and marks nuances as well as convergence and divergence patterns of bears and bulls in order to provide the market trend and price ranges.
The supported features are as follows:
Fast Volume Moving Average Slow
MACD All MAs-14 is a MACD indicator that allows choosing usual parameters of the standard MACD (constructed from EMA) as well as the type of the moving average to be applied: up to 14 different types.
You can select 9 standard MAs available in MetaTrader 5 - SMA, EMA, SMMA, LWMA, DEMA, TEMA, Frama, VIDYA, AMA, TRIX, and 4 non-standard - LRMA, HMA, JMA, AFIRMA.
Method MA - select the type of moving average to be displayed in the current graph. Period slow MA - the number
The script is intended for automatic placing of Sell Stop pending orders, Stop Losses and Take Profits on the user specified levels. This script is not that useful as "Virtual pending buy stop", since short positions are opened as Bid price crosses the levels. Thus spread widening is not dangerous. Nevertheless, you need to have this script to prevent unwanted hitting of the Stop Loss levels.
Automation of the process of placing the Sell Stop pending orders, Stop Losses and T
The script creates account summary report in a separate window.
The report can be created for all deals and on deals for selected financial instruments.
It is possible to specify a time interval of calculation and save report to htm-file.
The script creates account summary report in a separate window.
The report can be created for all deals and for deals of the selected financial instruments.
It is possible to specify a time interval of calculation and save report to htm-file.
I see you write a lot of suggestion in forum.
Sorry, I never use Gann, so I have to re-read and re-read you post again. However, can you give a simple example of your last request - the TimeToBarCount() option ?.
I actually only wrote 2 suggestions. I only used the Gann Grid as an example.
1. Make a system where the user can create and or edit the tools of Mt5.
John might like the way Mt4 did the Gann Grid, Paul might like the way Mt5 does the Gann Grid, Peter might want to make a different, new way to put Gann Grids on his charts. By making the tools modular and allowing the users access to that code (you can code it in mq5), you allow John to be John, Paul to be Paul.... you get the idea.
Just like I can say:-
comment("My dog is ",DoubleToString(varDogsAge,2)," years old.");
I would like to be able to say:-
ObjectCreate("MyTrendLine",0,time[TimeToBar(2012.12.07 00:00)],varPrice1,time[TimeToBar(2012.12.09 04:00)],varPrice2);
It took me AGES to figure out that Time in Mq4 = time in mq5 because typing Time or time does not bring the popup to show it is a reserved word. These 'missing' bits of info are not obvious and are not mentioned in the help files. Just like Mt4 help shows a 1 or 2 line piece of code that shows LOTS about how the syntax works, but for some reason the mq5 help has no sample code.
In Mt4, the current Bar = 0, while in Mt5, the First bar = 0. This is a big difference, in a way it seems (to mt4 coders) backwards. I know it is actually better this way, each bar remains the same without having to change values each new bar, but the 'how' to work with this is not mentioned, or if it is, I have not found it in the help files.
If I want to know what the High of 20 Bars before the current Bar was, how do I do it?
If I want to calculate a ratio of Price up or Price down of a Trend Line, I need to know how many bars 'long' it is. Using date does not give me this if there is either a missing piece of time in my chart history, or if there was a public holiday. I can not simply say TimeStart (in seconds) - TimeEnd / period/60 = Barcount. If you think you can, then try it out, it works on some timeframes, and gives 2 or 3 bars wrong on others.
Using Time as the lateral axis is fine, but having a way to convert it without major calculations makes life far easier.
I hope this makes it more clear what I am trying to say.
1 . I meant "I see you write a lot of suggestion topics in forum." . Sorry for missing word "topics".
2. I'll re-read your suggestion on object later.
3. If you know the time, you don't need the bar number - but I think you already knows that.
ObjectCreate("MyTrendLine",0,time[TimeToBar(2012.12.07 00:00)],varPrice1,time[TimeToBar(2012.12.09 04:00)],varPrice2);
//--- is equal with
ObjectCreate("MyTrendLine",0,D'2012.12.07 00:00',varPrice1,D'2012.12.09 04:00',varPrice2);
4. Nope. Time in mql4 is not equal with time in mql5. I think you already answered that, when you said "In Mt4, the current Bar = 0, while in Mt5, the First bar = 0."
5. If you want to know what the High of 20 Bars before the current Bar was, you can use CopyHigh function in Timeseries and Indicators Access.
6. If you want to calculate ratio of price movement per bar then you can use CopyTime function also in Timeseries and Indicators Access.
Hope that's helps.
There are two pictures attached. The AUDUSD H1 is the one I set up the lines on, Then I changed the timeframe to H4. I did not change or move any of the lines when I did this.
The Equidistant Channel, the Standard Trendline's and the Rectangle remain at the correct angle. You will notice that The Gann Lines 'angle' (It is actually a ratio, not an angle) changed from 17.5:1 to 69.2:1 This is due to changing from H1 to H4. The 'conversion' should be 70:1 17.5 x 4 = 70 The conversion in fact should actually not occur at all, since the ratio is still 17.5 to one. The minutes per bar has been multiplied by 4, but the scale of the Gann Line should have been altered, not it's ratio, making it 17.5:4. If one changes (which is easy enough to do in code or on screen) the 'angle' to 70 OR the angle back to 17.5 and the scale to 4, then the Gann Line falls back into the same relationship (angle) as it was in H1.
The Angled Trendline, while remaining at 35.8 degrees, is set at that angle to the horizontal level of the screen, it ignores the scale of the chart, so in truth it is useless.
The Standard Trendline, and the Rectangle (as well as triangles and ellipses) keep the correct scale. It might LOOK like a wide rectangle stretched into a tall rectangle, but that is fitting with the H4 scale. It is in proportion. The Angled trendline is only in proportion to the eye.
So, after showing you this little bit, we get back to Time and Barcounts. I make an indicator. It has a Trendline. This Trendline can be placed anywhere at any angle by the user. It has a few options available in the properties section. These are related to what the user wants, if he wants the indicator to trigger the EA to buy,sell or close on touch, open and close beneath or above the line, he sets these options as he likes.
Now at any time, he can change timeframe, or move the trend to where he feels it is better to catch the trend reversal.
To calculated the angle of the line in relation to the current price, one needs a reliable method of calculation. Knowing that the timeframe is H4, and knowing (ObjectGet) the upper and lower prices of the trendline as well as the time, start and end. We have 4 simple values to work with. One can subtract closest time of the trendline from current time, divide it by 240 (in the case of the H4 timeframe)/60 then multiply the that 'distance' by the ratio of the trend line (calculated height/time/60 to work with the same unit) to calculate the relationship of the current price has with the ray of the trendline. In other words to calculate when it passes below (in this case) the trendline.
Now all that calculating has complications, I know this because I have had them. The different timeframes for some reason I do not truly know, CHANGE the bar to time ratio. Not always, and not by much, but 2 Bars is enough to change the calculated angle enough to mess up a trade.
The user might or might not attach the trendline to a high or low, so CopyHigh is not an option in this case. Even if the user DOES attach it to a high or low, it is not worth the effort to write the code to see if it is true or not because it makes no difference.
If however the x axis (time) and y axis (price) were easy to translate into bars (as has now been done with Gann Scale of pips per bar) then the calculations become simple and there is no room for 'missing' bars.
TrendLine Height = top_y-bottom-y
TrendLine 'Width' = end_x -start_x (converted by TimeToBarCount)
x_Distance = current_x(which I discovered is rates_total) - end_x
So all is done in the same unit with ease. Timeframe conversion calculations are not needed at all since the bar to bar ratio remains the same regardless of if the timeframe is changed.
One can go to visit his friend by walking to town, catching a bus, then getting on a plane, spend the night in a hotel, catch another plane, and another taxi and another walk and then knock on his friends door. Or he can just walk across the road in the first place because his friend is his neighbour.
And this does not helps ?
How to use it? Help shows nothing, no code, no explanations of any kind.
Call by the first position and
the number of required elements
int CopyTime( string symbol_name, // symbol name ENUM_TIMEFRAMES timeframe, // period int start_pos, // start position int count, // data count to copy datetime time_array // target array to copy open times );
Call by the start date and the
number of required elements
int CopyTime( string symbol_name, // symbol name ENUM_TIMEFRAMES timeframe, // period datetime start_time, // start date and time int count, // data count to copy datetime time_array // target array to copy open times );
Call by the start and end dates
of a required time interval
int CopyTime( string symbol_name, // symbol name ENUM_TIMEFRAMES timeframe, // period datetime start_time, // start date and time datetime stop_time, // stop date and time datetime time_array // target array to copy open times );
start position for the first element to copy.
count to copy.
start time for the first element to copy.
time corresponding to the last element to copy.
of datetime type.
Returns the copied data
count or -1 in case of an error.
None of this tells me how to get either the sta required from a trendline (call it TrendLine001)
All of the mql5 help is written this way. No
Here is what the help file gives from Mt4 for IMA():- This is taken from the Navigator window, which offers Files\Dictionary\Search
In the Mql5 MetaEditor, there is inly files in the Navigator. From the Help menu, when searching for 'CopyTime' I get "No Topics Found",
by typing the code "CopyTime" into the editor, and pressing F1, gets me to the help section, or after searching through the program, under the help section, one can find it under "MQL5 Reference".
MT4, everything there and easy to find, and once it is found, a simple line of code that SHOWS what the code is and does, and also what it needs.
MT5, Everything hidden, can't be found and isn't explained. Usually no code.
with iMA() there is code shown in the help file, an entire indicator.
An example, with Mt4, I create a new custom indicator. in the int start() section I type in one line of code :- Comment(iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,10));
I compile the file and attach the indicator and it tells me the value of an 13 bar EMA at bar 10 of whatever Timeframe it the chart is on.
In Mt5, I start a new custom indicator. in the OnCalculate() section I type in one line of code:-
The comment on the chart says '10'
The 'help' file does not explain that the iMA() has to have a handle, that I have to use the CopyBuffer procedure to get the data of the iMA() using the handle, that I then have to fill an array FROM the buffer I just copied, not to mention that I have to add all sorts of if then else sequences and failsafes to finally have access to :-
string comm=StringFormat("%s ==> Updated value in the indicator %s: %d", TimeToString(TimeCurrent(),TIME_DATE|TIME_SECONDS), short_name, values_to_copy);//--- display the service message on the chart
So yes, it is easy to say 'use CopyTime'.
Use CopyTime with what? How? with which of the 500 predefinitions which are not explained anywhere in the help files.
This new 'advanced' mql5 is the reason why right now I have Mt4 running, I have 6 Timeframes of AUDUSD open and each of these 6 timeframes have 3 indicators running. 1 indicator small and simple that tells me how many minutes and seconds to the next bar, the other 2 indicators having 8 EMA's each that have to be looped 3 times each for the complex calculations added to them. Mt4 is running fast as ever, no lags, no stress.
Mt5 however... has 5 AUDUSD timeframes with 1 indicator each, this indicator has 16 EMA's (the same as those in Mt4, with the same calculations), however if one changes the Base MA period (the other 15 are derived from that), the Mt5 one deviates and the 15 other ema's go south. not only that, the program hangs (not always but often) for +- 40 seconds before updating the ema's.
It is possible (in fact most likely) that there is code error in my mq5 that is causing the hangups. But it makes zero sense to have to do 500 things where a plain and simple 1 does it easily (as is the case with Mt4).
Occams Razor - If something is not needed in a system or it causes complications to that system, it is an infliction, eradicate it.
Less is more.
We - I repeat : we - can see that you like writing. Let me remind you, that you're not the only forumer around here. There's no need for you to copy the documentation and paste them in forum and so there's no need for the rest of us to read unnecessary repeated information, just gives a link.
If you like reading as much as like writing (which I doubt), then you will have no problem understanding CopyTime or other Copy... function without anyone help.
And you also should read (and do) what you have write : excessive writing is not needed, so eradicate the writing: less writing is more.
So please edit your comment first, and I'll help you to focus on using CopyTime function than focus on your writing.
And please do more reading (since you capable of reading English, read that CopyTime documentation again, it's already clear enough if you can focus on it).
You obviously missed the point in all the writing I have put from the beginning to the end and since it is so easy to give one line of code as an example, then why have you not done so with all your helpful ways?