Page 1 of 4

How to Use Console Optimizer?

PostPosted: Tue May 21, 2013 8:18 am
by sunshine
Console Optimizer is Windows 64 console application for optimizing strategies that are written in Lua and can be used in FX Trading Station II with Marketscope 2.0.

Console Optimizer can be used for optimization on large time intervals. While, in case of Marketscope 2.0 and Indicore SDK, the time interval for optimization is limited to 42 months (or even less if you optimize on more than one symbol or cross symbol is required for calculations), Console Optimizer allows optimizing on larger time intervals depending on the available RAM capacity.

Please find the download link and step-by-step instructions on how to start working with Console Optimizer here:
http://fxcodebase.com/wiki/index.php/Console_Optimizer

Re: How to Use Console Optimizer?

PostPosted: Wed May 29, 2013 2:26 pm
by mstreck
Thanks for this tool, very much needed and appreciated.

Is there a way to configure it for multi-core execution, similar to the 32-bit Version and MarketScope?

Cheers,
Martin

Re: How to Use Console Optimizer?

PostPosted: Thu May 30, 2013 1:36 am
by sunshine
Thanks for your feedback.

Console Optimizer uses settings that are specified in the Indicore project file. So, for example, if you specify 7 threads in your project file, Console Optimizer will use this setting.

Re: How to Use Console Optimizer?

PostPosted: Sun Jun 09, 2013 12:36 pm
by mstreck
Hi,

I have used the console optimiser for a couple of longer term optimisations. I have two request for adding a feature and one question for a problem I have:

1. Is it possible to add a sorting Option such that the output file ranks the passes according to the optimisation criteria used. For example, when optimising for final balance, that the output file shows the the ranked results from the best top down to the worst.
That way, I can look to get the best trade-off between the return and draw-down.

In terms of the draw-down, it would be really helpful (actually as well in the 32-bit backtester of MarketScope and SDK) to get the worst relative draw-down in percent over the entire time period tested. This should be easy to add for you and it saves all users from the pain to calculate it themselves.

2. I have tested the results of 32-bit against 64-bit optimiser. They are exactly the same except for one strategy (which I cannot send you the code for testing unfortunately), where the results really differ dramatically. Do you have any hint which lua programming aspect may cause an issue going from 32-bit to 64-bit (maybe some data type getting translated into an integer of different lengths?).

Thanks,
Martin

Re: How to Use Console Optimizer?

PostPosted: Mon Jun 10, 2013 8:17 am
by sunshine
Hi Martin,

mstreck wrote:1. Is it possible to add a sorting Option such that the output file ranks the passes according to the optimisation criteria used. For example, when optimising for final balance, that the output file shows the the ranked results from the best top down to the worst.
That way, I can look to get the best trade-off between the return and draw-down.

Do you mean adding sorting to .html file with optimization results which is generated from .xml file? If so, it should be possible. I have forwarded your request to the developers. They will take a look.

mstreck wrote:2. I have tested the results of 32-bit against 64-bit optimiser. They are exactly the same except for one strategy (which I cannot send you the code for testing unfortunately), where the results really differ dramatically. Do you have any hint which lua programming aspect may cause an issue going from 32-bit to 64-bit (maybe some data type getting translated into an integer of different lengths?).

Unfortunately, we have failed to reproduce the issue.
It would be great if you could provide some test sample which demonstrates the issue.

Re: How to Use Console Optimizer?

PostPosted: Wed Jun 12, 2013 4:35 am
by Kingpin
Big thanks for this program!!! Works pretty well.

For getting nearly (not exactly) the same results as marketscope I have to turn non-slippage mode off and use empty history.

How I get exactly the same results as marketscope?

But I miss the hyper threating support like marketscope has...

Re: How to Use Console Optimizer?

PostPosted: Fri Jun 14, 2013 1:41 pm
by Kingpin
I use a Core i7-2700K in my desktop and a Core i7 3520M in my laptop. The 2700K has 4 physical cores, the 3520M 2, both are using hyper threading. So they can handle 8 and 4 Threads. But only my laptop uses hyper threading with all 4 threads when I'm optimizing. The Desktops does only handle 4 threads. Which number of agents I have to choose for using hyper threading with all cores on my desktop? I'v choosen 8 agents at the moment. On my Laptop and my Desktop.

WBR

Re: How to Use Console Optimizer?

PostPosted: Mon Jun 17, 2013 10:17 am
by Kingpin
That's ridiculous. The 32bit SDK is running on 8 threads, the 64bit console optimizer only on 4 (same project and on my desktop Core i7 2700k). What's the reason for this?

How many threads and cores does the console optimizer support? Does it support dual- or multi-cpu-systems like dual-/quad-xeon-workstations?

Thx

Re: How to Use Console Optimizer?

PostPosted: Fri Jun 21, 2013 2:45 pm
by mstreck
Hi sunshine,

it looks like the difference was not present when the empty history was chosen in the Quote Manager. So this looks fine.

Have you had a chance to look at the sorting of the results, this could even be done in the batch file, I guess, in the conversion process to hmtl.
This would be very, very helpful for me, and also for other user I am pretty sure.

Thanks,
Martin

Re: How to Use Console Optimizer?

PostPosted: Sat Jun 22, 2013 10:26 pm
by dtb71fxcm
Kingpin,
Have you tried using Windows PowerShell (the x64 PowerShell)?
I run Console Optimizer in PowerShell and it uses all available threads... for me anyway ;)