PureBytes Links
Trading Reference Links
|
Mark,
Fine ... I can ignore all of that except ...
"The code would divide the data into 10 (near)equal segments, then do
the initial optimization on the first 3. It would then take the best
performing period (I'd like this in terms of profit factor) and test
it on segment #4 (which is the first OOS segment)" ... if that
doesn't imply picking which of the n segments is best or the
parameter values used therein then can you tell me what that does
mean ? By period do you mean value for the parameter ?
--- In amibroker@xxxxxxxxxxxxxxx, "MarkF2" <feierstein@xxxx> wrote:
> Fred, Please read my post again more carefully. I've said nothing
> about Active Trader, 25 bars, or picking which of the n segments is
> best. If the description I've provided isn't clear enough, then I
> don't know what else to say.
>
> Mark
>
> --- In amibroker@xxxxxxxxxxxxxxx, "Fred" <fctonetti@xxxx> wrote:
> > Mark,
> >
> > First a statement ... There may !? be some ?! validity to walk
> > forward testing using either an anchored original data point or a
> > moving window but clearly not with windows of 25 bars. Your
> > description of how you'd like to do this is the first I've ever
seen
> > of this type i.e. pick which of the n-segments is best and use
that.
> > This could be done but I would think ?! it would be best to
either
> > use the entire period from the anchored first point to the
current
> > bar or a sliding window of n bars from n-1 bars ago until the
current
> > bar to base the optimization on. If your looking for a
methodology
> > that actually might have some promise to it I suspect one of
these
> > methods would provide better results. If you are just looking to
> > dispell what was in Active Trader then I think that 1. They've
> > pretty much already done this themselves by virtue of the size of
> > their window and 2. this MIGHT be a waste of time in that no one
here
> > will really benefit from the outcome except that one is sure not
to
> > use AT's methods.
> >
> > Your thoughts ?
> >
> > Fred
> >
> > --- In amibroker@xxxxxxxxxxxxxxx, "MarkF2" <feierstein@xxxx>
wrote:
> > > Fred, OK, here's a more detailed description.
> > >
> > > The code as I envision it would allow the walk-forward OOS
testing
> > of
> > > a system with one optimization parameter in an exploration. For
> > > example:
> > >
> > > per = optimize("period",10,2,20,2);
> > > Buy = Cross(C,EMA(C,per));
> > > Sell = Cross(EMA(C,per),C);
> > > Short = Sell;
> > > Cover = Buy;
> > >
> > > The loop code would have an area to paste the system and would
allow
> > > two additional inputs: 1) # of segments to break the data into
and
> > 2)
> > > # of segments to use for the initial optimization. If the
system
> > must
> > > be optimized *by the loop*, then it would also need a mechanism
for
> > > inputting the optimization parameters. It may be easier to
write a
> > > separate routine for sliding optimization windows, I don't
know.
> > I'm
> > > just describing what I want. But I can tell you that in most
cases,
> > > sliding windows are just too noisy to give a meaningful
assessment
> > of
> > > *overall system robustness* (which is what I'm testing for)
because
> > > you will end up optimizing on a bearish segment and then OOS
testing
> > > on a bullish or ranging segment, etc.
> > >
> > > Let's say the system doesn't have to be optimized by the loop
and
> > you
> > > choose to break the data into 10 segments and do the initial
> > > optimization on the first three segments.
> > >
> > > The code would divide the data into 10 (near)equal segments,
then do
> > > the initial optimization on the first 3. It would then take the
best
> > > performing period (I'd like this in terms of profit factor) and
test
> > > it on segment #4 (which is the first OOS segment). Then it would
> > > record two things for this and every other OOS segment: 1) the
> > period
> > > used and 2)the result (profit factor). Then it would reoptimize
the
> > > system over segments 1-4 and use the best period on segment 5
(the
> > > second OOS segment), recording the period used and result, then
> > > reoptimize over segments 1-5, use the best period on segment 6,
etc.
> > >
> > > At bare bones minimum, the exploration would have 3 columns:
Ticker,
> > > Period, and Profit Factor, with a row for each OOS segment.
Columns
> > > for the dates of each segment would be nice also, if doable.
So if
> > > there are 7 OOS segments and you're testing a system on 100
stocks,
> > > you'd get an exploration with 700 rows.
> > >
> > > Let me know if any questions.
> > >
> > > Mark
> > >
> > > --- In amibroker@xxxxxxxxxxxxxxx, "Fred" <fctonetti@xxxx> wrote:
> > > > Mark,
> > > >
> > > > It was not my intention to be a smartass although I can see
> > that's
> > > > how your taking my response. If you and possibly others are
> > > > interested in this sort of AFL, I'd be happy to look into
writing
> > > one
> > > > as there may be benefits that I get out of this as well. I
would
> > > > certainly think that it would be possible to implement
whether
> > the
> > > > period of optimization had a sliding window or an anchored
> > > beginning
> > > > based on a parameter. If you'd like to proceed please state
> > > > precisely what your requirements are. After that I will
probably
> > > > have questions.
> > > >
> > > >
> > > > --- In amibroker@xxxxxxxxxxxxxxx, "MarkF2" <feierstein@xxxx>
> > wrote:
> > > > > I was looking for help in implementing what I described,
not a
> > > > > critique (there IS a benefit in "anchoring" the front data
> > point
> > > if
> > > > > you consider the results accordingly, BTW) and not a
general
> > > > statement
> > > > > that it can be done "with a properly written AFL." Thanks
> > anyway.
> > > > >
> > > > > --- In amibroker@xxxxxxxxxxxxxxx, "Fred" <fctonetti@xxxx>
wrote:
> > > > > > I can't say as I see any benefit in anchoring the front
data
> > > > point as
> > > > > > this causes current data to be less and less important as
> > time
> > > > goes
> > > > > > along. In addition I don't see why with a properly
written
> > AFL
> > > > there
> > > > > > would be any need for human intervention. Basically you
> > supply
> > > > the
> > > > > > system and it does the rest much like the way
PortfolioTrader
> > > > that I
> > > > > > posted uses a user supplied scoring routine to determine
> > which
> > > > > > securities to invest this would need to decide what
parameter
> > > > values
> > > > > > to use as time rolls along.
> > > > > >
> > > > > > --- In amibroker@xxxxxxxxxxxxxxx, "MarkF2"
<feierstein@xxxx>
> > > > wrote:
> > > > > > > But how about doing it the way I described? I would
prefer
> > to
> > > > > > > minimize human interaction and maximize automation.
> > Imagine
> > > > > > testing a
> > > > > > > system in this manner on all SP500 stocks, for example.
> > > > > > >
> > > > > > > --- In amibroker@xxxxxxxxxxxxxxx, "Fred"
<fctonetti@xxxx>
> > > wrote:
> > > > > > > > This would be simple enough to do if you think about
it
> > > terms
> > > > of
> > > > > > how
> > > > > > > > many bars you are going to use for a lookback period
and
> > > then
> > > > > > armed
> > > > > > > > with the results of optimization of that period how
far
> > > ahead
> > > > > > from
> > > > > > > > that point in time you are going to trade before you
> > > > reoptimize.
> > > > > > As
> > > > > > > > Dingo says this could be done with automation or it
could
> > > all
> > > > be
> > > > > > done
> > > > > > > > interally in AB/AFL/ABTool. This is a different form
of
> > > > Score
> > > > > > and
> > > > > > > > Rank if you will where instead of scoring and ranking
> > > > individual
> > > > > > > > issues in a portfolio on a rolling basis you are
scoring
> > > and
> > > > > > ranking
> > > > > > > > parameters for your timing system on a rolling
basis.
> > > > > > > >
> > > > > > > > --- In amibroker@xxxxxxxxxxxxxxx, "dingo" <dingo@xxxx>
> > > wrote:
> > > > > > > > > perhaps I can help - contact me privately at dingo
at
> > > > udsnet
> > > > > > dot
> > > > > > > > com.
> > > > > > > > >
> > > > > > > > > d
> > > > > > > > >
> > > > > > > > > -----Original Message-----
> > > > > > > > > From: MarkF2 [mailto:feierstein@x...]
> > > > > > > > > Sent: Tuesday, June 17, 2003 4:00 PM
> > > > > > > > > To: amibroker@xxxxxxxxxxxxxxx
> > > > > > > > > Subject: [amibroker] Walk-Forward Out of Sample
(OOS)
> > > > Testing
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Jayson, I believe Owen wants to use AB for walk-
> > forward,
> > > > out of
> > > > > > > > sample
> > > > > > > > > testing. I'd love to be able to do this also but
lack
> > > the
> > > > > > > > programming
> > > > > > > > > skills. Can anyone help? I think this would be
> > > incredibly
> > > > > > useful!!!
> > > > > > > > >
> > > > > > > > > What I'd like to do can, I believe, be done with
loops
> > > and
> > > > > > would go
> > > > > > > > > something like this:
> > > > > > > > >
> > > > > > > > > Let's say you're testing a simple system on MSFT
where
> > > > price
> > > > > > crosses
> > > > > > > > > over and under a moving average so you're
optimizing
> > only
> > > > one
> > > > > > > > > parameter, length, to keep things simple. The loop
code
> > > > would
> > > > > > allow
> > > > > > > > > two inputs: 1) # of segments to break data into and
2) #
> > > of
> > > > > > segments
> > > > > > > > > to use for initial optimization. Let's say you
choose
> > 10
> > > > and
> > > > > > 3. AB
> > > > > > > > > would divide MSFT data into 10 equal segments, then
do
> > > the
> > > > > > initial
> > > > > > > > > optimization on the first 3. It would then take
the
> > best
> > > > > > performing
> > > > > > > > > length and test it on segment #4 (which is the
first
> > OOS
> > > > > > segment).
> > > > > > > > > Then it would record two things for this and every
> > other
> > > > OOS
> > > > > > > > segment:
> > > > > > > > > 1) the length used and 2)the result (I'd like
profit
> > > > factor).
> > > > > > Then
> > > > > > > > AB
> > > > > > > > > would reoptimize the system over segments 1-4 and
use
> > the
> > > > best
> > > > > > > > > parameter on segment 5 (the second OOS segment),
> > > recording
> > > > > > length
> > > > > > > > used
> > > > > > > > > and result, then reoptimize over segments 1-5, use
the
> > > best
> > > > > > > > parameter
> > > > > > > > > on segment 6, etc.
> > > > > > > > >
> > > > > > > > > What this would do is automatically tell you how
robust
> > > > your
> > > > > > system
> > > > > > > > > concept is over the OOS segments (4-10 in this
case).
> > > > > > > > >
> > > > > > > > > Mark
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > --- In amibroker@xxxxxxxxxxxxxxx, "Jayson"
> > > <jcasavant@xxxx>
> > > > > > wrote:
> > > > > > > > > > Owen,
> > > > > > > > > > Am I over simplifying by suggesting you simply
use the
> > > > > > > > > > From-To range settings in AA?
> > > > > > > > > >
> > > > > > > > > > Example choose 12/1/2002-12/25/2002 to optimize
then
> > > > simply
> > > > > > move
> > > > > > > > the
> > > > > > > > > window
> > > > > > > > > > forward 25 days to test the results.......
> > > > > > > > > >
> > > > > > > > > > Regards,
> > > > > > > > > > Jayson
> > > > > > > > > > -----Original Message-----
> > > > > > > > > > From: Owen Davies [mailto:owen5819@x...]
> > > > > > > > > > Sent: Tuesday, June 17, 2003 2:04 PM
> > > > > > > > > > To: amibroker@xxxxxxxxxxxxxxx
> > > > > > > > > > Subject: [amibroker] Annoying programming problem:
> > > ideas
> > > > > > please?
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Active Trader has taken to doing something I've
> > always
> > > > > > considered
> > > > > > > > > BS. Some
> > > > > > > > > > articles--at least one a month of late--optimize
an
> > > > intraday
> > > > > > > > trading
> > > > > > > > > system,
> > > > > > > > > > usually some variation on a volatility breakout,
over
> > a
> > > > month
> > > > > > or
> > > > > > > > so
> > > > > > > > > of data
> > > > > > > > > > and then do an out-of-sample test for the next
month
> > or
> > > > so to
> > > > > > > > > "prove" how
> > > > > > > > > > well it works. Over time, this has come to
irritate
> > me
> > > > > > enough
> > > > > > > > that
> > > > > > > > > I'd like
> > > > > > > > > > to do a long-term study, either to prove that
it's
> > > > nonsense
> > > > > > or to
> > > > > > > > > learn
> > > > > > > > > > something new and highly unlikely. So:
> > > > > > > > > >
> > > > > > > > > > Can anyone think of a way to optimize a technique
on,
> > > > say, 25
> > > > > > bars
> > > > > > > > > of data,
> > > > > > > > > > test it on the next 25 bars, and then step the
window
> > > > forward
> > > > > > and
> > > > > > > > > do it
> > > > > > > > > > again? I'd settle for re-optimizing daily on the
> > > > previous 25
> > > > > > (or
> > > > > > > > > whatever)
> > > > > > > > > > bars. Whatever is easiest.
> > > > > > > > > >
> > > > > > > > > > For the sake of simplicity, something that runs
on
> > EOD
> > > > data
> > > > > > will
> > > > > > > > do.
> > > > > > > > > I mean
> > > > > > > > > > to test breakouts in the direction of an existing
> > trend
> > > > and
> > > > > > close
> > > > > > > > at
> > > > > > > > > the end
> > > > > > > > > > of the day, so there should be no problem with
days
> > > that
> > > > > > break out
> > > > > > > > > in one
> > > > > > > > > > direction, reverse, and break out in the other; a
day
> > > > that
> > > > > > > > reverses
> > > > > > > > > and ends
> > > > > > > > > > badly will just count as a loss. Also, I can do
the
> > > > > > conversion to
> > > > > > > > > intraday
> > > > > > > > > > data myself, rather than ask others to hand me
the
> > > > complete
> > > > > > > > package.
> > > > > > > > > All I
> > > > > > > > > > need is some way to optimize on a window.
> > > > > > > > > >
> > > > > > > > > > Offhand, I can't see any way to do it within AFL,
and
> > I
> > > > don't
> > > > > > have
> > > > > > > > > the skill
> > > > > > > > > > to handle it with external programming.
> > > > > > > > > >
> > > > > > > > > > Many thanks.
> > > > > > > > > >
> > > > > > > > > > Owen Davies
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > 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.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Yahoo! Groups Sponsor
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > >
> > > > <http://rd.yahoo.com/M=251812.3170658.4537139.12
> > > 61774/D=egroupweb/S=17
> > > > > > > > 05
> > > > > > > > >
> > > > > > > >
> > > > > >
> > > > 632198:HM/A=1564416/R=0/SIG=11ti81skc/*http://ww
> > > w.netflix.com/Default?
> > > > > > > > mq
> > > > > > > > > so=60164797&partid=3170658>
> > > > > > > > >
> > > > > > > > > <http://us.adserver.yahoo.com/l?
> > > > > > > > M=251812.3170658.4537139.1261774/D=egrou
> > > > > > > > > pmail/S=:HM/A=1564416/rand=707349073>
> > > > > > > > >
> > > > > > > > > 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/gro
> > > up/amiquote/messages/)
> > > > > > > > > --------------------------------------------
> > > > > > > > > Check group FAQ at:
> > > > > > > > > http://groups.yahoo.com/group/amibroke
> > > r/files/groupfaq.html
> > > > > > > > >
> > > > > > > > > Your use of Yahoo! Groups is subject to the Yahoo!
Terms
> > > of
> > > > > > Service
> > > > > > > > > <http://docs.yahoo.com/info/terms/> .
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Get A Free Psychic Reading! Your Online Answer To Life's Important Questions.
http://us.click.yahoo.com/Lj3uPC/Me7FAA/ySSFAA/GHeqlB/TM
---------------------------------------------------------------------~->
Send BUG REPORTS to bugs@xxxxxxxxxxxxx
Send SUGGESTIONS to suggest@xxxxxxxxxxxxx
-----------------------------------------
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 http://docs.yahoo.com/info/terms/
|