Generate Strategy Tester Back Test & Optimization) Report without all of the individual trade details?

 
Is it possible to generate a 'Back Test' report in the 'Strategy Tester' that doesn't not include all of the individual trade details? Possibly the same for the 'Optimization Report' as well?
 
Yeah, you could code your own. Wait.... I can't remember do you still not code?
 
ubzen:
Yeah, you could code your own. Wait.... I can't remember do you still not code?
I am learning Ubzen and intend to write my own code, But i can't find any reference or information on the topic, which is what I am am looking for.
 
FourX:
I am learning Ubzen and intend to write my own code, But i can't find any reference or information on the topic, which is what I am am looking for.

This one says it allows you to show/hide columns. Here. <--- Looks like it's more for live reports but you can adopt some of the methods used for back-testing.
 
If you're looking for just a summary report. Try this one Here.
 
ubzen:
This one says it allows you to show/hide columns. Here. <--- Looks like it's more for live reports but you can adopt some of the methods used for back-testing.

If you're looking for just a summary report. Try this one Here.

Thanks Ubzen, I find it very difficult to locate things here.

Yes I just want to suppress the actual trade data and get the regular summaries with the settings, graph, data etc with MQ's apps for Back Test and Optimization reports. The actual trade data accounts for a LOT of volume that I don't need to track doing hundreds of optimizations. If I can get the options, then I can have both when I need them.

Now all I need is a $100K + Mega 'Number Cruncher' (< 8) Won't be holding my breath for that. Even on my hex core it isn't realistic. I start with course and broad and the narrow things down progressively, but still..

I bought solid tick by tick commercial data that is great and good value. Been getting no chart mismatches on up to 38M ticks on m1 charts. I 'm getting getting 25% modelling quality every time with this setup, which is the theoretical maximum for this scenario. See:

Modelling Quality in MetaTrader 4 : An Almost Meaningless Number

It just kleeps making the text that big. *shrugs*


Thanks again ubzen



 

Just suppressing the actual trade data in MQ's reports would likely be the best solution. But no idea what they are or where they are located. I looked at their *.htm report files from MT4, but those are just minimal headers etc. They are quite likely compiled and in C++ etc anyway. Any info on this approach, or any other for that matter, is all appreciated.

I'm thinking that a screen capture of the report summary excluding the data would do it, though no data search capabilities nor sorting this way. This means that I have to generate the reports first. Normally not a problem, but this is on EVERY tick for ~ 2.5 years and trades are CONSTANTLY being modified means A LOT of data (that I don't usually need) that takes a LONG time to generate or even freezes up and crashes. Hence my search to generate the summaries without the trades.

 

It's all about minimum data resolution available vs data window needed for signaling/managing trade operation. Eventually you'll be stuck with the spread size as the first barrier, everything else will be a ratio of this number, and this number will determine the typical data timeframe needed to generate signal. Slippage that is as big or bigger than the spread will make you forget why you'd bother working with ticks in the first place. Personally, I wouldn't touch anything hypersensitive to data stream with a 10-ft pole as it just shows a modelling flaw to begin with, but to each their own.

You can skip MT4's built-in backtest trade manager and track your position using custom built functions. It seems that everytime a backtest trade opens/closes and updates the equity chart, it causes a major slowdown in backtest. It's just basic database array juggling & coordinate tracking and it will run at least 5x faster than trading through OrderSend function set without leaving the MT4 environment. No OOP ninja skills or DLL necessary, let alone MT5. Bonus: you can develop your own performance metrics after you process the trade array. PF number is important, but really not the final word.

The only thing faster than MT4 would be running a pure C++ code, but MT4 is good enough for now as I am too lazy to rebuild a data replay module (aka tick/OHLC sequence simulator). No need to reinvent the wheel. Once you go too complex, it's time to rethink. The 600lbs gorilla in the room is still there and it is how you generate your signal.

 

This article I read not long ago seems to concern itself with presenting a report and not bothering with the trade data - maybe of interest.

https://www.mql5.com/en/articles/1403

 
rbhauer:

It's all about minimum data resolution available vs data window needed for signaling/managing trade operation. Eventually you'll be stuck with the spread size as the first barrier, everything else will be a ratio of this number, and this number will determine the typical data timeframe needed to generate signal. Slippage that is as big or bigger than the spread will make you forget why you'd bother working with ticks in the first place.

Not really sure that a lot of that means rbhauer, though I wold like to so that I do understand it. From what I do understand, apparently the MT4 back tester is able to utilize and prcoess EITHER the spread, or the Volume, but not both at the same time? Does anyone know anything about this?

In this case it is a

pure 'price action'

system that uses very few one minute bars and every tick: the best quality and resolution of data that I can get. As noted I've purchased such data with much greater accuracy; EVERY tick: EXACTLY the same as a number of different brokers actually use themselves; that any available from any FX broker as far as I have been able to astern. I get 0 charts errors on millions of ticks. Note something that I have ever seen using broker's data. So I don't have flawed data errors.

Personally, I wouldn't touch anything hypersensitive to data stream with a 10-ft pole as it just shows a modelling flaw to begin with, but to each their own.

I would thnk that the above condition of 100% accurate EVERY TICK offset eliminate this?

You can skip MT4's built-in backtest trade manager and track your position using custom built functions. It seems that everytime a backtest trade opens/closes and updates the equity chart, it causes a major slowdown in backtest.

I've only been find this to be a bottle neck if my code is clumsy, cumbersome and has excess overhead. If not, it processes in an efficient matter and doesn't have problems being bogged doesn't in spite of the fact that all the orders are virtually constantly being modified: from several times a second to several seconds per modification. This is due to 2 factors: there are usually only 12 or 2, or sometimes three or four active trades being modified at any one time. Also the EA does not use nor need much in the way of bars in history:4KN~ 8 KB per chart and 8kb ~ 16 kb per terminal is sufficient. There is only on pair per chart,. So each terminal takes VERY little resources and I can and do run several such terminal simultaneously in spite of the constant order processing without any problems as each terminal is suing VERY little resources.

This article found and shared by both ubzen and Ickyrus fits the bill though I wish to add the graph, the currency vehicle being traded he EA and its version as well as the EA settings. I think that even I should be able to coble this togfether and (hopefully) come up with the desired very useful result. If and when I can, I'll post it here as well as appending it to the original article.

This is where the problem lies: not during the back test, but generating subsequent reports that have sometimes millions of trade transactions in them that makes these unfeasible and that I definitely don't want nor need.

Optimizations are even that much more painfully slow. These are usually so slow that they are for all intents and purposes useless. A bad state of affairs when one very much needs this capacity

e

It's just basic database array juggling & coordinate tracking and it will run at least 5x faster than trading through OrderSend function set without leaving the MT4 environment. No OOP ninja skills or DLL necessary, let alone MT5. Bonus: you can develop your own performance metrics after you process the trade array. PF number is important, but really not the final word.

The only thing faster than MT4 would be running a pure C++ code, but MT4 is good enough for now as I am too lazy to rebuild a data replay module (aka tick/OHLC sequence simulator). No need to reinvent the wheel. Once you go too complex, it's time to rethink. The 600lbs gorilla in the room is still there and it is how you generate your signal.

The aftermarket data that I am using has a good, quick and efficient per tick or per minute input data feed to MT4.

(8 >) Thanks for your helpful input one and all. (< 8)

Reason: