MetaTrader 4 Build 600 with Updated MQL4 Language and Market of Applications Released - page 44

Matthew Todorovski
12899
Matthew Todorovski  

screenshot

oh... thanking you! So those little pictures actually serve a purpose...? (duh, silly me) Thanks!

@SDC: thank you for trying to help me (it may help someone else though). It would have been a pleasant surprise if I found my preset files here! :(

Michael
716
Michael  
RaptorUK:
Yep . . . already suggested . .. and ignored. https://www.mql5.com/en/forum/148851/page2#892265


Figures. :(
Michael
716
Michael  
...And yet still no support for managed code DLL's. :(
Simon Gniadkowski
17241
Simon Gniadkowski  
bluepanther:

As arbitrary or "made up" as you may call it, it is certainly more accurate than 25% modelling quality.

It's not what I call it, it's what it is, if you don't believe me ask for yourself. For many Strategies it no better than 25% modeling quality.

. . . 99% quality displayed in the strategy tests (which, by the way, is just a number in the FXT header).

Ian Venner
2397
Ian Venner  
bluepanther:

As arbitrary or "made up" as you may call it, it is certainly more accurate than 25% modelling quality. I couldn't believe it when I saw some of those vendors peddling their "wares" with such poor confidence in their product. Anyone can curve-fit a strategy with 99% quality, but a monkey needs a few more brain cells to do it. 25% even a monkey could do with eyes closed. :P


You have absolutely no clue what you are talking about. Where do you get this information from ? Are you making it up as you go along ? Curve fitting and the ease or difficulty of curve fitting has nothing whatsoever to do with the test chart data. Curve fitting is done by repeating the test many times over the same test bed and tweaking parameters in the product being tested untill it returns the best possible result from that particular test bed. It can be done just as easiliy on any test bed data and can over refine a product to the extent that it ends up so fitted to the test bed, it only works well on that test bed.

I already gave you a link to the explanation for what 25% modelling quality means. It has no bearing on anyone's confidence in a product, it is just a value to describe how many ticks were modelled. Take the average 1 minute bar. Perhaps 10 pips. 4 of the prices in that bar are real prices received from the price feed, the OHLC. The prices in between are modelled by strategy tester so all the prices in the bar are covered. If the strategy being tested needs to execute a trade function or a caluculation on one of those prices in between the OHLC it will, just as it would if it had been a live price feed.

The higher the timeframe, the more OHLC prices can be used from lower timeframe bars, this means an hourly bar has potentialy 240 "real" prices from the sixty 1 minute bar's OHLC's. The OHLC's will cover most if not all of the hourly bar, so the ratio of OHLC prices to modelled prices is much higher than that of the 1 minute bar. For that reason an hourly chart test can recieve a 90% modelling quality rating while the 1 minute chart test on the same data recieved only a 25%.

That value is intended as information for the developer who understands what it represents, it is not a measure of the quality of a product or of the quality of the testing by the developer.

Ian Venner
2397
Ian Venner  

There is really only one type of strategy where tick modelling vs tick data could be reasonably debated. That is high frequency trading on 1 minute bars where trades are opened and closed on the same one minute bar. Such strategies are entirely dependant on the order at which ticks are received in the bar.

For example if a buy order is opened on lower prices in the 1 minute bar.

If the ticks are modelled OHLC in that order the price went from Open up to High then down to the Low then back up to the Close. That would mean our buy order may not have the oppertunity to close near the high which was modelled before the lower prices at which the order opened. If the ticks were instead modelled in the order OLHC it would obviously be a different and better result for that trade. There is the main issue to be concerned about. (just because the close ends up lower than the open on a 1 minute bar, doesnt neccessarily mean the ticks arrived OHLC in that order)

That is not such an issue on the higher timeframes because when the OHLC's of the lower time frames are used in the modelling process, the direction in which the higher timeframe bar formed is already defined by them, therfore the direction of tick modelling should not be a concern on higher timeframes.

Strategies that do not usually open and close trades on the same 1 minute bar are not affected by any of that, therfore tick modelling should not be a concern for most strategies. The main thing for most is to have the 1 minute data.

roger cohan
11
roger cohan  

Error CompileError2

This update does not help anything, now we have to spend money again to fix the errors?

Please could someone help me?

Sunaley
16
Sunaley  
rogertsc:

This update does not help anything, now we have to spend money again to fix the errors?

Please could someone help me?


Don't use "." or any special characters in variable names.
You can replace it with "_".
James Hodges
3532
James Hodges  
rogertsc:

This update does not help anything, now we have to spend money again to fix the errors?

Please could someone help me?

Do you see all those warnings that start with a "." ? that is a period within quotes... that is one problem you have.
In object oriented programming which mql4 now is, you can not use a period, dot, fulll stop or whatever you want to call it in the name of a variable. That dot performs a function in object oriented programming. It is not just a normal period... so go through your code and find all of the variables that you have that have a period in them and change it to an underscore.. for instance if you have a variable called MovingAverage.Period you need to change it to something like Moving Average_Period but you can NOT use a dot or period in the name of a variable. It is a special character that performs a function. As you can see below they are referring to it as the "point operation". As you can see in the line containing a dot at the bottom of the example...... my_set.take=input_TP;

Also it looks like you may have some problems with scope... if you have a '#property strict' line at the top of your code you may want to comment it out... // and see if some of this get's better for you..

PipPip....Jimdandy

Access to Structure Members

The structure is a new type of data allowing to declare variables of this type. The structure can be declared only once within a project. The structure members are accessed using the point operation (.).

Example:

struct trade_settings
{
double take; // values of the profit fixing price
double stop; // value of the protective stop price
uchar slippage; // value of the acceptable slippage
};
//--- create up and initialize a variable of the trade_settings type
trade_settings my_set={0.0,0.0,5};
if (input_TP>0) my_set.take=input_TP;

roger cohan
11
roger cohan  

I got it, replaced all to "_" but now error in another place


'gda_1124' - illegal switch expression type'

switch (gda_1124[ai_0][ai_4][0])