1### R code from vignette source 'PA-Bacon.Rnw'
2### Encoding: UTF-8
3
4###################################################
5### code chunk number 1: PA-Bacon.Rnw:39-40
6###################################################
7library(PerformanceAnalytics)
8
9
10###################################################
11### code chunk number 2: PA-Bacon.Rnw:53-55
12###################################################
13data(portfolio_bacon)
14print(MeanAbsoluteDeviation(portfolio_bacon[,1])) #expected 0.0310
15
16
17###################################################
18### code chunk number 3: PA-Bacon.Rnw:62-64
19###################################################
20data(portfolio_bacon)
21print(Frequency(portfolio_bacon[,1])) #expected 12
22
23
24###################################################
25### code chunk number 4: PA-Bacon.Rnw:73-75
26###################################################
27data(managers)
28SharpeRatio(managers[,1,drop=FALSE], Rf=.035/12, FUN="StdDev")
29
30
31###################################################
32### code chunk number 5: PA-Bacon.Rnw:86-88
33###################################################
34data(portfolio_bacon)
35print(MSquared(portfolio_bacon[,1], portfolio_bacon[,2])) #expected 0.1068
36
37
38###################################################
39### code chunk number 6: PA-Bacon.Rnw:100-103
40###################################################
41data(portfolio_bacon)
42print(MSquaredExcess(portfolio_bacon[,1], portfolio_bacon[,2])) #expected -0.00998
43print(MSquaredExcess(portfolio_bacon[,1], portfolio_bacon[,2], Method="arithmetic")) #expected -0.011
44
45
46###################################################
47### code chunk number 7: PA-Bacon.Rnw:116-118
48###################################################
49data(managers)
50print(CAPM.alpha(managers[,1,drop=FALSE], managers[,8,drop=FALSE], Rf=.035/12))
51
52
53###################################################
54### code chunk number 8: PA-Bacon.Rnw:125-127
55###################################################
56data(managers)
57CAPM.beta(managers[, "HAM2", drop=FALSE], managers[, "SP500 TR", drop=FALSE], Rf = managers[, "US 3m TR", drop=FALSE])
58
59
60###################################################
61### code chunk number 9: PA-Bacon.Rnw:138-140
62###################################################
63data(managers)
64print(CAPM.epsilon(portfolio_bacon[,1], portfolio_bacon[,2])) #expected -0.013
65
66
67###################################################
68### code chunk number 10: PA-Bacon.Rnw:151-153
69###################################################
70data(portfolio_bacon)
71print(CAPM.jensenAlpha(portfolio_bacon[,1], portfolio_bacon[,2])) #expected -0.014
72
73
74###################################################
75### code chunk number 11: PA-Bacon.Rnw:164-166
76###################################################
77data(portfolio_bacon)
78print(SystematicRisk(portfolio_bacon[,1], portfolio_bacon[,2])) #expected 0.013
79
80
81###################################################
82### code chunk number 12: PA-Bacon.Rnw:173-175
83###################################################
84data(portfolio_bacon)
85print(SpecificRisk(portfolio_bacon[,1], portfolio_bacon[,2])) #expected 0.0329
86
87
88###################################################
89### code chunk number 13: PA-Bacon.Rnw:184-186
90###################################################
91data(portfolio_bacon)
92print(TotalRisk(portfolio_bacon[,1], portfolio_bacon[,2])) #expected 0.0134
93
94
95###################################################
96### code chunk number 14: PA-Bacon.Rnw:195-197
97###################################################
98data(managers)
99print(round(TreynorRatio(managers[,1,drop=FALSE], managers[,8,drop=FALSE], Rf=.035/12),4))
100
101
102###################################################
103### code chunk number 15: PA-Bacon.Rnw:203-205
104###################################################
105data(portfolio_bacon)
106print(TreynorRatio(portfolio_bacon[,1], portfolio_bacon[,2], modified = TRUE)) #expected 1.677
107
108
109###################################################
110### code chunk number 16: PA-Bacon.Rnw:216-218
111###################################################
112data(portfolio_bacon)
113print(AppraisalRatio(portfolio_bacon[,1], portfolio_bacon[,2], method="appraisal")) #expected -0.430
114
115
116###################################################
117### code chunk number 17: PA-Bacon.Rnw:229-231
118###################################################
119data(portfolio_bacon)
120print(AppraisalRatio(portfolio_bacon[,1], portfolio_bacon[,2], method="modified"))
121
122
123###################################################
124### code chunk number 18: PA-Bacon.Rnw:242-244
125###################################################
126data(portfolio_bacon)
127print(FamaBeta(portfolio_bacon[,1], portfolio_bacon[,2])) #expected 1.03
128
129
130###################################################
131### code chunk number 19: PA-Bacon.Rnw:255-257
132###################################################
133data(portfolio_bacon)
134print(Selectivity(portfolio_bacon[,1], portfolio_bacon[,2])) #expected -0.0141
135
136
137###################################################
138### code chunk number 20: PA-Bacon.Rnw:270-272
139###################################################
140data(portfolio_bacon)
141print(NetSelectivity(portfolio_bacon[,1], portfolio_bacon[,2])) #expected -0.017
142
143
144###################################################
145### code chunk number 21: PA-Bacon.Rnw:285-287
146###################################################
147data(managers)
148TrackingError(managers[,1,drop=FALSE], managers[,8,drop=FALSE])
149
150
151###################################################
152### code chunk number 22: PA-Bacon.Rnw:298-300
153###################################################
154data(managers)
155InformationRatio(managers[,"HAM1",drop=FALSE], managers[, "SP500 TR", drop=FALSE])
156
157
158###################################################
159### code chunk number 23: PA-Bacon.Rnw:313-315
160###################################################
161data(managers)
162skewness(managers)
163
164
165###################################################
166### code chunk number 24: PA-Bacon.Rnw:324-326
167###################################################
168data(portfolio_bacon)
169print(skewness(portfolio_bacon[,1], method="sample")) #expected -0.09
170
171
172###################################################
173### code chunk number 25: PA-Bacon.Rnw:337-339
174###################################################
175data(portfolio_bacon)
176print(kurtosis(portfolio_bacon[,1], method="moment")) #expected 2.43
177
178
179###################################################
180### code chunk number 26: PA-Bacon.Rnw:348-350
181###################################################
182data(portfolio_bacon)
183print(kurtosis(portfolio_bacon[,1], method="excess")) #expected -0.57
184
185
186###################################################
187### code chunk number 27: PA-Bacon.Rnw:359-361
188###################################################
189data(portfolio_bacon)
190print(kurtosis(portfolio_bacon[,1], method="sample")) #expected 3.03
191
192
193###################################################
194### code chunk number 28: PA-Bacon.Rnw:370-372
195###################################################
196data(portfolio_bacon)
197print(kurtosis(portfolio_bacon[,1], method="sample_excess")) #expected -0.41
198
199
200###################################################
201### code chunk number 29: PA-Bacon.Rnw:385-387
202###################################################
203data(portfolio_bacon)
204print(PainIndex(portfolio_bacon[,1])) #expected 0.04
205
206
207###################################################
208### code chunk number 30: PA-Bacon.Rnw:394-396
209###################################################
210data(managers)
211CalmarRatio(managers[,1,drop=FALSE])
212
213
214###################################################
215### code chunk number 31: PA-Bacon.Rnw:403-405
216###################################################
217data(managers)
218SterlingRatio(managers[,1,drop=FALSE])
219
220
221###################################################
222### code chunk number 32: PA-Bacon.Rnw:416-418
223###################################################
224data(portfolio_bacon)
225print(BurkeRatio(portfolio_bacon[,1])) #expected 0.74
226
227
228###################################################
229### code chunk number 33: PA-Bacon.Rnw:429-431
230###################################################
231data(portfolio_bacon)
232print(BurkeRatio(portfolio_bacon[,1], modified = TRUE)) #expected 3.65
233
234
235###################################################
236### code chunk number 34: PA-Bacon.Rnw:442-444
237###################################################
238data(portfolio_bacon)
239print(MartinRatio(portfolio_bacon[,1])) #expected 1.70
240
241
242###################################################
243### code chunk number 35: PA-Bacon.Rnw:455-457
244###################################################
245data(portfolio_bacon)
246print(PainRatio(portfolio_bacon[,1])) #expected 2.66
247
248
249###################################################
250### code chunk number 36: PA-Bacon.Rnw:474-478
251###################################################
252data(portfolio_bacon)
253MAR = 0.5
254DownsideDeviation(portfolio_bacon[,1], MAR) #expected 0.493
255DownsidePotential(portfolio_bacon[,1], MAR) #expected 0.491
256
257
258###################################################
259### code chunk number 37: PA-Bacon.Rnw:494-499
260###################################################
261data(portfolio_bacon)
262MAR = 0.005
263print(UpsideRisk(portfolio_bacon[,1], MAR, stat="risk")) #expected 0.02937
264print(UpsideRisk(portfolio_bacon[,1], MAR, stat="variance")) #expected 0.08628
265print(UpsideRisk(portfolio_bacon[,1], MAR, stat="potential")) #expected 0.01771
266
267
268###################################################
269### code chunk number 38: PA-Bacon.Rnw:510-513
270###################################################
271data(portfolio_bacon)
272MAR = 0.005
273print(DownsideFrequency(portfolio_bacon[,1], MAR)) #expected 0.458
274
275
276###################################################
277### code chunk number 39: PA-Bacon.Rnw:524-526
278###################################################
279data(portfolio_bacon)
280print(BernardoLedoitRatio(portfolio_bacon[,1])) #expected 1.78
281
282
283###################################################
284### code chunk number 40: PA-Bacon.Rnw:539-541
285###################################################
286data(portfolio_bacon)
287print(DRatio(portfolio_bacon[,1])) #expected 0.401
288
289
290###################################################
291### code chunk number 41: PA-Bacon.Rnw:554-557
292###################################################
293data(portfolio_bacon)
294MAR = 0.005
295print(OmegaSharpeRatio(portfolio_bacon[,1], MAR)) #expected 0.29
296
297
298###################################################
299### code chunk number 42: PA-Bacon.Rnw:568-570
300###################################################
301data(managers)
302round(SortinoRatio(managers[, 1]),4)
303
304
305###################################################
306### code chunk number 43: PA-Bacon.Rnw:581-585
307###################################################
308data(portfolio_bacon)
309MAR = 0.005
310l = 2
311print(Kappa(portfolio_bacon[,1], MAR, l)) #expected 0.157
312
313
314###################################################
315### code chunk number 44: PA-Bacon.Rnw:596-598
316###################################################
317data(edhec)
318UpsidePotentialRatio(edhec[, 6], MAR=.05/12) #5 percent/yr MAR
319
320
321###################################################
322### code chunk number 45: PA-Bacon.Rnw:609-612
323###################################################
324data(portfolio_bacon)
325MAR = 0.005
326print(VolatilitySkewness(portfolio_bacon[,1], MAR, stat="volatility")) #expected 1.32
327
328
329###################################################
330### code chunk number 46: PA-Bacon.Rnw:623-626
331###################################################
332data(portfolio_bacon)
333MAR = 0.005
334print(VolatilitySkewness(portfolio_bacon[,1], MAR, stat="variability")) #expected 1.15
335
336
337###################################################
338### code chunk number 47: PA-Bacon.Rnw:637-639
339###################################################
340data(portfolio_bacon)
341print(AdjustedSharpeRatio(portfolio_bacon[,1])) #expected 0.81
342
343
344###################################################
345### code chunk number 48: PA-Bacon.Rnw:652-654
346###################################################
347data(portfolio_bacon)
348print(SkewnessKurtosisRatio(portfolio_bacon[,1])) #expected -0.034
349
350
351###################################################
352### code chunk number 49: PA-Bacon.Rnw:665-668
353###################################################
354data(portfolio_bacon)
355MAR = 0.05
356print(ProspectRatio(portfolio_bacon[,1], MAR)) #expected -0.134
357
358
359###################################################
360### code chunk number 50: PA-Bacon.Rnw:681-684
361###################################################
362data(portfolio_bacon)
363MAR = 0.005
364print(M2Sortino(portfolio_bacon[,1], portfolio_bacon[,2], MAR)) #expected 0.1035
365
366
367###################################################
368### code chunk number 51: PA-Bacon.Rnw:695-698
369###################################################
370data(portfolio_bacon)
371MAR = 0.005
372print(OmegaExcessReturn(portfolio_bacon[,1], portfolio_bacon[,2], MAR)) #expected 0.0805
373
374
375###################################################
376### code chunk number 52: PA-Bacon.Rnw:707-709
377###################################################
378data(managers)
379table.Variability(managers[,1:8])
380
381
382###################################################
383### code chunk number 53: PA-Bacon.Rnw:717-719
384###################################################
385data(managers)
386table.SpecificRisk(managers[,1:8], managers[,8])
387
388
389###################################################
390### code chunk number 54: PA-Bacon.Rnw:726-728
391###################################################
392data(managers)
393table.InformationRatio(managers[,1:8], managers[,8])
394
395
396###################################################
397### code chunk number 55: PA-Bacon.Rnw:735-737
398###################################################
399data(managers)
400table.Distributions(managers[,1:8])
401
402
403###################################################
404### code chunk number 56: PA-Bacon.Rnw:744-746
405###################################################
406data(managers)
407table.DrawdownsRatio(managers[,1:8])
408
409
410###################################################
411### code chunk number 57: PA-Bacon.Rnw:753-755
412###################################################
413data(managers)
414table.DownsideRiskRatio(managers[,1:8])
415
416
417###################################################
418### code chunk number 58: PA-Bacon.Rnw:762-764
419###################################################
420data(managers)
421table.AnnualizedReturns(managers[,1:8])
422
423
424