PureBytes Links
Trading Reference Links
|
Steve, Dimitris,
thanks for your help and the useful tips.
regards, Ed
--- In amibroker@xxxxxxxxxxxxxxx, "DIMITRIS TSOKAKIS" <TSOKAKIS@xxxx>
wrote:
> --- In amibroker@xxxxxxxxxxxxxxx, "ed2000nl" <pablito@xxxx> wrote:
> > thanks Steve,
> >
> > but I basicly understand what ValueWhen() does. In principle
> ValueWhen
> > (Buy, Open) is the same as Open, or it returns the values of the
> Open
> > array at the positions where the Buy array is true.
>
> Ed,
> It is not exactly this.
> The function
> X=ValueWhen(Buy,Open);
> is equal to the Open price on the"Buy" day but it holds the same
> price till the next Buy occurs [may be months later !!]
> You will always find helpful the respective graph.
>
> Buy=Cross(RSI(),35);PlotShapes(shapeUpArrow*Buy,colorGreen);
> Sell=Cross(RSI(),60);PlotShapes(shapeDownArrow*Sell,colorRed);
> Plot(C,"",1,64);
> X=ValueWhen(Buy,Open);
> Plot(X,"",colorWhite,1);
>
> The white line is the ValueWhen(Buy,Open) : It is equal to the
> last "Buy"day Open, until the next Buy appears.
> Example:INTC was Buy on Jan2,2003. The OpenPrice for that day was
16.
> X was equal to 16 for the next day and for ther next 6 months,
> because no new Buy appeared.
> Valuewhen is a type of "memory", it keeps the value of the event,
> until the new event appears.
> ValueWhen(COND,ARRAY) is identical to AMA(ARRAY,COND) and, IMO, it
is
> very useful AFL function.
> Dimitris Tsokakis
>
>
> >
> > The point I did not understand is with the delay. Apparently the
> Buy
> > array remains unchanged if I set the buydelay to 1. I would have
> > thought that the positions of the "1" numbers inside the buy
array
> > would shift 1 position to the right.
> >
> > If this were so then I could have used ValueWhen(Buy,Open) even
> > though I set the buydelay to 1.
> >
> > I must admit that I do not understand the definition of ValueWhen
> in
> > the help files with respect to the third parameter n: "n-th most
> > recent occurence". So I wonder if I still could use ValueWhen as
I
> > did originally if I put some value there for n .....
> >
> > I have a bit of a hard time learning AFL. I have to find out how
I
> > can work with it interactively in order to find out what I am
doing
> > every step op the way.
> >
> > regards, Ed
> >
> >
> >
> > --- In amibroker@xxxxxxxxxxxxxxx, "Steve Dugas" <sjdugas@xxxx>
> wrote:
> > > Hi Ed,
> > >
> > > You can look at Valuewhen() like this:
> > > Variable = valuewhen( A, B );
> > > is the same as saying
> > > Variable = the VALUE of B WHEN A occurs;
> > >
> > > So...
> > >
> > > BuyPrice = ValueWhen(Buy, Open);
> > > is the same as saying
> > > BuyPrice = the VALUE of open WHEN a signal occurs in the "Buy"
> > array (i.e. - no delay).
> > >
> > > Steve
> > >
> > >
> > > ----- Original Message -----
> > > From: ed2000nl
> > > To: amibroker@xxxxxxxxxxxxxxx
> > > Sent: Monday, September 29, 2003 5:35 PM
> > > Subject: [amibroker] Re: help with trading system
> > >
> > >
> > > OK thanks. I see I have a lot more studying and playing ahead
> of
> > me.
> > > I'm not sure if I understand the bit about ValueWhen()
> completely
> > but
> > > for now I will not use it if I also use SetTradeDelays().
> > >
> > > thanks and
> > > regards, Ed
> > >
> > >
> > > --- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko"
> > <amibroker@xxxx>
> > > wrote:
> > > > Hello,
> > > >
> > > > > thanks. I found the proper buy and sell signals. Still I
am
> > > > > puzzled ... my super simple code does not give proper
> > results. If
> > > I
> > > > > execute this code on CTMI I get 3 trades. However, it not
> > always
> > > buys
> > > > > at the open like I tell it to. Do you agree when looking
at
> > the
> > > code
> > > > > below that it *always* should buy at the open?
> > > >
> > > > No. To buy always at open you should write:
> > > >
> > > > BuyPrice = Open;
> > > >
> > > > (isn't this obvious ?)
> > > >
> > > > If you write
> > > >
> > > > BuyPrice = ValueWhen(Buy, Open);
> > > >
> > > > and you SET DELAY > 0
> > > > this code actually attempts to buy at OPEN price WHEN NON
> > DELAYED
> > > buy
> > > > occurred. Since trading is delayed as per your setting the
> open
> > of
> > > > N-days before may NOT fit into High-LOW range of the bar
when
> > > > ACTUAL TRADE takes place so AmiBroker must readjust it to
> > > > fit into H-L range (what ever is nearer your desired price).
> > > >
> > > >
> > > > Hope this helps.
> > > >
> > > > Best regards,
> > > > Tomasz Janeczko
> > > > amibroker.com
> > > > ----- Original Message -----
> > > > From: "ed2000nl" <pablito@xxxx>
> > > > To: <amibroker@xxxxxxxxxxxxxxx>
> > > > Sent: Monday, September 29, 2003 10:47 PM
> > > > Subject: [amibroker] Re: help with trading system
> > > >
> > > >
> > > > > Jayson,
> > > > >
> > > >
> > > > > How can this be explained?
> > > > >
> > > > > regards, Ed
> > > > >
> > > > > //----------------------------------------------------
> > > > > // overide default settings, set buy delay at 1 bar
> > > > > SetTradeDelays(1,0,0,0);
> > > > >
> > > > > // make a simple trading system
> > > > > Buy = Cross(RSI(),30);
> > > > >
> > > > > // define the BuyPrice
> > > > > BuyPrice = ValueWhen( Buy, Open);
> > > > >
> > > > > // define the sell condition
> > > > > SellCond1 = C > BuyPrice * 1.02;
> > > > > SellCond2 = C < BuyPrice * 0.96;
> > > > > SellCond3 = Cross( BarsSince(Buy), 5 );
> > > > >
> > > > > Sell = SellCond1 OR SellCond2 OR SellCond3;
> > > > >
> > > > > // define the SellPrice
> > > > > SellPrice = ValueWhen( Sell, Close);
> > > > >
> > > > > Buy = ExRem(Buy,Sell);
> > > > > Sell = ExRem(Sell,Buy);
> > > > > //----------------------------------------------------
> > > > >
> > > > >
> > > > > backtest:
> > > > >
> > > > > CTMI Long 7/25/2002 15.7500 7/25/2002 16.5900 5.3%
> > > > > 533.33 5.3% 634.921 10000 533.333 1 5.33%
> > > > > CTMI Out 7/25/2002 16.5900 3/14/2003 17.8190 7.4%
> > > > > 0.00 0.0% 0 0 533.333 160 0.00%
> > > > > CTMI Long 3/14/2003 17.8190 3/14/2003 18.5100 3.9%
> > > > > 408.47 3.9% 591.129 10533.3 941.804 1 3.88%
> > > > > CTMI Out 3/14/2003 18.5100 8/22/2003 13.1000 -29.2%
> > > > > 0.00 0.0% 0 0 941.804 112 0.00%
> > > > > CTMI Long 8/22/2003 13.1000 8/26/2003 13.5800 3.7%
> > > > > 400.92 3.7% 835.252 10941.8 1342.72 3 1.22%
> > > > > CTMI Out 8/26/2003 13.5800 9/26/2003 14.0000 3.1%
> > > > > 0.00 0.0% 0 0 1342.72 22 0.00%
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > --- In amibroker@xxxxxxxxxxxxxxx, "Jayson"
<jcasavant@xxxx>
> > wrote:
> > > > > > Are you simply double clicking the trade to plot the
> arrows
> > or
> > > have
> > > > > you
> > > > > > right clicked then chosen "Show actual trades"??
> > > > > >
> > > > > > Try this... create a new indicator with this code.....
> > > > > >
> > > > > >
> > > > > > x = Cross(RSI(),30);
> > > > > > Plot(RSI(),"",5,1);
> > > > > > PlotGrid(30,colorWhite);
> > > > > > Plot(x,"",4,2|styleOwnScale);
> > > > > >
> > > > > > The red lines will show the actual cross. Now run this
> > simple
> > > > > system test...
> > > > > >
> > > > > >
> > > > > > SetTradeDelays(3,0,0,0);
> > > > > > Buy= Cross(RSI(),30);
> > > > > > Sell=Cross(30,RSI());
> > > > > >
> > > > > > Test over enough days to be sure you get a signal. Next
> rt
> > > click a
> > > > > trade and
> > > > > > choose "Show actual trade". I believe you will see the
> > arrow to
> > > be
> > > > > 3 days
> > > > > > after the red line cross..
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > Regards,
> > > > > > Jayson
> > > > > is subject to the Yahoo! Terms of Service.
> > > > >
> > > > >
> > > > >
> > > > > 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
> > > http://docs.yahoo.com/info/terms/
> > > > >
> > > > >
> > > > >
> > >
> > >
> > > 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 ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/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/
|