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

[amibroker] JAYSON: Creating IM200 indices


  • To: <amibroker@xxxxxxxxxxxxxxx>
  • Subject: [amibroker] JAYSON: Creating IM200 indices
  • From: "IVA GmbH" <funnybiz@xxxxxx>
  • Date: Sat, 3 May 2003 18:06:09 -0700
  • In-reply-to: <LOBBJMHOIFOLFIPFANHJCEOGEEAA.jcasavant@xxxxxxxxxxxx>

PureBytes Links

Trading Reference Links




Jayson,
 
regarding your kind aswer a while ago, I´d still 
like to use your expertise.
 
A few things still aren´t clear to me:
 
1./don´t I have to divide the composite values 
of open, high, low and close (each) thru the number of symbols computed to 
get an AVERAGE price? Otherwhise, the price of all securities maybe just 
summed up but no AVERAGE price would be computed, right? Can´t I specify 
this in addtocomposite directly instead of having to create a separate 
indicator???????
 
2./ You mentioned data 
holes and recommended to smoothem by dividing by "V". Isnt´that exactly what I´m 
asking at 1./ above?Insn´t there another flaw that we include stocks to our 
composites that have differing lastvalue(cum(1)) values??
 
Take for instance two stocks one of which has 200 
bars and the other has 400 bars of which the composite index is to be 
created.
 
Wouldn´t we then get weird data since the stock 
with only 200 bars would impact on the chart after 200 (actually 
199) days??
 
Shouldn´t we thus check that all the stocks 
included in our composite tickers have the SAME # of bars, i.e. ALL contribute 
to the index EVERY day on the chart? Otherwhise the index chart could jump 
around and create wrong impression similar to what you referred to as data 
holes, right?
 
How could I specify that in my 
addtocomposite()?
 
3./ How could I admit only stocks to my 
indices with an MA(vol,50)>20,000? By putting that in a filter IN 
FRONT of the addtocomposite function or by using and IIF statement 
WITHIN the addtocomposite statement ITSELF??
 
4./ I put the following code in a separate indicator window. Note that I 
used PlotOHLC since I wanted bar charts. 
The weird thing is that I get bar charts but in the tool tip windwo, I get only 
the bars closing price!!! Why is that??? <FONT face="Courier New" 
color=#6600aa>
sym="~"<FONT 
face="Courier New" color=#6600aa>+<FONT face="Courier New" 
color=#0000ff>IndustryID<FONT face="Courier New" 
color=#6600aa>(1<FONT 
face="Courier New" color=#6600aa>);<FONT face="Courier New" 
color=#000000>
C=<FONT 
face="Courier New" color=#0000ff>Foreign<FONT face="Courier New" 
color=#6600aa>(sym,"C"<FONT 
face="Courier New" color=#6600aa>);<FONT face="Courier New" 
color=#000000>
O=<FONT 
face="Courier New" color=#0000ff>Foreign<FONT face="Courier New" 
color=#6600aa>(sym,"o"<FONT 
face="Courier New" color=#6600aa>);<FONT face="Courier New" 
color=#000000>
H=<FONT 
face="Courier New" color=#0000ff>Foreign<FONT face="Courier New" 
color=#6600aa>(sym,"h"<FONT 
face="Courier New" color=#6600aa>);<FONT face="Courier New" 
color=#000000>
L=<FONT 
face="Courier New" color=#0000ff>Foreign<FONT face="Courier New" 
color=#6600aa>(sym,"l"<FONT 
face="Courier New" color=#6600aa>);<FONT face="Courier New" 
color=#000000>
V=<FONT 
face="Courier New" color=#0000ff>Foreign<FONT face="Courier New" 
color=#6600aa>(sym,"V"<FONT 
face="Courier New" color=#6600aa>);

