Tomasz and Paul,
Thank you for responding.
Yes, I also had
looked at those sources, but being that I am able to
only stumble along
with C++, it is Greek to me.
I think I would be better off trying to
understand how to modify the
AmiBroker plugin DLL to call back my AFL
objective function.
It is still Greek, but at least it is a simpler and
meaningful Greek
phrase to start with.
I would still welcome any
specific advice or hints in areas that I am
likely to stumble
over.
Best regards,
Dennis
> On Jul 7, 2008, at 7:10 AM,
Tomasz Janeczko wrote:
>
> Yes, these sources are actually
included in what you already have on
> your hard disk
> under
ADK\CMAE\cmaes
>
> Best regards,
> Tomasz Janeczko
>
amibroker.com
>> ----- Original Message -----
>> From: Paul
Ho
>> To: amibroker@xxxxxxxxxps.com
>>
Sent: Monday, July 07, 2008 12:22 PM
>> Subject: RE: [amibroker] Code
help please... Optimize with CMAE
>>
>> Go to the guy's site
where Tomasz download his source code from,
>> download his source
code, and stare at that one instead, I think
>> its a lot closer to
what you want. http://www.bionik.tu-berlin.de/user/niko/cmaes_c.tar.gz
>>
>>
>>
On Jul 7, 2008, at 4:05 AM, Tomasz Janeczko wrote:
>>
>>
Dennis,
>>
>> The optimizer plugin architecture uses
backtester. You can't go
>> without using backtester.
>>
Call to pfEvaluateFunc invokes full-blown backtest for given
>>
parameter set.
>>
>> If you would like to optimize "general
purpose" functions without
>> using backtester,
>> you
would need to take sources provided and write your own plugin
>>
that won't
>> use backtesting engine at all.
>>
>>
Best regards,
>> Tomasz Janeczko
>>
amibroker.com
>> ----- Original Message -----
>> From:
"Dennis Brown" <see3d@xxxxxxxxcom>
>>
To: <amibroker@xxxxxxxxxps.com>
>>
Sent: Monday, July 07, 2008 3:30 AM
>> Subject: [amibroker] Code help
please... Optimize with CMAE
>>
>>
>>>
Hello,
>>>
>>> I have been staring at the CMAE DLL
stuff for days and I really need
>>> some help to figure out how
to use it in a particular way.
>>>
>>> I would like to
use the optimizer in a generic sense to do the
>>> following from
AFL without using the internal backtester, meaning
>>>
only
>>> AFL in indicator mode:
>>>
>>>
Initialize 2 items:
>>> item 1 is X and has a
default,min,max,step,current,best values
>>>
1,1,1000,1,1,1
>>> item 2 is Y and has a
default,min,max,step,current,best values
>>>
1,1,1000,1,1,1
>>>
>>> The objective is to
optimize X and Y so that X*Y==100
>>>
>>> objective
function in AFL:
>>> function Objective()
>>>
{
>>> return 100 - X*Y;
>>>
}
>>>
>>> The steps I would need to take as I
understand them are:
>>>
>>> 1. Initialize the X and Y
OptimizeItems by calling
>>> OptimizerInit( with bunch of
arguments) --most arguments are
>>> irrelevant to this
test.
>>>
>>> 2. Start the optimizer engine by calling
>>> pfEvaluateFunc( pContext ) --
>>> there really is
no context that I understand for this test.
>>>
>>> 3.
The DLL calls back for the objective AFL
function
>>>
>>> 4. It runs step 3 a number of times
to find the solution of X=Y=10
>>>
>>> 5.
OptimizerFinalize(same bunch of arguments as step
1)
>>>
>>> Of course I would prefer that step 3 is AFL
calling the optimizer
>>> DLL
>>> instead (simple
mode), but I did not think that is how the CMAE
>>>
works.
>>>
>>> Anyway, if I could get this simple case
to work, I am sure I could
>>> figure out how do do much more
complicated cases after that on my
>>>
own.
>>>
>>> Of course if there is no way to use the
existing DLL without
>>> changing
>>> it, I would
like to know that also. I should be able to make modest
>>>
changes to the DLL myself.
>>>
>>> Please any hints or
AFL code is appreciated.
>>>
>>> Best
regards,
>>> Dennis
>>>