PureBytes Links
Trading Reference Links
|
O.K Mike ... you live and learn :-)
Possibly correlation, or NOT, of simultaneous trades to the market,
or sector, is a related subject ... didn't discuss that detail in
relation to my X,Y & Z example .. that is where trade sample space
anlaysis can provide the answer.
--- In amibroker@xxxxxxxxxxxxxxx, "Mike" <sfclimbers@xxx> wrote:
>
> --- In amibroker@xxxxxxxxxxxxxxx, "brian_z111" <brian_z111@> wrote:
> >
> > > In any case it could be traded if you organise your funds in
such
> a
> > >way that all symbols in your list can be held simultaneously.
> >
> > That isn't really practical and we can calculate very accurate
> > predictions, subject to variance and non-stationarity, before we
> risk
> > our money.
>
> Why impractical? I have been doing exactly that, profitably, for
just
> under 2 years. There is much room for experimentation in exactly
how
> the funds get distributed among the signals. But, even a simple
equal
> division of equity between all signals (up to a fixed maximum
> percentage of equity per trade in the event that there are few
> signals) can prove profitable when applied to a strategy.
>
> Mike
>
>
> > >there are a lot of additional problems that arise like an
> uncomplete
> > >database during testing
> >
> > You can't get a good result out of a bad database.... just avoid
> > trades were you can't get the data you need.
> >
> >
> > >Not sure if a random selection on an extended list for testing
> > >purposes is reliable. Who knows in the practice you will find
that
> > >the signals that come early during the trading session usually
are
> > >loosers. This could be tested however using intraday data,
> >
> >
> > Yes it is reliable, in fact it is the only way that it can be
done.
> >
> > Returning to the example in my previous post:
> >
> > a b c X d e f g h i
> > a b c Y d e f g h i
> > a b c Z d e f g h i
> >
> > The XY & Z samples were produced by the same system (same rules)
as
> > the a -> i samples, so they are part of the same series and share
> the
> > same profile (frequency distribution and probabilities).
> >
> > If you have a list of trades for an EOD system and then want to
find
> > out if the intraday time affects the result then you are ranking
> your
> > daily signals using an intraday factor and you have to add at
least
> > one more trading rule to do that.
> >
> > This is effectively a new system and it will produce its own
trade
> > series , with it's own characteristics.
> >
> > As always, if we do analyse the trade sample space, we have to
make
> > sure we are left with enought samples to provide a valid sample.
> >
> > NEW RULE == NEW SYSTEM == NEW AND UNIQUE TRADE SERIES
> >
> >
> > --- In amibroker@xxxxxxxxxxxxxxx, "Edward Pottasch" <empottasch@>
> > wrote:
> > >
> > > In any case it could be traded if you organise your funds in
such
> a
> > way that all symbols in your list can be held simultaneously.
EOD
> > systems are tricky though since there are a lot of additional
> > problems that arise like an uncomplete database during testing
> (ENRN,
> > WCOM etc missing), no shorts available during trading. Not sure
if a
> > random selection on an extended list for testing purposes is
> > reliable. Who knows in the practice you will find that the
signals
> > that come early during the trading session usually are loosers.
This
> > could be tested however using intraday data,
> > >
> > > regards, Ed
> > >
> > >
> > > ----- Original Message -----
> > > From: Mike
> > > To: amibroker@xxxxxxxxxxxxxxx
> > > Sent: Thursday, January 29, 2009 10:32 PM
> > > Subject: [amibroker] Re: Sell and Buy on different days
> > >
> > >
> > > Ha ha.
> > >
> > > Just goes to show how people can get tunnel vision sometimes.
> > Since I
> > > do a lot of custom backtester code, I immediately suggested
> > filtering
> > > at that level.
> > >
> > > But, your suggestion of a random value for PositionScore
> directly
> > > would be far easier and less prone to coding error.
> > >
> > > Mike
> > >
> > > --- In amibroker@xxxxxxxxxxxxxxx, "Edward Pottasch"
> <empottasch@>
> > > wrote:
> > > >
> > > > you are right on this Mike. Testing a system like this
using a
> > > random positionscore is a good indication if it can be made
into
> > a
> > > system that can be used in the practice. Andy has an idea
that
> is
> > > tough to execute but not impossible in my opinion,
> > > >
> > > > regards, Ed
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > ----- Original Message -----
> > > > From: Mike
> > > > To: amibroker@xxxxxxxxxxxxxxx
> > > > Sent: Thursday, January 29, 2009 8:37 PM
> > > > Subject: [amibroker] Re: Sell and Buy on different days
> > > >
> > > >
> > > > Andy,
> > > >
> > > > Use caution when backtesting EOD strategies where there are
> > more
> > > > signals than there are funds or positions to be filled;
> > > >
> > > > If your strategy is to buy OCA, what logic are you putting
in
> > > place to
> > > > determine which symbol to buy when multiple symbols hit
your
> > limit
> > > > order on the same bar?
> > > >
> > > > Since you are using EOD data, you have no idea which symbol
> > would
> > > have
> > > > hit the limit order first. You only know that x of y
symbols
> > hit
> > > the
> > > > limit order on that day.
> > > >
> > > > AmiBroker will just select the first in the list
> > (alphabetically?
> > > ). As
> > > > such, your backtest results will be heavily biased in favor
of
> > > that
> > > > ordering and will not reflect live trading results.
> > > >
> > > > Generally, PositionScore can be used to influence ordering.
> > But,
> > > an
> > > > OCA approach by definition does not follow PositionScore.
> > > >
> > > > So, you might want to modify your custom backtester code to
> > > randomly
> > > > select from the available signals and set the remaining
ones
> to
> > > > PosSize 0 in order to override the default prioritization.
> Then
> > > run
> > > > your backtest many times and take the average of the
results
> as
> > a
> > > best
> > > > guess estimate (i.e. Monte Carlo Permutations)
> > > >
> > > > Mike
> > > >
> > > > --- In amibroker@xxxxxxxxxxxxxxx, Andrew Senft <senft@>
wrote:
> > > > >
> > > > > Hey Ed,
> > > > >
> > > > > Thank you so much for the code on the Amibroker Yahoo
group
> > > board!
> > > > It
> > > > > seems to be working from what I've seen so far. I'm doing
an
> > > > > optimization on that particular code (your first code)
right
> > > now.
> > > > >
> > > > > The second code (the one from your email) didn't work.
That
> > is,
> > > > there
> > > > > were sales of one stock and buy of another stock on the
same
> > > day.
> > > > Not
> > > > > sure what your code was doing but it gave a lot bigger
> > profits
> > > using
> > > > the
> > > > > backtester. Could you comment on this please?
> > > > >
> > > > > Mind you that this is my first attempt to writing code
for
> > any
> > > stock
> > > > > type software. I'm still using the 30 day free trial of
the
> > > > Amibroker
> > > > > software but I think that I'm getting closer as I'm
chugging
> > > along.
> > > > >
> > > > > My agenda is to use this on a basket of ETF's. Perhaps 10
to
> > 20
> > > > or
> > > > > so. Not sure how many I need since the 30 day trail
> backtests
> > up
> > > > to a
> > > > > basket of 5 stocks. My idea is to place the possible
stock
> > > trades
> > > > > using the whole basket of ETF stocks at night for the
next
> > > trading
> > > > > session. I have an IB account so I figure I could use an
OCA
> > > limit
> > > > > order. Basically whenever a trade gets hit first (meets
the
> > > limit
> > > > price
> > > > > level), it trades. The other possible trades all get
> canceled
> > > right
> > > > > away. So one trade actually goes through for the day.
> > > > >
> > > > > BTW, I like ETF's because the drawdowns are not as
scary....
> > > okay,
> > > > > usually not as scary. Ha! I've been backtesting with:
> > > > >
> > > > > QQQQ, DIA, SPY, MDY, IWM
> > > > >
> > > > > Thank you again!
> > > > >
> > > > > Andy
> > > > >
> > > > > Edward Pottasch wrote:
> > > > > >
> > > > > > Andy,
> > > > > >
> > > > > > I have sent an alternative solution to your private
Email.
> > Let
> > > me
> > > > know
> > > > > > if you received it.
> > > > > >
> > > > > > Ed
> > > > > >
> > > > > >
> > > > > >
> > > > > > ----- Original Message -----
> > > > > > *From:* Andy <mailto:senft@>
> > > > > > *To:* amibroker@xxxxxxxxxxxxxxx
> > > > <mailto:amibroker@xxxxxxxxxxxxxxx>
> > > > > > *Sent:* Thursday, January 29, 2009 12:40 PM
> > > > > > *Subject:* [amibroker] Re: Sell and Buy on different
days
> > > > > >
> > > > > > This is got to be a very simple task but unfortunately
> > > > AmiBroker told
> > > > > > me that I would have to write Backtester Interface code
> for
> > > > this. I'm
> > > > > > sure this has been done a million times. Anyone have
> sample
> > > > code?
> > > > > > I'm using EOD data to trade one stock at a time from a
> > basket
> > > > of
> > > > > > stocks. The problem is that a selling of a stock can
occur
> > on
> > > > the
> > > > > > same day as a buy of *another* stock. Of course the
> problem
> > is
> > > > that
> > > > > > the sell trade can occur after the buy trade.
> > > > > >
> > > > > > --- In amibroker@xxxxxxxxxxxxxxx
> > > > > > <mailto:amibroker%40yahoogroups.com>, "Andy" <senft@>
> wrote:
> > > > > > >
> > > > > > > How do I fix the below code so it doesn't buy a
> different
> > > > stock on a
> > > > > > > sell day?
> > > > > > >
> > > > > > > ------------------------------------------------------
--
> > > > > > > // Backtester Options
> > > > > > > SetOption("MaxOpenPositions", 1 );
> > > > > > > SetOption("AllowSameBarExit", False);
> > > > > > >
> > > > > > > // Optimization numbers
> > > > > > > BuyPeriod = Optimize("BuyPeriod",16,10,20,2);
> > > > > > > BuyFactor = Optimize("BuyFactor",1.2,0.5,1.5,.1);
> > > > > > > SellPeriod = Optimize("SellPeriod",20,10,20,2);
> > > > > > > SellFactor = Optimize("SellFactor",0.8,0.5,1.5,.1);
> > > > > > >
> > > > > > > // ATR formulas
> > > > > > > TodaysBuyTarget = High - BuyFactor * ATR(BuyPeriod);
> > > > > > > YesterdaysBuyTarget = Ref(High,-1) - BuyFactor *
> > > > > > Ref(ATR(BuyPeriod),-1);
> > > > > > > YesterdaysSellTarget = Ref(Low,-1) + SellFactor *
> > > > > > Ref(ATR(SellPeriod),-1);
> > > > > > >
> > > > > > > // Buy/Sell signals and prices
> > > > > > > Buy = YesterdaysBuyTarget > Low;
> > > > > > > BuyPrice = IIf(YesterdaysBuyTarget > Open, Open,
> > > > > > YesterdaysBuyTarget);
> > > > > > > Sell = YesterdaysSellTarget < High;
> > > > > > > SellPrice = IIf(YesterdaysSellTarget < Open, Open,
> > > > > > YesterdaysSellTarget);
> > > > > > > Buy = ExRem(Buy,Sell);
> > > > > > > Sell = ExRem(Sell,Buy);
> > > > > > >
> > > > > >
> > > > > >
> > > > > > --------------------------------------------------------
--
> > > > ------
> > > > > >
> > > > > >
> > > > > > No virus found in this incoming message.
> > > > > > Checked by AVG - http://www.avg.com
> > > > > > Version: 8.0.176 / Virus Database: 270.10.15/1921 -
> Release
> > > Date:
> > > > 1/28/2009 6:37 AM
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
------------------------------------
**** IMPORTANT ****
This group is for the discussion between users only.
This is *NOT* technical support channel.
*********************
TO GET TECHNICAL 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/
|