Testing the new MQL5 compiler for x64 platforms - 2 to 10 times faster calculations! - page 11

 
Prival-2:

Personally, I do. And I gave up using MT4/5 a long time ago. There are other solutions superior to everything implemented here by an order of magnitude. I have shown them here and told you about them. My algorithms that trade on the real account are not fictitious, they are profitable, real, good and stable (their effectiveness is available here on the forum, if you want to search for it). They cannot be implemented within MT4/5, so good luck to you, I do not need luck as it is not luck that earns in the market ...

He probably means "Ninja" on the forum, that's why he hangs out with Ninja. But then again, either there is no logic in what Privalov says, or he misrepresents the situation on purpose.

And the situation is as follows.

= you can also create your own trading system in alternative trading terminals, but it will cost a considerably higher price. The price for the program itself starts at 1000 USD one time or 60 USD per month, and quotes will cost from 200 USD per month to 2000 USD per month. Brokers have demo accounts there, but only for 30 days. Everyone gets around this somehow, but after the freedom of MT4-MT5 it seems a bit wild. If you're a trader, you have to count your money.

= Building a trading system in another terminal will take much more time - because of all sorts of interfaces and pads such as half-mutilated .NET between the built-in language of the terminal, system functions and some their own or someone else's scientific DLL.

= For testing and optimization, for example, Ninja is also suitable, but please note that the speed there will be dozens of times slower than in MT4-MT5 - for various reasons: in .NET, the semi-normal SSE2 acceleration support appeared relatively recently, the compiler itself works much worse than MQL4-MQL5. You have to additionally learn .NET, C# language and its ZILLIARD functions, which itself is not for the faint-hearted and takes months. Actually .NET is a marketing answer to Java, for which they stupidly lured Anders Hejlsberg, the main developer of Delphi from Borland. And here's the result - yes, in Ninji the windows can be a bit more beautiful than in MT4-MT5, but almost EVERYTHING else, including speed, is problematic.

= Even the date on the chart in Ninji can't be done by the local standard. Their tech support writes to people - "and everything works for us!". My date in Ninja is also crooked (in American standard) and there is NO way to fix it. It's annoying and frustrating.

= In fact Ninja has so far only one technical advantage: If you want to trade ONLY futures, sitting at the monitor 10-12 hours a day and NOT using more than 5-10 charts, then Ninja might be slightly better. But in almost everything else (technical and for development) the comparison will always be in favor of MT4-MT5 - in terms of speed, speed of program development and technical support.

The technical support is not even worth comparing with MT4-MT5.

= In terms of C# and .NET support, Microsoft is below the basement as usual. You will be waiting for YEARS for fixes, or at least clarification. I have the indispensable .NET 3.5 for Ninji, and it won't install on the same computer. Simple and stupid. Hundreds of people have the same bug, and they all report to Microsoft on their dedicated blog. This has been dragging on for about 6 years. Microsoft doesn't know what's wrong and that's it, they say they don't even know such a bug number.

= In terms of the extent to which the firm supports their NinjaScript language and terminal - some things are just cryptic: their firm just bluntly writes "unsupported" on the forum. For example they don't have portable mode, installing the terminal somewhere else is problematic. For example, they don't even have TICKVALUE - which means that you cannot set up position size automatically (in % of balance), you have to either manually or write a program by yourself (quite complicated). In other words - manual mode of trading without money management.

= Ninja has an unimaginable number of small non-lethal glitches, even in the visual interface. To drastically eliminate them, a new version 8.0 has been announced. It's been awaited for more than two years, but it's still missing.

= In the area of speed of compilation and the reliability of the compiler (MQL4) - I believe MT4 has no equal in the area of trading now.

So that's what Privalov is calling for here - personally, I don't understand it at all. Yes, all the main drawbacks of other trading terminals can be bypassed. But this will take months of work and distort the trader's thinking, because we will have to deal with the Martian logic of C# and .NET developers, or the logic of an unknown developer. MT4-MT5 terminals also have disadvantages. But the development speed and the HIGH cost of such a development for a trader - other terminals still need to saw a long way to MT4-MT5.

 
The"code generation error" in Optimize=1 mode, after upgrading to build 1114, remains.
 
Anatoli Kazharski:
The"code generation error" in Optimize=1 mode, after upgrading to 1114 build, remains.
How to reproduce ?
 
Alexander:
How to reproduce ?
I'm doing a search. So far no localisation has been possible.
 
Alexander:
How to reproduce ?

The problem is in theColorToARGB() function:

//+------------------------------------------------------------------+
//|                                                        #Test.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.0"
#include <Canvas\Canvas.mqh>
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   CCanvas canvas;
   if(!canvas.CreateBitmapLabel("TestCanvas",0,0,100,100,COLOR_FORMAT_ARGB_RAW))
     {
      Print("Error creating canvas: ",GetLastError());
      return;
     }
//---
   canvas.Erase(clrBlack);
   canvas.Update();
//---
   canvas.Line(0,0,100,100,ColorToARGB(clrWhite)); // <<< code generation error
  }
 
Anatoli Kazharski:

The problem is in theColorToARGB() function:

Thank you, reproduced.
 

When Optimize=1, simple testing of the EA (without parameters optimization) in the tester has an error

DP      2       12:15:12.565    test    2015.01.01 00:00:00   invalid EX5 file (12)
QI      2       12:15:12.565    Tester  global initialization failed
FR      2       12:15:12.565    Tester  global initialization critical error
GG      2       12:15:12.565    Tester  tester stopped because expert initialization failed
If Optimize=0, everything is tested normally, without errors.

Similar problem when adding an EA to a chart.

Win7 x86, MT5 build 1114

Source (empty ME template)

//+------------------------------------------------------------------+
//|                                                         test.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Tester function                                                  |
//+------------------------------------------------------------------+
double OnTester()
  {
//---
   double ret=0.0;
//---

//---
   return(ret);
  }
//+------------------------------------------------------------------+
 
Dmitriy Parfenovich:

When Optimize=1, simple testing of the EA (without parameters optimization) in the tester has an error

If Optimize=0, everything is tested normally, without errors.

Similar problem when adding an EA to a chart.

Win7 x86, MT5 build 1114

Source (empty ME template)

Thanks for the reference, reproduced
 
Renat Fatkhullin:

The answer has been given more than a dozen times.

The technological lifespan of MT4 is over. And if you continue to sit on it, it is your own fault that you are losing opportunities. It's not anyone else's fault, but yours alone, including your brokers.

If you think that someone is obliged to maintain old systems just because something doesn't want to get off them, then you greatly misunderstand the principles of this world (they are different from how an individual sees the world). Unfortunately, the mass of traders have so convinced themselves of MT4 that it's ridiculous to watch. People are so shown to be enemies to themselves that it can't be explained by rational reasons.

I continue to sit on MT4 and here's why.

1. Speeding up calculations is great. But why do I need these calculations on an unreal spread? I solved the problem of cutting off the spread on MT4, but I don't know what to do with the spread in the MT5 tester. It's been more than a year since I suggested introducing the spread window like in MT4. Alright, the currency pairs didn't suffer much. But testing the RTS Index with 50-100 spread is a perversion! The real spread is 10-20!!!!!!!!!!

2. Name me at least one broker on MT5 for forex with a normal reputation. Why don't LMAX, RVD, FXCM, DucasCopy etc buy the wonderful MT5?

I have a good mt5 broker, but I do not want to trade on inferior conditions. 3.

3) No desire to deal with small details? If you want to make a service on MT5, that will be possible to load any quotes in MT4 format with a given spread, then I will be the first one to estimate the speed of the new compiler!

 
Dmitiry Ananiev:

I continue to sit on MT4 and here's why.

1. Speeding up calculations is great. But why do I need these calculations on an unreal spread? I solved the spread cutoff problem on MT4, but I don't know what to do with spread in MT5 tester. It's been more than a year since I suggested introducing the spread window like in MT4. Alright, the currency pairs didn't suffer much. But testing the RTS Index with 50-100 spread is a perversion! The real spread is 10-20!!!!!!!!!!

The spread in MT5 is written in every M1 bar, so there is no need to transfer MT4 methods to MT5. The situation is much better with spreads in MT5.


2. Name me at least one MT5 forex broker with a decent reputation. Why LMAX, RVD, FXCM, DucasCopy etc will not buy a great MT5?

LMAX has MT4, RVD also, FXCM has launched MT5, and Dukas will play in a technological race to the last minute with a known result.

You don't think brokers are perfect and make exceptionally sound and reasonable decisions, do you? They are just ordinary companies with all their flaws.


I have some really good brokers on MT5 but I do not want to trade on conditions that are known to be worse.

The fact is that financial trading conditions on MT5 are often much better than on MT4. And MT5 has more and better technical features and speed characteristics for traders.


If you do not want to deal with small details? Make a service in MT5, so you can load any quotes in MT4. with a given spread and I'll be the first to estimate the speed of the new compiler!

We have different levels of real information.

You'd better admit that you haven't run or tested the capabilities of MT5 in reality. Hence the constant reference to the inherently weaker capabilities of MT4 and attempts to transfer MT4 approaches to MT5. But it's enough to try the same thing in MT5 to never return to MT4.

Reason: