# Load packages

# Core
library(tidyverse)
library(tidyquant)

Goal

Examine how each asset contributes to portfolio standard deviation. This is to ensure that our risk is not concentrated in any one asset.

1 Import stock prices

symbols <- c("UNH", "LLY", "JNJ", "PFE", "MRK")

prices <- tq_get(x = symbols, 
                 get = "stock.prices", 
                 from = "2000-12-31", 
                 to = "2025-06-11")

2 Convert prices to returns (monthly)

asset_returns_tbl <- prices %>%
    
    group_by(symbol) %>% 
    
    tq_transmute(select = adjusted, 
                 mutate_fun = periodReturn,
                 period = "monthly",
                 type = "log") %>%
    
    slice(-1) %>%
    
    ungroup() %>%
    
    set_names(c("asset", "date", "returns"))

3 Component Contribution Step-by-Step

Refresh your memory on covariance with this video. Click this link Refresh your memory on matrix multiplication. Click this link

# Transform data into wide form
asset_returns_wide_tbl <- asset_returns_tbl %>%

    pivot_wider(names_from = asset, values_from = returns) %>%

    column_to_rownames(var = "date")

asset_returns_wide_tbl
##                      JNJ           LLY           MRK           PFE
## 2001-02-28  0.0474629785  1.182913e-02 -0.0243879699 -0.0008819333
## 2001-03-30 -0.1068120042 -3.587341e-02 -0.0507072707 -0.0943104762
## 2001-04-30  0.0980394438  1.032710e-01  0.0009216663  0.0558003710
## 2001-05-31  0.0084417387 -2.362941e-04 -0.0353659025 -0.0069508880
## 2001-06-29  0.0301750094 -1.350508e-01 -0.1328462415 -0.0685097502
## 2001-07-31  0.0796110301  6.892119e-02  0.0617377648  0.0287949636
## 2001-08-31 -0.0227442391 -1.744058e-02 -0.0380627890 -0.0705303644
## 2001-09-28  0.0497746796  3.878474e-02  0.0227801661  0.0456650113
## 2001-10-31  0.0443103387 -5.344767e-02 -0.0427948738  0.0439100922
## 2001-11-30  0.0088586459  8.113962e-02  0.0599146874  0.0356836406
## 2001-12-31  0.0144865869 -5.124910e-02 -0.1364939974 -0.0832606813
## 2002-01-31 -0.0272719846 -4.478779e-02  0.0064420686  0.0446589349
## 2002-02-28  0.0603777565  1.245504e-02  0.0356854516 -0.0140234190
## 2002-03-28  0.0643844438  6.186920e-03 -0.0574154324 -0.0302381166
## 2002-04-30 -0.0169242981 -1.429495e-01 -0.0579144337 -0.0891642249
## 2002-05-31 -0.0367069057 -1.584911e-02  0.0495437155 -0.0458551839
## 2002-06-28 -0.1603629295 -1.372914e-01 -0.1136378114  0.0114943027
## 2002-07-31  0.0064839852  3.518886e-02 -0.0207508504 -0.0787342091
## 2002-08-30  0.0356617452 -9.947276e-04  0.0183785810  0.0264137909
## 2002-09-30 -0.0042436384 -4.780833e-02 -0.0925033287 -0.1309434884
## 2002-10-31  0.0828270186  2.886805e-03  0.1711014311  0.0905370350
## 2002-11-29 -0.0264931858  2.125896e-01  0.0910437704 -0.0037025617
## 2002-12-31 -0.0598031419 -7.287023e-02 -0.0421377702 -0.0309205625
## 2003-01-31 -0.0018633934 -5.270319e-02 -0.0217864552 -0.0020460709
## 2003-02-28 -0.0177671166 -5.743942e-02 -0.0488356175 -0.0179464215
## 2003-03-31  0.0983390289  1.037744e-02  0.0447614110  0.0439558543
## 2003-04-30 -0.0264393617  1.103873e-01  0.0602166331 -0.0132449766
## 2003-05-30 -0.0319765509 -6.034482e-02 -0.0457176131  0.0132578970
## 2003-06-30 -0.0499870021  1.431678e-01  0.0920602196  0.0961305193
## 2003-07-31  0.0017393998 -4.644410e-02 -0.0910580721 -0.0234052181
## 2003-08-29 -0.0388924761  1.576697e-02 -0.0389852582 -0.1042565558
## 2003-09-30 -0.0012111509 -1.133587e-01  0.0132155896  0.0152576565
## 2003-10-31  0.0162248086  1.147110e-01 -0.1344918507  0.0393727962
## 2003-11-28 -0.0158980864  3.736383e-02 -0.0860871730  0.0652042179
## 2003-12-31  0.0467602768  2.199471e-02  0.1379552299  0.0510991281
## 2004-01-30  0.0335008424 -3.310360e-02  0.0298537003  0.0361351737
## 2004-02-27  0.0135319500  8.793226e-02  0.0100331559  0.0050243086
## 2004-03-31 -0.0609958317 -1.000545e-01 -0.0765884363 -0.0446377084
## 2004-04-30  0.0632188983  9.829513e-02  0.0616487146  0.0200544832
## 2004-05-28  0.0358228853  2.920112e-03  0.0063627267 -0.0070689586
## 2004-06-30 -0.0001799210 -5.238690e-02  0.0118997038 -0.0304534427
## 2004-07-30 -0.0077496022 -9.271017e-02 -0.0463191953 -0.0700768879
## 2004-08-31  0.0550104544  1.584054e-03 -0.0084145699  0.0273864135
## 2004-09-30 -0.0309381271 -5.507444e-02 -0.3010023133 -0.0654566687
## 2004-10-29  0.0357456141 -8.948224e-02 -0.0525700461 -0.0554301027
## 2004-11-30  0.0374044491 -2.289670e-02 -0.1110190035 -0.0356122563
## 2004-12-31  0.0501158502  6.215697e-02  0.1508373604 -0.0322011762
## 2005-01-31  0.0199814900 -4.523696e-02 -0.1361130546 -0.1070564744
## 2005-02-28  0.0181332676  3.889164e-02  0.1223287951  0.0919540756
## 2005-03-31  0.0235025336 -7.218715e-02  0.0328122177 -0.0007603746
## 2005-04-29  0.0216516572  1.153492e-01  0.0461829384  0.0336857384
## 2005-05-31 -0.0176554049  3.535286e-03 -0.0440221692  0.0334057447
## 2005-06-30 -0.0317967199 -4.544213e-02 -0.0400951804 -0.0115353927
## 2005-07-29 -0.0161296147  1.088972e-02  0.0084062734 -0.0399463988
## 2005-08-31 -0.0038022469 -1.627747e-02 -0.0820126112 -0.0321093403
## 2005-09-30 -0.0017367248 -2.764198e-02 -0.0368000235 -0.0202184913
## 2005-10-31 -0.0104849251 -7.224062e-02  0.0364462142 -0.1385210948
## 2005-11-30 -0.0087670366  2.148933e-02  0.0537031132 -0.0165845934
## 2005-12-30 -0.0270840127  1.138586e-01  0.0787855322  0.0953101603
## 2006-01-31 -0.0435288900  5.298758e-04  0.0811787026  0.0964008722
## 2006-02-28  0.0075576219 -1.067408e-02  0.0103809730  0.0292420894
## 2006-03-31  0.0268686563 -5.769788e-03  0.0215057032 -0.0497067986
## 2006-04-28 -0.0103538079 -4.399159e-02 -0.0232603689  0.0163192874
## 2006-05-31  0.0332867983 -1.677187e-02 -0.0218480597 -0.0587515164
## 2006-06-30 -0.0049943166  6.793389e-02  0.0901362214 -0.0080628642
## 2006-07-31  0.0429563778  2.677748e-02  0.1002138038  0.1019891430
## 2006-08-31  0.0389626665 -7.645602e-03  0.0161794979  0.0678701134
## 2006-09-29  0.0043214639  1.895033e-02  0.0327498552  0.0286142666
## 2006-10-31  0.0371808552 -1.752091e-02  0.0806663921 -0.0621908016
## 2006-11-30 -0.0167225965 -3.675274e-02 -0.0202390994  0.0398665196
## 2006-12-29  0.0016673542 -2.819714e-02 -0.0122484876 -0.0595787683
## 2007-01-31  0.0117452884  3.803855e-02  0.0260339365  0.0130415295
## 2007-02-28 -0.0538745345 -2.083566e-02 -0.0134979423 -0.0391432335
## 2007-03-30 -0.0433543261  2.107260e-02  0.0089955936  0.0119480057
## 2007-04-30  0.0636462141  9.613968e-02  0.1523703122  0.0464120348
## 2007-05-31 -0.0083782383 -1.396803e-03  0.0194440706  0.0488478339
## 2007-06-29 -0.0264250877 -4.786962e-02 -0.0444307721 -0.0724023952
## 2007-07-31 -0.0183430763 -3.255738e-02 -0.0030166090 -0.0839939948
## 2007-08-31  0.0278021826  6.598648e-02  0.0104186018  0.0670110135
## 2007-09-28  0.0613570605 -7.350175e-03  0.0374703450 -0.0166436806
## 2007-10-31 -0.0080993669 -5.006456e-02  0.1196514764  0.0073411979
## 2007-11-30  0.0448777413 -1.428224e-02  0.0187046466 -0.0229566568
## 2007-12-31 -0.0154715832  8.276051e-03 -0.0147533932 -0.0443180494
## 2008-01-31 -0.0548504540 -3.817996e-02 -0.2315248336  0.0273399506
## 2008-02-29 -0.0122545404 -1.776572e-02 -0.0398282797 -0.0333007001
## 2008-03-31  0.0458964611  3.090487e-02 -0.1459934238 -0.0625060702
## 2008-04-30  0.0336496805 -6.921469e-02  0.0023684244 -0.0399664685
## 2008-05-30  0.0017923339  9.685716e-03  0.0238971342 -0.0222132161
## 2008-06-30 -0.0366231201 -4.199986e-02 -0.0231818833 -0.1027236279
## 2008-07-31  0.0622143623  2.037225e-02 -0.1359224163  0.0664326629
## 2008-08-29  0.0346979887 -2.235079e-04  0.0808371937  0.0396626877
## 2008-09-30 -0.0164629209 -5.780234e-02 -0.1114492287 -0.0356897844
## 2008-10-31 -0.1217241362 -2.638188e-01 -0.0195177407 -0.0403929255
## 2008-11-28 -0.0377623759  2.364303e-02 -0.1469609457 -0.0574856913
## 2008-12-31  0.0211136272  1.648441e-01  0.1433758898  0.0750204693
## 2009-01-30 -0.0364231037 -8.956579e-02 -0.0627859749 -0.1944783769
## 2009-02-27 -0.1348025579 -2.123735e-01 -0.1653039637 -0.1479612581
## 2009-03-31  0.0506930915  1.285413e-01  0.1168050115  0.1011271593
## 2009-04-30 -0.0045732347 -1.477519e-02 -0.0985301253 -0.0192740524
## 2009-05-29  0.0609042888  6.264942e-02  0.1290869249  0.1396395406
## 2009-06-30  0.0292982337  2.022421e-03  0.0275521437 -0.0125871299
## 2009-07-31  0.0695326795  7.191117e-03  0.0707558897  0.0601540966
## 2009-08-31  0.0006540532 -2.718905e-02  0.0775535476  0.0572109457
## 2009-09-30  0.0074175141 -1.293509e-02 -0.0129526434 -0.0090225989
## 2009-10-30 -0.0306842506  2.923844e-02 -0.0223790742  0.0285907761
## 2009-11-30  0.0700867916  9.090944e-02  0.1576085488  0.0743130493
## 2009-12-31  0.0246776774 -2.816308e-02  0.0192464464  0.0011003851
## 2010-01-29 -0.0243590063 -1.438409e-02  0.0439038371  0.0255099512
## 2010-02-26  0.0098466979 -1.071784e-02 -0.0346422985 -0.0519287862
## 2010-03-31  0.0343250070  5.330154e-02  0.0230802831 -0.0230554898
## 2010-04-30 -0.0138996733 -3.512125e-02 -0.0638423483 -0.0253926568
## 2010-05-28 -0.0888649217 -5.038076e-02 -0.0392896382 -0.0828549920
## 2010-06-30  0.0129516205  2.142187e-02  0.0483170957 -0.0658086151
## 2010-07-30 -0.0165606754  6.080015e-02 -0.0146913955  0.0505913799
## 2010-08-31 -0.0092047295 -4.505895e-02  0.0201100090  0.0699747613
## 2010-09-30  0.0830868174  8.390550e-02  0.0562828207  0.0762159781
## 2010-10-29  0.0283233809 -3.708789e-02 -0.0136764130  0.0144555271
## 2010-11-30 -0.0263937759 -3.094268e-02 -0.0520036390 -0.0561682988
## 2010-12-31  0.0048620972  4.018020e-02  0.0551546690  0.0716076354
## 2011-01-31 -0.0342080801 -7.735583e-03 -0.0829835930  0.0397473846
## 2011-02-28  0.0365603500  7.793989e-03 -0.0182543960  0.0649315754
## 2011-03-31 -0.0362952957  1.749634e-02  0.0250363339  0.0541220920
## 2011-04-29  0.1036373603  5.099491e-02  0.0853185725  0.0319790629
## 2011-05-31  0.0322440686  5.168610e-02  0.0220093521  0.0322660078
## 2011-06-30 -0.0115087571 -2.499808e-02 -0.0297618826 -0.0404332869
## 2011-07-29 -0.0263513153  2.030941e-02 -0.0334227548 -0.0677802487
## 2011-08-31  0.0243381665 -6.533726e-03 -0.0306433071 -0.0030387036
## 2011-09-30 -0.0325923592 -1.450051e-02 -0.0002123270 -0.0709517669
## 2011-10-31  0.0109305834  5.126268e-03  0.0535845045  0.0855965330
## 2011-11-30  0.0143496878  3.142832e-02  0.0355905431  0.0512105759
## 2011-12-30  0.0132004442  9.350730e-02  0.0650420828  0.0753175023
## 2012-01-31  0.0050196633 -4.477996e-02  0.0150061322 -0.0111527615
## 2012-02-29 -0.0038785901 -1.181382e-04 -0.0026163253 -0.0023636549
## 2012-03-30  0.0134306887  2.591007e-02  0.0170924659  0.0694665051
## 2012-04-30 -0.0131235116  2.743244e-02  0.0216390314  0.0109769140
## 2012-05-31 -0.0321910020  1.118650e-03 -0.0432245510 -0.0361598418
## 2012-06-29  0.0789703944  4.675290e-02  0.1160970397  0.0503781678
## 2012-07-31  0.0242739051  2.576592e-02  0.0563465534  0.0442253758
## 2012-08-31 -0.0171544031  3.109179e-02 -0.0256836873  0.0016775415
## 2012-09-28  0.0217115641  5.417265e-02  0.0559963600  0.0406541140
## 2012-10-31  0.0273400059  2.540737e-02  0.0116835551  0.0008048591
## 2012-11-30 -0.0067063727  1.859270e-02 -0.0295810191  0.0149563272
## 2012-12-31  0.0052919676  5.692969e-03 -0.0693309187  0.0023951114
## 2013-01-31  0.0530606030  8.489711e-02  0.0548895412  0.0927852515
## 2013-02-28  0.0371635781  2.705541e-02 -0.0120959994  0.0032936379
## 2013-03-28  0.0687911689  3.822786e-02  0.0434167149  0.0530092474
## 2013-04-30  0.0443826011 -2.514162e-02  0.0614227391  0.0072498951
## 2013-05-31 -0.0049069962 -3.216777e-02 -0.0064032842 -0.0570854717
## 2013-06-28  0.0197603282 -7.904005e-02  0.0037742811  0.0282424551
## 2013-07-31  0.0852439526  7.809910e-02  0.0363599576  0.0507557207
## 2013-08-30 -0.0713520038 -2.362021e-02 -0.0184375024 -0.0355190924
## 2013-09-30  0.0032344739 -2.103695e-02  0.0157163836  0.0182650446
## 2013-10-31  0.0660590123 -1.018478e-02 -0.0543824788  0.0659954063
## 2013-11-29  0.0288513343  1.783345e-02  0.0999567237  0.0410375091
## 2013-12-31 -0.0329695412  1.541228e-02  0.0134348452 -0.0352826348
## 2014-01-31 -0.0346585168  5.734364e-02  0.0567029566 -0.0075373857
## 2014-02-28  0.0475983271  1.076839e-01  0.0731501377  0.0630294050
## 2014-03-31  0.0642197693 -1.266173e-02  0.0039071845  0.0003108396
## 2014-04-30  0.0306760114  4.069060e-03  0.0310441706 -0.0264996176
## 2014-05-30  0.0086217856  2.105837e-02 -0.0120256245 -0.0453178575
## 2014-06-30  0.0306703879  3.786405e-02  0.0073368790  0.0016860615
## 2014-07-31 -0.0442651152 -1.801566e-02 -0.0193741746 -0.0247922473
## 2014-08-29  0.0424630876  4.814390e-02  0.0576968890  0.0237569727
## 2014-09-30  0.0271978929  2.009260e-02 -0.0066361702  0.0061060766
## 2014-10-31  0.0111031532  2.256510e-02 -0.0228637306  0.0127689792
## 2014-11-28  0.0108425220  3.387683e-02  0.0415809585  0.0479083539
## 2014-12-31 -0.0345867443  1.269081e-02 -0.0540976357  0.0000000000
## 2015-01-30 -0.0432873742  4.270426e-02  0.0596397200  0.0032052706
## 2015-02-27  0.0303666319 -1.862776e-02 -0.0292898504  0.1024915997
## 2015-03-31 -0.0188081255  3.473274e-02 -0.0102140083  0.0136020799
## 2015-04-30 -0.0140143683 -1.079448e-02  0.0355471150 -0.0250306219
## 2015-05-29  0.0166972659  1.002141e-01  0.0220846295  0.0321205125
## 2015-06-30 -0.0271273715  5.654570e-02 -0.0596686281 -0.0357393465
## 2015-07-31  0.0278259095  1.214305e-02  0.0350368364  0.0727437655
## 2015-08-31 -0.0565651511 -1.988841e-02 -0.0906570012 -0.1048124234
## 2015-09-30 -0.0067260548  1.614117e-02 -0.0778817877 -0.0254612609
## 2015-10-30  0.0790618368 -2.565850e-02  0.1013841016  0.0739261959
## 2015-11-30  0.0094211438  1.206623e-02 -0.0306517997 -0.0234999705
## 2015-12-31  0.0145125420  2.669984e-02  0.0050142535 -0.0150657459
## 2016-01-29  0.0166059094 -6.319403e-02 -0.0415562952 -0.0570487032
## 2016-02-29  0.0145668798 -8.710658e-02 -0.0091197596 -0.0172591917
## 2016-03-31  0.0280226407  1.390331e-04  0.0610887600 -0.0010112748
## 2016-04-29  0.0352317508  4.772512e-02  0.0358274788  0.0985560031
## 2016-05-31  0.0125416948  1.293397e-05  0.0255642867  0.0679738570
## 2016-06-30  0.0736265226  4.839085e-02  0.0318423701  0.0145907401
## 2016-07-29  0.0318851907  5.123637e-02  0.0180618139  0.0466102602
## 2016-08-31 -0.0415265227 -5.766410e-02  0.0680379371 -0.0500449721
## 2016-09-30 -0.0101907495  3.177266e-02  0.0012358987 -0.0270875836
## 2016-10-31 -0.0182819100 -8.337109e-02 -0.0609453579 -0.0658978227
## 2016-11-30 -0.0343882134 -8.889145e-02  0.0412035105  0.0233933992
## 2016-12-30  0.0345271641  9.148373e-02 -0.0310080171  0.0105232423
## 2017-01-31 -0.0171586901  4.622940e-02  0.0516414905 -0.0233618486
## 2017-02-28  0.0827383970  7.906102e-02  0.0607102963  0.0827573024
## 2017-03-31  0.0189664247  1.557664e-02 -0.0288233322  0.0026343466
## 2017-04-28 -0.0087090692 -2.467527e-02 -0.0192268920 -0.0085130702
## 2017-05-31  0.0445927389 -2.437656e-02  0.0436354822 -0.0285273115
## 2017-06-30  0.0310152336  3.373377e-02 -0.0084638543  0.0283832349
## 2017-07-31  0.0032450783  4.364935e-03 -0.0032820106 -0.0128836760
## 2017-08-31  0.0037006042 -1.035516e-02 -0.0003130550  0.0323810706
## 2017-09-29 -0.0179898881  5.096105e-02  0.0098654707  0.0511458121
## 2017-10-31  0.0698078309 -4.299696e-02 -0.1503834409 -0.0180898662
## 2017-11-30  0.0055311385  3.871501e-02  0.0032617628  0.0427505039
## 2017-12-29  0.0027950885 -2.128704e-03  0.0264015413 -0.0011036976
## 2018-01-31 -0.0110106288 -3.628887e-02  0.0516040608  0.0223866709
## 2018-02-28 -0.0556357291 -4.850900e-02 -0.0887157617 -0.0106832402
## 2018-03-29 -0.0134094607  4.534215e-03  0.0133068829 -0.0228424308
## 2018-04-30 -0.0130381215  4.671349e-02  0.0776818520  0.0310707185
## 2018-05-31 -0.0484538691  5.468068e-02  0.0111486031 -0.0090345402
## 2018-06-29  0.0142761411  3.404172e-03  0.0271618760  0.0096941507
## 2018-07-31  0.0881371511  1.466730e-01  0.0817394275  0.0958614139
## 2018-08-31  0.0228843889  7.244387e-02  0.0404632755  0.0475258602
## 2018-09-28  0.0255091751  1.559023e-02  0.0404876284  0.0596042182
## 2018-10-31  0.0130860288  1.047501e-02  0.0369465828 -0.0231849672
## 2018-11-30  0.0545289753  9.491862e-02  0.0749615165  0.0787214554
## 2018-12-31 -0.1295522010 -2.492020e-02 -0.0306430950 -0.0574253982
## 2019-01-31  0.0307505671  3.515081e-02 -0.0262544857 -0.0191806285
## 2019-02-28  0.0330097458  5.766186e-02  0.0881638540  0.0209794177
## 2019-03-29  0.0227915571  2.710570e-02  0.0296266787 -0.0205086666
## 2019-04-30  0.0100360123 -1.031708e-01 -0.0551166104 -0.0447835073
## 2019-05-31 -0.0670164667 -3.848614e-03  0.0063326098  0.0309908556
## 2019-06-28  0.0601445174 -4.543642e-02  0.0635835066  0.0424394266
## 2019-07-31 -0.0672611315 -1.674735e-02 -0.0103095397 -0.1091639462
## 2019-08-30 -0.0069209206  4.182361e-02  0.0410774812 -0.0791984103
## 2019-09-30  0.0079150275 -1.014244e-02 -0.0202163301  0.0106325007
## 2019-10-31  0.0203510004  1.877990e-02  0.0290349156  0.0657032531
## 2019-11-29  0.0473508669  3.513604e-02  0.0059824850  0.0135197785
## 2019-12-31  0.0591642917  1.133135e-01  0.0491684457  0.0169889788
## 2020-01-31  0.0203576422  6.059333e-02 -0.0624952668 -0.0406200003
## 2020-02-28 -0.0953015309 -9.658465e-02 -0.1097396065 -0.1082288667
## 2020-03-31 -0.0252262371  9.514430e-02  0.0131782443 -0.0236160137
## 2020-04-30  0.1347126973  1.086425e-01  0.0307161436  0.1614769628
## 2020-05-29 -0.0017267346 -6.292050e-03  0.0172444455  0.0054747229
## 2020-06-30 -0.0561345663  7.085222e-02 -0.0349869721 -0.1551986794
## 2020-07-31  0.0358289682 -8.839704e-02  0.0369401815  0.1724897743
## 2020-08-31  0.0577861588 -7.859785e-03  0.0608003684 -0.0180941115
## 2020-09-30 -0.0299732104 -2.496490e-03 -0.0203377567 -0.0292674885
## 2020-10-30 -0.0823571468 -1.262807e-01 -0.0979539517 -0.0338078365
## 2020-11-30  0.0606654199  1.152646e-01  0.0666055075  0.1395659477
## 2020-12-31  0.0841391836  1.477453e-01  0.0252536852 -0.0399413639
## 2021-01-29  0.0358840545  2.084422e-01 -0.0595629368 -0.0142122206
## 2021-02-26 -0.0228290428 -1.075300e-02 -0.0594740814 -0.0694904340
## 2021-03-31  0.0364962667 -9.232771e-02  0.0684809264  0.0786404873
## 2021-04-30 -0.0099062387 -2.191719e-02 -0.0341742698  0.0646593703
## 2021-05-28  0.0455043095  9.319737e-02  0.0184856324  0.0118728918
## 2021-06-30 -0.0270084191  1.389737e-01  0.0799133085  0.0110414154
## 2021-07-30  0.0442882295  5.912664e-02 -0.0116399346  0.0981322647
## 2021-08-31  0.0113110621  6.218977e-02 -0.0075739304  0.0733900727
## 2021-09-30 -0.0695379399 -1.114488e-01 -0.0066661777 -0.0687293999
## 2021-10-29  0.0085085731  9.768766e-02  0.1589511818  0.0168305107
## 2021-11-30 -0.0370778016 -2.349009e-02 -0.1616173817  0.2144482427
## 2021-12-31  0.0926656937  1.076076e-01  0.0322738353  0.0944128330
## 2022-01-31  0.0071062613 -1.183490e-01  0.0612383576 -0.1063844368
## 2022-02-28 -0.0394443677  2.257796e-02 -0.0620215060 -0.1155554690
## 2022-03-31  0.0741123292  1.360238e-01  0.0778490697  0.0979406228
## 2022-04-29  0.0180610005  1.991421e-02  0.0778179675 -0.0535631197
## 2022-05-31  0.0012383101  7.377324e-02  0.0369677380  0.0859204960
## 2022-06-30 -0.0113153940  3.384500e-02 -0.0012381079 -0.0115673628
## 2022-07-29 -0.0169876324  1.669978e-02 -0.0202765888 -0.0295781385
## 2022-08-31 -0.0718288846 -8.701942e-02 -0.0455714903 -0.1104107611
## 2022-09-30  0.0124424969  7.086131e-02  0.0168934658 -0.0330403034
## 2022-10-31  0.0629265788  1.131574e-01  0.1613569242  0.0618067971
## 2022-11-30  0.0293344825  2.731025e-02  0.0844719437  0.0826267442
## 2022-12-30 -0.0076132664 -1.422133e-02  0.0141125583  0.0219010273
## 2023-01-31 -0.0778466696 -6.111843e-02 -0.0324263390 -0.1395624907
## 2023-02-28 -0.0570213022 -9.734731e-02 -0.0109524912 -0.0847904356
## 2023-03-31  0.0112893637  9.845402e-02  0.0083391461  0.0056530468
## 2023-04-28  0.0546104062  1.421063e-01  0.0818991596 -0.0479448078
## 2023-05-31 -0.0467065773  8.406576e-02 -0.0448100065 -0.0118621283
## 2023-06-30  0.0652797810  8.803154e-02  0.0507760321 -0.0358807788
## 2023-07-31  0.0120705601 -3.125219e-02 -0.0787652078 -0.0059677531
## 2023-08-31 -0.0283091344  2.003591e-01  0.0216119371 -0.0190375598
## 2023-09-29 -0.0373670408 -3.128555e-02 -0.0501268696 -0.0645009924
## 2023-10-31 -0.0487452802  3.079818e-02 -0.0024311924 -0.0819537499
## 2023-11-30  0.0496985600  6.669139e-02 -0.0021445128  0.0104429707
## 2023-12-29  0.0133592993 -1.383362e-02  0.0690785646 -0.0567143785
## 2024-01-31  0.0136866883  1.021455e-01  0.1024393412 -0.0462964903
## 2024-02-29  0.0230508460  1.565237e-01  0.0513967180 -0.0193891237
## 2024-03-28 -0.0199651152  3.170722e-02  0.0433788436  0.0438295662
## 2024-04-30 -0.0898947332  4.027986e-03 -0.0209067204 -0.0798625855
## 2024-05-31  0.0223339241  5.071881e-02 -0.0288919012  0.1270973562
## 2024-06-28 -0.0034831752  9.863590e-02 -0.0079924409 -0.0240125016
## 2024-07-31  0.0769434058 -1.184198e-01 -0.0901299199  0.1015616574
## 2024-08-30  0.0570600903  1.784154e-01  0.0459533386 -0.0513966950
## 2024-09-30 -0.0231773940 -8.030491e-02 -0.0354914374 -0.0024159754
## 2024-10-31 -0.0136681469 -6.553686e-02 -0.1042261570 -0.0223628569
## 2024-11-29 -0.0228170405 -4.067534e-02 -0.0066680130 -0.0613077014
## 2024-12-31 -0.0693800263 -2.979764e-02 -0.0135075563  0.0121352251
## 2025-01-31  0.0507572719  4.938217e-02 -0.0066567336  0.0160199463
## 2025-02-28  0.0891725974  1.284134e-01 -0.0687976660 -0.0033994663
## 2025-03-31  0.0049567215 -1.085724e-01 -0.0187608828 -0.0421155626
## 2025-04-30 -0.0591822262  8.474165e-02 -0.0521380638 -0.0373912783
## 2025-05-30  0.0014742706 -1.956832e-01 -0.1032760484 -0.0195205826
## 2025-06-10  0.0079573687  9.006254e-02  0.0570355200  0.0339015300
##                      UNH
## 2001-02-28  0.0487820522
## 2001-03-30  0.0010409920
## 2001-04-30  0.0998103240
## 2001-05-31 -0.1299596512
## 2001-06-29  0.0713088942
## 2001-07-31  0.0878476888
## 2001-08-31  0.0094479541
## 2001-09-28 -0.0231875081
## 2001-10-31 -0.0113429919
## 2001-11-30  0.0831386628
## 2001-12-31 -0.0095628377
## 2002-01-31  0.0493490364
## 2002-02-28 -0.0253354551
## 2002-03-28  0.0531994047
## 2002-04-30  0.1389305768
## 2002-05-31  0.0334843187
## 2002-06-28  0.0082257903
## 2002-07-31 -0.0434196970
## 2002-08-30  0.0078408733
## 2002-09-30 -0.0128727176
## 2002-10-31  0.0418758405
## 2002-11-29 -0.1103205112
## 2002-12-31  0.0248577066
## 2003-01-31  0.0513529465
## 2003-02-28 -0.0585647653
## 2003-03-31  0.1008948385
## 2003-04-30  0.0050052439
## 2003-05-30  0.0405221980
## 2003-06-30  0.0464349876
## 2003-07-31  0.0359621928
## 2003-08-29 -0.0524156046
## 2003-09-30  0.0178456123
## 2003-10-31  0.0110671355
## 2003-11-28  0.0576604905
## 2003-12-31  0.0764108046
## 2004-01-30  0.0453632367
## 2004-02-27  0.0182295548
## 2004-03-31  0.0390747209
## 2004-04-30 -0.0470228856
## 2004-05-28  0.0595146581
## 2004-06-30 -0.0470675645
## 2004-07-30  0.0103875377
## 2004-08-31  0.0500767267
## 2004-09-30  0.1089220785
## 2004-10-29 -0.0183386606
## 2004-11-30  0.1348257385
## 2004-12-31  0.0606453981
## 2005-01-31  0.0098343934
## 2005-02-28  0.0251052131
## 2005-03-31  0.0455738945
## 2005-04-29 -0.0091629865
## 2005-05-31  0.0276536892
## 2005-06-30  0.0707204055
## 2005-07-29  0.0030638073
## 2005-08-31 -0.0154144359
## 2005-09-30  0.0873347801
## 2005-10-31  0.0296277120
## 2005-11-30  0.0334641998
## 2005-12-30  0.0373811387
## 2006-01-31 -0.0447588439
## 2006-02-28 -0.0202303658
## 2006-03-31 -0.0410160248
## 2006-04-28 -0.1160390382
## 2006-05-31 -0.1235292509
## 2006-06-30  0.0184814160
## 2006-07-31  0.0658914321
## 2006-08-31  0.0826286002
## 2006-09-29 -0.0543878968
## 2006-10-31 -0.0085734148
## 2006-11-30  0.0061312180
## 2006-12-29  0.0905200722
## 2007-01-31 -0.0277404293
## 2007-02-28 -0.0015320090
## 2007-03-30  0.0155739488
## 2007-04-30  0.0016979332
## 2007-05-31  0.0317189333
## 2007-06-29 -0.0685754143
## 2007-07-31 -0.0544475771
## 2007-08-31  0.0321038247
## 2007-09-28 -0.0321038247
## 2007-10-31  0.0147574201
## 2007-11-30  0.1124566629
## 2007-12-31  0.0565517545
## 2008-01-31 -0.1352015894
## 2008-02-29 -0.0896617211
## 2008-03-31 -0.3012567125
## 2008-04-30 -0.0516608419
## 2008-05-30  0.0472859661
## 2008-06-30 -0.2648519162
## 2008-07-31  0.0673911923
## 2008-08-29  0.0810286826
## 2008-09-30 -0.1817305809
## 2008-10-31 -0.0676152957
## 2008-11-28 -0.1217416731
## 2008-12-31  0.2359128059
## 2009-01-30  0.0630100034
## 2009-02-27 -0.3658433188
## 2009-03-31  0.0645676864
## 2009-04-30  0.1166668882
## 2009-05-29  0.1230602559
## 2009-06-30 -0.0628354725
## 2009-07-31  0.1162695085
## 2009-08-31 -0.0021404285
## 2009-09-30 -0.1117300942
## 2009-10-30  0.0356973184
## 2009-11-30  0.0996790418
## 2009-12-31  0.0612197961
## 2010-01-29  0.0794366680
## 2010-02-26  0.0257272280
## 2010-03-31 -0.0357773681
## 2010-04-30 -0.0740612925
## 2010-05-28 -0.0417707317
## 2010-06-30 -0.0191293386
## 2010-07-30  0.0696965205
## 2010-08-31  0.0408615716
## 2010-09-30  0.1052194769
## 2010-10-29  0.0264207526
## 2010-11-30  0.0129533959
## 2010-12-31 -0.0079997625
## 2011-01-31  0.1282214465
## 2011-02-28  0.0365935982
## 2011-03-31  0.0625862253
## 2011-04-29  0.0854059729
## 2011-05-31 -0.0057042884
## 2011-06-30  0.0556409591
## 2011-07-29 -0.0385388433
## 2011-08-31 -0.0434447227
## 2011-09-30 -0.0264428771
## 2011-10-31  0.0397459956
## 2011-11-30  0.0161225801
## 2011-12-30  0.0418011966
## 2012-01-31  0.0216659290
## 2012-02-29  0.0736803459
## 2012-03-30  0.0585708156
## 2012-04-30 -0.0484935126
## 2012-05-31 -0.0067902995
## 2012-06-29  0.0514797425
## 2012-07-31 -0.1354379984
## 2012-08-31  0.0609354843
## 2012-09-28  0.0242784105
## 2012-10-31  0.0105916210
## 2012-11-30 -0.0291718245
## 2012-12-31  0.0012167642
## 2013-01-31  0.0177250366
## 2013-02-28 -0.0323972447
## 2013-03-28  0.0718558314
## 2013-04-30  0.0464489264
## 2013-05-31  0.0440668519
## 2013-06-28  0.0488969753
## 2013-07-31  0.1066580245
## 2013-08-30 -0.0153545516
## 2013-09-30  0.0019451903
## 2013-10-31 -0.0479105557
## 2013-11-29  0.0872066385
## 2013-12-31  0.0147542620
## 2014-01-31 -0.0409323987
## 2014-02-28  0.0667581451
## 2014-03-31  0.0628976306
## 2014-04-30 -0.0885759242
## 2014-05-30  0.0593695693
## 2014-06-30  0.0309635180
## 2014-07-31 -0.0085996186
## 2014-08-29  0.0671570802
## 2014-09-30 -0.0007298363
## 2014-10-31  0.0967323612
## 2014-11-28  0.0373928673
## 2014-12-31  0.0283995927
## 2015-01-30  0.0497834517
## 2015-02-27  0.0671527129
## 2015-03-31  0.0435318708
## 2015-04-30 -0.0600119440
## 2015-05-29  0.0761128551
## 2015-06-30  0.0190074713
## 2015-07-31 -0.0049301545
## 2015-08-31 -0.0480904754
## 2015-09-30  0.0069922563
## 2015-10-30  0.0151418940
## 2015-11-30 -0.0440005082
## 2015-12-31  0.0471214095
## 2016-01-29 -0.0213070466
## 2016-02-29  0.0336412364
## 2016-03-31  0.0831918068
## 2016-04-29  0.0213375126
## 2016-05-31  0.0149996323
## 2016-06-30  0.0593466164
## 2016-07-29  0.0140646176
## 2016-08-31 -0.0512192263
## 2016-09-30  0.0332269005
## 2016-10-31  0.0094551877
## 2016-11-30  0.1174949876
## 2016-12-30  0.0108050186
## 2017-01-31  0.0127897214
## 2017-02-28  0.0200326467
## 2017-03-31 -0.0045981620
## 2017-04-28  0.0641724200
## 2017-05-31  0.0017143366
## 2017-06-30  0.0609306942
## 2017-07-31  0.0338817054
## 2017-08-31  0.0362970640
## 2017-09-29 -0.0116654737
## 2017-10-31  0.0708053798
## 2017-11-30  0.0853071981
## 2017-12-29 -0.0343747105
## 2018-01-31  0.0714152551
## 2018-02-28 -0.0458889408
## 2018-03-29 -0.0519611216
## 2018-04-30  0.0995494600
## 2018-05-31  0.0213853779
## 2018-06-29  0.0192652360
## 2018-07-31  0.0316137088
## 2018-08-31  0.0584430769
## 2018-09-28 -0.0056864274
## 2018-10-31 -0.0177865677
## 2018-11-30  0.0769650873
## 2018-12-31 -0.1217003497
## 2019-01-31  0.0812275966
## 2019-02-28 -0.1093159905
## 2019-03-29  0.0244036906
## 2019-04-30 -0.0591017308
## 2019-05-31  0.0367722344
## 2019-06-28  0.0135167451
## 2019-07-31  0.0202839527
## 2019-08-30 -0.0621718424
## 2019-09-30 -0.0692455763
## 2019-10-31  0.1508319170
## 2019-11-29  0.1021224133
## 2019-12-31  0.0530234592
## 2020-01-31 -0.0760567209
## 2020-02-28 -0.0663482290
## 2020-03-31 -0.0178066551
## 2020-04-30  0.1593842268
## 2020-05-29  0.0414577315
## 2020-06-30 -0.0287159743
## 2020-07-31  0.0262005107
## 2020-08-31  0.0317579507
## 2020-09-30  0.0016132155
## 2020-10-30 -0.0214950355
## 2020-11-30  0.0973520943
## 2020-12-31  0.0453426328
## 2021-01-29 -0.0499912538
## 2021-02-26 -0.0040853336
## 2021-03-31  0.1168310216
## 2021-04-30  0.0693778645
## 2021-05-28  0.0323691807
## 2021-06-30 -0.0246091462
## 2021-07-30  0.0289930375
## 2021-08-31  0.0097771138
## 2021-09-30 -0.0597879501
## 2021-10-29  0.1642052470
## 2021-11-30 -0.0359277037
## 2021-12-31  0.1258153710
## 2022-01-31 -0.0606930461
## 2022-02-28  0.0069586560
## 2022-03-31  0.0721622465
## 2022-04-29 -0.0027886116
## 2022-05-31 -0.0234160336
## 2022-06-30  0.0369156753
## 2022-07-29  0.0543901066
## 2022-08-31 -0.0433538199
## 2022-09-30 -0.0247691750
## 2022-10-31  0.0946008739
## 2022-11-30 -0.0134010866
## 2022-12-30 -0.0295428895
## 2023-01-31 -0.0602297421
## 2023-02-28 -0.0476948885
## 2023-03-31 -0.0035082781
## 2023-04-28  0.0404333789
## 2023-05-31 -0.0099048794
## 2023-06-30 -0.0095413966
## 2023-07-31  0.0521489414
## 2023-08-31 -0.0606321131
## 2023-09-29  0.0602030956
## 2023-10-31  0.0603597173
## 2023-11-30  0.0319907279
## 2023-12-29 -0.0457036411
## 2024-01-31 -0.0283777792
## 2024-02-29 -0.0360910764
## 2024-03-28  0.0061603109
## 2024-04-30 -0.0224866621
## 2024-05-31  0.0238401230
## 2024-06-28  0.0318870509
## 2024-07-31  0.1234266444
## 2024-08-30  0.0240761315
## 2024-09-30 -0.0058571940
## 2024-10-31 -0.0351242555
## 2024-11-29  0.0778465320
## 2024-12-31 -0.1836988379
## 2025-01-31  0.0699097944
## 2025-02-28 -0.1329391171
## 2025-03-31  0.1020485172
## 2025-04-30 -0.2413513052
## 2025-05-30 -0.3095342963
## 2025-06-10  0.0062077534
# Covariance of asset returns
covariance_matrix <- cov(asset_returns_wide_tbl)

covariance_matrix
##             JNJ          LLY         MRK         PFE          UNH
## JNJ 0.001927403 0.0012303948 0.001125349 0.001218317 0.0011324670
## LLY 0.001230395 0.0046545254 0.002012530 0.001462426 0.0009726887
## MRK 0.001125349 0.0020125297 0.004319490 0.001545594 0.0014114396
## PFE 0.001218317 0.0014624255 0.001545594 0.003521606 0.0015874629
## UNH 0.001132467 0.0009726887 0.001411440 0.001587463 0.0053833235
# Standard deviation of portfolio
# Summarizes how much each asset's returns vary with those of other assets within the portfolio into a single number
w <- c(0.25, 0.25, 0.2, 0.2, 0.1)

sd_portfolio <- sqrt(t(w) %*% covariance_matrix %*% w)
sd_portfolio
##            [,1]
## [1,] 0.04316678
# Component contribution
# Similar to the formula for sd_portfolio
# Mathematical trick to summarize the same, sd_portfolio, by asset instead of a single number
component_contribution <- (t(w) %*% covariance_matrix * w) / sd_portfolio[1,1]
component_contribution
##              JNJ        LLY        MRK         PFE         UNH
## [1,] 0.007942621 0.01310898 0.00972336 0.008536066 0.003855747
rowSums(component_contribution)
## [1] 0.04316678
# Component contribution in percentage
component_percentages <- (component_contribution / sd_portfolio[1,1]) %>%
    round(3) %>%
    as_tibble()

