[R-SIG-Finance] Fwd: Re: looking for functions that can test/estimate CAPM, APT, Fama's factor model, etc.

Gabor Grothendieck ggrothendieck at gmail.com
Tue Nov 14 14:02:24 CET 2006


Note that the reason that rapply was changed to rollapply was that
R base recently introduced a rapply function (but its a recursive lapply
whereas the one in zoo is a rolling one) so the name was changed to avoid
conflicts.

On 11/14/06, Andrew West <jgalt70 at yahoo.com> wrote:
> Deb,
> that sounds like a problem related to the rollapply function in the zoo package. I originally wrote it for an older version of zoo, using the function rapply, but zoo then changed the name of that function from rapply to rollapply. Maybe you haven't updated to the latest version of zoo? If you can't update, change the term "rollapply" to "rapply" and it will work with older zoo packages, but not the most recent.
> Hope this helps,
> Andrew
>
>
> ----- Original Message ----
> From: Deb Midya <debmidya at yahoo.com>
> To: r-sig-finance at stat.math.ethz.ch
> Sent: Tuesday, November 14, 2006 7:14:03 AM
> Subject: [R-SIG-Finance] Fwd: Re: looking for functions that can test/estimate CAPM, APT, Fama's factor model, etc.
>
>
> Andrew,
>
> Thanks in advance.
>
> I have run your code and it works well. Will you please clarify the error below:
>
> Error in getrffBeta("BNI", span = 60) : could not find function "rollapply".
>
> It is required to put appropriate package using require(?) to incorporate the function "rollapply".
>
> May I request you to provide some literature on above topics.
>
> Thanks,
>
> Deb
>
> Note: forwarded message attached.
> X-Originating-IP: [129.132.145.15]
> Authentication-Results: mta356.mail.mud.yahoo.com  from=stat.math.ethz.ch; domainkeys=neutral (no sig)
> Received: from 129.132.145.15  (EHLO hypatia.math.ethz.ch) (129.132.145.15)
>  by mta356.mail.mud.yahoo.com with SMTP; Mon, 13 Nov 2006 12:41:23 -0800
> Received: from hypatia.math.ethz.ch (hypatia [129.132.145.15])
>    by hypatia.math.ethz.ch (8.13.6/8.13.6) with ESMTP id kADKeYpt010461;
>    Mon, 13 Nov 2006 21:40:41 +0100
> X-Spam-Checker-Version: SpamAssassin 3.1.7 (2006-10-05) on hypatia.math.ethz.ch
> X-Spam-Level:
> X-Spam-Status: No, score=0.5 required=5.0 tests=AWL,
>    BAYES_50 autolearn=no version=3.1.7
> Received: from web60322.mail.yahoo.com (web60322.mail.yahoo.com
>    [209.73.178.130])
>    by hypatia.math.ethz.ch (8.13.6/8.13.6) with SMTP id kADKZtp5008571
>    for <r-sig-finance at stat.math.ethz.ch>; Mon, 13 Nov 2006 21:35:56 +0100
> Received: (qmail 83464 invoked by uid 60001); 13 Nov 2006 20:35:54 -0000
> Received: from [71.250.242.218] by web60322.mail.yahoo.com via HTTP;
>    Mon, 13 Nov 2006 12:35:54 PST
> Date: Mon, 13 Nov 2006 12:35:54 -0800 (PST)
>
> To: r-sig-finance at stat.math.ethz.ch
> MIME-Version: 1.0
> Content-Type: multipart/mixed; boundary="0-1294175594-1163450154=:83460"
> X-Virus-Scanned: by amavisd-new at stat.math.ethz.ch
> Subject: Re: [R-SIG-Finance] looking for functions that can test/estimate
>    CAPM, APT, Fama's factor model, etc.
> X-BeenThere: r-sig-finance at stat.math.ethz.ch
> X-Mailman-Version: 2.1.9
> Precedence: list
> List-Id: Special Interest Group for 'R in Finance'
>    <r-sig-finance.stat.math.ethz.ch>
> List-Unsubscribe: <https://stat.ethz.ch/mailman/listinfo/r-sig-finance>,
>    <mailto:r-sig-finance-request at stat.math.ethz.ch?subject=unsubscribe>
> List-Archive: <https://stat.ethz.ch/pipermail/r-sig-finance>
> List-Post: <mailto:r-sig-finance at stat.math.ethz.ch>
> List-Help: <mailto:r-sig-finance-request at stat.math.ethz.ch?subject=help>
> List-Subscribe: <https://stat.ethz.ch/mailman/listinfo/r-sig-finance>,
>    <mailto:r-sig-finance-request at stat.math.ethz.ch?subject=subscribe>
> Sender: r-sig-finance-bounces at stat.math.ethz.ch
> Errors-To: r-sig-finance-bounces at stat.math.ethz.ch
> Content-Length: 7811
>
> --0-1294175594-1163450154=:83460
> Content-Type: text/plain; charset=ascii
> Content-Transfer-Encoding: quoted-printable
>
> This thread reminded me to post a somewhat improved and updated version of =
> the code I was working on last year, re Fama French.=0AMost notably, I work=
> ed up something that would let me visualize how coefficients to value and g=
> rowth factors change over time. The basic code could be modified to accompl=
> ish different goals, e.g. (getting significance test scores on the factors =
> for the company you're looking at, doing the same for a longer list of comp=
> anies). I once even created a version that treated a list of companies as l=
> ongitudinal data, and used the lme package to do a mixed effects model for =
> the FF-3 factor model for a list of companies within an industry. The inter=
> esting thing is that these coefficients are often not very stationary over =
> time.=0A=0A I'm dropping the long, ugly, inadequately commented code below,=
> and attatching it as a text file (I'm not an R-programmer, just someone wh=
> o was willing to do a lot of trial and error and patch stuff together till =
> I got the output I wanted. In the past some e-mail programs will mess up th=
> e code a little, by converting quotes or urls, so watch out for that. I did=
> test it and it works as of R2.4 this afternoon on my Windows XP machine. G=
> ood luck.=0A=0AgetrffBeta=3D function(tool,span) {=0Arequire(MASS);=0Arequi=
> re(tseries);=0Arequire(wle)=0Arequire(zoo)=0Astock=3D (get.hist.quote(instr=
> ument =3D tool, quote =3Dc("Ad"),compression=3D"m",origin=3D as.Date(0)));=
> =0Aspx=3D(get.hist.quote(instrument =3D "^gspc", quote =3Dc("Ad"),compressi=
> on=3D"m",origin=3D as.Date(0)));=0Atoday=3DSys.Date();=0Aseqmo=3Dlength(seq=
> (as.Date("1926-07-01"),today,by=3D"month"))-2;=0Aurl=3D"http://mba.tuck.dar=
> tmouth.edu/pages/faculty/ken.french/ftp/F-F_Research_Data_Factors.zip";=0Ad=
> estfile=3Dtempfile();=0Adataff=3Ddownload.file(url, destfile, mode=3D'wb');=
> =0Aunzip=3Dunz(destfile,"F-F_Research_Data_Factors.txt");=0Aff4 <- read.tab=
> le(unzip, header=3DFALSE, sep=3D"",na.strings=3D"NA", dec=3D".", strip.whit=
> e=3DTRUE, skip=3D4,nrows=3Dseqmo)=0Affdata <- ff4=0Aattach(ffdata);=0Affdat=
> a=3Dffdata/100=0A#find out starting year month for ffdata;=0Affdatats=3Dts(=
> ffdata, start=3Dc(1926,7), frequency=3D12);=0Astock=3Dts(na.omit(coredata(s=
> tock)), start=3D as.numeric(as.yearmon(as.Date(start(stock)[1]))),=0Afreque=
> ncy=3D12);=0Aspx=3Dts(na.remove(spx), start=3D=0Aas.numeric(as.yearmon(as.D=
> ate(start(spx)[1]))),=0Afrequency=3D12);=0Acombined=3D na.remove(ts.union(s=
> tock,spx));=0Acombreturn=3D na.remove(diff(log(combined)));=0Acombined=3Dna=
> .remove(ts.intersect(combreturn,ffdatats), names=3Dlist("stockret", "spxret=
> ", "dates","ffmktret","smb","hml","rf"));=0Acombined[,1]=3Dcombined[,1]-com=
> bined[,7]=0Acombined[,2]=3Dcombined[,2]-combined[,7]=0Asimplereg=3Dlm(combi=
> ned[,1]~combined[,4]);=0Astockbeta=3Dsimplereg$coef[2];=0Atextout=3Dpaste("=
> CAPM beta=3D", stockbeta);=0Arobustreg=3Dwle.lm(combined[,1]~combined[,4]);=
> =0Arobstockbeta=3Drobustreg$coef[2];=0Atextout2=3Dpaste("robust stock beta=
> =3D", robstockbeta);=0Aplot(as.numeric(combined[,1])~as.numeric(combined[,2=
> ]),xlab=3D"Market",=0Aylab=3Dtool)=0Atitle(main=3Dtextout, sub=3Dlist(texto=
> ut2, col=3D"red"))=0Aabline(coef(simplereg));=0Aabline(coef(robustreg),col=
> =3D"red")=0Aprint(textout);=0Aprint(textout2);=0Affreg=3Dwle.lm(combined[,1=
> ]~combined[,4]+combined[,5]+combined[,6]);=0Affalpha=3Dffreg$coef[1]=0Affbe=
> ta=3Dffreg$coef[2];=0Affsmb=3Dffreg$coef[3];=0Affhml=3Dffreg$coef[4] ;=0Ate=
> xtout3a=3D paste('robust ff alpha=3D',ffalpha) ;=0Atextout3=3Dpaste('robust=
> ff beta=3D',ffbeta) ;=0Atextout4=3Dpaste('robust ff smb=3D',ffsmb) ;=0Atex=
> tout5=3Dpaste('robust ff hml=3D',ffhml) ;=0Aprint(textout3a)=0Aprint(textou=
> t3) ;=0Aprint(textout4) ;=0Aprint(textout5) ;=0Arf=3D5=0Asmb=3D1=0Ahml=3D2=
> =0Arm=3D5=0Affcoe=3Drf+ffbeta*rm+ffsmb*smb+ffhml*hml=0Arobcoe=3Drf+robstock=
> beta*rm=0Aregcoe=3Drf+stockbeta*rm=0Atextout6=3Dpaste('regular coe=3D',regc=
> oe,' robustcoe=3D',=0Arobcoe)=0Atextout7=3Dpaste('Fama-French coe=3D',ffcoe=
> )=0Aprint(textout6)=0Aprint(textout7) ;=0Affreg2=3Dlm(combined[,1]~combined=
> [,4]+combined[,5]+combined[,6]);=0Aa1=3Das.vector(combined[,1])=0Ab1=3Das.v=
> ector(ffreg2$fitted)=0Ac1=3Das.vector(simplereg$fitted)=0Aplot3=3D (data.fr=
> ame(a1,b1,c1))=0Awin.graph()=0Apanel.cor <- function(x, y, digits=3D2, pref=
> ix=3D"", cex.cor)=0A{=0Ausr <- par("usr"); on.exit(par(usr))=0Apar(usr =3D =
> c(0, 1, 0, 1))=0Ar <- abs(cor(x, y))=0Atxt <- format(c(r, 0.123456789), dig=
> its=3Ddigits)[1]=0Atxt <- paste(prefix, txt, sep=3D"")=0Aif(missing(cex.cor=
> )) cex <- 0.8/strwidth(txt)=0Atext(0.5, 0.5, txt, cex =3D cex * r)=0A}=0Apa=
> irs(plot3, upper.panel=3Dpanel.cor,labels=3Dc("stock returns","FF fits","CA=
> PM fits"))=0Affreg2=3Dlm(combined[,1]~combined[,4]+combined[,5]+combined[,6=
> ]);=0Azcombined=3Dzoo(combined);=0A=0Azoocoefcapmbeta=3Dfunction(x) {=0Azoo=
> .wle=3Dwle.lm(x[,1]~x[,4]);=0Acoef (zoo.wle)=0A}=0Arollcoefcapm=3Drollapply=
> (zcombined,span,zoocoefcapmbeta,by.column=3DFALSE,align=3D"right");=0Adfrol=
> lcoefcapm=3Das.data.frame(rollcoefcapm)=0Anames(dfrollcoefcapm)[1]=3D"alpha=
> "=0Anames(dfrollcoefcapm)[2]=3D"mkt beta"=0ARollingCoefficientsCAPM=3Dzoo(d=
> frollcoefcapm, order.by=3Dindex(rollcoefcapm))=0Awin.graph()=0Aplot(Rolling=
> CoefficientsCAPM)=0Azoocoefsa=3Dfunction(x) {=0Azoo.wle=3Dwle.lm(x[,1]~x[,4=
> ]+ x[,5]+ x[,6]);=0Acoef (zoo.wle)=0A}=0Arollcoef=3Drollapply(zcombined,spa=
> n,zoocoefsa,by.column=3DFALSE,align=3D"right");=0Adfrollcoef=3Das.data.fram=
> e(rollcoef)=0Anames(dfrollcoef)[1]=3D"alpha"=0Anames(dfrollcoef)[2]=3D"mkt =
> beta"=0Anames(dfrollcoef)[3]=3D"smb"=0Anames(dfrollcoef)[4]=3D"hml"=0ARolli=
> ngCoefficients=3Dzoo(dfrollcoef, order.by=3Dindex(rollcoef))=0Awin.graph()=
> =0Aplot(RollingCoefficients)=0Acompositecoef=3Dmerge(RollingCoefficients, R=
> ollingCoefficientsCAPM, zcombined[,7])=0Arollcapmcoe=3Dfunction(x){=0ACAPMC=
> OE=3Dx[6]*rm+rf=0A}=0Arollffcoe=3Dfunction(x){=0AFFCOE=3Dx[2]*rm+x[3]*smb+x=
> [4]*hml+rf=0A}=0Arollffbetacoe=3Dfunction(x){=0AFFCOE=3Dx[2]*rm +rf=0A}=0A=
> =0ArollffCOE=3Drollapply(compositecoef,1,rollffcoe,by.column=3DFALSE,align=
> =3D"right")=0ArollcapmCOE=3Drollapply(compositecoef,1,rollcapmcoe,by.column=
> =3DFALSE,align=3D"right")=0ArollffbetaCOE=3Drollapply(compositecoef,1,rollf=
> fbetacoe,by.column=3DFALSE,align=3D"right")=0Adfrollcoe=3Das.data.frame(mer=
> ge(rollffCOE,rollcapmCOE,rollffbetaCOE))=0Anames(dfrollcoe)[1]=3D"FFCOE"=0A=
> names(dfrollcoe)[2]=3D"CAPMCOE"=0Anames(dfrollcoe)[3]=3D"FF(beta)COE"=0ARol=
> lingCOE=3Dzoo(dfrollcoe,order.by=3Dindex(rollcapmCOE))=0Awin.graph()=0Aplot=
> (RollingCOE,plot.type=3D"multiple")=0Aif((AIC(simplereg))<(AIC(ffreg2))) "C=
> APM superior to FF" else "FF superior to CAPM";=0A}=0A=0A=0A=0A----- Origin=
> al Message ----=0AFrom: Brian G. Peterson <brian at braverock.com>=0ATo: r-sig=
> -finance at stat.math.ethz.ch=0ASent: Monday, November 13, 2006 1:56:05 PM=0AS=
> ubject: Re: [R-SIG-Finance] looking for functions that can test/estimate CA=
> PM, APT, Fama's factor model, etc.=0A=0A=0AOn Monday 13 November 2006 12:13=
> , Michael wrote:=0A> thanks a lot for your pointers! I've taken a look at t=
> he book and the R=0A> example website. That's super! Some of the examples t=
> here are very=0A> good.=0A>=0A> Yet I am still looking for Fama 3 factor mo=
> del and Ross' APT=0A> implementation. The concept is not hard per se, howev=
> er I am not sure=0A> how to classify some companies as H, and some companie=
> s as L and others=0A> as Value companies, and the others as Growth companie=
> s. There are a lot=0A> of implementation details that I am not sure of. Thu=
> s I guess learning=0A> from other people's implementation is a better appro=
> ach for me as a=0A> green-hand.=0A=0A=0AHere's a great thread from this lis=
> t last year about the Fama three-factor =0Amodel:=0Ahttp://blog.gmane.org/g=
> mane.comp.lang.r.r-metrics/month=3D20050901=0A=0AThere is a ton of function=
> ality in R for factor modeling, spread through =0Alots of different package=
> s.  I'd suggest that you do some searching on =0APrimary Factor Analysis or=
> Primary Component Analysis.=0A=0AThe best bet is to use the Value/Growth c=
> ategorizations done by an =0Aexternal body, such as Reuters, Bloomberg, or =
> S&P.  There doesn't seem to =0Abe much reason for you to independently cate=
> gorize companies, especially =0Ain your learning stages.=0A=0AFor Arbitrage=
> Pricing Theory, you've got to decide on a pricing model.  =0AThere are man=
> y implementations of many pricing models in R.=0A=0A> (The Rmetrics are not=
> very complete I guess.)=0A=0ARMetrics is very complete for what it does, w=
> ith some notable exceptions =0A(fixed income instruments).  I've generally =
> had a lot of luck using =0Afunctions from RMetrics as building blocks for m=
> ore complex analysis.=0A=0ARegards,=0A=0A  - Brian=0A=0A___________________=
> ____________________________=0AR-SIG-Finance at stat.math.ethz.ch mailing list=
> =0Ahttps://stat.ethz.ch/mailman/listinfo/r-sig-finance=0A=0A=0A =0A________=
> ___________________________________________________________________________=
>
>
> --0-1294175594-1163450154=:83460
> Content-Type: text/plain; name="=?utf-8?q?getrffBeta.txt?="
> Content-Transfer-Encoding: base64
> Content-Disposition: attachment; filename="=?utf-8?q?getrffBeta.txt?="
>
> Z2V0cmZmQmV0YT0gZnVuY3Rpb24odG9vbCxzcGFuKSB7DQpyZXF1aXJlKE1B
> U1MpOw0KcmVxdWlyZSh0c2VyaWVzKTsNCnJlcXVpcmUod2xlKQ0KcmVxdWly
> ZSh6b28pDQpzdG9jaz0gKGdldC5oaXN0LnF1b3RlKGluc3RydW1lbnQgPSB0
> b29sLCBxdW90ZSA9YygiQWQiKSxjb21wcmVzc2lvbj0ibSIsb3JpZ2luPSBh
> cy5EYXRlKDApKSk7DQpzcHg9KGdldC5oaXN0LnF1b3RlKGluc3RydW1lbnQg
> PSAiXmdzcGMiLCBxdW90ZSA9YygiQWQiKSxjb21wcmVzc2lvbj0ibSIsb3Jp
> Z2luPSBhcy5EYXRlKDApKSk7DQp0b2RheT1TeXMuRGF0ZSgpOw0Kc2VxbW89
> bGVuZ3RoKHNlcShhcy5EYXRlKCIxOTI2LTA3LTAxIiksdG9kYXksYnk9Im1v
> bnRoIikpLTI7DQp1cmw9Imh0dHA6Ly9tYmEudHVjay5kYXJ0bW91dGguZWR1
> L3BhZ2VzL2ZhY3VsdHkva2VuLmZyZW5jaC9mdHAvRi1GX1Jlc2VhcmNoX0Rh
> dGFfRmFjdG9ycy56aXAiOw0KZGVzdGZpbGU9dGVtcGZpbGUoKTsNCmRhdGFm
> Zj1kb3dubG9hZC5maWxlKHVybCwgZGVzdGZpbGUsIG1vZGU9J3diJyk7DQp1
> bnppcD11bnooZGVzdGZpbGUsIkYtRl9SZXNlYXJjaF9EYXRhX0ZhY3RvcnMu
> dHh0Iik7DQpmZjQgPC0gcmVhZC50YWJsZSh1bnppcCwgaGVhZGVyPUZBTFNF
> LCBzZXA9IiIsbmEuc3RyaW5ncz0iTkEiLCBkZWM9Ii4iLCBzdHJpcC53aGl0
> ZT1UUlVFLCBza2lwPTQsbnJvd3M9c2VxbW8pDQpmZmRhdGEgPC0gZmY0DQph
> dHRhY2goZmZkYXRhKTsNCmZmZGF0YT1mZmRhdGEvMTAwDQojZmluZCBvdXQg
> c3RhcnRpbmcgeWVhciBtb250aCBmb3IgZmZkYXRhOw0KZmZkYXRhdHM9dHMo
> ZmZkYXRhLCBzdGFydD1jKDE5MjYsNyksIGZyZXF1ZW5jeT0xMik7DQpzdG9j
> az10cyhuYS5vbWl0KGNvcmVkYXRhKHN0b2NrKSksIHN0YXJ0PSBhcy5udW1l
> cmljKGFzLnllYXJtb24oYXMuRGF0ZShzdGFydChzdG9jaylbMV0pKSksDQpm
> cmVxdWVuY3k9MTIpOw0Kc3B4PXRzKG5hLnJlbW92ZShzcHgpLCBzdGFydD0N
> CmFzLm51bWVyaWMoYXMueWVhcm1vbihhcy5EYXRlKHN0YXJ0KHNweClbMV0p
> KSksDQpmcmVxdWVuY3k9MTIpOw0KY29tYmluZWQ9IG5hLnJlbW92ZSh0cy51
> bmlvbihzdG9jayxzcHgpKTsNCmNvbWJyZXR1cm49IG5hLnJlbW92ZShkaWZm
> KGxvZyhjb21iaW5lZCkpKTsNCmNvbWJpbmVkPW5hLnJlbW92ZSh0cy5pbnRl
> cnNlY3QoY29tYnJldHVybixmZmRhdGF0cyksIG5hbWVzPWxpc3QoInN0b2Nr
> cmV0IiwgInNweHJldCIsICJkYXRlcyIsImZmbWt0cmV0Iiwic21iIiwiaG1s
> IiwicmYiKSk7DQpjb21iaW5lZFssMV09Y29tYmluZWRbLDFdLWNvbWJpbmVk
> Wyw3XQ0KY29tYmluZWRbLDJdPWNvbWJpbmVkWywyXS1jb21iaW5lZFssN10N
> CnNpbXBsZXJlZz1sbShjb21iaW5lZFssMV1+Y29tYmluZWRbLDRdKTsNCnN0
> b2NrYmV0YT1zaW1wbGVyZWckY29lZlsyXTsNCnRleHRvdXQ9cGFzdGUoIkNB
> UE0gYmV0YT0iLCBzdG9ja2JldGEpOw0Kcm9idXN0cmVnPXdsZS5sbShjb21i
> aW5lZFssMV1+Y29tYmluZWRbLDRdKTsNCnJvYnN0b2NrYmV0YT1yb2J1c3Ry
> ZWckY29lZlsyXTsNCnRleHRvdXQyPXBhc3RlKCJyb2J1c3Qgc3RvY2sgYmV0
> YT0iLCByb2JzdG9ja2JldGEpOw0KcGxvdChhcy5udW1lcmljKGNvbWJpbmVk
> WywxXSl+YXMubnVtZXJpYyhjb21iaW5lZFssMl0pLHhsYWI9Ik1hcmtldCIs
> DQp5bGFiPXRvb2wpDQp0aXRsZShtYWluPXRleHRvdXQsIHN1Yj1saXN0KHRl
> eHRvdXQyLCBjb2w9InJlZCIpKQ0KYWJsaW5lKGNvZWYoc2ltcGxlcmVnKSk7
> DQphYmxpbmUoY29lZihyb2J1c3RyZWcpLGNvbD0icmVkIikNCnByaW50KHRl
> eHRvdXQpOw0KcHJpbnQodGV4dG91dDIpOw0KZmZyZWc9d2xlLmxtKGNvbWJp
> bmVkWywxXX5jb21iaW5lZFssNF0rY29tYmluZWRbLDVdK2NvbWJpbmVkWyw2
> XSk7DQpmZmFscGhhPWZmcmVnJGNvZWZbMV0NCmZmYmV0YT1mZnJlZyRjb2Vm
> WzJdOw0KZmZzbWI9ZmZyZWckY29lZlszXTsNCmZmaG1sPWZmcmVnJGNvZWZb
> NF0gOw0KdGV4dG91dDNhPSBwYXN0ZSgncm9idXN0IGZmIGFscGhhPScsZmZh
> bHBoYSkgOw0KdGV4dG91dDM9cGFzdGUoJ3JvYnVzdCBmZiBiZXRhPScsZmZi
> ZXRhKSA7DQp0ZXh0b3V0ND1wYXN0ZSgncm9idXN0IGZmIHNtYj0nLGZmc21i
> KSA7DQp0ZXh0b3V0NT1wYXN0ZSgncm9idXN0IGZmIGhtbD0nLGZmaG1sKSA7
> DQpwcmludCh0ZXh0b3V0M2EpDQpwcmludCh0ZXh0b3V0MykgOw0KcHJpbnQo
> dGV4dG91dDQpIDsNCnByaW50KHRleHRvdXQ1KSA7DQpyZj01DQpzbWI9MQ0K
> aG1sPTINCnJtPTUNCmZmY29lPXJmK2ZmYmV0YSpybStmZnNtYipzbWIrZmZo
> bWwqaG1sDQpyb2Jjb2U9cmYrcm9ic3RvY2tiZXRhKnJtDQpyZWdjb2U9cmYr
> c3RvY2tiZXRhKnJtDQp0ZXh0b3V0Nj1wYXN0ZSgncmVndWxhciBjb2U9Jyxy
> ZWdjb2UsJyByb2J1c3Rjb2U9JywNCnJvYmNvZSkNCnRleHRvdXQ3PXBhc3Rl
> KCdGYW1hLUZyZW5jaCBjb2U9JyxmZmNvZSkNCnByaW50KHRleHRvdXQ2KQ0K
> cHJpbnQodGV4dG91dDcpIDsNCmZmcmVnMj1sbShjb21iaW5lZFssMV1+Y29t
> YmluZWRbLDRdK2NvbWJpbmVkWyw1XStjb21iaW5lZFssNl0pOw0KYTE9YXMu
> dmVjdG9yKGNvbWJpbmVkWywxXSkNCmIxPWFzLnZlY3RvcihmZnJlZzIkZml0
> dGVkKQ0KYzE9YXMudmVjdG9yKHNpbXBsZXJlZyRmaXR0ZWQpDQpwbG90Mz0g
> KGRhdGEuZnJhbWUoYTEsYjEsYzEpKQ0Kd2luLmdyYXBoKCkNCnBhbmVsLmNv
> ciA8LSBmdW5jdGlvbih4LCB5LCBkaWdpdHM9MiwgcHJlZml4PSIiLCBjZXgu
> Y29yKQ0Kew0KdXNyIDwtIHBhcigidXNyIik7IG9uLmV4aXQocGFyKHVzcikp
> DQpwYXIodXNyID0gYygwLCAxLCAwLCAxKSkNCnIgPC0gYWJzKGNvcih4LCB5
> KSkNCnR4dCA8LSBmb3JtYXQoYyhyLCAwLjEyMzQ1Njc4OSksIGRpZ2l0cz1k
> aWdpdHMpWzFdDQp0eHQgPC0gcGFzdGUocHJlZml4LCB0eHQsIHNlcD0iIikN
> CmlmKG1pc3NpbmcoY2V4LmNvcikpIGNleCA8LSAwLjgvc3Ryd2lkdGgodHh0
> KQ0KdGV4dCgwLjUsIDAuNSwgdHh0LCBjZXggPSBjZXggKiByKQ0KfQ0KcGFp
> cnMocGxvdDMsIHVwcGVyLnBhbmVsPXBhbmVsLmNvcixsYWJlbHM9Yygic3Rv
> Y2sgcmV0dXJucyIsIkZGIGZpdHMiLCJDQVBNIGZpdHMiKSkNCmZmcmVnMj1s
> bShjb21iaW5lZFssMV1+Y29tYmluZWRbLDRdK2NvbWJpbmVkWyw1XStjb21i
> aW5lZFssNl0pOw0KemNvbWJpbmVkPXpvbyhjb21iaW5lZCk7DQoNCg0Kem9v
> Y29lZmNhcG1iZXRhPWZ1bmN0aW9uKHgpIHsNCnpvby53bGU9d2xlLmxtKHhb
> LDFdfnhbLDRdKTsNCmNvZWYgKHpvby53bGUpDQp9DQoNCnJvbGxjb2VmY2Fw
> bT1yb2xsYXBwbHkoemNvbWJpbmVkLHNwYW4sem9vY29lZmNhcG1iZXRhLGJ5
> LmNvbHVtbj1GQUxTRSxhbGlnbj0icmlnaHQiKTsNCmRmcm9sbGNvZWZjYXBt
> PWFzLmRhdGEuZnJhbWUocm9sbGNvZWZjYXBtKQ0KbmFtZXMoZGZyb2xsY29l
> ZmNhcG0pWzFdPSJhbHBoYSINCm5hbWVzKGRmcm9sbGNvZWZjYXBtKVsyXT0i
> bWt0IGJldGEiDQpSb2xsaW5nQ29lZmZpY2llbnRzQ0FQTT16b28oZGZyb2xs
> Y29lZmNhcG0sIG9yZGVyLmJ5PWluZGV4KHJvbGxjb2VmY2FwbSkpDQp3aW4u
> Z3JhcGgoKQ0KcGxvdChSb2xsaW5nQ29lZmZpY2llbnRzQ0FQTSkNCg0Kem9v
> Y29lZnNhPWZ1bmN0aW9uKHgpIHsNCnpvby53bGU9d2xlLmxtKHhbLDFdfnhb
> LDRdKyB4Wyw1XSsgeFssNl0pOw0KY29lZiAoem9vLndsZSkNCn0NCg0Kcm9s
> bGNvZWY9cm9sbGFwcGx5KHpjb21iaW5lZCxzcGFuLHpvb2NvZWZzYSxieS5j
> b2x1bW49RkFMU0UsYWxpZ249InJpZ2h0Iik7DQpkZnJvbGxjb2VmPWFzLmRh
> dGEuZnJhbWUocm9sbGNvZWYpDQpuYW1lcyhkZnJvbGxjb2VmKVsxXT0iYWxw
> aGEiDQpuYW1lcyhkZnJvbGxjb2VmKVsyXT0ibWt0IGJldGEiDQpuYW1lcyhk
> ZnJvbGxjb2VmKVszXT0ic21iIg0KbmFtZXMoZGZyb2xsY29lZilbNF09Imht
> bCINClJvbGxpbmdDb2VmZmljaWVudHM9em9vKGRmcm9sbGNvZWYsIG9yZGVy
> LmJ5PWluZGV4KHJvbGxjb2VmKSkNCndpbi5ncmFwaCgpDQpwbG90KFJvbGxp
> bmdDb2VmZmljaWVudHMpDQoNCmNvbXBvc2l0ZWNvZWY9bWVyZ2UoUm9sbGlu
> Z0NvZWZmaWNpZW50cywgUm9sbGluZ0NvZWZmaWNpZW50c0NBUE0sIHpjb21i
> aW5lZFssN10pDQpyb2xsY2FwbWNvZT1mdW5jdGlvbih4KXsNCkNBUE1DT0U9
> eFs2XSpybStyZg0KfQ0Kcm9sbGZmY29lPWZ1bmN0aW9uKHgpew0KRkZDT0U9
> eFsyXSpybSt4WzNdKnNtYit4WzRdKmhtbCtyZg0KfQ0Kcm9sbGZmYmV0YWNv
> ZT1mdW5jdGlvbih4KXsNCkZGQ09FPXhbMl0qcm0gK3JmDQp9DQoNCg0Kcm9s
> bGZmQ09FPXJvbGxhcHBseShjb21wb3NpdGVjb2VmLDEscm9sbGZmY29lLGJ5
> LmNvbHVtbj1GQUxTRSxhbGlnbj0icmlnaHQiKQ0Kcm9sbGNhcG1DT0U9cm9s
> bGFwcGx5KGNvbXBvc2l0ZWNvZWYsMSxyb2xsY2FwbWNvZSxieS5jb2x1bW49
> RkFMU0UsYWxpZ249InJpZ2h0IikNCnJvbGxmZmJldGFDT0U9cm9sbGFwcGx5
> KGNvbXBvc2l0ZWNvZWYsMSxyb2xsZmZiZXRhY29lLGJ5LmNvbHVtbj1GQUxT
> RSxhbGlnbj0icmlnaHQiKQ0KZGZyb2xsY29lPWFzLmRhdGEuZnJhbWUobWVy
> Z2Uocm9sbGZmQ09FLHJvbGxjYXBtQ09FLHJvbGxmZmJldGFDT0UpKQ0KbmFt
> ZXMoZGZyb2xsY29lKVsxXT0iRkZDT0UiDQpuYW1lcyhkZnJvbGxjb2UpWzJd
> PSJDQVBNQ09FIg0KbmFtZXMoZGZyb2xsY29lKVszXT0iRkYoYmV0YSlDT0Ui
> DQoNClJvbGxpbmdDT0U9em9vKGRmcm9sbGNvZSxvcmRlci5ieT1pbmRleChy
> b2xsY2FwbUNPRSkpDQp3aW4uZ3JhcGgoKQ0KcGxvdChSb2xsaW5nQ09FLHBs
> b3QudHlwZT0ibXVsdGlwbGUiKQ0KaWYoKEFJQyhzaW1wbGVyZWcpKTwoQUlD
> KGZmcmVnMikpKSAiQ0FQTSBzdXBlcmlvciB0byBGRiIgZWxzZSAiRkYgc3Vw
> ZXJpb3IgdG8gQ0FQTSI7DQp9DQoNCg0KVXNlIGJ5IHR5cGluZyBzb21ldGhp
> bmcgbGlrZSANCmdldHJmZkJldGEok0JOSZQsc3Bhbj02MCkNCg==
>
> --0-1294175594-1163450154=:83460
> Content-Type: text/plain; charset="us-ascii"
> MIME-Version: 1.0
> Content-Transfer-Encoding: 7bit
> Content-Disposition: inline
>
> _______________________________________________
> R-SIG-Finance at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
>
> --0-1294175594-1163450154=:83460--
> _______________________________________________
> R-SIG-Finance at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
>
>
>
> ____________________________________________________________________________________
>
> Access over 1 million songs.
>
>        [[alternative HTML version deleted]]
>
> _______________________________________________
> R-SIG-Finance at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
>



More information about the R-SIG-Finance mailing list