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

RE: [amibroker] Entry's , exits , stops



PureBytes Links

Trading Reference Links




Isn't 
it   /*   that kills the line because the other end doesn't 
say */
<FONT face=Arial color=#0000ff 
size=2> 
Try 
This ...
Mr. 
Valley
<FONT face=Arial color=#0000ff 
size=2> 

/*Search routine to Find a Crossover Point */<FONT 
size=1>
////////////////////////////////////////////////////////////////////////////////////////////
// An all purpose routine to find the price 
// necessary to move an indicator to a GOAL.
//
// This should work for virtually any indicator,
// built in or otherwise. It's demonstrated 
// here using RSI & BBand's ...
//
// Note: It will appear to use future quotes
// because of the down shifting of the
// price array, but obviously it can't
// "know" tomorrows price. There's 
// probably a way to rectify this but 
// I was more concerned with the rest 
// of the process.
//
// The maximum iterations have arbitrarily been 
// set to 200 which is undoubtedly overkill 
// as I've yet to see anything take 200 even
// when tolerance was set to 0 on datastreams 
// with very high prices.
//
// For real usage the saving of i in j and the
// accuracy calculation can be tossed as they 
// were only put in for demonstration purposes 
//
// ***********************************************
//
// This Routine requires the following things
//
// P0 = A price array or synthetic
//
// Goal = The goal value of the indicator
//
// Acc = An accuracy level for the calculations
//
// Set this to the order of magnitude 
// that you want. For example if you want 
// accuracy in calculated price to within 
// 0.01 then set it 0.01. It can even 
// be set to 0 which will force AB to 
// calculate until it can't find any 
// further improvements (Usually between
// 150-170 iterations) but this is semi
// useless as improvements relative to 
// price granularity have long since 
// been gone by.
//
// The lower you set it the longer it 
// will take but it's pretty quick 
// (Usually between 15-30 iterations) 
// unless you set it at 0.
// 
// ***********************************************
//
// Note: Some goals are virtually unattainable on
// the next bar, especially on the downside
// as they would require a negative price
// which is what this routine will show if
// that is what is required.
//
// ***********************************************
P0 = C;
Acc = 0.0001;
LVBI = LastValue<FONT 
size=1>(BarIndex());
Mult = 1<FONT 
size=1>;
// ***********************************************
// Shift Price up by n orders of magnitude to make 
// it >= 1. This is useful to increase 
// accuracy on very low priced datastreams 
// such as the JY.
// ***********************************************<FONT 
color=#800000 size=1>
for (i = <FONT color=#ff00ff 
size=1>0; i < <FONT color=#ff00ff 
size=1>10; i++)
{ 
if (P0[LVBI] 
>= 1) 
i = 99; 
else 
Mult = Mult * 10; 
} 
//////////////////////////////////////////////////////////////////////////////////////////<FONT 
size=1>
P1 = Ref(P0, 
1) * Mult;
UpDn = 100 * 
P1[LVBI];
for (i = <FONT color=#ff00ff 
size=1>0; i < <FONT color=#ff00ff 
size=1>200; i++)
{
// An example for finding price associated with the next bars BBandTop
//
//////////////////////////////////////////////////////////////////////////////////////////
// Put whatever indicator you want to goal seek here based on 
P1
//////////////////////////////////////////////////////////////////////////////////////////<FONT 
size=1>
Calc = P1;
//////////////////////////////////////////////////////////////////////////////////////////
// Put whatever you want for the goal here ...
//
// The reason for putting it in the loop is because sometimes the goal is 
price 
// oriented and will need to be recalculated on each iteration.
//////////////////////////////////////////////////////////////////////////////////////////<FONT 
size=1>
Goal = LastValue<FONT 
size=1>(BBandBot(P1, 
14, <FONT 
color=#ff00ff size=1>2));<FONT color=#008000 
size=1>
//////////////////////////////////////////////////////////////////////////////////////////<FONT 
size=1>
 
// An example for finding price associated with the next bars RSI value of 
65
//
//////////////////////////////////////////////////////////////////////////////////////////<FONT 
size=1>
// Put whatever indicator you want to goal seek here based on P1
//////////////////////////////////////////////////////////////////////////////////////////
// Calc = RSIa(P1, 14);
//////////////////////////////////////////////////////////////////////////////////////////
// Put whatever you want for the goal here ...
//
// The reason for putting it in the loop is because sometimes the goal is 
price 
// oriented and will need to be recalculated on each iteration.
//////////////////////////////////////////////////////////////////////////////////////////
// Goal = 65;
//////////////////////////////////////////////////////////////////////////////////////////
/* */
if (Calc[LVBI] 
< Goal)
P1[LVBI] = P1[LVBI] + UpDn;
else
P1[LVBI] = P1[LVBI] - UpDn;
UpDn = UpDn / 2;
if (UpDn <= 
Acc)
{
j = i;
i = 99999;
}
}
Accuracy = 100 * 
(abs(Goal - Calc) / 
Goal);
Filter = BarIndex() 
== LVBI;
AddColumn(Mult, <FONT color=#ff00ff 
size=1>"Multiplier", <FONT color=#ff00ff 
size=1>1.0);
AddColumn(Calc[LVBI - <FONT color=#ff00ff 
size=1>1] / Mult,"Curr Ind 
Val", 1.9<FONT 
size=1>);
AddColumn(Goal / Mult, <FONT color=#ff00ff 
size=1>"Goal Ind Val", <FONT color=#ff00ff 
size=1>1.9);
AddColumn(Calc[LVBI] / Mult,<FONT color=#ff00ff 
size=1>"Calc Ind Val", <FONT color=#ff00ff 
size=1>1.9);
AddColumn(j, <FONT color=#ff00ff 
size=1>"Iterations", <FONT color=#ff00ff 
size=1>1.0);
AddColumn(Accuracy, <FONT color=#ff00ff 
size=1>"Accuray (%)", <FONT color=#ff00ff 
size=1>1.9);
AddColumn(<FONT color=#0000ff 
size=1>Ref(P1, -<FONT color=#ff00ff 
size=1>1) / Mult, "Todays 
Price", 1.9<FONT 
size=1>);
AddColumn(P1 / Mult, <FONT color=#ff00ff 
size=1>"Goal Price", <FONT color=#ff00ff 
size=1>1.9);

  <FONT face=Tahoma 
  size=2>-----Original Message-----From: dingo 
  [mailto:dingo@xxxxxxxxxxxx]Sent: Saturday, January 31, 2004 12:38 
  PMTo: amibroker@xxxxxxxxxxxxxxxSubject: RE: [amibroker] 
  Re: Search Routine for Crossover Point -- EMA Version
  <FONT face=Arial 
  color=#0000ff size=2>Ron - the code has been mangled by Yahoo.  
  
  <FONT face=Arial 
  color=#0000ff size=2> 
  <FONT face=Arial 
  color=#0000ff size=2>That's what's causing your problems if you just copied 
  and pasted it without trying to straigthen out the line 
  wraps.
  <FONT face=Arial 
  color=#0000ff size=2> 
  <FONT face=Arial 
  color=#0000ff size=2>Its not an easy thing to do since Fred used such long "*' 
  lines.
  <FONT face=Arial 
  color=#0000ff size=2> 
  <FONT face=Arial 
  color=#0000ff size=2>d
  
  
  From: Ron Morton 
  [mailto:mortonr003@xxxxxxxxxxxxx] Sent: Saturday, January 31, 2004 
  2:07 PMTo: amibroker@xxxxxxxxxxxxxxxSubject: Re: 
  [amibroker] Re: Search Routine for Crossover Point -- EMA 
  Version
  
  All I did was copy the code from the messages 
  here and put it into amibroker.  No changes were made to the code, as 
  soon as I hit apply I would get the syntax error message.  I highlighted 
  in red on the code on this page where there errors occurred.
  ron
  <BLOCKQUOTE 
  >
    ----- Original Message ----- 
    <DIV 
    >From: 
    <A title=jcasavant@xxxxxxxxxxx 
    href="">Jayson 
    To: <A title=amibroker@xxxxxxxxxxxxxxx 
    href="">amibroker@xxxxxxxxxxxxxxx 
    Sent: Saturday, January 31, 2004 8:52 
    AM
    Subject: RE: [amibroker] Re: Search 
    Routine for Crossover Point -- EMA Version
    
    <FONT face=Arial color=#0000ff 
    size=2>Impossible to say with out seeing the code..... sounds like you are 
    calling calc and goal prior to defining them..
     
    Regards, 
    Jayson 
    <FONT face=Tahoma 
    size=2>-----Original Message-----From: Ron Morton 
    [mailto:mortonr003@xxxxxxxxxxxxx]Sent: Saturday, January 31, 2004 
    1:41 PMTo: <A 
    href="">amibroker@xxxxxxxxxxxxxxxSubject: 
    Re: [amibroker] Re: Search Routine for Crossover Point -- EMA 
    Version
    I tried running the code here as it looks like 
    something that I've been searching for for a while.  When I tried to 
    run it I keep getting syntax error 23 whenever the words calc or goal come 
    up.  Could someone explain to me how to go about fixing this?  The 
    specific areas where this occurs are Calc=P1; and <FONT face="Courier New" 
    size=3>Goal = LastValue(BBandBot(P1, 14, 2)); 
    Thank you,
    Ron
    <BLOCKQUOTE 
    >
      ----- Original Message ----- 
      <DIV 
      >From: 
      dingo 
      
      To: <A 
      title=amibroker@xxxxxxxxxxxxxxx 
      href="">amibroker@xxxxxxxxxxxxxxx 
      
      Sent: Saturday, January 31, 2004 5:41 
      AM
      Subject: RE: [amibroker] Re: Search 
      Routine for Crossover Point -- EMA Version
      
      <FONT face=Arial 
      color=#0000ff size=2>Take a closer look at what Fred did.  He shifted 
      the array back by 1 bar so that it would plot into the 
      future by one bar. It just doesn't use the space that is non-addressable 
      in the chart area.  Its the only solution right now and it can be 
      adapted to  what you want by shifting the array by as many bars as 
      you need.
      <FONT face=Arial 
      color=#0000ff size=2> 
      <FONT face=Arial 
      color=#0000ff size=2>d
      
      
      From: pcwinch 
      [mailto:pcwinch@xxxxxxxxxxxxxxx] Sent: Saturday, January 31, 
      2004 9:51 AMTo: amibroker@xxxxxxxxxxxxxxxSubject: 
      Re: [amibroker] Re: Search Routine for Crossover Point -- EMA 
      Version
      
      Gentlemen,
       
      This is starting to get interesting 
      especially of someone can figure out how we can extend this into the 
      whitespace area beyond the latest data.
       
      For example, use your favourite indicator(s) 
      and apply projected regression channel to the prices.  
       
      Qu: A.what happens to your indicator when 
      prices are at the mid and extremes of the next bar..and the next bar, then 
      
       
      B. use the formula below to see what happens 
      when the indicator is 1. extrapolated , 2. the same or 3. (2*same - 
      extrapolated)
       
      What would be interesting is what happens to 
      all the indicators and the prices in the channel when this is applied to 
      one indicator, and how the indicators look in different time 
      frames.  What does it mean to the setting of stops and exits 
      philosophy is also an interesting outcome.
       
      Any comments?
       
      Peter
       
      ----- Original Message ----- 
      <BLOCKQUOTE 
      >
        <DIV 
        >From: 
        <A title=ftonetti@xxxxxxxxxxxxx 
        href="">Fred 
        To: <A 
        title=amibroker@xxxxxxxxxxxxxxx 
        href="">amibroker@xxxxxxxxxxxxxxx 
        
        Sent: Saturday, January 31, 2004 
        3:41 AM
        Subject: [amibroker] Re: Search 
        Routine for Crossover Point -- EMA Version
        Is there any reason to limit this to an xMA when this 
        can easily be done for any built in AB indicator or any custom AFL 
        "indicator" that one cares to write 
        ?//      
        *********************************************** 
        ////      An all purpose routine to 
        find the price //      
              necessary to move an indicator to a 
        GOAL.////      This should work for 
        virtually any indicator,//      
              built in or otherwise.  It's 
        demonstrated //      
              here using RSI & BBand's 
        ...////      
        Note:      It will appear to use future 
        quotes//      
                    
              because of the down shifting of 
        the//            
                    price 
        array, but obviously it can't//      
                    
              "know" tomorrows price.  There's 
        //            
                    probably a 
        way to rectify this but //      
                    
              I was more concerned with the rest 
        //            
                    of the 
        process.////      The maximum 
        iterations have arbitrarily been //      
              set to 200 which is undoubtedly overkill 
        //            as 
        I've yet to see anything take 200 
        even//            
        when tolerance was set to 0 on datastreams 
        //            with 
        very high prices.////      For real 
        usage the saving of i in j and the//      
              accuracy calculation can be tossed as 
        they //            
        were only put in for demonstration purposes 
        ////      
        ***********************************************////      
        This Routine requires the following 
        things////      
        P0            = A 
        price array or synthetic////      
        Goal      = The goal value of the 
        indicator////      
        Acc            = An 
        accuracy level for the 
        calculations////      
                      Set 
        this to the order of magnitude //      
                      
        that you want.  For example if you want 
        //            
                accuracy in calculated price to 
        within //      
                      
        0.01 then set it 0.01.  It can even 
        //            
                be set to 0 which will force AB to 
        //            
                calculate until it can't find any 
        //            
                further improvements (Usually 
        between//      
                      
        150-170 iterations) but this is semi//      
                      
        useless as improvements relative to //      
                      
        price granularity have long since //      
                      
        been gone by.////      
                      The 
        lower you set it the longer it //      
                      
        will take but it's pretty quick //      
                      
        (Usually between 15-30 iterations) //      
                      
        unless you set it at 0.//      
                    
                    
        //      
        ***********************************************////      
        Note:      Some goals are virtually 
        unattainable on//      
                    the next 
        bar, especially on the downside//      
                    as they 
        would require a negative price//      
                    which is 
        what this routine will show if//      
                    that is 
        what is required.////      
        ***********************************************P0   = 
        C;Acc  = 0.0001;LVBI = 
        LastValue(BarIndex());Mult = 
        1;//      
        ***********************************************//      
        Shift Price up by n orders of magnitude to make 
        //            it 
        >= 1.  This is useful to increase 
        //            
        accuracy on very low priced datastreams 
        //            such 
        as the JY.//      
        ***********************************************for (i = 0; i < 
        10; i++){       if (P0[LVBI] >= 1) 
                    i = 
        99;       else 
                    Mult = 
        Mult * 10; } // 
        ***********************************************P1   = 
        Ref(P0, 1) * Mult;UpDn = 100 * P1[LVBI];for (i = 0; i < 
        200; i++){//      An example for 
        finding price associated with the next bars 
        BBandTop////      
        *****************************************************************************//      
        Put whatever indicator you want to goal seek here based on 
        P1//      
        *****************************************************************************      
        Calc = P1;    Syntax error 
        here//      
        *****************************************************************************//      
        Put whatever you want for the goal here 
        ...////      The reason for putting it 
        in the loop is because sometimes the goal is price 
        //            
        oriented and will need to be recalculated on each 
        iteration.//      
        *****************************************************************************      
        Goal = LastValue(BBandBot(P1, 14, 
        2));//      
        *****************************************************************************//      
        An example for finding price associated with the next bars RSI value 
        of 65////      
        *****************************************************************************//      
        Put whatever indicator you want to goal seek here based on 
        P1//      
        *****************************************************************************//      
        Calc = RSIa(P1, 14);    Syntax error 
        here//      
        *****************************************************************************//      
        Put whatever you want for the goal here 
        ...////      The reason for putting it 
        in the loop is because sometimes the goal is price 
        //            
        oriented and will need to be recalculated on each 
        iteration.//      
        *****************************************************************************//      
        Goal = 65;//      
        *****************************************************************************      
        if (Calc[LVBI] < Goal)      
              P1[LVBI] = P1[LVBI] + 
        UpDn;      
        else            
        P1[LVBI] = P1[LVBI] - UpDn;      UpDn = 
        UpDn / 2;      if (UpDn <= 
        Acc)      
        {            j = 
        i;            i = 
        99999;      }}Accuracy = 100 * 
        (abs(Goal - Calc) / Goal);Filter = BarIndex() == 
        LVBI;AddColumn(Mult,      
                    
                    
              "Multiplier",   
        1.0);AddColumn(Calc[LVBI - 1] / Mult,      
        "Curr Ind Val", 1.9);AddColumn(Goal / 
        Mult,            
                    "Goal Ind 
        Val", 1.9);AddColumn(Calc[LVBI] / 
        Mult,            "Calc 
        Ind Val", 1.9);AddColumn(j,      
                    
                    
                    
        "Iterations",   1.0);AddColumn(Accuracy,   
                    
                    "Accuray 
        (%)",  1.9);AddColumn(Ref(P1, -1) / 
        Mult,            
        "Todays Price", 1.9);AddColumn(P1 / 
        Mult,            
                    
              "Goal Price",   
        1.9);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@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@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 Sponsor


  ADVERTISEMENT 









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.