component_percentages
## # A tibble: 1 × 5
##     JNJ   LLY   MRK   PFE   UNH
##   <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 0.184 0.304 0.225 0.198 0.089
component_percentages %>%

    as_tibble() %>%
    gather(key = "asset", value = "contribution")
## # A tibble: 5 × 2
##   asset contribution
##   <chr>        <dbl>
## 1 JNJ          0.184
## 2 LLY          0.304
## 3 MRK          0.225
## 4 PFE          0.198
## 5 UNH          0.089

4 Component Contribution with a Custom Function

# Transform data into wide form
asset_returns_wide_tbl <- asset_returns_tbl %>%

    pivot_wider(names_from = asset, values_from = returns) %>%

    column_to_rownames(var = "date")

asset_returns_wide_tbl
##                      JNJ           LLY           MRK           PFE
## 2001-02-28  0.0474629785  1.182913e-02 -0.0243879699 -0.0008819333
## 2001-03-30 -0.1068120042 -3.587341e-02 -0.0507072707 -0.0943104762
## 2001-04-30  0.0980394438  1.032710e-01  0.0009216663  0.0558003710
## 2001-05-31  0.0084417387 -2.362941e-04 -0.0353659025 -0.0069508880
## 2001-06-29  0.0301750094 -1.350508e-01 -0.1328462415 -0.0685097502
## 2001-07-31  0.0796110301  6.892119e-02  0.0617377648  0.0287949636
## 2001-08-31 -0.0227442391 -1.744058e-02 -0.0380627890 -0.0705303644
## 2001-09-28  0.0497746796  3.878474e-02  0.0227801661  0.0456650113
## 2001-10-31  0.0443103387 -5.344767e-02 -0.0427948738  0.0439100922
## 2001-11-30  0.0088586459  8.113962e-02  0.0599146874  0.0356836406
## 2001-12-31  0.0144865869 -5.124910e-02 -0.1364939974 -0.0832606813
## 2002-01-31 -0.0272719846 -4.478779e-02  0.0064420686  0.0446589349
## 2002-02-28  0.0603777565  1.245504e-02  0.0356854516 -0.0140234190
## 2002-03-28  0.0643844438  6.186920e-03 -0.0574154324 -0.0302381166
## 2002-04-30 -0.0169242981 -1.429495e-01 -0.0579144337 -0.0891642249
## 2002-05-31 -0.0367069057 -1.584911e-02  0.0495437155 -0.0458551839
## 2002-06-28 -0.1603629295 -1.372914e-01 -0.1136378114  0.0114943027
## 2002-07-31  0.0064839852  3.518886e-02 -0.0207508504 -0.0787342091
## 2002-08-30  0.0356617452 -9.947276e-04  0.0183785810  0.0264137909
## 2002-09-30 -0.0042436384 -4.780833e-02 -0.0925033287 -0.1309434884
## 2002-10-31  0.0828270186  2.886805e-03  0.1711014311  0.0905370350
## 2002-11-29 -0.0264931858  2.125896e-01  0.0910437704 -0.0037025617
## 2002-12-31 -0.0598031419 -7.287023e-02 -0.0421377702 -0.0309205625
## 2003-01-31 -0.0018633934 -5.270319e-02 -0.0217864552 -0.0020460709
## 2003-02-28 -0.0177671166 -5.743942e-02 -0.0488356175 -0.0179464215
## 2003-03-31  0.0983390289  1.037744e-02  0.0447614110  0.0439558543
## 2003-04-30 -0.0264393617  1.103873e-01  0.0602166331 -0.0132449766
## 2003-05-30 -0.0319765509 -6.034482e-02 -0.0457176131  0.0132578970
## 2003-06-30 -0.0499870021  1.431678e-01  0.0920602196  0.0961305193
## 2003-07-31  0.0017393998 -4.644410e-02 -0.0910580721 -0.0234052181
## 2003-08-29 -0.0388924761  1.576697e-02 -0.0389852582 -0.1042565558
## 2003-09-30 -0.0012111509 -1.133587e-01  0.0132155896  0.0152576565
## 2003-10-31  0.0162248086  1.147110e-01 -0.1344918507  0.0393727962
## 2003-11-28 -0.0158980864  3.736383e-02 -0.0860871730  0.0652042179
## 2003-12-31  0.0467602768  2.199471e-02  0.1379552299  0.0510991281
## 2004-01-30  0.0335008424 -3.310360e-02  0.0298537003  0.0361351737
## 2004-02-27  0.0135319500  8.793226e-02  0.0100331559  0.0050243086
## 2004-03-31 -0.0609958317 -1.000545e-01 -0.0765884363 -0.0446377084
## 2004-04-30  0.0632188983  9.829513e-02  0.0616487146  0.0200544832
## 2004-05-28  0.0358228853  2.920112e-03  0.0063627267 -0.0070689586
## 2004-06-30 -0.0001799210 -5.238690e-02  0.0118997038 -0.0304534427
## 2004-07-30 -0.0077496022 -9.271017e-02 -0.0463191953 -0.0700768879
## 2004-08-31  0.0550104544  1.584054e-03 -0.0084145699  0.0273864135
## 2004-09-30 -0.0309381271 -5.507444e-02 -0.3010023133 -0.0654566687
## 2004-10-29  0.0357456141 -8.948224e-02 -0.0525700461 -0.0554301027
## 2004-11-30  0.0374044491 -2.289670e-02 -0.1110190035 -0.0356122563
## 2004-12-31  0.0501158502  6.215697e-02  0.1508373604 -0.0322011762
## 2005-01-31  0.0199814900 -4.523696e-02 -0.1361130546 -0.1070564744
## 2005-02-28  0.0181332676  3.889164e-02  0.1223287951  0.0919540756
## 2005-03-31  0.0235025336 -7.218715e-02  0.0328122177 -0.0007603746
## 2005-04-29  0.0216516572  1.153492e-01  0.0461829384  0.0336857384
## 2005-05-31 -0.0176554049  3.535286e-03 -0.0440221692  0.0334057447
## 2005-06-30 -0.0317967199 -4.544213e-02 -0.0400951804 -0.0115353927
## 2005-07-29 -0.0161296147  1.088972e-02  0.0084062734 -0.0399463988
## 2005-08-31 -0.0038022469 -1.627747e-02 -0.0820126112 -0.0321093403
## 2005-09-30 -0.0017367248 -2.764198e-02 -0.0368000235 -0.0202184913
## 2005-10-31 -0.0104849251 -7.224062e-02  0.0364462142 -0.1385210948
## 2005-11-30 -0.0087670366  2.148933e-02  0.0537031132 -0.0165845934
## 2005-12-30 -0.0270840127  1.138586e-01  0.0787855322  0.0953101603
## 2006-01-31 -0.0435288900  5.298758e-04  0.0811787026  0.0964008722
## 2006-02-28  0.0075576219 -1.067408e-02  0.0103809730  0.0292420894
## 2006-03-31  0.0268686563 -5.769788e-03  0.0215057032 -0.0497067986
## 2006-04-28 -0.0103538079 -4.399159e-02 -0.0232603689  0.0163192874
## 2006-05-31  0.0332867983 -1.677187e-02 -0.0218480597 -0.0587515164
## 2006-06-30 -0.0049943166  6.793389e-02  0.0901362214 -0.0080628642
## 2006-07-31  0.0429563778  2.677748e-02  0.1002138038  0.1019891430
## 2006-08-31  0.0389626665 -7.645602e-03  0.0161794979  0.0678701134
## 2006-09-29  0.0043214639  1.895033e-02  0.0327498552  0.0286142666
## 2006-10-31  0.0371808552 -1.752091e-02  0.0806663921 -0.0621908016
## 2006-11-30 -0.0167225965 -3.675274e-02 -0.0202390994  0.0398665196
## 2006-12-29  0.0016673542 -2.819714e-02 -0.0122484876 -0.0595787683
## 2007-01-31  0.0117452884  3.803855e-02  0.0260339365  0.0130415295
## 2007-02-28 -0.0538745345 -2.083566e-02 -0.0134979423 -0.0391432335
## 2007-03-30 -0.0433543261  2.107260e-02  0.0089955936  0.0119480057
## 2007-04-30  0.0636462141  9.613968e-02  0.1523703122  0.0464120348
## 2007-05-31 -0.0083782383 -1.396803e-03  0.0194440706  0.0488478339
## 2007-06-29 -0.0264250877 -4.786962e-02 -0.0444307721 -0.0724023952
## 2007-07-31 -0.0183430763 -3.255738e-02 -0.0030166090 -0.0839939948
## 2007-08-31  0.0278021826  6.598648e-02  0.0104186018  0.0670110135
## 2007-09-28  0.0613570605 -7.350175e-03  0.0374703450 -0.0166436806
## 2007-10-31 -0.0080993669 -5.006456e-02  0.1196514764  0.0073411979
## 2007-11-30  0.0448777413 -1.428224e-02  0.0187046466 -0.0229566568
## 2007-12-31 -0.0154715832  8.276051e-03 -0.0147533932 -0.0443180494
## 2008-01-31 -0.0548504540 -3.817996e-02 -0.2315248336  0.0273399506
## 2008-02-29 -0.0122545404 -1.776572e-02 -0.0398282797 -0.0333007001
## 2008-03-31  0.0458964611  3.090487e-02 -0.1459934238 -0.0625060702
## 2008-04-30  0.0336496805 -6.921469e-02  0.0023684244 -0.0399664685
## 2008-05-30  0.0017923339  9.685716e-03  0.0238971342 -0.0222132161
## 2008-06-30 -0.0366231201 -4.199986e-02 -0.0231818833 -0.1027236279
## 2008-07-31  0.0622143623  2.037225e-02 -0.1359224163  0.0664326629
## 2008-08-29  0.0346979887 -2.235079e-04  0.0808371937  0.0396626877
## 2008-09-30 -0.0164629209 -5.780234e-02 -0.1114492287 -0.0356897844
## 2008-10-31 -0.1217241362 -2.638188e-01 -0.0195177407 -0.0403929255
## 2008-11-28 -0.0377623759  2.364303e-02 -0.1469609457 -0.0574856913
## 2008-12-31  0.0211136272  1.648441e-01  0.1433758898  0.0750204693
## 2009-01-30 -0.0364231037 -8.956579e-02 -0.0627859749 -0.1944783769
## 2009-02-27 -0.1348025579 -2.123735e-01 -0.1653039637 -0.1479612581
## 2009-03-31  0.0506930915  1.285413e-01  0.1168050115  0.1011271593
## 2009-04-30 -0.0045732347 -1.477519e-02 -0.0985301253 -0.0192740524
## 2009-05-29  0.0609042888  6.264942e-02  0.1290869249  0.1396395406
## 2009-06-30  0.0292982337  2.022421e-03  0.0275521437 -0.0125871299
## 2009-07-31  0.0695326795  7.191117e-03  0.0707558897  0.0601540966
## 2009-08-31  0.0006540532 -2.718905e-02  0.0775535476  0.0572109457
## 2009-09-30  0.0074175141 -1.293509e-02 -0.0129526434 -0.0090225989
## 2009-10-30 -0.0306842506  2.923844e-02 -0.0223790742  0.0285907761
## 2009-11-30  0.0700867916  9.090944e-02  0.1576085488  0.0743130493
## 2009-12-31  0.0246776774 -2.816308e-02  0.0192464464  0.0011003851
## 2010-01-29 -0.0243590063 -1.438409e-02  0.0439038371  0.0255099512
## 2010-02-26  0.0098466979 -1.071784e-02 -0.0346422985 -0.0519287862
## 2010-03-31  0.0343250070  5.330154e-02  0.0230802831 -0.0230554898
## 2010-04-30 -0.0138996733 -3.512125e-02 -0.0638423483 -0.0253926568
## 2010-05-28 -0.0888649217 -5.038076e-02 -0.0392896382 -0.0828549920
## 2010-06-30  0.0129516205  2.142187e-02  0.0483170957 -0.0658086151
## 2010-07-30 -0.0165606754  6.080015e-02 -0.0146913955  0.0505913799
## 2010-08-31 -0.0092047295 -4.505895e-02  0.0201100090  0.0699747613
## 2010-09-30  0.0830868174  8.390550e-02  0.0562828207  0.0762159781
## 2010-10-29  0.0283233809 -3.708789e-02 -0.0136764130  0.0144555271
## 2010-11-30 -0.0263937759 -3.094268e-02 -0.0520036390 -0.0561682988
## 2010-12-31  0.0048620972  4.018020e-02  0.0551546690  0.0716076354
## 2011-01-31 -0.0342080801 -7.735583e-03 -0.0829835930  0.0397473846
## 2011-02-28  0.0365603500  7.793989e-03 -0.0182543960  0.0649315754
## 2011-03-31 -0.0362952957  1.749634e-02  0.0250363339  0.0541220920
## 2011-04-29  0.1036373603  5.099491e-02  0.0853185725  0.0319790629
## 2011-05-31  0.0322440686  5.168610e-02  0.0220093521  0.0322660078
## 2011-06-30 -0.0115087571 -2.499808e-02 -0.0297618826 -0.0404332869
## 2011-07-29 -0.0263513153  2.030941e-02 -0.0334227548 -0.0677802487
## 2011-08-31  0.0243381665 -6.533726e-03 -0.0306433071 -0.0030387036
## 2011-09-30 -0.0325923592 -1.450051e-02 -0.0002123270 -0.0709517669
## 2011-10-31  0.0109305834  5.126268e-03  0.0535845045  0.0855965330
## 2011-11-30  0.0143496878  3.142832e-02  0.0355905431  0.0512105759
## 2011-12-30  0.0132004442  9.350730e-02  0.0650420828  0.0753175023
## 2012-01-31  0.0050196633 -4.477996e-02  0.0150061322 -0.0111527615
## 2012-02-29 -0.0038785901 -1.181382e-04 -0.0026163253 -0.0023636549
## 2012-03-30  0.0134306887  2.591007e-02  0.0170924659  0.0694665051
## 2012-04-30 -0.0131235116  2.743244e-02  0.0216390314  0.0109769140
## 2012-05-31 -0.0321910020  1.118650e-03 -0.0432245510 -0.0361598418
## 2012-06-29  0.0789703944  4.675290e-02  0.1160970397  0.0503781678
## 2012-07-31  0.0242739051  2.576592e-02  0.0563465534  0.0442253758
## 2012-08-31 -0.0171544031  3.109179e-02 -0.0256836873  0.0016775415
## 2012-09-28  0.0217115641  5.417265e-02  0.0559963600  0.0406541140
## 2012-10-31  0.0273400059  2.540737e-02  0.0116835551  0.0008048591
## 2012-11-30 -0.0067063727  1.859270e-02 -0.0295810191  0.0149563272
## 2012-12-31  0.0052919676  5.692969e-03 -0.0693309187  0.0023951114
## 2013-01-31  0.0530606030  8.489711e-02  0.0548895412  0.0927852515
## 2013-02-28  0.0371635781  2.705541e-02 -0.0120959994  0.0032936379
## 2013-03-28  0.0687911689  3.822786e-02  0.0434167149  0.0530092474
## 2013-04-30  0.0443826011 -2.514162e-02  0.0614227391  0.0072498951
## 2013-05-31 -0.0049069962 -3.216777e-02 -0.0064032842 -0.0570854717
## 2013-06-28  0.0197603282 -7.904005e-02  0.0037742811  0.0282424551
## 2013-07-31  0.0852439526  7.809910e-02  0.0363599576  0.0507557207
## 2013-08-30 -0.0713520038 -2.362021e-02 -0.0184375024 -0.0355190924
## 2013-09-30  0.0032344739 -2.103695e-02  0.0157163836  0.0182650446
## 2013-10-31  0.0660590123 -1.018478e-02 -0.0543824788  0.0659954063
## 2013-11-29  0.0288513343  1.783345e-02  0.0999567237  0.0410375091
## 2013-12-31 -0.0329695412  1.541228e-02  0.0134348452 -0.0352826348
## 2014-01-31 -0.0346585168  5.734364e-02  0.0567029566 -0.0075373857
## 2014-02-28  0.0475983271  1.076839e-01  0.0731501377  0.0630294050
## 2014-03-31  0.0642197693 -1.266173e-02  0.0039071845  0.0003108396
## 2014-04-30  0.0306760114  4.069060e-03  0.0310441706 -0.0264996176
## 2014-05-30  0.0086217856  2.105837e-02 -0.0120256245 -0.0453178575
## 2014-06-30  0.0306703879  3.786405e-02  0.0073368790  0.0016860615
## 2014-07-31 -0.0442651152 -1.801566e-02 -0.0193741746 -0.0247922473
## 2014-08-29  0.0424630876  4.814390e-02  0.0576968890  0.0237569727
## 2014-09-30  0.0271978929  2.009260e-02 -0.0066361702  0.0061060766
## 2014-10-31  0.0111031532  2.256510e-02 -0.0228637306  0.0127689792
## 2014-11-28  0.0108425220  3.387683e-02  0.0415809585  0.0479083539
## 2014-12-31 -0.0345867443  1.269081e-02 -0.0540976357  0.0000000000
## 2015-01-30 -0.0432873742  4.270426e-02  0.0596397200  0.0032052706
## 2015-02-27  0.0303666319 -1.862776e-02 -0.0292898504  0.1024915997
## 2015-03-31 -0.0188081255  3.473274e-02 -0.0102140083  0.0136020799
## 2015-04-30 -0.0140143683 -1.079448e-02  0.0355471150 -0.0250306219
## 2015-05-29  0.0166972659  1.002141e-01  0.0220846295  0.0321205125
## 2015-06-30 -0.0271273715  5.654570e-02 -0.0596686281 -0.0357393465
## 2015-07-31  0.0278259095  1.214305e-02  0.0350368364  0.0727437655
## 2015-08-31 -0.0565651511 -1.988841e-02 -0.0906570012 -0.1048124234
## 2015-09-30 -0.0067260548  1.614117e-02 -0.0778817877 -0.0254612609
## 2015-10-30  0.0790618368 -2.565850e-02  0.1013841016  0.0739261959
## 2015-11-30  0.0094211438  1.206623e-02 -0.0306517997 -0.0234999705
## 2015-12-31  0.0145125420  2.669984e-02  0.0050142535 -0.0150657459
## 2016-01-29  0.0166059094 -6.319403e-02 -0.0415562952 -0.0570487032
## 2016-02-29  0.0145668798 -8.710658e-02 -0.0091197596 -0.0172591917
## 2016-03-31  0.0280226407  1.390331e-04  0.0610887600 -0.0010112748
## 2016-04-29  0.0352317508  4.772512e-02  0.0358274788  0.0985560031
## 2016-05-31  0.0125416948  1.293397e-05  0.0255642867  0.0679738570
## 2016-06-30  0.0736265226  4.839085e-02  0.0318423701  0.0145907401
## 2016-07-29  0.0318851907  5.123637e-02  0.0180618139  0.0466102602
## 2016-08-31 -0.0415265227 -5.766410e-02  0.0680379371 -0.0500449721
## 2016-09-30 -0.0101907495  3.177266e-02  0.0012358987 -0.0270875836
## 2016-10-31 -0.0182819100 -8.337109e-02 -0.0609453579 -0.0658978227
## 2016-11-30 -0.0343882134 -8.889145e-02  0.0412035105  0.0233933992
## 2016-12-30  0.0345271641  9.148373e-02 -0.0310080171  0.0105232423
## 2017-01-31 -0.0171586901  4.622940e-02  0.0516414905 -0.0233618486
## 2017-02-28  0.0827383970  7.906102e-02  0.0607102963  0.0827573024
## 2017-03-31  0.0189664247  1.557664e-02 -0.0288233322  0.0026343466
## 2017-04-28 -0.0087090692 -2.467527e-02 -0.0192268920 -0.0085130702
## 2017-05-31  0.0445927389 -2.437656e-02  0.0436354822 -0.0285273115
## 2017-06-30  0.0310152336  3.373377e-02 -0.0084638543  0.0283832349
## 2017-07-31  0.0032450783  4.364935e-03 -0.0032820106 -0.0128836760
## 2017-08-31  0.0037006042 -1.035516e-02 -0.0003130550  0.0323810706
## 2017-09-29 -0.0179898881  5.096105e-02  0.0098654707  0.0511458121
## 2017-10-31  0.0698078309 -4.299696e-02 -0.1503834409 -0.0180898662
## 2017-11-30  0.0055311385  3.871501e-02  0.0032617628  0.0427505039
## 2017-12-29  0.0027950885 -2.128704e-03  0.0264015413 -0.0011036976
## 2018-01-31 -0.0110106288 -3.628887e-02  0.0516040608  0.0223866709
## 2018-02-28 -0.0556357291 -4.850900e-02 -0.0887157617 -0.0106832402
## 2018-03-29 -0.0134094607  4.534215e-03  0.0133068829 -0.0228424308
## 2018-04-30 -0.0130381215  4.671349e-02  0.0776818520  0.0310707185
## 2018-05-31 -0.0484538691  5.468068e-02  0.0111486031 -0.0090345402
## 2018-06-29  0.0142761411  3.404172e-03  0.0271618760  0.0096941507
## 2018-07-31  0.0881371511  1.466730e-01  0.0817394275  0.0958614139
## 2018-08-31  0.0228843889  7.244387e-02  0.0404632755  0.0475258602
## 2018-09-28  0.0255091751  1.559023e-02  0.0404876284  0.0596042182
## 2018-10-31  0.0130860288  1.047501e-02  0.0369465828 -0.0231849672
## 2018-11-30  0.0545289753  9.491862e-02  0.0749615165  0.0787214554
## 2018-12-31 -0.1295522010 -2.492020e-02 -0.0306430950 -0.0574253982
## 2019-01-31  0.0307505671  3.515081e-02 -0.0262544857 -0.0191806285
## 2019-02-28  0.0330097458  5.766186e-02  0.0881638540  0.0209794177
## 2019-03-29  0.0227915571  2.710570e-02  0.0296266787 -0.0205086666
## 2019-04-30  0.0100360123 -1.031708e-01 -0.0551166104 -0.0447835073
## 2019-05-31 -0.0670164667 -3.848614e-03  0.0063326098  0.0309908556
## 2019-06-28  0.0601445174 -4.543642e-02  0.0635835066  0.0424394266
## 2019-07-31 -0.0672611315 -1.674735e-02 -0.0103095397 -0.1091639462
## 2019-08-30 -0.0069209206  4.182361e-02  0.0410774812 -0.0791984103
## 2019-09-30  0.0079150275 -1.014244e-02 -0.0202163301  0.0106325007
## 2019-10-31  0.0203510004  1.877990e-02  0.0290349156  0.0657032531
## 2019-11-29  0.0473508669  3.513604e-02  0.0059824850  0.0135197785
## 2019-12-31  0.0591642917  1.133135e-01  0.0491684457  0.0169889788
## 2020-01-31  0.0203576422  6.059333e-02 -0.0624952668 -0.0406200003
## 2020-02-28 -0.0953015309 -9.658465e-02 -0.1097396065 -0.1082288667
## 2020-03-31 -0.0252262371  9.514430e-02  0.0131782443 -0.0236160137
## 2020-04-30  0.1347126973  1.086425e-01  0.0307161436  0.1614769628
## 2020-05-29 -0.0017267346 -6.292050e-03  0.0172444455  0.0054747229
## 2020-06-30 -0.0561345663  7.085222e-02 -0.0349869721 -0.1551986794
## 2020-07-31  0.0358289682 -8.839704e-02  0.0369401815  0.1724897743
## 2020-08-31  0.0577861588 -7.859785e-03  0.0608003684 -0.0180941115
## 2020-09-30 -0.0299732104 -2.496490e-03 -0.0203377567 -0.0292674885
## 2020-10-30 -0.0823571468 -1.262807e-01 -0.0979539517 -0.0338078365
## 2020-11-30  0.0606654199  1.152646e-01  0.0666055075  0.1395659477
## 2020-12-31  0.0841391836  1.477453e-01  0.0252536852 -0.0399413639
## 2021-01-29  0.0358840545  2.084422e-01 -0.0595629368 -0.0142122206
## 2021-02-26 -0.0228290428 -1.075300e-02 -0.0594740814 -0.0694904340
## 2021-03-31  0.0364962667 -9.232771e-02  0.0684809264  0.0786404873
## 2021-04-30 -0.0099062387 -2.191719e-02 -0.0341742698  0.0646593703
## 2021-05-28  0.0455043095  9.319737e-02  0.0184856324  0.0118728918
## 2021-06-30 -0.0270084191  1.389737e-01  0.0799133085  0.0110414154
## 2021-07-30  0.0442882295  5.912664e-02 -0.0116399346  0.0981322647
## 2021-08-31  0.0113110621  6.218977e-02 -0.0075739304  0.0733900727
## 2021-09-30 -0.0695379399 -1.114488e-01 -0.0066661777 -0.0687293999
## 2021-10-29  0.0085085731  9.768766e-02  0.1589511818  0.0168305107
## 2021-11-30 -0.0370778016 -2.349009e-02 -0.1616173817  0.2144482427
## 2021-12-31  0.0926656937  1.076076e-01  0.0322738353  0.0944128330
## 2022-01-31  0.0071062613 -1.183490e-01  0.0612383576 -0.1063844368
## 2022-02-28 -0.0394443677  2.257796e-02 -0.0620215060 -0.1155554690
## 2022-03-31  0.0741123292  1.360238e-01  0.0778490697  0.0979406228
## 2022-04-29  0.0180610005  1.991421e-02  0.0778179675 -0.0535631197
## 2022-05-31  0.0012383101  7.377324e-02  0.0369677380  0.0859204960
## 2022-06-30 -0.0113153940  3.384500e-02 -0.0012381079 -0.0115673628
## 2022-07-29 -0.0169876324  1.669978e-02 -0.0202765888 -0.0295781385
## 2022-08-31 -0.0718288846 -8.701942e-02 -0.0455714903 -0.1104107611
## 2022-09-30  0.0124424969  7.086131e-02  0.0168934658 -0.0330403034
## 2022-10-31  0.0629265788  1.131574e-01  0.1613569242  0.0618067971
## 2022-11-30  0.0293344825  2.731025e-02  0.0844719437  0.0826267442
## 2022-12-30 -0.0076132664 -1.422133e-02  0.0141125583  0.0219010273
## 2023-01-31 -0.0778466696 -6.111843e-02 -0.0324263390 -0.1395624907
## 2023-02-28 -0.0570213022 -9.734731e-02 -0.0109524912 -0.0847904356
## 2023-03-31  0.0112893637  9.845402e-02  0.0083391461  0.0056530468
## 2023-04-28  0.0546104062  1.421063e-01  0.0818991596 -0.0479448078
## 2023-05-31 -0.0467065773  8.406576e-02 -0.0448100065 -0.0118621283
## 2023-06-30  0.0652797810  8.803154e-02  0.0507760321 -0.0358807788
## 2023-07-31  0.0120705601 -3.125219e-02 -0.0787652078 -0.0059677531
## 2023-08-31 -0.0283091344  2.003591e-01  0.0216119371 -0.0190375598
## 2023-09-29 -0.0373670408 -3.128555e-02 -0.0501268696 -0.0645009924
## 2023-10-31 -0.0487452802  3.079818e-02 -0.0024311924 -0.0819537499
## 2023-11-30  0.0496985600  6.669139e-02 -0.0021445128  0.0104429707
## 2023-12-29  0.0133592993 -1.383362e-02  0.0690785646 -0.0567143785
## 2024-01-31  0.0136866883  1.021455e-01  0.1024393412 -0.0462964903
## 2024-02-29  0.0230508460  1.565237e-01  0.0513967180 -0.0193891237
## 2024-03-28 -0.0199651152  3.170722e-02  0.0433788436  0.0438295662
## 2024-04-30 -0.0898947332  4.027986e-03 -0.0209067204 -0.0798625855
## 2024-05-31  0.0223339241  5.071881e-02 -0.0288919012  0.1270973562
## 2024-06-28 -0.0034831752  9.863590e-02 -0.0079924409 -0.0240125016
## 2024-07-31  0.0769434058 -1.184198e-01 -0.0901299199  0.1015616574
## 2024-08-30  0.0570600903  1.784154e-01  0.0459533386 -0.0513966950
## 2024-09-30 -0.0231773940 -8.030491e-02 -0.0354914374 -0.0024159754
## 2024-10-31 -0.0136681469 -6.553686e-02 -0.1042261570 -0.0223628569
## 2024-11-29 -0.0228170405 -4.067534e-02 -0.0066680130 -0.0613077014
## 2024-12-31 -0.0693800263 -2.979764e-02 -0.0135075563  0.0121352251
## 2025-01-31  0.0507572719  4.938217e-02 -0.0066567336  0.0160199463
## 2025-02-28  0.0891725974  1.284134e-01 -0.0687976660 -0.0033994663
## 2025-03-31  0.0049567215 -1.085724e-01 -0.0187608828 -0.0421155626
## 2025-04-30 -0.0591822262  8.474165e-02 -0.0521380638 -0.0373912783
## 2025-05-30  0.0014742706 -1.956832e-01 -0.1032760484 -0.0195205826
## 2025-06-10  0.0079573687  9.006254e-02  0.0570355200  0.0339015300
##                      UNH
## 2001-02-28  0.0487820522
## 2001-03-30  0.0010409920
## 2001-04-30  0.0998103240
## 2001-05-31 -0.1299596512
## 2001-06-29  0.0713088942
## 2001-07-31  0.0878476888
## 2001-08-31  0.0094479541
## 2001-09-28 -0.0231875081
## 2001-10-31 -0.0113429919
## 2001-11-30  0.0831386628
## 2001-12-31 -0.0095628377
## 2002-01-31  0.0493490364
## 2002-02-28 -0.0253354551
## 2002-03-28  0.0531994047
## 2002-04-30  0.1389305768
## 2002-05-31  0.0334843187
## 2002-06-28  0.0082257903
## 2002-07-31 -0.0434196970
## 2002-08-30  0.0078408733
## 2002-09-30 -0.0128727176
## 2002-10-31  0.0418758405
## 2002-11-29 -0.1103205112
## 2002-12-31  0.0248577066
## 2003-01-31  0.0513529465
## 2003-02-28 -0.0585647653
## 2003-03-31  0.1008948385
## 2003-04-30  0.0050052439
## 2003-05-30  0.0405221980
## 2003-06-30  0.0464349876
## 2003-07-31  0.0359621928
## 2003-08-29 -0.0524156046
## 2003-09-30  0.0178456123
## 2003-10-31  0.0110671355
## 2003-11-28  0.0576604905
## 2003-12-31  0.0764108046
## 2004-01-30  0.0453632367
## 2004-02-27  0.0182295548
## 2004-03-31  0.0390747209
## 2004-04-30 -0.0470228856
## 2004-05-28  0.0595146581
## 2004-06-30 -0.0470675645
## 2004-07-30  0.0103875377
## 2004-08-31  0.0500767267
## 2004-09-30  0.1089220785
## 2004-10-29 -0.0183386606
## 2004-11-30  0.1348257385
## 2004-12-31  0.0606453981
## 2005-01-31  0.0098343934
## 2005-02-28  0.0251052131
## 2005-03-31  0.0455738945
## 2005-04-29 -0.0091629865
## 2005-05-31  0.0276536892
## 2005-06-30  0.0707204055
## 2005-07-29  0.0030638073
## 2005-08-31 -0.0154144359
## 2005-09-30  0.0873347801
## 2005-10-31  0.0296277120
## 2005-11-30  0.0334641998
## 2005-12-30  0.0373811387
## 2006-01-31 -0.0447588439
## 2006-02-28 -0.0202303658
## 2006-03-31 -0.0410160248
## 2006-04-28 -0.1160390382
## 2006-05-31 -0.1235292509
## 2006-06-30  0.0184814160
## 2006-07-31  0.0658914321
## 2006-08-31  0.0826286002
## 2006-09-29 -0.0543878968
## 2006-10-31 -0.0085734148
## 2006-11-30  0.0061312180
## 2006-12-29  0.0905200722
## 2007-01-31 -0.0277404293
## 2007-02-28 -0.0015320090
## 2007-03-30  0.0155739488
## 2007-04-30  0.0016979332
## 2007-05-31  0.0317189333
## 2007-06-29 -0.0685754143
## 2007-07-31 -0.0544475771
## 2007-08-31  0.0321038247
## 2007-09-28 -0.0321038247
## 2007-10-31  0.0147574201
## 2007-11-30  0.1124566629
## 2007-12-31  0.0565517545
## 2008-01-31 -0.1352015894
## 2008-02-29 -0.0896617211
## 2008-03-31 -0.3012567125
## 2008-04-30 -0.0516608419
## 2008-05-30  0.0472859661
## 2008-06-30 -0.2648519162
## 2008-07-31  0.0673911923
## 2008-08-29  0.0810286826
## 2008-09-30 -0.1817305809
## 2008-10-31 -0.0676152957
## 2008-11-28 -0.1217416731
## 2008-12-31  0.2359128059
## 2009-01-30  0.0630100034
## 2009-02-27 -0.3658433188
## 2009-03-31  0.0645676864
## 2009-04-30  0.1166668882
## 2009-05-29  0.1230602559
## 2009-06-30 -0.0628354725
## 2009-07-31  0.1162695085
## 2009-08-31 -0.0021404285
## 2009-09-30 -0.1117300942
## 2009-10-30  0.0356973184
## 2009-11-30  0.0996790418
## 2009-12-31  0.0612197961
## 2010-01-29  0.0794366680
## 2010-02-26  0.0257272280
## 2010-03-31 -0.0357773681
## 2010-04-30 -0.0740612925
## 2010-05-28 -0.0417707317
## 2010-06-30 -0.0191293386
## 2010-07-30  0.0696965205
## 2010-08-31  0.0408615716
## 2010-09-30  0.1052194769
## 2010-10-29  0.0264207526
## 2010-11-30  0.0129533959
## 2010-12-31 -0.0079997625
## 2011-01-31  0.1282214465
## 2011-02-28  0.0365935982
## 2011-03-31  0.0625862253
## 2011-04-29  0.0854059729
## 2011-05-31 -0.0057042884
## 2011-06-30  0.0556409591
## 2011-07-29 -0.0385388433
## 2011-08-31 -0.0434447227
## 2011-09-30 -0.0264428771
## 2011-10-31  0.0397459956
## 2011-11-30  0.0161225801
## 2011-12-30  0.0418011966
## 2012-01-31  0.0216659290
## 2012-02-29  0.0736803459
## 2012-03-30  0.0585708156
## 2012-04-30 -0.0484935126
## 2012-05-31 -0.0067902995
## 2012-06-29  0.0514797425
## 2012-07-31 -0.1354379984
## 2012-08-31  0.0609354843
## 2012-09-28  0.0242784105
## 2012-10-31  0.0105916210
## 2012-11-30 -0.0291718245
## 2012-12-31  0.0012167642
## 2013-01-31  0.0177250366
## 2013-02-28 -0.0323972447
## 2013-03-28  0.0718558314
## 2013-04-30  0.0464489264
## 2013-05-31  0.0440668519
## 2013-06-28  0.0488969753
## 2013-07-31  0.1066580245
## 2013-08-30 -0.0153545516
## 2013-09-30  0.0019451903
## 2013-10-31 -0.0479105557
## 2013-11-29  0.0872066385
## 2013-12-31  0.0147542620
## 2014-01-31 -0.0409323987
## 2014-02-28  0.0667581451
## 2014-03-31  0.0628976306
## 2014-04-30 -0.0885759242
## 2014-05-30  0.0593695693
## 2014-06-30  0.0309635180
## 2014-07-31 -0.0085996186
## 2014-08-29  0.0671570802
## 2014-09-30 -0.0007298363
## 2014-10-31  0.0967323612
## 2014-11-28  0.0373928673
## 2014-12-31  0.0283995927
## 2015-01-30  0.0497834517
## 2015-02-27  0.0671527129
## 2015-03-31  0.0435318708
## 2015-04-30 -0.0600119440
## 2015-05-29  0.0761128551
## 2015-06-30  0.0190074713
## 2015-07-31 -0.0049301545
## 2015-08-31 -0.0480904754
## 2015-09-30  0.0069922563
## 2015-10-30  0.0151418940
## 2015-11-30 -0.0440005082
## 2015-12-31  0.0471214095
## 2016-01-29 -0.0213070466
## 2016-02-29  0.0336412364
## 2016-03-31  0.0831918068
## 2016-04-29  0.0213375126
## 2016-05-31  0.0149996323
## 2016-06-30  0.0593466164
## 2016-07-29  0.0140646176
## 2016-08-31 -0.0512192263
## 2016-09-30  0.0332269005
## 2016-10-31  0.0094551877
## 2016-11-30  0.1174949876
## 2016-12-30  0.0108050186
## 2017-01-31  0.0127897214
## 2017-02-28  0.0200326467
## 2017-03-31 -0.0045981620
## 2017-04-28  0.0641724200
## 2017-05-31  0.0017143366
## 2017-06-30  0.0609306942
## 2017-07-31  0.0338817054
## 2017-08-31  0.0362970640
## 2017-09-29 -0.0116654737
## 2017-10-31  0.0708053798
## 2017-11-30  0.0853071981
## 2017-12-29 -0.0343747105
## 2018-01-31  0.0714152551
## 2018-02-28 -0.0458889408
## 2018-03-29 -0.0519611216
## 2018-04-30  0.0995494600
## 2018-05-31  0.0213853779
## 2018-06-29  0.0192652360
## 2018-07-31  0.0316137088
## 2018-08-31  0.0584430769
## 2018-09-28 -0.0056864274
## 2018-10-31 -0.0177865677
## 2018-11-30  0.0769650873
## 2018-12-31 -0.1217003497
## 2019-01-31  0.0812275966
## 2019-02-28 -0.1093159905
## 2019-03-29  0.0244036906
## 2019-04-30 -0.0591017308
## 2019-05-31  0.0367722344
## 2019-06-28  0.0135167451
## 2019-07-31  0.0202839527
## 2019-08-30 -0.0621718424
## 2019-09-30 -0.0692455763
## 2019-10-31  0.1508319170
## 2019-11-29  0.1021224133
## 2019-12-31  0.0530234592
## 2020-01-31 -0.0760567209
## 2020-02-28 -0.0663482290
## 2020-03-31 -0.0178066551
## 2020-04-30  0.1593842268
## 2020-05-29  0.0414577315
## 2020-06-30 -0.0287159743
## 2020-07-31  0.0262005107
## 2020-08-31  0.0317579507
## 2020-09-30  0.0016132155
## 2020-10-30 -0.0214950355
## 2020-11-30  0.0973520943
## 2020-12-31  0.0453426328
## 2021-01-29 -0.0499912538
## 2021-02-26 -0.0040853336
## 2021-03-31  0.1168310216
## 2021-04-30  0.0693778645
## 2021-05-28  0.0323691807
## 2021-06-30 -0.0246091462
## 2021-07-30  0.0289930375
## 2021-08-31  0.0097771138
## 2021-09-30 -0.0597879501
## 2021-10-29  0.1642052470
## 2021-11-30 -0.0359277037
## 2021-12-31  0.1258153710
## 2022-01-31 -0.0606930461
## 2022-02-28  0.0069586560
## 2022-03-31  0.0721622465
## 2022-04-29 -0.0027886116
## 2022-05-31 -0.0234160336
## 2022-06-30  0.0369156753
## 2022-07-29  0.0543901066
## 2022-08-31 -0.0433538199
## 2022-09-30 -0.0247691750
## 2022-10-31  0.0946008739
## 2022-11-30 -0.0134010866
## 2022-12-30 -0.0295428895
## 2023-01-31 -0.0602297421
## 2023-02-28 -0.0476948885
## 2023-03-31 -0.0035082781
## 2023-04-28  0.0404333789
## 2023-05-31 -0.0099048794
## 2023-06-30 -0.0095413966
## 2023-07-31  0.0521489414
## 2023-08-31 -0.0606321131
## 2023-09-29  0.0602030956
## 2023-10-31  0.0603597173
## 2023-11-30  0.0319907279
## 2023-12-29 -0.0457036411
## 2024-01-31 -0.0283777792
## 2024-02-29 -0.0360910764
## 2024-03-28  0.0061603109
## 2024-04-30 -0.0224866621
## 2024-05-31  0.0238401230
## 2024-06-28  0.0318870509
## 2024-07-31  0.1234266444
## 2024-08-30  0.0240761315
## 2024-09-30 -0.0058571940
## 2024-10-31 -0.0351242555
## 2024-11-29  0.0778465320
## 2024-12-31 -0.1836988379
## 2025-01-31  0.0699097944
## 2025-02-28 -0.1329391171
## 2025-03-31  0.1020485172
## 2025-04-30 -0.2413513052
## 2025-05-30 -0.3095342963
## 2025-06-10  0.0062077534
calculate_component_contribution <- function(.data, w) {
    
    # Covariance of asset returns
        covariance_matrix <- cov(.data)
        
        # Standard deviation of portfolio
        # Summarizes how much each asset's returns vary with those of other assets within the portfolio into a single number
        sd_portfolio <- sqrt(t(w) %*% covariance_matrix %*% w)
        
        # Component contribution
        # Similar to the formula for sd_portfolio
        # Mathematical trick to summarize the same, sd_portfolio, by asset instead of a single number
        component_contribution <- (t(w) %*% covariance_matrix * w) / sd_portfolio[1,1]
        
        # Component contribution in percentage
        component_percentages <- (component_contribution / sd_portfolio[1,1]) %>%
            round(3) %>%
            as_tibble()
        
        return(component_percentages)
}

asset_returns_wide_tbl %>% calculate_component_contribution(w = c(0.25, 0.25, 0.2, .2, .1))
## # A tibble: 1 × 5
##     JNJ   LLY   MRK   PFE   UNH
##   <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 0.184 0.304 0.225 0.198 0.089

5 Visualizing Component Contribution

Column Chart of Component Contribution

plot_data <- asset_returns_wide_tbl %>% 
    
    calculate_component_contribution(w = c(0.25, 0.25, 0.2, .2, .1)) %>%
    
    # Transfer to Long Form
    pivot_longer(cols = everything(), names_to = "Asset", values_to = "Contribution")

plot_data %>%
    
    ggplot(aes(x = Asset, y = Contribution)) +
    geom_col(fill = "cornflowerblue") +
    
    scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
    theme(plot.title = element_text(hjust = 0.5)) +
    
    labs(title = "Percent Contribution to Portfolio Volatility")

6 Plot: Colum Chart of Component Contribution and Weight

plot_data <- asset_returns_wide_tbl %>% 
    
    calculate_component_contribution(w = c(0.25, 0.25, 0.2, .2, .1)) %>%
    
    # Transfer to Long Form
    pivot_longer(cols = everything(), names_to = "Asset", values_to = "Contribution") %>%
    
    # Add Weights
    add_column(weight = c(0.25, 0.25, 0.2, .2, .1)) %>%
    
    # Transform to Long
    pivot_longer(cols = c(Contribution, weight), names_to = "type", values_to = "value")

plot_data %>%
    
    ggplot(aes(x = Asset, y = value, fill = type)) +
    geom_col(position = "dodge") +
    
    scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
    scale_fill_tq() +
    theme(plot.title = element_text(hjust = 0.5)) +
    theme_tq() +
    
    labs(title = "Percent Contribution to Portfolio Volatility and Weight",
         y = "Percent",
         x = NULL)

Which of the assets in your portfolio the largest contributor to the portfolio volatility? Do you think your portfolio risk is concentrated in any one asset?

The largest contributor to portfolio volatility is LLY, which makes up just over 30% of the total risk. That’s noticeably higher than its portfolio weight of 25%, meaning it’s creating a bigger impact on volatility than its allocation would suggest. The second largest contributor to portfolio volatility is MRK, which makes up about 25% of the total risk. MRK also creates more of an impact on volatility than its higher than its portfolio weight of 20% would suggest. Based on this, I’d say the portfolio’s risk is concentrated in LLY and MRK. Even though PFE is weighted similarly, its volatility contribution is much lower. Additionally, PFE and UNH create less volatility in the portfolio than their weight. This suggests that LLY and MRK are clearly driving a disproportionate share of the overall risk.