Debugger! Donde Esta?

 
I sure hope MT5 has a Debugger in it. This is the most miserable programming environment I've ever worked with.
 

I have use better programming environments that made much more money for other people than me

MT4 makes money for me :)

I'll live with the difference!

Viva MetaTrader!

-BB-

 

Hello hkjonus

Probably, experience with "%SystemDrive%\Windows\System32\debug.exe" might to solace you.
A lot of people, including me, find this as one of greatest software.
I am absolutely seriously.

Best regards
Ais

 
Ais:

Hello hkjonus

Probably, experience with "%SystemDrive%\Windows\System32\debug.exe" might to solace you.
A lot of people, including me, find this as one of greatest software.
I am absolutely seriously.

Best regards
Ais

Right I dont have experience with the windows default debugger. is this a native source debugger or a mach code debgger?

Can I set breakpoints, view data item values, etc..?

 
BarrowBoy:

I have use better programming environments that made much more money for other people than me

MT4 makes money for me :)

I'll live with the difference!

Viva MetaTrader!

-BB-

Well, I can understand you enjoy making money. But I bet you could make a lot more if you could spend more of your time developing new systems and less time trace "debugging".

I don't think I'm pushing the envelope here when I ask for something that 99% of other IDEs have. If this product has a long term future, it will have a real Debugger. There are several other APIs available for other platforms. However I still find them lacking in Charting and overall Reliability (crashing). MT4 almost never crashes.


So far my time expenditures with MQL are breaking down like this 30/30/40 :

30% conceptualizing and observation/anaysis for a new system

30% coding a new system

40% figuring out where to put print statements to resolve the problems in the code


Ive been writing software for 20+ years (C, COBOL, VB, Pascal, Oracle). Normally the numbers are 40/40/20 respectively. Which means i spend 10% more time conceptualizing, and 10% more time writing code im confident will work or can be debugged easily. Which in the end saves me a lot more time debugging. In the end, the process takes me about 40% less time overall.

 

Hello hkjonus

About native windows debugger "debug.exe".
I am also writing software for 20+ years ( machine codes, assemblers, Fortran, Pascal, VB, ..., MQL4 ).
Experience in low level computer languages usually brings prodigious competitive edge.
After that any high level compiler, even command line, seems just like heaven.
I am still absolutely seriously.

Best regards
Ais

 
hkjonus wrote >>

...

So far my time expenditures with MQL are breaking down like this 30/30/40 :

30% conceptualizing and observation/anaysis for a new system

30% coding a new system

40% figuring out where to put print statements to resolve the problems in the code

With experience, this proportions will improve - yes it would be better with a Debug and step-through feature but I would still focus more on <the system>

Ease of coding comes in time...

My best EA's have been the simplest to code, so there's no inherent need for complex or lengthy routines to succeed

-BB-

 
Ais:

Hello hkjonus

About native windows debugger "debug.exe".
I am also writing software for 20+ years ( machine codes, assemblers, Fortran, Pascal, VB, ..., MQL4 ).
Experience in low level computer languages usually brings prodigious competitive edge.
After that any high level compiler, even command line, seems just like heaven.
I am still absolutely seriously.

Best regards
Ais

Are you saying you use the "debug.exe" to debug your MQL? With your experience, I'm sure you could write a source level debugger for MQL and save us a lot of time.

Thanks, I will be happy to Beta test it for you.

 

Thanks for high appreciation.
With or without debugger, MQL4 is extremely powerful software for financial market exploiting.
Moreover, having experience in banking and finance, I am sure that it is simply the best.
Thanks again, hkjonus, and I really wish you success.

 
hkjonus:

I don't think I'm pushing the envelope here when I ask for something that 99% of other IDEs have [...] Ive been writing software for 20+ years (C, COBOL, VB, Pascal, Oracle)

That might be the issue right there. MQL has a lot in common with Javascript (more than it has in common with C/C++, as far as I'm concerned). There are quite possibly billions of lines of Javascript code in existence, and the vast majority of those were written - and continue to be written - with even fewer debugging aids than MQL.


I'm not for a second saying that there shouldn't be an MQL debugger, or that any MQL developer would decline it. But I wouldn't personally say it's essential, or a show-stopper ...


BarrowBoy wrote >>

I have use better programming environments that made much more money for other people than me

MT4 makes money for me :)

I'll live with the difference!


... for precisely that reason.


hkjonus wrote >>

There are several other APIs available for other platforms. However I still find them lacking in Charting and overall Reliability (crashing). MT4 almost never crashes. 


... and that one. NinjaTrader may well be one of the examples you have in mind. The combination of C# and the Ninja event-model beats MQL hands down. But the platform is horribly unreliable for anything other than trivial usage.



hkjonus wrote - in 'For any of several charts, how do I calculate the minimum "server-acceptable" stoploss for a new order?'

[...] You said that StopLevel is in pips. Is it a fixed value set by the broker, or does it fluctuate on market dynamics(and broker preferences)? So many details are NOT covered in the Documentation. The description info on most of the items in the docs are short and beg more questions than they answer.


The documentation is probably better in its native Russian. It does leave a little to be desired in its English translation.


But many of the issues both with the platform and the documentation, including MODE_STOPLEVEL which you mention, are about the environment rather than the language. The documentation could give more pointers, but ultimately there are many things which are under the control of the brokers, not Metaquotes. A debugger doesn't help much here when diagnosing these kinds of problems/variables, because you're inspecting a transitory, volatile, and opaque state of an external system (the broker).


Unless your experience with C, COBOL, VB, Pascal, and Oracle has been unusual by the standards of the software industry, then the whole area of MetaTrader/MQL/brokers poses some exceptional issues which aren't readily comparable to other environments. You're dealing with hugely variable and not entirely trustworthy set of inputs in the form of prices and order confirmations, and you're communicating with a remote device (the broker) whose behaviour can be alarmingly contrary. Placing an order is a bit like adding a row to a table in Oracle - but only if Oracle were allowed to say "I've arbitrarily changed the check constraint on this table, and I'm deciding not to allow your insertion".



hkjonus wrote >>

So far my time expenditures with MQL are breaking down like this 30/30/40 [...]


If you're really generating the number of (potentially) worthwhile new trading ideas which seem to be implied by these figures, then it probably makes more sense for you to concentrate on the ideas, and outsource the coding. You won't be short of offers for the latter on this forum...

 
hkjonus wrote >>
I sure hope MT5 has a Debugger in it. This is the most miserable programming environment I've ever worked with.

I agree, it is very hard to make a proper program without a debugger. One that let makes "steps through" the prosess where one can trace the used variables etc. This platform is really very good, but it lacks some things and a good debugger is one of them. It would also, I believe take the strain of this forum where people ask questions that could be solved by a debugging program.

Reason: