[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [amibroker] The EASIEST way to use new optimizer engines



PureBytes Links

Trading Reference Links

Hello,

I have conducted lots of tests over last few days and in all cases CMA-ES
was the performance winner. Similar results were obtained in scientific benchmarks.
This of course does not mean that this is "the holy grail of optimizers", 
but it is quite safe bet for everyday use.

The reasons why I provided the others are:
a) first two ("moca" and "spso") were provided one week ago for illustration purposes
 - as source code demonstration for programmers for interfacing their engines to
AmiBroker's optimization architecture.

"moca" is purely random, without "intelligence" and does not yield good results
- it is solely provided solely for source code demonstration as it takes only 3 lines of C++
code to generate parameter set (random).

It will NOT be included in the official distribution of 5.20. It will be available only
as ADK sample

"spso" is Standard Particle Swarm Optimizer and is an example of interfacing
the AB in "advanced" mode.
I needed real-world example that would show how to interface the optimizer
using call backs. 
In contrast to "moca", Standard PSO is working OK and produces good results,
however it can be outperformed by other algorithms.

b) this week I provided two more optimizers, which are better for practical use,
for non-programmers who just want to plug the optimizer and give it a go.

"trib" - aka TRIBES - that is adaptive, self-adjusting version of PSO algorithm. It should outperform
standard PSO and it does in many cases. 

"cmae" - aka CMA-ES, Covariance Matrix Adaptation Evolution Strategy
(Scientific background: http://www.bionik.tu-berlin.de/user/niko/cmatutorial.pdf - WARNING: lots of math inside)

that is supposed to be the best one from the above (and one of the best known).

In the future I may fine-tune CMAE plugin internal parameters to gain some extra performance.

The best thing about CMAE is that it works nicely out of the box without any parameters
(the defaults are OK for majority of problems), so adding one line to your formula:

OptimizerSetEngine("cmae");

is everything you need.

The official version of AmiBroker 5.20 (when released in the future) will probably only come
with CMA-ES and TRIBES (some other algorithm may be included too if I find it superior to cmae)

Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message ----- 
From: "Thomas Ludwig" <Thomas.Ludwig@xxxxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Friday, June 27, 2008 6:43 PM
Subject: Re: [amibroker] The EASIEST way to use new optimizer engines


> TJ,
> 
> the new engines work very well. But just one question:
> 
>> (the best one which is  CMA-ES).
> 
> Are there still cases where the other engines are preferable? I mean 
> there must be a reason why you included them ;-)
> 
> Best regards,
> 
> Thomas
> 
> ------------------------------------
> 
> Please note that this group is for discussion between users only.
> 
> To get support from AmiBroker please send an e-mail directly to 
> SUPPORT {at} amibroker.com
> 
> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
> http://www.amibroker.com/devlog/
> 
> For other support material please check also:
> http://www.amibroker.com/support.html
> Yahoo! Groups Links
> 
> 
> 

------------------------------------

Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to 
SUPPORT {at} amibroker.com

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

For other support material please check also:
http://www.amibroker.com/support.html
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:amibroker-digest@xxxxxxxxxxxxxxx 
    mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/