Download MetaTrader 5

What would you improve on the MT4?

To add comments, please log in or register
Thousands of developers have already published their products in the Market. Join them!
Rachelforex
17
Rachelforex 2015.08.11 11:02 

Hey guys,

 

If you could change/improve anything on the MT4, what would you do?

 

I'll start :)

I would love to see the MT4 to provide a margin calculator from within the platform so I can calculate my used margin before I open a position. 

 

Looking forward to hearing your opinions!

Keith Watford
Moderator
9627
Keith Watford 2015.08.11 13:07  

I would like to see the strategy tester in Visual mode have a sensible speed control

As it is 32 is way too fast and 31 painfully slow usually. I don't know what use 30 and below are! 

honest_knave
Moderator
2208
honest_knave 2015.08.11 15:40  
GumRai:

I would like to see the strategy tester in Visual mode have a sensible speed control

As it is 32 is way too fast and 31 painfully slow usually. I don't know what use 30 and below are! 

Very true.

As a workaround, I set speed to 32 and then build in a loop to do some pointless processing each tick. I control speed by the length of the loop. 

It really shouldn't be necessary! 

whroeder1
14504
whroeder1 2015.08.11 18:22  
honest_knave: As a workaround, I set speed to 32 and then build in a loop to do some pointless processing each tick. I control speed by the length of the loop. 
I run at 32 and have it pause, when something happens (like open/or close)
//{                                  PauseTest
// https://forum.mql4.com/35112
// Each chart consists of two windows (i.e. two hWnds): the drawing area (WH,)
// and a container (GA.) There is then a standard MDI container which holds all
// the chart windows (GA1.) And that sits inside the main MT4 window (GA2.)
//}
#include <WinUser32.mqh>
#import "user32.dll"
   int      GetAncestor(int, int);
#import
void     PauseTest(){
   datetime now = TimeCurrent();    static datetime oncePerTick;
   if(oncePerTick != now)if( IsTesting() )if( IsVisualMode() )if(
      IsDllsAllowed() ){   oncePerTick = now;               #define GA_ROOT 2
      for(int i=0; i<200000; i++){     // Delay required for speed=32 (max)
         if(IsStopped())   break;      // https://forum.mql4.com/32837 WH-DL
         int      main = GetAncestor(WindowHandle(_Symbol, _Period), GA_ROOT);
         if(i==0) PostMessageA(main, WM_COMMAND, 0x57a, 0); // 1402. Pause
      // TBD replace loop/postmessage with sendmessage
   }  }
   //{The PostMessage above sends the command to the main terminal. Thus it
   // only affects the active chart window. To maximize a window for example
   // must activate it first. https://forum.mql4.com/35336#538848
   //}See also SetForgroundWindow(h) https://www.mql5.com/en/code/mt4
}
peter.MT4Web
158
peter.MT4Web 2015.08.11 19:33  

I think that MQ announced with Build 600 that they will port the MQL5 Standard Library to MQL4.

This set of classes will make development easyer and faster and as a result we get ex4 in higher quality.


And yes, speed control sucks  ;-)

Ali Akcaagac
168
Ali Akcaagac 2015.08.12 10:53  
I would like to see a native Linux version of Metatrader 4. Maybe crossplatform by porting it to Qt.
To add comments, please log in or register