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

Re: [amibroker] Re: to HERMAN: N100 Correlation table



PureBytes Links

Trading Reference Links




Hello,
 
It would be shorter to write this that way:
 
TickerList = 
"AAPL,ADBE,ADCT,ALTR,AMAT,AMG,AMZ,APCC,APOL,BBBY,BEAS,BIIB,BMET,BRCD,BRCM,CDWC,CEPH,"+"CHIR,CHKP,CHRW,CIE,CMCSA,CMVT,COST,CPWR,CSCO,CTAS,CTXS,DELL,DISH,DLTR,EBAY,ERICY,ERTS,"+"ESRX,EXPD,FAST,FHCC,FISV,FLEX,GEZ,GILD,GTX,HGSI,HSIC,IACI,ICOS,ITC,ITU,IVG,JDSU,JPR,KLAC,"+"LAMR,LLTC,LCR,MCHP,MEDI,MERQ,MLM,MST,MOLX,MSFT,MXIM,TAP,VDA,VLS,XTL,ORCL,PAYX,PCAR,PDCO,"+"PETM,PIXR,PSFT,PTE,QCOM,QLGC,RFMD,ROST,RYAAY,SAM,SBUX,SEBL,SIAL,SDK,SPS,SPLS,SPOT,SSCC,"+"SUW,SYMC,TEVA,TLAB,VRS,VRTS,WFMI,XLX,XRAY,YHOO";
Ticker = StrExtract( TickerList, n );
 
Hope this helps.
 
