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

[amibroker] Re: Pivots, Pivots, Pivots........ (explore code)



PureBytes Links

Trading Reference Links




thank 
you I got that one. What I really want to do: 
once 
my portfolio has dropped below a predefined percentage, say 5%, I would like to 
sell the stock with the most drawdown, not sure how that can be 
done?
For 
starter
<SPAN 
class=633555202-27012004>---------------
<SPAN 
class=633555202-27012004>buy=cross(macd(),signal());
<SPAN 
class=633555202-27012004>sell=cross(signal(),macd());
<SPAN 
class=633555202-27012004>buy=exrem(buy,sell); 
sell=exrem(sell,buy);
<SPAN 
class=633555202-27012004>positionscore=random();
<SPAN 
class=633555202-27012004>eq=Foreign<FONT 
color=#000000 size=2>("~~~EQUITY"<FONT 
color=#000000 size=2>, "C"<FONT 
size=2>);dr=(<FONT 
face="Times New Roman">eq - <FONT color=#0000ff 
size=2>Highest<FONT color=#000000 
size=2>(eq))/highest(eq);
sell=iif(dr<-0.05,"choose 
the stock with the highest drawdown",sell);
<SPAN 
class=633555202-27012004>-------------------------------------------
Firstly, Can I use the ~~equity 
composite dynamically as it is written and rewritten, (I cant see why i cant i 
am just reading it).
Secondly, is it possilbe the 
find out which stock in the portfolio has the highest drawdown at the 
time?
 
Thanks for your 
help.
/Paul.

  
  <FONT 
  face=Tahoma size=2>-----Original Message-----From: Tomasz Janeczko 
  [mailto:amibroker@xxxxxx] Sent: Tuesday, 27 January 2004 2:17 
  AMTo: amibroker@xxxxxxxxxxxxxxxSubject: Re: [amibroker] 
  Re: Backtest using equity curve
  Hello,
   
  One correction. Portfolio equity is definitelly NOT the sum 
  of individual backtest equities in general case.
  This is so because in portfolio mode some trades can be 
  dropped due to insufficient funds.
   
  Best regards,Tomasz Janeczkoamibroker.com
  <BLOCKQUOTE 
  >
    ----- Original Message ----- 
    <DIV 
    >From: 
    Herman 
    vandenBergen 
    To: <A title=amibroker@xxxxxxxxxxxxxxx 
    href="">amibroker@xxxxxxxxxxxxxxx 
    Sent: Monday, January 26, 2004 2:16 
    PM
    Subject: RE: [amibroker] Re: Backtest 
    using equity curve
    
    <FONT face=Arial color=#0000ff 
    size=2>A single Backtest of a single stock's equity is 
    Equity(0) or Equity(1), see Help for more on the 0 and 1 
    arguments.
    <FONT face=Arial color=#0000ff 
    size=2>If you Backtest a series of stocks the equity() will take on a 
    different value for each new stock that is processed. These equities can be 
    summed using an AddToComposite(). This is more or less what happens when you 
    use the portfolio tester and you can access the final portfolio equities 
    using Foreign(), like with this code (originating from TJ I think) that 
    shows how to retrieve the Portfolio Equity. The "~~~EQUITY" composite is 
    created by the portfolio backtest:
    // TJ's Equity 
    Plotseq = Foreign<FONT 
    size=2>("~~~EQUITY", 
    "C");cash = 
    Foreign(<FONT 
    color=#ff00ff size=2>"~~~EQUITY", <FONT 
    color=#ff00ff size=2>"L");dr = eq - <FONT 
    color=#0000ff size=2>Highest(eq);bslh = <FONT 
    color=#0000ff size=2>HighestBars<FONT 
    size=2>(eq);GraphZOrder=1<FONT 
    size=2>;Plot(eq, 
    "Portfolio Equity", 
    colorBlue, styleLine );<FONT face="Microsoft Sans Serif" 
    color=#008000 size=2>//Plot(cash, "Cash", 
    colorGreen, styleArea );<FONT color=#0000ff 
    size=2>Plot(dr, <FONT color=#ff00ff 
    size=2>"Drawdown", colorDarkRed, styleArea 
    );Plot( 
    Foreign(<FONT 
    color=#ff00ff size=2>"~~~EQUITY", <FONT 
    color=#ff00ff size=2>"O"), <FONT color=#ff00ff 
    size=2>"Long only", colorGreen );<FONT 
    color=#0000ff size=2>Plot( <FONT color=#0000ff 
    size=2>Foreign(<FONT color=#ff00ff 
    size=2>"~~~EQUITY", <FONT color=#ff00ff 
    size=2>"H"), "Short 
    only", colorRed );<FONT 
    face="Microsoft Sans Serif" color=#008000 size=2>//<FONT 
    color=#008000 size=2>Plot(bslh, "#bars since last high", colorDarkYellow, 
    styleLine | styleOwnScale, 0, 10 * LastValue( Highest( bslh ) ) 
    );islastbar = <FONT color=#0000ff 
    size=2>Status(<FONT color=#ff00ff 
    size=2>"lastbarintest");isfirstbar = <FONT 
    color=#0000ff size=2>Status(<FONT color=#ff00ff 
    size=2>"firstbarintest");bar = <FONT 
    color=#0000ff size=2>BarIndex();firstbar = 
    LastValue( 
    ValueWhen( isfirstbar, 
    bar ) );lastbar = <FONT color=#0000ff 
    size=2>LastValue( <FONT color=#0000ff 
    size=2>ValueWhen( islastbar, bar ) );al = 
    LastValue( 
    ValueWhen( islastbar, 
    LinRegSlope( eq, 
    Lastbar - firstbar ) ) );bl = <FONT color=#0000ff 
    size=2>LastValue( <FONT color=#0000ff 
    size=2>ValueWhen( islastbar, <FONT color=#0000ff 
    size=2>LinRegIntercept( eq, Lastbar - firstbar ) ) 
    );Lr = al * ( BarIndex<FONT 
    size=2>() - firstbar ) + bl;Lr = <FONT color=#0000ff 
    size=2>IIf( bar >= firstbar AND bar <= lastbar , 
    Lr, Null );<FONT face="Microsoft Sans Serif" color=#008000 
    size=2>//Plot( Lr , "Linear Reg", 
    colorRed, styleThick );
    
      <FONT face=Tahoma 
      size=2>-----Original Message-----From: paultsho 
      [mailto:paultsho@xxxxxxxxxxxx]Sent: January 26, 2004 6:14 
      PMTo: amibroker@xxxxxxxxxxxxxxxSubject: [amibroker] 
      Re: Backtest using equity curveI've seen many 
      clever use of equityMy question in regard to the system below is 
      Is E1 the equity of just one stock, or the whole portfolio in 
      backtesting. and if I want to use the equity curve of the whole 
      portfolio, do i have to use the addtocomposite function instead of 
      E1=equity(1);thanks in advance./Paul.--- In 
      amibroker@xxxxxxxxxxxxxxx, "Herman vandenBergen" <psytek@xxxx> 
      wrote:> You can cascade as many systems as you like, even different 
      ones, and use> the Equity from the previous one as a parameter 
      in the next system. I know> this can be done with the old 
      backtester and think it should also work in> the new PF 
      tester.> > // system one code here> E1 = 
      Equity(1);> > // System two code here> Buy = Buy and 
      (some function of E1);> E2 = Equity(1);> > // System 
      three code here> Buy = Buy and (some function of E2);> E3 = 
      Equity(1);> etc.> > You essentially redefine the buy 
      signal as often as needed (afl executes> line after line and 
      never looks back), the last definition will be what> determines 
      your results.> > Herman> >   
      -----Original Message----->   From: Glenn 
      [mailto:glennokb@xxxx]>   Sent: November 12, 2003 1:35 
      PM>   To: amibroker@xxxxxxxxxxxxxxx>   
      Subject: [amibroker] Backtest using equity curve> > 
      >   Hi,> >   I'm was wondering if 
      it is possible in AB to incorporate the equity 
      curve>   of a system within a backtest, using it to test 
      the following:> >   a. No new entries if a closed 
      trade crosses below a moving average of>   the equity 
      curve and re-enter when a closed trade crosses above 
      the>   moving average. Another idea is to use a 
      percentage on the equity curve>   instead of a moving 
      average.> >   b. Using the above also test 
      tightening the actual trailing stop on the>   open 
      trades. ie: if a closed trade crosses below a moving average 
      (or>   whatever) then instead of using a 3 x ATR stop 
      then use a 2 x ATR stop>   on the open 
      trades.> >   Note that the trades in between the 
      exit and entry need to be tracked for>   the 
      re-entry.> >   If this is possible, do you know 
      how to set it up please?> >   Cheers, 
      Glenn> > 
      >         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: <A 
      href="">http://groups.yahoo.com/group/amiquote/messages/)>   
      -------------------------------------------->   Check 
      group FAQ at:> <A 
      href="">http://groups.yahoo.com/group/amibroker/files/groupfaq.html> 
      >   Your use of Yahoo! Groups is subject to the Yahoo! 
      Terms of Service.Send BUG REPORTS to 
      bugs@xxxxxxxxxxxxxSend SUGGESTIONS to 
      suggest@xxxxxxxxxxxxx-----------------------------------------Post 
      AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx (Web page: 
      <A 
      href="">http://groups.yahoo.com/group/amiquote/messages/)--------------------------------------------Check 
      group FAQ at: <A 
      href="">http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
      
      
      Yahoo! Groups Links
      
        To visit your group on the web, go to:<A 
        href="">http://groups.yahoo.com/group/amibroker/  

        To unsubscribe from this group, send an email to:<A 
        href="">amibroker-unsubscribe@xxxxxxxxxxxxxxx  

        Your use of Yahoo! Groups is subject to the <A 
        href="">Yahoo! Terms of Service. 
        Send BUG REPORTS to 
    bugs@xxxxxxxxxxxxxSend SUGGESTIONS to 
    suggest@xxxxxxxxxxxxx-----------------------------------------Post 
    AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx (Web page: 
    <A 
    href="">http://groups.yahoo.com/group/amiquote/messages/)--------------------------------------------Check 
    group FAQ at: <A 
    href="">http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
    
    
    Yahoo! Groups Links
    
      To visit your group on the web, go to:<A 
      href="">http://groups.yahoo.com/group/amibroker/  

      To unsubscribe from this group, send an email to:<A 
      href="">amibroker-unsubscribe@xxxxxxxxxxxxxxx  

      Your use of Yahoo! Groups is subject to the <A 
      href="">Yahoo! Terms of Service. 
    Send BUG REPORTS to 
  bugs@xxxxxxxxxxxxxSend SUGGESTIONS to 
  suggest@xxxxxxxxxxxxx-----------------------------------------Post 
  AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx (Web page: <A 
  href="">http://groups.yahoo.com/group/amiquote/messages/)--------------------------------------------Check 
  group FAQ at: <A 
  href="">http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
  
  
  Yahoo! Groups Links
  
    To visit your group on the web, go to:<A 
    href="">http://groups.yahoo.com/group/amibroker/  

    To unsubscribe from this group, send an email to:<A 
    href="">amibroker-unsubscribe@xxxxxxxxxxxxxxx  

    Your use of Yahoo! Groups is subject to the <A 
    href="">Yahoo! Terms of Service. 
  


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





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 the Yahoo! Terms of Service.