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

[amibroker] Re: Optimizing & Robustness of single parameters



PureBytes Links

Trading Reference Links


As an add on - this is a post i made into my journal a while ago ...

I incorporate a " your BUY AND random() > 0.2 - 0.7  ; " in my BUY to
add missing trading some stocks. This also tests robustness of the
system to recover from lost trades . If u have an edge , it should be
a regular one and so missing a trade shouldnt affect you grossly . I
then add to this 
DUMMY = Optimize("DUMMY",1,1,100,1) ; and run optimize.

You then recieve 100 different basket combinations of yre backtest
(different batch of trades ) . This may be repeated many more times by
increasing 100 ---> whatever number.
SO in fact testing a 5 year period  x 100 is like 500 years of trading
the system for cracks and weaknesses. I export the optimize result
into a spreadsheet and average out the values and measure the
variances in results.  This tells me whats likely to occur including a
worstcase scenario too. When i make real changes to my system i can
run the same and compare the spreadsheet averages rather than a once
off test.

e.g : The average figure of 100 optimizations ( which only really
allow random() numebr to be effective tells u whats most likely when
trading the system and drawdowns etc. This helps me really know my
system and wether my real results are on track. It also helps with
psychology of the system. AS an example , I noticed sometimes some
systems had years of flatness despite excellent final returns . I
correlated it to a function filter and then started looking for that
filter results across other markets. This helped me obtain a steeper
and less eratic equity curve . Now I trade the module with far more
internal confidence and I know when drawdowns occur it is expected
rather than surprise. 


Regards ,
and thanks for the ideas :-)
maurice ( moz) 





