[Development Behind the Scenes] “It works on MT4, so it should be fine on MT5 as well”... There was a time when I believed that too (lol)
Transplanting a tool that runs on MT4 to MT5.
It looked easy, but in reality it took about a month of almost daily wrestling.
Recently, I saw a Yahoo! Chiebukuro question saying that the indicator display becomes strange on MT5.
The actual cause cannot be known without looking at the source code and the triggering conditions.
However, I also had experiences in MT5 development where I wondered, “Why does this happen?”
■ Why did I shift the development focus to MT5?
I originally focused on MT4 development.
However, after watching MetaQuotes’ movements and the transition to MT5, I judged that it was necessary to shift the focus to MT5 as well.
It’s not that I came to dislike MT4.
This is a decision to continue developing tools for a long time.
However, I underestimated the challenge here.
「There’s an MT4 version, so moving it to MT5 should be easy, right?」
……this was quite difficult.
■ Errors, candles stop, even after fixes another problem appears…
At first, I tried to reproduce the MT4 features in MT5 by simply porting the code.
However, simply porting it didn’t work, so I changed strategy to rewrite to fit MT5.
- Errors occur
- Candles stop
- After fixing, another condition causes trouble
Once I fixed that, another part would catch my eye.
Fixing one bug, two more pop up from the side (laughs).
That’s how it went on.
■ No days off, about 1 month
Eventually, including weekends, I tested and fixed every day.During that time, those that worked were 24-hour instruments like BTC.
Even if the FX market is closed, these keep moving. Being able to confirm long hours of operation without issues was a big gain.
BTC feels like “I’m running,” but as a developer I’d love to take a break… (laugh).
■ “It runs” and “can be used confidently” are separate matters
From this experience, I again realized that what works in testing versus in actual environments is different.
The symptoms in the Yahoo! Answers item may not be caused by the same issue I faced. You can’t determine the cause without looking inside.
That’s why I don’t conclude “it’s finished because it ran in testing.”
How to realize MT4-developed features in a different environment called MT5.
Through trial and error like this, I’m also developing the MT5 version of the Trade Toolbox series.
It isn’t about flashy features, but because these are tools you actually use, such steady verification is important.
Thanks to that, development on MT5 has become much easier now. What I learned in that month forms the foundation today.
…That said, looking back, that month was long (laugh).
Trade Toolbox series product list is here
Well then, until the next behind-the-scenes development story!