Best regards,Tomasz Janeczkoamibroker.com
<BLOCKQUOTE 
>
  ----- Original Message ----- 
  <DIV 
  >From: 
  dirk 
  schreiber 
  To: <A title=amibroker@xxxxxxxxxxxxxxx 
  href="">amibroker@xxxxxxxxxxxxxxx 
  Sent: Thursday, November 27, 2003 9:58 
  PM
  Subject: Re: [amibroker] Re: to HERMAN: 
  N100 Correlation table
  
  hi nand,
   
  the #include file was posted by 
  herman before, it goes like this:
   
  // Include fileTicker 
  =     WriteIf(n==0 , "AAPL", WriteIf(n==1 , 
  "ADBE", WriteIf(n==2 , "ADCT", WriteIf(n==3 , "ALTR", WriteIf(n==4 
  , "AMAT", WriteIf(n==5 , "AMGN", WriteIf(n==6 , "AMZN", 
  WriteIf(n==7 , "APCC", WriteIf(n==8 , "APOL", WriteIf(n==9 , 
  "BBBY", WriteIf(n==10 , "BEAS", WriteIf(n==11 , "BIIB", 
  WriteIf(n==12 , "BMET", WriteIf(n==13 , "BRCD", WriteIf(n==14 , 
  "BRCM", WriteIf(n==15 , "CDWC", WriteIf(n==16 , "CEPH", 
  WriteIf(n==17 , "CHIR", WriteIf(n==18 , "CHKP", WriteIf(n==19 , 
  "CHRW", WriteIf(n==20 , "CIEN", WriteIf(n==21 , "CMCSA", 
  WriteIf(n==22 , "CMVT", WriteIf(n==23 , "COST", WriteIf(n==24 , 
  "CPWR", WriteIf(n==25 , "CSCO", WriteIf(n==26 , "CTAS", 
  WriteIf(n==27 , "CTXS", WriteIf(n==28 , "DELL", WriteIf(n==29 , 
  "DISH", WriteIf(n==30 , "DLTR", WriteIf(n==31 , "EBAY", 
  WriteIf(n==32 , "ERICY", WriteIf(n==33 , "ERTS", WriteIf(n==34 , 
  "ESRX", WriteIf(n==35 , "EXPD", WriteIf(n==36 , "FAST", 
  WriteIf(n==37 , "FHCC", WriteIf(n==38 , "FISV", WriteIf(n==39 , 
  "FLEX", WriteIf(n==40 , "GENZ", WriteIf(n==41 , "GILD", 
  WriteIf(n==42 , "GNTX", WriteIf(n==43 , "HGSI", WriteIf(n==44 , 
  "HSIC", WriteIf(n==45 , "IACI", WriteIf(n==46 , "ICOS", 
  WriteIf(n==47 , "INTC", WriteIf(n==48 , "INTU", WriteIf(n==49 , 
  "IVGN", WriteIf(n==50 , "JDSU", WriteIf(n==51 , "JNPR", 
  WriteIf(n==52 , "KLAC", WriteIf(n==53 , "LAMR", WriteIf(n==54 , 
  "LLTC", WriteIf(n==55 , "LNCR", WriteIf(n==56 , "MCHP", 
  WriteIf(n==57 , "MEDI", WriteIf(n==58 , "MERQ", WriteIf(n==59 , 
  "MLNM", WriteIf(n==60 , "MNST", WriteIf(n==61 , "MOLX", 
  WriteIf(n==62 , "MSFT", WriteIf(n==63 , "MXIM", WriteIf(n==64 , 
  "NTAP", WriteIf(n==65 , "NVDA", WriteIf(n==66 , "NVLS", 
  WriteIf(n==67 , "NXTL", WriteIf(n==68 , "ORCL", WriteIf(n==69 , 
  "PAYX", WriteIf(n==70 , "PCAR", WriteIf(n==71 , "PDCO", 
  WriteIf(n==72 , "PETM", WriteIf(n==73 , "PIXR", WriteIf(n==74 , 
  "PSFT", WriteIf(n==75 , "PTEN", WriteIf(n==76 , "QCOM", 
  WriteIf(n==77 , "QLGC", WriteIf(n==78 , "RFMD", WriteIf(n==79 , 
  "ROST", WriteIf(n==80 , "RYAAY", WriteIf(n==81 , "SANM", 
  WriteIf(n==82 , "SBUX", WriteIf(n==83 , "SEBL", WriteIf(n==84 , 
  "SIAL", WriteIf(n==85 , "SNDK", WriteIf(n==86 , "SNPS", 
  WriteIf(n==87 , "SPLS", WriteIf(n==88 , "SPOT", WriteIf(n==89 , 
  "SSCC", WriteIf(n==90 , "SUNW", WriteIf(n==91 , "SYMC", 
  WriteIf(n==92 , "TEVA", WriteIf(n==93 , "TLAB", WriteIf(n==94 , 
  "VRSN", WriteIf(n==95 , "VRTS", WriteIf(n==96 , "WFMI", 
  WriteIf(n==97 , "XLNX", WriteIf(n==98 , "XRAY", WriteIf(n==99 , 
  "YHOO" , "" 
  ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
   
  dirk
  <BLOCKQUOTE 
  >
    ----- Original Message ----- 
    <DIV 
    >From: 
    nkis22 
    To: <A title=amibroker@xxxxxxxxxxxxxxx 
    href="">amibroker@xxxxxxxxxxxxxxx 
    Sent: Thursday, November 27, 2003 5:16 
    PM
    Subject: [amibroker] Re: to HERMAN: 
    N100 Correlation table
    Will appreciate very much to see the #include AFL 
    pleasethanks in advancenand--- 
    In amibroker@xxxxxxxxxxxxxxx, 
    dirk schreiber <tianatrading@x...> 
    wrote:> hello herman,>  > after playing around 
    with your code a little bit, i realized that it is not showing a 
    COMPLETE "heat list" of the n100. by "splitting up" the 100 stocks into 
    two groups of 50, one for the x-axis and the other for the y-axis, we 
    can't get the whole picture. the first stock (AAPL) has its correlation 
    only measured against stocks 50-99(JDSU-YHOO), but not for example 
    against ADBE or ADCT. > thanks to posting your code i am beginning to 
    understand the logic of looping better, so i just changed some numbers 
    to have the loop go through ALL possible combinations. it takes slightly 
    longer (instead of 50*50=2500 it's 100*100=10000 calculations) and of 
    course it has quite a lot of duplicate results, but i think it is the 
    only way to calculate all correlations.> also, i changed the code 
    from absolute to relative correlation, which gives different 
    results.>  > what do you think?>  > 
    dirk>  >  > > // Exploration N100 
    relative Correlation table > > Buy=Sell=Short=Cover=0; 
    > > StkNum = Status("StockNum"); > > Filter = 
    Status("LastBarInTest") AND StkNum < 100; > > 
    AddTextColumn(Name(),"Ticker",1.0); > > 
    SetOption("nodefaultcolumns",1);> > n = StkNum; > 
    > #include <NtoN100Ticker.afl> > > Ticker1 = 
    Ticker; > > C1 = ROC(Foreign(Ticker1,"C"),1); > 
    > for(m=1;m<=99;m++) > > { > > n=m; 
    > > #include <NtoN100Ticker.afl> > > 
    Ticker2 = Ticker; > > C2 = ROC(Foreign(Ticker2,"C"),1); 
    > > Corr = Correlation(C1, C2, 8 ); > > Color = 
    IIf(Corr>0.7,8,4); // Add colors to make a heat map > > 
    AddColumn(Corr,Ticker,1.3,1,Color); > > }> 
    >  >   ----- Original Message ----- 
    >   From:   Herman vandenBergen   
    >   To: amibroker@xxxxxxxxxxxxxxx >   
    Sent: Wednesday, November 26, 2003 11:43   PM>   
    Subject: RE: [amibroker] to TOMASZ: how   to loop through a list 
    of tickers ?>   > >   A slight 
    oversight in my previous code, you CAN list tickers by   name 
    (no string array needed) in the left most column with   the 
    slightly different code below. Here is a fragment of the 
    table.   Include file can be found in previous 
    post.>    >   
    >    >   // N100 Correlation table 
    > Buy=Sell=Short=Cover=0; > StkNum = Status("StockNum"); 
    > Filter = Status("LastBarInTest") AND StkNum < 50; > 
    AddTextColumn(Name(),"Ticker",1.0); > n = StkNum;   
    > #include <NtoN100Ticker.afl>   > Ticker1 = 
    Ticker; > C1 = Foreign(Ticker1,"C");    > 
    for(m=50;m<=99;m++) >    { 
    >    n=m;   >    
    #include <NtoN100Ticker.afl>   >    
    Ticker2 = Ticker; >    C2 =   
    Foreign(Ticker2,"C");    >    Corr = 
    Correlation(C1, C2, 8 ); >    Color = 
    IIf(Corr>0,8,4); //   Add colors to make a heat map 
    >    AddColumn(Corr,Ticker,1.3,1,Color); 
    >    }>       
    -----Original Message-----> From: dirk 
    schreiber     [mailto:tianatrading@xxxx]> Sent: 
    November 27, 2003 2:03     AM> To: 
    amibroker@xxxxxxxxxxxxxxx> Subject: [amibroker] 
    to     TOMASZ: how to loop through a list of tickers 
    ?> > >     i'm a bit surprised to 
    see that     noone is answering my 
    call.>     so may i ask you 
    directly,     tomasz, if what i asked is possible 
    and if you could indicate me the right     way to code 
    this ??>      
    >     thank 
    you,>      >     
    dirk>      
    >           ----- 
    Original Message ----- >       
    From:       
    dirk       schreiber 
    >       To: 
    amibroker@xxxxxxxxxxxxxxx       
    >       Sent: Monday, November 24, 2003 
    12:14       
    PM>       Subject: Re: [amibroker] how 
    to loop       through a list of tickers 
    ?>       > 
    >       noone 
    ???>       i'll try again: as 
    an       example, is it possible to 
    calculate all correlations of the 
    stocks       constituting the nasdaq100 in 
    one scan?>       my code below will 
    explore       the correlations of IBM with 
    the other 99 constituents of my       
    nasdaq100 watchlist. is there a way in afl to tell amibroker to 
    first       calculate these correlations 
    for one stock, then go to the next and do 
    the       same there and so forth, so that 
    i could find out the 10 highest       
    correlations within the nasdaq100 for example 
    ??>       i have tried many ideas but 
    i       am stuck (haven't mastered the new 
    loop formulas very well yet)       
    ...>        
    >       any help would be 
    greatly       appreciated, maybe this 
    procedure would interest other amibroker users 
    as       
    well.>        
    >       thanks 
    in       
    advance,>        
    >       
    dirk>        
    >             
    > pair="IBM";>       > 
    x=Foreign(pair,"C");>       > 
    y=C;>       > 
    xpc=ROC(x,1);>       > 
    ypc=ROC(y,1);>       > 
    Graph0=Correlation(xpc,ypc,20);>       
    > 
    Graph1=Correlation(xpc,ypc,200);>       
    > Filter=Graph0>0.7       AND 
    Graph1>0.5;>       > 
    AddColumn(Graph0,"Cor20",1.2);>       
    > 
    AddColumn(Graph1,"Cor200",1.2);>       
    > 
    AddColumn(Graph0+Graph1,"total",1.2);>       
    > Buy=0;> >       
    >  >       >  
    >               
    ----- Original Message ----- 
    >         
    From:         dirk schreiber 
    >         To: 
    amibroker@xxxxxxxxxxxxxxx         
    >         Sent: Thursday, 
    November 20, 2003         6:56 
    PM>         Subject: 
    [amibroker] how to loop         
    through a list of tickers 
    ?>         > 
    >                 
    hello,>          
    >         this is my 
    first         
    post.>         i have been 
    working my way         into the 
    ideas behind pair trading, reading the interesting posts 
    by         yuki a few months ago 
    and writing some 
    code.>         here is where 
    i'm stuck:         when i calculate 
    correlation, price ratio and other things like 
    beta         ratio it is my 
    understanding that when scanning my database i can 
    only         compare one stock 
    at a time with the rest of my universe. -- is 
    it         possible to calculate 
    all correlations between all stocks in one 
    scan??         i know that with big 
    groups this would mean millions 
    of         calculations, but for a 
    group like the n100 this should be 
    possible?         
    >         can this be done by 
    some         sort of 
    loop?>         i searched the 
    mailing list         archive and 
    found only one hint by DT, talking about maybe 
    using         something 
    like   Status("STOCKNUM") == 0   , but 
    i         could not work that out 
    ...>          
    >         any help 
    is         
    appreciated,>         thanks 
    in         
    advance,>          
    >         dirk> 
    > > > 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. 
    >         
    >         > 
    --------------------------------->         
    Do you Yahoo!?> Protect your identity 
    with         Yahoo! Mail 
    AddressGuard> > 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.       
    >       
    >       > 
    --------------------------------->       
    Do you Yahoo!?> Protect       your 
    identity with Yahoo! Mail AddressGuard> > 
    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.     >     
    >     > 
    --------------------------------->     Do you 
    Yahoo!?> Protect     your identity with Yahoo! 
    Mail 
    AddressGuard>                 
    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. > > > 
    ---------------------------------> Do you Yahoo!?> Protect 
    your identity with Yahoo! Mail AddressGuardSend 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. 

  
  
  Do you Yahoo!?Protect 
  your identity with Yahoo! Mail AddressGuard






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.