--- In amibroker@xxxxxxxxxxxxxxx, Natasha !! <dynomitedoll_ddd@xxxx>
wrote:
>   
> 
>   Thanks.
> 
>  -- N !!
> --- Steve Dugas <sjdugas@xxxx> wrote:
> 
> > Thanks Fred - very nice idea!
> > 
> > FWIW, I just realized that Herman sent the code for his graphs in a 
> > follow-up message to the original. Here it is for anyone that might
> > be 
> > interested.
> > 
> > Steve
> > 
> > ----- Original Message ----- 
> > From: "Fred" <ftonetti@xxxx>
> > To: <amibroker@xxxxxxxxxxxxxxx>
> > Sent: Monday, April 04, 2005 9:22 PM
> > Subject: [amibroker] Re: Optimizing & Robustness of single parameters
> > 
> > 
> > >
> > >
> > > For systems with a single parameter this is of course fine ...
> > >
> > > For systems with more then 2 two parameters where the 3d plots are
> > no
> > > longer of great use it's a simple matter to generate random data
> > > points in the +/- n% range of what appears to be the optimum value
> > to
> > > see how sensitive or not the parameter values actually are i.e.
> > >
> > > Original System where the default values are assumed to be optimum
> > > but sensitivity is unknown ...
> > >
> > > X = Optimize("X", 10, 1, 20, 1);
> > > Y = Optimize("Y", 100, 1, 200, 1);
> > > Z = Optimize("Z", 1000, 1, 2000, 1);
> > >
> > > Sensitivity Tester for +/- 10%
> > >
> > > Senstivity = Optimize("Sensitivity", 1, 1, 5000, 1);
> > >
> > > X = Round((Random() - 0.5) * 2.99) + 10;
> > > Y = Round((Random() - 0.5) * 20.99) + 100;
> > > Z = Round((Random() - 0.5) * 200.99) + 1000;
> > >
> > > The results based on whatever fitness metric interests you can be
> > > observed and sorted in the output of optimization and/or can be
> > > exported for further statistical analysis (distribution) in Excel.
> > >
> > > --- In amibroker@xxxxxxxxxxxxxxx, "Steve Dugas" <sjdugas@xxxx>
> > wrote:
> > >> Hi Natasha,
> > >>
> > >> Here is the entire message intact, with thanks to Herman.
> > >>
> > >> Steve
> > >>
> > >>
> > -------------------------------------------------------------------
> > >>
> > >> In addition to using 3D surface maps to evaluate the Robustness of
> > > two or more parameters you may consider assessing the Robustness
> > and
> > > across-market dependency of single parameters over a Watch list.
> > >>
> > >> You can do this by superimposing equity lines for different
> > > parameter values to see whether they track over time (fan-out) .
> > This
> > > is a far better method for evaluating systems and finding stocks
> > than
> > > picking a high equity from the Optimization result table. If the
> > > equity ratios remain approximately constant your parameters are
> > more
> > > Robust than if the Equities do not track.
> > >>
> > >> In my example I use Steve Karnish's CMO5 system (symmetrical
> > > triggers). To test this method on your own trading system you
> > should
> > > substitute your own code inside the curly brackets of the System()
> > > function and substitute the variable named "TestParameter" for the
> > > parameter you like to evaluate. Here is a typical chart showing
> > > robust behavior:
> > >>
> > >>
> > >>
> > >> Here is a chart for a system that may be over optimized and lacks
> > > robustness:
> > >>
> > >>
> > >>
> > >>
> > >> Things to look for:
> > >>
> > >> 1) Over-optimization: High profits but Equity lines move all over
> > > the place.
> > >> 2) Robustness: Equity lines "fanout" keeping the system profitable
> > > under most TestParameter values
> > >> 3) Synchronized dips; if all equities dip you can create an
> > Equity-
> > > composite and use it to qualify signals.
> > >> 4) Stepping through the stocks in you workspace you can observe
> > > stock-synchronization
> > >> 5) Is the optimum value optimum over time?
> > >> 6) Straight equity lines
> > >>
> > >> Happy trading,
> > >>
> > >> Herman
> > >>
> > >>
> > >>       Yahoo! Groups Sponsor
> > >>             ADVERTISEMENT
> > >>
> > >>
> > >>
> > >>
> > >> Send BUG REPORTS to bugs@xxxx
> > >> Send SUGGESTIONS to suggest@xxxx
> > >> -----------------------------------------
> > >> Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx
> > >> (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> > >> --------------------------------------------
> > >> Check group FAQ at:
> > > http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >>
> > >> Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> > > Service.
> > >>
> > >>   ----- Original Message ----- 
> > >>   From: Natasha !!
> > >>   To: amibroker@xxxxxxxxxxxxxxx
> > >>   Sent: Monday, April 04, 2005 1:02 PM
> > >>   Subject: [amibroker] Optimizing & Robustness of single
> > parameters
> > >>
> > >>
> > >>    Hi,
> > >>          Just going over the archieves and i dug out a mail i
> > didnt
> > > quite well understand:
> > >>   Since the attachments are not stored in the usergoups any graph
> > > to illustrate the same would be much obliged;
> > >>
> > >>           Thanks.
> > >>
> > >>   -- N !!
> > >>
> > >>
> > >>   In add From: "Herman van den Bergen" <psytek@>
> > >>   Date: Thu Sep 4, 2003  9:44 am
> > >>   Subject: Optimizing & Robustness of single parameters ition to
> > > using 3D surface maps to evaluate the Robustness of two or more
> > > parameters you may consider assessing the Robustness and across-
> > > market dependency of single parameters over a Watch list.
> > >>
> > >>   You can do this by superimposing equity lines for different
> > > parameter values to see whether they track over time (fan-out) .
> > This
> > > is a far better method for evaluating systems and finding stocks
> > than
> > > picking a high equity from the Optimization result table. If the
> > > equity ratios remain approximately constant your parameters are
> > more
> > > Robust than if the Equities do not track.
> > >>
> > >>   In my example I use Steve Karnish's CMO5 system (symmetrical
> > > triggers). To test this method on your own trading system you
> > should
> > > substitute your own code inside the curly brackets of the System()
> > > function and substitute the variable named "TestParameter" for the
> > > parameter you like to evaluate. Here is a typical chart showing
> > > robust behavior:
> > >>
> > >>         Chart for the above and for the below
> > > explanation.Thanks ???
> > >>
> > >>   Here is a chart for a system that may be over optimized and
> > lacks
> > > robustness:
> > >>
> > >>
> > >>
> > >>   Things to look for:
> > >>
> > >>   1) Over-optimization: High profits but Equity lines move all
> > over
> > > the place.
> > >>   2) Robustness: Equity lines "fanout" keeping the system
> > > profitable under most TestParameter values
> > >>   3) Synchronized dips; if all equities dip you can create an
> > > Equity-composite and use it to qualify signals.
> > >>   4) Stepping through the stocks in you workspace you can observe
> > > stock-synchronization
> > >>   5) Is the optimum value optimum over time?
> > >>   6) Straight equity lines
> > >>
> > >>   Happy trading,
> > >>
> > >>   Herman
> > >>
> > >>
> > >>
> > >>
> > >>   Warm regards,
> > >>   Natasha !
> > >>
> > >>
> > >>
> > >>
> > >>
> > --------------------------------------------------------------------
> > > ----------
> > >>   Yahoo! Messenger
> > >>   Show us what our next emoticon should look like. Join the fun.
> > >>
> > >>   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 other support material please check also:
> > >>   http://www.amibroker.com/support.html
> > >>
> > >>
> > >>
> > >>
> > >>
> > >>
> > --------------------------------------------------------------------
> > > ----------
> > >>   Yahoo! Groups Links
> > >>
> > >>     a.. To visit your group on the web, go to:
> > >>     http://groups.yahoo.com/group/amibroker/
> > >>
> > >>     b.. To unsubscribe from this group, send an email to:
> > >>     amibroker-unsubscribe@xxxxxxxxxxxxxxx
> > >>
> > >>     c.. Your use of Yahoo! Groups is subject to the Yahoo! Terms
> > of
> > > Service.
> > >
> > >
> > >
> > >
> > >
> > >
> > > 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 other support material please check also:
> > > http://www.amibroker.com/support.html
> > >
> > >
> > > Yahoo! Groups Links
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > 
> > 
> 
> 
> Warm regards, 
> Natasha !
> 
>   
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 		
> __________________________________ 
> Do you Yahoo!? 
> Take Yahoo! Mail with you! Get it on your mobile phone. 
> http://mobile.yahoo.com/maildemo





------------------------ Yahoo! Groups Sponsor --------------------~--> 
Has someone you know been affected by illness or disease?
Network for Good is THE place to support health awareness efforts!
http://us.click.yahoo.com/Rcy2bD/UOnJAA/cosFAA/GHeqlB/TM
--------------------------------------------------------------------~-> 

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 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/

<*> 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/