PlotOHLC(<FONT 
face="Courier New" color=#000000>O<FONT face="Courier New" 
color=#6600aa>,<FONT face="Courier New" 
color=#000000>H<FONT face="Courier New" 
color=#6600aa>,<FONT face="Courier New" 
color=#000000>L<FONT face="Courier New" 
color=#6600aa>,<FONT face="Courier New" 
color=#000000>C,<FONT 
face="Courier New" color=#ff00ff>"Group index"<FONT face="Courier New" 
color=#6600aa>,<FONT face="Courier New" 
color=#000000>colorWhite<FONT face="Courier New" 
color=#6600aa>,<FONT face="Courier New" 
color=#000000>styleBar); 

Markus
<BLOCKQUOTE 
>
  ----- Original Message ----- 
  <DIV 
  >From: 
  <A title=jcasavant@xxxxxxxxxxxx 
  href="">Jayson 
  To: <A title=amibroker@xxxxxxxxxxxxxxx 
  href="">amibroker@xxxxxxxxxxxxxxx 
  Sent: Thursday, April 24, 2003 4:04 
  PM
  Subject: RE: [amibroker] Creating IM200 
  indices - JAYSON
  
   
  <SPAN 
  class=678142113-24042003>Markus,
   
  see 
  answers below...
  <SPAN 
  class=678142113-24042003> 
  Hello Jayson,
   
  don´t ya worry!
   
  You´ve already helped me a great 
  deal in understanding the "basix" of 
Addtocomposite.
   
  1./ somehow my indices have been stored in 
  -->markets-->market253 AND group 253. While I 
  understand the latter, I don´t understand the former. Is this a MUST?<FONT 
  color=#0000ff><SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003>I think markets 253 is equivalent to All your stocks 
  and tickers. I am not sure what you are doing but I tend to break that group 
  into watch lists for testing and explorations. For instance you could create a 
  watch list of Nas 100 stocks. This watchlist would contain stocks that reside 
  in the new list AND market 
  253........ 
   
  2./ I used the "x" option for the field 
  code, figuring that would enable me to make a bar chart from it (since OHLC 
  are updated). But this is NOT the case. I get only. No way to produce a bar 
  chart as in HGS/QP2 from it?? I thought of generating 4 ATC´s (one for Open, 
  one for High etc.) but how to bring those together in one index bar for each 
  trading day :-((((<SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003>Yes you may plot candles but think about what you 
  were trying to do....
  <SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003><FONT 
  face=Arial> AddToComposite(<FONT 
  color=#000000>C<FONT 
  color=#282828>,sym,"X"<FONT 
  color=#282828>);  would not this populate closing value through out all 
  the fields? try......<FONT 
  color=#0000ff>
  <SPAN 
  class=678142113-24042003> 
  <FONT 
  color=#0000ff> <FONT 
  size=2>
  AddToComposite(<FONT 
  color=#000000>C<FONT 
  color=#282828>,sym,"C"<FONT 
  color=#282828>);<FONT 
  size=2>
  AddToComposite(<FONT 
  color=#000000>O<FONT 
  color=#282828>,sym,"O"<FONT 
  color=#282828>);<FONT 
  size=2>
  AddToComposite(<FONT 
  color=#000000>H<FONT 
  color=#282828>,sym,"H"<FONT 
  color=#282828>);<FONT 
  size=2>
  AddToComposite(<FONT 
  color=#000000>L<FONT 
  color=#282828>,sym,"L"<FONT 
  color=#282828>);<FONT 
  face=Arial>
  AddToComposite(<FONT 
  color=#ff00ff>1,sym,<FONT 
  color=#ff00ff>"V"<FONT face=Arial 
  size=2>);<FONT 
  color=#0000ff> 
  <SPAN 
  class=678142113-24042003> 
  Plotting your 
  ticker now will show the appropriate OHLC data.  Unfortunately if you 
  have any holes in your data they may cause misleading candles. By dividing the 
  values by the number of calculations in each composite you can smooth these 
  errors. To plot this create a custom indicator
  <SPAN 
  class=678142113-24042003> 
  <FONT face=Arial color=#000000 
  size=2> 
  C=<SPAN 
  class=678142113-24042003> c /V<FONT 
  color=#282828><FONT 
  color=#0000ff>;<FONT 
size=2>
  O=<SPAN 
  class=678142113-24042003> o /V<FONT 
  color=#282828>;<FONT 
  color=#0000ff>
  H=<SPAN 
  class=678142113-24042003> h /V<FONT 
  color=#282828><FONT 
  color=#0000ff>;<FONT 
size=2>
  L=<SPAN 
  class=678142113-24042003> L /V<FONT 
  color=#282828>;
  <FONT face=Arial color=#000000 
  size=2> 
  Plot(<FONT 
  color=#000000>C<FONT 
  color=#282828>,"Sector Index"<FONT 
  color=#282828>,<FONT 
  color=#000000>colorWhite<FONT 
  face=Arial>,<FONT 
  color=#000000>styleCandle<FONT 
  face=Arial size=2>);
   
  or better yet..If 
  you want to plot your index in the same chart as a component stock 
  try........
   <FONT 
  face=Arial>
  sym="~"+SectorID(1<FONT 
  face=Arial color=#0000ff>);<FONT 
  color=#0000ff>
  C=Foreign(sym,"C")/V<FONT 
  face=Arial color=#0000ff>;<FONT 
  size=2>
  O=Foreign(sym,"o")/V<FONT 
  color=#282828>;<FONT 
  color=#000000>
  H=Foreign(sym,"h")/V<FONT 
  face=Arial color=#0000ff>;<FONT 
  size=2>
  L=Foreign(sym,"l")/V<FONT 
  color=#282828>;
   
  Plot(<FONT 
  color=#000000>C<FONT 
  color=#282828>,"Sector Index"<FONT 
  color=#282828>,<FONT 
  color=#000000>colorWhite<FONT 
  face=Arial>,<FONT 
  color=#000000>styleCandle<FONT 
  size=2>);<SPAN 
  class=678142113-24042003>    For separate window or add 
  |styleownscale for the same window 
   
  AB will determine 
  what sector (or industry in your case) the stock belongs to then automatically 
  plot the index for that stock. I use this approach daily to compare the stocks 
  RSI and the sectors or the stocks momentum and the sectors or to measure the 
  stocks correlation to the sectors etc
  <SPAN 
  class=678142113-24042003> 
  <IMG alt="" 
  hspace=0 src="gif00274.gif" align=baseline 
  border=0>
  <SPAN 
  class=678142113-24042003>  
   
   
  3./ It makes me wonder that the newly 
  created indices (in our case the IM200´s) have to be updated EVERY day 
  MANULY(running the scan). Is there no workaround for this (i.e. store the 
  calculated day somewhere and onl update the LAST session as with regular stock 
  data??).<SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003>The calculations needed require a look at your whole 
  universe. Just save your scan and run it... think of it as part 2 of your 
  daily update. It take but a moment. IMO this feature alone is worth the 
  price of admission to AB. I used to do all this work as a QP scan then export 
  to excel, sort, calculate and import to metastock. If I missed a day I had to 
  rewrite the scan to get yesterdays data etc, etc. With AB the composite is 
  re-created each day so if I miss a day, no problem. If QP makes an adjustment, 
  no problem. 
  <SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003>I have one scan that creates all my sector 
  composites, all my industry composites, and several market breadth composites. 
  It takes my old P600 system about 2 minutes to do the work then AB even sends 
  them to the appropriate watch list for further analysis. Super 
  feature........
  <SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003>Regards,
  <SPAN 
  class=678142113-24042003> 
  <SPAN 
  class=678142113-24042003>jayson 
   
  Highly appreciate your help!!!!
   
  Thanx
   
  Markus
  <BLOCKQUOTE 
  >
    ----- Original Message ----- 
    <DIV 
    >From: 
    <A title=jcasavant@xxxxxxxxxxxx 
    href="">Jayson 
    To: <A title=amibroker@xxxxxxxxxxxxxxx 
    href="">amibroker@xxxxxxxxxxxxxxx 
    Sent: Thursday, April 24, 2003 6:38 
    AM
    Subject: RE: [amibroker] Creating IM200 
    indices - JAYSON
    
    <SPAN 
    class=855470704-24042003>JMarkus,
    <SPAN 
    class=855470704-24042003> 
    I 
    have been gone most of the afternoon. Sorry to leave you hanging. Answers 
    below......
     Jayson 
    <FONT face=Tahoma 
    size=2>-----Original Message-----From: <A 
    href="">funnybiz@xxxxxx 
    [mailto:funnybiz@xxxxxx]Sent: Wednesday, April 23, 2003 5:26 
    PMTo: <A 
    href="">amibroker@xxxxxxxxxxxxxxxSubject: 
    Re: [amibroker] Creating IM200 indices - JAYSON
    Anthony,thanks for stepping in here.If I 
    may:1./ does Jayson´s SYM variable refer to the array part of the 
    addtocompositefunction. If so, why is it not put in parenthesis (though 
    this results in anerror).<FONT face=Arial 
    color=#0000ff size=2> 
     
    <FONT 
    size=2>The line 
    <FONT 
    size=2> 
    <FONT 
    size=2>sym="~"+sectorid(1)  
    
    <FONT 
    size=2> 
    <FONT 
    size=2>looks at each stock you scan and places "~" + the 
    sector ID for that stock in its place. If, for 
    instance the stock resides in the Utilities Sector then AB notes this and 
    returns sym= "~Utilities". Addtocomposite grabs this shorthand and 
    Therefore the next line <FONT 
    face=Arial>
    AddToComposite(<FONT 
    color=#000000>C<FONT 
    color=#282828>,sym ,"C"<FONT 
    color=#282828>); <SPAN 
    class=855470704-24042003>  becomes 
    addtocomposite(c,"~utilities","C"); 
    <FONT 
    color=#0000ff>This is repeated for each stock 
    scanned. addtocomposite then simply looks to the stocks sectorid and places 
    the data in the appropriate 
    ticker
    2./ sym="~"+SectorID(1);// this does sectors for industry groups 
    useindustryid(0)I don´t understand Jayson´s remark here: WHICH 
    stocks does that include? Iwant to include all stocks belonging to the 
    same of the 200 industry groups.<FONT 
    face=Arial color=#0000ff size=2> 
     
    <FONT face=Arial 
    color=#0000ff>Sectorid(1) returns the 12 sectors (Capital goods, utilities, 
    financials etc) If you want industry groups then replace that line 
    with 
     
    <FONT face=Arial 
    color=#0000ff>sym="~"+industryID(1); 
    <SPAN 
    class=855470704-24042003><FONT face=Arial color=#0000ff 
    size=2> 
    <FONT face=Arial 
    color=#0000ff>Ab will look at all the stocks in your scan. All the stocks 
    with with the same industryID will be counted in the appropriate composite 
    Ticker.  3./ if I wanted to create an 
    index for all the 200 used industry groups(Quotes Plus Two), would I 
    have to write this code 200 times??<FONT 
    face=Arial color=#0000ff size=2> 
     
    <FONT face=Arial color=#0000ff 
    size=2>No... See above... AB does all the grunt work for 
    you... 4./ would I have to run the scan EVEREY 
    day to bring my Addtocomposites upto date?<SPAN 
    class=855470704-24042003><FONT face=Arial color=#0000ff 
    size=2> 
     
    <FONT 
    face=Arial>Yes. the scan will create/update all 200 industry groups and 
    store them in group 253 (the default location for your Composites. You may 
    also create watch lists of these tickers to separate 
    them. For instance I have a watchlist with just the 12 sectors, a second for 
    the industry group tickers 
    etc.... 5./ I added "flag=16" which 
    gave me an error. How do I have to specify if Iwant to use 
    addtocomposite in exploration mode?<FONT 
    face=Arial color=#0000ff size=2> 
     
    <FONT face=Arial color=#0000ff 
    size=2>flag=16 is a description.... just add comma 16
    
    AddToComposite(<FONT 
    color=#000000>C,sym ,<FONT 
    color=#ff00ff>"C"<SPAN 
    class=855470704-24042003> <FONT 
    face="Courier New" color=#ff00ff>,16 ); 
     Many thanks for your 
    help!Markus----- Original Message -----From: "Anthony 
    Faragasso" <ajf1111@xxxxxxxx>To: 
    <amibroker@xxxxxxxxxxxxxxx>Sent: Wednesday, April 23, 2003 8:37 
    PMSubject: Re: [amibroker] Creating IM200 indices - 
    JAYSON> Also...do not forget to add this dummy line...which 
    is needed forscanning.>> 
    Buy=0;>>>> Send BUG REPORTS to 
    bugs@xxxxxxxxxxxxx> Send 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>> 
    Your use of Yahoo! Groups is subject to <A 
    href="">http://docs.yahoo.com/info/terms/>>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 
    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 
    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 
  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 
  Your use of Yahoo! Groups is subject to the <A 
  href="">Yahoo! Terms of Service. 







Yahoo! Groups Sponsor


ADVERTISEMENT









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


Attachment: Description: ""