Howard,

Good suggestion. In real trading it is "first come first served" based
upon tick data. I can't incorporate that into the backtesting. If I
knew the probability of getting filled, based upon something else,
like liquidity or bar volume, then I could factor that in, but I
haven't done a statistical analysis of my missed versus filled trades. 

Curt
--- In [email protected], Howard B <howardba...@...> wrote:
>
> Hi Curt --
> 
> When you make these runs, you will get the Monte Carlo results of
selecting
> random portfolios.  And you will see a wide variation in
performance.  If
> your system looks good to you, and you begin to trade it, how will you
> select which stocks to take positions in when there are more
opportunities
> than funds?  If you have some thoughts about that, incorporate those
into
> your positionscore.  The alternative is to shake the dice.
> 
> Thanks,
> Howard
> 
> 
> 
> 
> On Thu, Jan 22, 2009 at 12:27 PM, Keith McCombs <kmcco...@...>wrote:
> 
> >    TJ --
> > "PositionScore SHOULD be an array." -- Thank you.
> >
> > "Microsoft's random" -- Who mentioned Microsoft's random?
> > I suggested exporting to a spread sheet for further analysis.  For
example,
> > I like to plot a histogram of the returns and scatter diagrams of
different
> > metrics.
> >
> > -- Keith
> >
> >
> > Tomasz Janeczko wrote:
> >
> >  That is incorrect. PositionScore SHOULD be an array. Also use
mtRandomA()
> > instead. Mersene Twister is way way way better than Microsoft's
random.
> >
> > Best regards,
> > Tomasz Janeczko
> > amibroker.com
> >
> > ----- Original Message -----
> > *From:* Keith McCombs <kmcco...@...>
> > *To:* [email protected]
> > *Sent:* Thursday, January 22, 2009 7:13 PM
> > *Subject:* Re: [amibroker] Re: Using Optimizer with
PositionScore=Random()
> >
> >  Richard --
> > runs = 1000;  // Number of runs using random scores
> > TotalRuns = Optimize("TotalRuns", 1, 1, runs, 1);
> > PositionScore = LastValue(Random());  // need value, not array
> > -- Keith
> >
> > richpach2 wrote:
> >
> >  Keith,
> >
> > How would you use Random() to set up an optimization to run say 1000
> > iterations overnight?
> >
> > Regards
> > Richard
> >
> > --- In [email protected], Keith McCombs <kmccombs@> wrote:
> > >
> > > Curt --
> > > IMO, it makes a whole lot of sense.
> > >
> > > Notice that if your strategy could select many stocks to trade,
if you
> > > do not use Random(), the system is biased to those stocks whose
symbols
> > > are near the front of the alphabet.
> > >
> > > You can use Random() to set up an optimization to run say 1000
> > > iterations overnight. Export the results to your favorite spread
sheet
> > > and see a more realistic distribution of returns you might expect.
> > > -- Keith
> > >
> > > Curt wrote:
> > > >
> > > > --- In [email protected] <amibroker%40yahoogroups.com>
> > <mailto:amibroker% <amibroker%25>40yahoogroups.com>,
> > > > "Curt" <crcmcc@> wrote:
> > > > >
> > > > > Does it make sense to try to use the optimizer if PositionScore
> > is set
> > > > > to Random()? For example:
> > > > >
> > > > > OptimizerSetengine("cmae");
> > > > > PositionScore = Random();
> > > > >
> > > > I should clarify that by setting PositionScore=Random(), runs with
> > > > exactly the same parameters will not produce the same results.
This is
> > > > because, in the cases where the portfolio becomes fully
invested, a
> > > > different set of stocks will populate the portfolio each run.
> > > >
> > > >
> > >
> >
> >      
> >
>


Reply via email to