Set up

library(tidyverse)
library(tidyquant) # for financial analysis
library(broom) # for tidy model results
library(umap)  # for dimension reduction
library(plotly) # for interactive visualization

Data

# Get info on companies listed in S&P500
sp500_index_tbl <- tq_index("SP500")

# Get individual stocks from S&P500
sp500_symbols <- sp500_index_tbl %>% distinct(symbol) %>% pull() 

# Get stock prices of the companies
sp500_prices_tbl <- tq_get(sp500_symbols, from = "2020-04-01")

write.csv(sp500_index_tbl, "../00_data/sp500_index_tbl.csv")
write.csv(sp500_prices_tbl, "../00_data/sp500_prices_tbl.csv")

Import data

sp500_index_tbl <- read_csv("../00_data/sp500_index_tbl.csv")
sp500_prices_tbl <- read_csv("../00_data/sp500_prices_tbl.csv")
sp500_index_tbl %>% glimpse()
## Rows: 505
## Columns: 9
## $ ...1           <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, …
## $ symbol         <chr> "MSFT", "AAPL", "NVDA", "AMZN", "META", "GOOGL", "BRK-B…
## $ company        <chr> "MICROSOFT CORP", "APPLE INC", "NVIDIA CORP", "AMAZON.C…
## $ identifier     <chr> "594918104", "037833100", "67066G104", "023135106", "30…
## $ sedol          <chr> "2588173", "2046251", "2379504", "2000019", "B7TL820", …
## $ weight         <dbl> 0.070781439, 0.056357717, 0.050531591, 0.037332751, 0.0…
## $ sector         <chr> "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", …
## $ shares_held    <dbl> 89663945, 175158625, 29805583, 110304496, 26548208, 711…
## $ local_currency <chr> "USD", "USD", "USD", "USD", "USD", "USD", "USD", "USD",…
sp500_prices_tbl %>% glimpse()
## Rows: 502,541
## Columns: 9
## $ ...1     <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18…
## $ symbol   <chr> "MSFT", "MSFT", "MSFT", "MSFT", "MSFT", "MSFT", "MSFT", "MSFT…
## $ date     <date> 2020-04-01, 2020-04-02, 2020-04-03, 2020-04-06, 2020-04-07, …
## $ open     <dbl> 153.00, 151.86, 155.10, 160.32, 169.59, 165.67, 166.36, 164.3…
## $ high     <dbl> 157.75, 155.48, 157.38, 166.50, 170.00, 166.67, 167.37, 165.5…
## $ low      <dbl> 150.82, 150.36, 152.19, 157.58, 163.26, 163.50, 163.33, 162.3…
## $ close    <dbl> 152.11, 155.26, 153.83, 165.27, 163.49, 165.13, 165.14, 165.5…
## $ volume   <dbl> 57969900, 49630700, 41243300, 67111700, 62769000, 48318200, 5…
## $ adjusted <dbl> 146.7080, 149.7461, 148.3670, 159.4007, 157.6839, 159.2657, 1…

Question

Which stock prices behave similarly?

Our main objective is to identify stocks that exhibit similar price behaviors over time. By doing so, we aim to gain insights into the relationships between different companies, uncovering potential competitors and sector affiliations.

Why It Matters Understanding which companies are related is crucial for various reasons:

Assignment Details Your task is to analyze the historical price data of various stocks and determine which stocks behave similarly. We will employ clustering techniques to accomplish this task effectively.

1 Convert data to standardized form

To compare data effectively, it must be standardized or normalized. Why? Because comparing values (like stock prices) of vastly different magnitudes is impractical. So, we’ll standardize by converting from adjusted stock price (in dollars) to daily returns (as percent change from the previous day). Here’s the formula:

\[ return_{daily} = \frac{price_{i}-price_{i-1}}{price_{i-1}} \]

sp500_prices_tbl %>% glimpse()
## Rows: 502,541
## Columns: 9
## $ ...1     <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18…
## $ symbol   <chr> "MSFT", "MSFT", "MSFT", "MSFT", "MSFT", "MSFT", "MSFT", "MSFT…
## $ date     <date> 2020-04-01, 2020-04-02, 2020-04-03, 2020-04-06, 2020-04-07, …
## $ open     <dbl> 153.00, 151.86, 155.10, 160.32, 169.59, 165.67, 166.36, 164.3…
## $ high     <dbl> 157.75, 155.48, 157.38, 166.50, 170.00, 166.67, 167.37, 165.5…
## $ low      <dbl> 150.82, 150.36, 152.19, 157.58, 163.26, 163.50, 163.33, 162.3…
## $ close    <dbl> 152.11, 155.26, 153.83, 165.27, 163.49, 165.13, 165.14, 165.5…
## $ volume   <dbl> 57969900, 49630700, 41243300, 67111700, 62769000, 48318200, 5…
## $ adjusted <dbl> 146.7080, 149.7461, 148.3670, 159.4007, 157.6839, 159.2657, 1…
# Apply your data transformation skills!
sp_500_daily_returns_tbl <- sp500_prices_tbl %>%
    
    select(symbol, date, adjusted) %>%
    
    filter(date >= ymd("2018-01-01")) %>%
    
    group_by(symbol) %>%
    mutate(lag_1 = lag(adjusted)) %>%
    ungroup() %>%
    
    filter(!is.na(lag_1)) %>%
    
    mutate(diff = adjusted - lag_1) %>%
    mutate(pct_return = diff / lag_1) %>%
    
    select(symbol, date, pct_return)

sp_500_daily_returns_tbl
## # A tibble: 502,038 × 3
##    symbol date       pct_return
##    <chr>  <date>          <dbl>
##  1 MSFT   2020-04-02  0.0207   
##  2 MSFT   2020-04-03 -0.00921  
##  3 MSFT   2020-04-06  0.0744   
##  4 MSFT   2020-04-07 -0.0108   
##  5 MSFT   2020-04-08  0.0100   
##  6 MSFT   2020-04-09  0.0000605
##  7 MSFT   2020-04-13  0.00224  
##  8 MSFT   2020-04-14  0.0495   
##  9 MSFT   2020-04-15 -0.0105   
## 10 MSFT   2020-04-16  0.0300   
## # ℹ 502,028 more rows

2 Spread to object-characteristics format

We’ll convert the daily returns (percentage change from one day to the next) to object-characteristics format, also known as the user-item format. Users are identified by the symbol (company), and items are represented by the pct_return at each date.

stock_date_matrix_tbl <- sp_500_daily_returns_tbl %>%
    spread(key = date, value = pct_return, fill = 0)

stock_date_matrix_tbl
## # A tibble: 503 × 1,005
##    symbol `2020-04-02` `2020-04-03` `2020-04-06` `2020-04-07` `2020-04-08`
##    <chr>         <dbl>        <dbl>        <dbl>        <dbl>        <dbl>
##  1 A           0.0489     -0.0259         0.0559     -0.00444       0.0359
##  2 AAL        -0.0589     -0.0666         0.0117      0.0758        0.109 
##  3 AAPL        0.0167     -0.0144         0.0872     -0.0116        0.0256
##  4 ABBV        0.0233     -0.0234         0.0322     -0.00449       0.0420
##  5 ABNB        0           0              0           0             0     
##  6 ABT         0.0375      0.000126       0.0413     -0.00967       0.0369
##  7 ACGL        0.0115     -0.0650         0.0983      0.0314        0.0291
##  8 ACN         0.0103     -0.0264         0.0914     -0.0116        0.0464
##  9 ADBE        0.00913    -0.0341         0.0869     -0.0320        0.0267
## 10 ADI         0.0429     -0.0130         0.107       0.00470       0.0535
## # ℹ 493 more rows
## # ℹ 999 more variables: `2020-04-09` <dbl>, `2020-04-13` <dbl>,
## #   `2020-04-14` <dbl>, `2020-04-15` <dbl>, `2020-04-16` <dbl>,
## #   `2020-04-17` <dbl>, `2020-04-20` <dbl>, `2020-04-21` <dbl>,
## #   `2020-04-22` <dbl>, `2020-04-23` <dbl>, `2020-04-24` <dbl>,
## #   `2020-04-27` <dbl>, `2020-04-28` <dbl>, `2020-04-29` <dbl>,
## #   `2020-04-30` <dbl>, `2020-05-01` <dbl>, `2020-05-04` <dbl>, …

#Perform k-means clustering

final_cluster <- kmeans(stock_date_matrix_tbl %>%
  select(-symbol), centers = 3, nstart = 20)

final_cluster
## K-means clustering with 3 clusters of sizes 95, 155, 253
## 
## Cluster means:
##    2020-04-02  2020-04-03 2020-04-06    2020-04-07 2020-04-08  2020-04-09
## 1 0.012738877 -0.01609734 0.09310315 -0.0011345316 0.03806894 0.008349404
## 2 0.006237742 -0.01909078 0.10086715  0.0309637104 0.06090707 0.036624781
## 3 0.018013917 -0.01393152 0.06446147  0.0006146742 0.03851389 0.023564372
##     2020-04-13 2020-04-14  2020-04-15   2020-04-16 2020-04-17  2020-04-20
## 1 -0.003818254 0.03753900 -0.01795248  0.013724958 0.02576904 -0.01098075
## 2 -0.031441707 0.01009755 -0.05333199 -0.032111725 0.07159517 -0.02734663
## 3 -0.021630433 0.02930986 -0.02513108  0.006639712 0.02973054 -0.02048491
##    2020-04-21 2020-04-22    2020-04-23 2020-04-24 2020-04-27   2020-04-28
## 1 -0.04142402 0.03747238 -0.0001874985 0.01844747 0.02028564 -0.001582136
## 2 -0.02881062 0.01291048  0.0167909096 0.01204007 0.04441346  0.031941696
## 3 -0.02559100 0.01778655 -0.0041725664 0.01266548 0.01994422  0.002002930
##    2020-04-29  2020-04-30  2020-05-01   2020-05-04   2020-05-05  2020-05-06
## 1 0.045414371 -0.01765834 -0.03314824  0.009795831  0.020542889  0.01139185
## 2 0.065394555 -0.03653559 -0.05236098 -0.002755770 -0.009467917 -0.02234603
## 3 0.008061948 -0.01635801 -0.02152714  0.001494488  0.011477669 -0.01326851
##   2020-05-07 2020-05-08   2020-05-11  2020-05-12  2020-05-13  2020-05-14
## 1 0.02175057 0.02411106  0.007155689 -0.02401684 -0.02153534 0.013276335
## 2 0.02713953 0.04534114 -0.029462528 -0.03245988 -0.04740821 0.026261297
## 3 0.01105323 0.01619984 -0.001084194 -0.02074783 -0.01596029 0.007712561
##     2020-05-15 2020-05-18   2020-05-19 2020-05-20   2020-05-21   2020-05-22
## 1 0.0049341872 0.03785635 -0.002849309 0.02144860 -0.012729241  0.007437757
## 2 0.0007102987 0.09124065 -0.018930620 0.02994237  0.001427265 -0.004379539
## 3 0.0030109061 0.03418235 -0.011507871 0.01036977 -0.005859373  0.003973648
##    2020-05-26  2020-05-27   2020-05-28   2020-05-29  2020-06-01  2020-06-02
## 1 0.004908851 0.009797208 -0.004757337  0.019115104 0.009601698 0.009674496
## 2 0.063767150 0.035590283 -0.030412565 -0.014409052 0.022458044 0.019700288
## 3 0.015227893 0.018629610  0.008238274  0.005630779 0.001969430 0.007510478
##   2020-06-03   2020-06-04 2020-06-05  2020-06-08   2020-06-09   2020-06-10
## 1 0.01153290 -0.010847883 0.02219640 0.003317268 -0.005894032  0.007266288
## 2 0.04874135  0.024822045 0.05461837 0.040714670 -0.040237259 -0.045311207
## 3 0.01304362 -0.005538605 0.02192575 0.011726098 -0.015017931 -0.010334580
##    2020-06-11  2020-06-12  2020-06-15 2020-06-16   2020-06-17    2020-06-18
## 1 -0.05823274 0.013811138 0.020310919 0.01512562  0.001303267  0.0023885674
## 2 -0.09174606 0.038596578 0.012167934 0.02371221 -0.023187762 -0.0001038225
## 3 -0.05144669 0.009387711 0.008702775 0.01630366 -0.002655847 -0.0016989723
##      2020-06-19   2020-06-22   2020-06-23  2020-06-24  2020-06-25  2020-06-26
## 1  0.0007100622  0.008511165  0.003775800 -0.02566109 0.010387406 -0.01783845
## 2 -0.0165261864 -0.002847646  0.005607716 -0.05126448 0.014835431 -0.03371501
## 3 -0.0073650661  0.002151447 -0.001997798 -0.02304650 0.007864155 -0.01450039
##    2020-06-29 2020-06-30   2020-07-01  2020-07-02  2020-07-06   2020-07-07
## 1 0.009537108 0.02340369  0.001485043 0.004720265 0.019802179 -0.008846835
## 2 0.032109154 0.01322348 -0.014335060 0.007318768 0.015478937 -0.031275039
## 3 0.015715846 0.01222483  0.005494208 0.005179537 0.005507094 -0.008171808
##      2020-07-08   2020-07-09  2020-07-10    2020-07-13 2020-07-14 2020-07-15
## 1  0.0161936025  0.007988178 -0.00137984 -0.0231196747 0.01799618 0.01157129
## 2  0.0027434590 -0.034963229  0.03383237  0.0004601405 0.01351959 0.04348400
## 3 -0.0006124315 -0.009324319  0.01013948 -0.0021960246 0.01815474 0.01274151
##     2020-07-16   2020-07-17   2020-07-20   2020-07-21  2020-07-22   2020-07-23
## 1 -0.005513871  0.012526406  0.019365801 -0.006184541 0.006679985 -0.013306621
## 2 -0.006367806 -0.009952208 -0.015805444  0.025845304 0.002525544  0.001849185
## 3  0.001480352  0.009935178 -0.005548154  0.004939906 0.010384505 -0.001742961
##     2020-07-24   2020-07-27   2020-07-28 2020-07-29   2020-07-30    2020-07-31
## 1 -0.012525789  0.023149153 -0.016702122 0.01961510  0.005197875  0.0058415484
## 2 -0.008672831 -0.003858880 -0.007407136 0.02329877 -0.018365743 -0.0069437090
## 3 -0.005223344  0.003297285 -0.002242173 0.01335887 -0.004847811 -0.0001459764
##    2020-08-03  2020-08-04  2020-08-05    2020-08-06   2020-08-07   2020-08-10
## 1 0.014859874 0.004217147 0.009464678 -0.0002642511 -0.007677417 -0.007738830
## 2 0.003952711 0.010274797 0.018847363  0.0005278314  0.016135546  0.031258397
## 3 0.001149884 0.003249403 0.001279833 -0.0006262431  0.010665633  0.003081454
##     2020-08-11   2020-08-12   2020-08-13    2020-08-14   2020-08-17
## 1 -0.013559622  0.018562309  0.006848303 -0.0043750892  0.011064110
## 2  0.007312269 -0.001644674 -0.010485288  0.0086547101 -0.009654513
## 3 -0.005153276  0.009528351 -0.003053975 -0.0002502886  0.003010636
##     2020-08-18   2020-08-19   2020-08-20    2020-08-21  2020-08-24
## 1  0.002042463 -0.003120641  0.002968742  0.0008848377 0.003590202
## 2 -0.011158550 -0.003646533 -0.011456534 -0.0042057955 0.033646118
## 3 -0.001456272 -0.004799835 -0.003738881  0.0002322044 0.006765209
##      2020-08-25    2020-08-26   2020-08-27  2020-08-28   2020-08-31
## 1  0.0068345968  0.0138877188 -0.009630559 0.007344717  0.003462099
## 2 -0.0037747154 -0.0099848183  0.016417420 0.016313288 -0.021271391
## 3  0.0004605328 -0.0003437106  0.003893422 0.003518628 -0.002386555
##      2020-09-01 2020-09-02  2020-09-03   2020-09-04  2020-09-08  2020-09-09
## 1  0.0143360714 0.01606217 -0.05125298 -0.019231405 -0.02936551 0.025911041
## 2  0.0062192568 0.01521800 -0.01222915  0.008510907 -0.02457220 0.004778411
## 3 -0.0008090754 0.01972278 -0.02274150 -0.004655882 -0.01700463 0.015827688
##    2020-09-10   2020-09-11 2020-09-14   2020-09-15   2020-09-16   2020-09-17
## 1 -0.01321810 -0.001609913 0.01838920  0.013632600 -0.008460049 -0.012407663
## 2 -0.01645029  0.006702392 0.02424483 -0.004487212  0.019642034 -0.002301256
## 3 -0.01365490  0.004855572 0.01325380  0.002682749  0.001962556 -0.003610800
##     2020-09-18   2020-09-21    2020-09-22  2020-09-23   2020-09-24 2020-09-25
## 1 -0.007114160 -0.001886815  0.0136872320 -0.02163718 0.0010885996 0.02061288
## 2 -0.013241928 -0.044926870 -0.0007339224 -0.02776338 0.0008236021 0.01205610
## 3 -0.009812664 -0.017739602  0.0058910369 -0.01845546 0.0028512404 0.01348642
##   2020-09-28   2020-09-29  2020-09-30   2020-10-01   2020-10-02 2020-10-05
## 1 0.02190865  0.002629782 0.004481909  0.017293629 -0.016861551 0.02335068
## 2 0.02643467 -0.017221937 0.005981476 -0.001280802  0.017009984 0.02307392
## 3 0.01226579 -0.004120655 0.007257765  0.001765404  0.003111204 0.01387009
##     2020-10-06 2020-10-07  2020-10-08   2020-10-09  2020-10-12   2020-10-13
## 1 -0.009671929 0.02220959 0.008810924  0.014787067 0.011995970  0.002240299
## 2 -0.013235283 0.02325966 0.020390649 -0.006559971 0.004378135 -0.019190116
## 3 -0.007288941 0.01283055 0.011078551  0.003857636 0.007365003 -0.006327282
##     2020-10-14   2020-10-15   2020-10-16  2020-10-19  2020-10-20    2020-10-21
## 1 -0.005115938 0.0022054140 -0.001291431 -0.01116680 0.003404970 -0.0092297826
## 2 -0.001695606 0.0087136633 -0.005084233 -0.01368145 0.011614569 -0.0069406984
## 3 -0.002476927 0.0009719584  0.001855080 -0.01358816 0.003064871 -0.0009239736
##    2020-10-22  2020-10-23  2020-10-26    2020-10-27  2020-10-28  2020-10-29
## 1 0.003991296 0.006335802 -0.01797892 -0.0005010301 -0.02992113 0.012308832
## 2 0.028759605 0.004213361 -0.03462576 -0.0230225667 -0.03548961 0.022444437
## 3 0.004970126 0.004768466 -0.01612983 -0.0087892794 -0.02767195 0.003330741
##     2020-10-30 2020-11-02 2020-11-03   2020-11-04 2020-11-05    2020-11-06
## 1 -0.020114986 0.01140373 0.02361483  0.040071480 0.03094689  0.0072091983
## 2  0.003800735 0.02875865 0.02069687 -0.019897859 0.03007788 -0.0135921976
## 3 -0.001821189 0.02059628 0.01856240  0.006501387 0.01090315  0.0007017854
##    2020-11-09  2020-11-10   2020-11-11   2020-11-12 2020-11-13  2020-11-16
## 1 -0.02081560 -0.01898052  0.025507460 -0.008181991 0.01028446 0.008859374
## 2  0.11867030  0.01218971 -0.014888284 -0.025642021 0.03620741 0.037536641
## 3  0.01176772  0.01269291  0.001320367 -0.010359409 0.01599802 0.010662519
##      2020-11-17   2020-11-18   2020-11-19   2020-11-20  2020-11-23
## 1 -0.0001442445 -0.009184443 0.0140048642 -0.001022939 0.006956421
## 2  0.0034276650 -0.010242156 0.0076055977 -0.009101172 0.034714800
## 3 -0.0078035810 -0.012008370 0.0006717359 -0.004290990 0.003381795
##      2020-11-24   2020-11-25    2020-11-27   2020-11-30  2020-12-01
## 1 -0.0002332953  0.005739069  0.0132485476  0.003768035 0.008225638
## 2  0.0405911386 -0.013098271 -0.0051780054 -0.026562074 0.013734150
## 3  0.0110779996 -0.003776531  0.0006516638 -0.003504399 0.006614290
##     2020-12-02    2020-12-03  2020-12-04   2020-12-07  2020-12-08   2020-12-09
## 1 -0.004141848  0.0060991865 0.012635688  0.004764232 0.007735904 -0.021330122
## 2  0.013309258  0.0119608774 0.026378970 -0.010328572 0.003192285  0.001794409
## 3 -0.003658105 -0.0009814971 0.009003798 -0.003721819 0.002071873 -0.001592538
##     2020-12-10   2020-12-11   2020-12-14 2020-12-15   2020-12-16  2020-12-17
## 1  0.005148100 -0.001503944  0.006782908 0.01191835  0.003547964 0.012542897
## 2  0.006094706 -0.010515640 -0.017842504 0.02181599 -0.003261816 0.003046616
## 3 -0.006261495 -0.001388809 -0.004729239 0.01262068 -0.002717744 0.008847971
##     2020-12-18   2020-12-21   2020-12-22    2020-12-23   2020-12-24
## 1  0.006767142 -0.002795735  0.008113730 -0.0061903129  0.003318062
## 2 -0.009174514 -0.004900532 -0.010331053  0.0195025858 -0.002272918
## 3 -0.001908682 -0.007926030 -0.002421086  0.0003571792  0.004562755
##     2020-12-28   2020-12-29  2020-12-30  2020-12-31  2021-01-04  2021-01-05
## 1 -0.004191227 -0.005086346 0.006029730 0.003819065 -0.01322953 0.010249669
## 2  0.002839654 -0.006940734 0.012747321 0.004316161 -0.01710379 0.021404390
## 3  0.002626050 -0.003472723 0.002701679 0.010215729 -0.01573545 0.002949397
##     2021-01-06  2021-01-07   2021-01-08   2021-01-11   2021-01-12    2021-01-13
## 1 0.0005058214 0.029319353  0.007618058 -0.002014629 0.0029673481  8.215124e-06
## 2 0.0427908199 0.010151061 -0.005073760  0.002073817 0.0204499832 -6.953971e-03
## 3 0.0177855491 0.003213272  0.003545797 -0.002845595 0.0003436204 -4.808458e-04
##      2021-01-14    2021-01-15   2021-01-19  2021-01-20   2021-01-21
## 1  0.0003059532 -0.0071717066 0.0164019962 0.015678360  0.002546569
## 2  0.0162641747 -0.0180886141 0.0061173280 0.002354316 -0.010598521
## 3 -0.0042627900  0.0004839627 0.0003457569 0.007662534 -0.004325715
##     2021-01-22    2021-01-25   2021-01-26  2021-01-27  2021-01-28  2021-01-29
## 1 -0.004926109  0.0004803489 -0.008886691 -0.03338248 0.018858179 -0.01475466
## 2 -0.006071245 -0.0101720102 -0.010501639 -0.02568676 0.019848764 -0.02534014
## 3 -0.003094149  0.0039128550 -0.002833569 -0.01969166 0.006540591 -0.01381921
##   2021-02-01  2021-02-02   2021-02-03  2021-02-04  2021-02-05  2021-02-08
## 1 0.02532866 0.019159584 -0.008525433 0.017419165 0.006251878 0.015303370
## 2 0.01376381 0.018083419  0.016848447 0.017878536 0.008085029 0.021109640
## 3 0.01002915 0.009142885 -0.002455337 0.007070728 0.004201119 0.003817039
##      2021-02-09   2021-02-10    2021-02-11   2021-02-12   2021-02-16
## 1  0.0008817836 0.0013071765  0.0143426833 0.0099304382 -0.005807562
## 2 -0.0052896753 0.0062498547 -0.0007982264 0.0106397664  0.013534080
## 3  0.0018467384 0.0007619426 -0.0017098575 0.0008727444 -0.006255568
##      2021-02-17    2021-02-18   2021-02-19   2021-02-22   2021-02-23
## 1 -0.0084720894 -0.0087989419  0.005447231 -0.032386074 -0.003534120
## 2  0.0009292481 -0.0127027934  0.025270867  0.020913489  0.008981870
## 3  0.0023656373  0.0003400787 -0.004199294 -0.002543935  0.001600004
##    2021-02-24  2021-02-25   2021-02-26 2021-03-01   2021-03-02   2021-03-03
## 1 0.013785902 -0.03784209  0.013458631 0.02770055 -0.017599278 -0.034181648
## 2 0.029298903 -0.03030386 -0.007550594 0.02648299 -0.001540202  0.008006602
## 3 0.003834154 -0.01301013 -0.010298506 0.01739075 -0.001976951 -0.007119437
##     2021-03-04 2021-03-05   2021-03-08   2021-03-09   2021-03-10  2021-03-11
## 1 -0.032780370 0.01870479 -0.029624236  0.040308752 -0.003165936 0.031867763
## 2 -0.012499212 0.02371728  0.015759249 -0.012493435  0.018753672 0.006614874
## 3 -0.009538089 0.02297330  0.008678457  0.003197956  0.009622440 0.001056831
##     2021-03-12  2021-03-15   2021-03-16   2021-03-17   2021-03-18   2021-03-19
## 1 -0.007627061 0.019421702 -0.002701553  0.004446188 -0.031368082  0.011108159
## 2  0.011694270 0.004934790 -0.019355332  0.013175035 -0.012696548 -0.003761885
## 3  0.007754252 0.009572298 -0.002933519 -0.001867585 -0.002233175 -0.002270811
##     2021-03-22   2021-03-23   2021-03-24  2021-03-25 2021-03-26  2021-03-29
## 1  0.015330931 -0.013710787 -0.017417042 0.001486817 0.03186751 -0.01241586
## 2 -0.011924826 -0.030221078  0.001142920 0.021129838 0.01423016 -0.01607433
## 3  0.005192419 -0.003961274  0.002238854 0.009513463 0.01683560  0.00385473
##      2021-03-30   2021-03-31  2021-04-01  2021-04-05    2021-04-06   2021-04-07
## 1  9.341211e-05  0.019733774 0.021344698 0.013253593  2.606805e-03 -0.005751577
## 2  1.301207e-02 -0.007300048 0.014964537 0.004100038  2.697631e-03 -0.001828276
## 3 -5.543008e-03 -0.003439969 0.005228194 0.010576568 -9.673395e-05 -0.003798504
##      2021-04-08  2021-04-09    2021-04-12    2021-04-13    2021-04-14
## 1  0.0134591184 0.007767506 -1.940432e-03  0.0066286868 -0.0081098202
## 2 -0.0025208794 0.004575085 -2.654444e-05 -0.0076308124  0.0109807680
## 3 -0.0000623031 0.005719122  3.868601e-03  0.0008914584 -0.0002969136
##     2021-04-15  2021-04-16   2021-04-19   2021-04-20  2021-04-21   2021-04-22
## 1  0.015454602 0.002140573 -0.013839792 -0.009738042 0.014526127 -0.001751388
## 2 -0.001500278 0.002188917 -0.004534248 -0.023315150 0.020843028 -0.009948306
## 3  0.011323790 0.006671321 -0.001863057  0.002925741 0.006757706 -0.004314590
##    2021-04-23   2021-04-26    2021-04-27   2021-04-28    2021-04-29
## 1 0.018363589  0.008389793 -0.0018378064 -0.007420567 -0.0008333467
## 2 0.016899599  0.008289588  0.0077053423  0.007732134  0.0069510304
## 3 0.004868027 -0.004337146 -0.0004516824 -0.002329138  0.0090382492
##     2021-04-30   2021-05-03   2021-05-04   2021-05-05   2021-05-06  2021-05-07
## 1 -0.017825935 -0.007432224 -0.017217642 -0.001240713 -0.004726440 0.012485262
## 2 -0.010328991  0.009601890 -0.001152985  0.010184797  0.004282320 0.018361114
## 3 -0.002302498  0.008052205  0.002395101 -0.002132346  0.006934437 0.005519639
##     2021-05-10   2021-05-11  2021-05-12  2021-05-13  2021-05-14   2021-05-17
## 1 -0.025605394 -0.001150744 -0.03273206 0.008489312 0.027261579 -0.007454424
## 2 -0.004989226 -0.014572230 -0.02360672 0.013497679 0.024231650  0.006052924
## 3  0.003647357 -0.012029288 -0.01829692 0.015647507 0.006232048 -0.003056435
##     2021-05-18   2021-05-19   2021-05-20   2021-05-21  2021-05-24   2021-05-25
## 1 -0.005589572  0.006185452 0.0219607837 -0.003191818 0.014607459  0.001582901
## 2 -0.012275774 -0.012256518 0.0003934248  0.003862121 0.007619479 -0.008655134
## 3 -0.006554714 -0.004463532 0.0078675957  0.001124486 0.002944743 -0.003787472
##      2021-05-26   2021-05-27   2021-05-28  2021-06-01    2021-06-02
## 1  0.0057726805 0.0033375544  0.002687467 -0.00571073  0.0008078465
## 2  0.0106949333 0.0123302155 -0.001559080  0.01729087 -0.0006972781
## 3 -0.0007030166 0.0007246763  0.002453428 -0.00140575  0.0021308145
##     2021-06-03  2021-06-04    2021-06-07   2021-06-08    2021-06-09
## 1 -0.012425702 0.017628300  8.356296e-06  0.001986285 -0.0032079301
## 2 -0.002342560 0.002128111 -2.632948e-03  0.004649205 -0.0103602954
## 3  0.001947553 0.003840004 -1.635418e-03 -0.000122571 -0.0007119307
##     2021-06-10   2021-06-11   2021-06-14    2021-06-15   2021-06-16
## 1  0.012627051 0.0063244643  0.006975474 -0.0073300210 -0.003621906
## 2 -0.008971304 0.0064564641 -0.012080260  0.0038713718 -0.004566299
## 3  0.005140786 0.0007912006 -0.001924966  0.0002910342 -0.009228811
##     2021-06-17   2021-06-18 2021-06-21   2021-06-22   2021-06-23  2021-06-24
## 1  0.012837253 -0.008570249 0.01099810  0.007491482  0.002316067 0.009333326
## 2 -0.030326112 -0.021702137 0.02989465 -0.000389533  0.003219741 0.009935289
## 3 -0.003128949 -0.015766320 0.01595176  0.000933055 -0.005219863 0.003231434
##    2021-06-25    2021-06-28   2021-06-29    2021-06-30   2021-07-01
## 1 0.005629775  0.0126151740  0.005864199 -5.185353e-03 0.0007584593
## 2 0.008019844 -0.0186978734 -0.003783583  9.635738e-03 0.0107244045
## 3 0.006930516 -0.0001559206 -0.001837628  1.612163e-05 0.0066423811
##     2021-07-02   2021-07-06   2021-07-07   2021-07-08  2021-07-09   2021-07-12
## 1  0.007656421  0.002417696 -0.001411752 -0.008461007 0.012189731 0.0023971086
## 2 -0.002132535 -0.022223857 -0.004230045 -0.013802035 0.027944494 0.0050319448
## 3  0.003617937 -0.002610500  0.008223448 -0.007954465 0.009335141 0.0008818661
##     2021-07-13   2021-07-14   2021-07-15    2021-07-16   2021-07-19 2021-07-20
## 1 -0.005325688 -0.003473746 -0.007188631 -0.0052744949 -0.004948972 0.01739634
## 2 -0.016198884 -0.008226982 -0.005771864 -0.0215590075 -0.032853500 0.03106928
## 3 -0.005771149  0.003118923  0.002042440  0.0002906033 -0.013599497 0.01287221
##   2021-07-21    2021-07-22  2021-07-23   2021-07-26   2021-07-27   2021-07-28
## 1 0.01211083  0.0055767984 0.014979565 -0.003552284 -0.008783369  0.009503497
## 2 0.02454181 -0.0126498333 0.002289609  0.013777960 -0.006269450  0.003572581
## 3 0.00102132  0.0004632383 0.009325858 -0.001377136  0.003935517 -0.004391993
##    2021-07-29    2021-07-30    2021-08-02  2021-08-03   2021-08-04   2021-08-05
## 1 0.009829827  0.0029443706  0.0032594363 0.008404720  0.006894598 0.0017505239
## 2 0.009911568 -0.0096040232 -0.0066367538 0.010362142 -0.018424457 0.0200484922
## 3 0.004970997  0.0001209023 -0.0006798063 0.006496292 -0.008485565 0.0002780524
##     2021-08-06   2021-08-09   2021-08-10   2021-08-11    2021-08-12
## 1 -0.003410518  0.001549110 -0.008306706 -0.002266227  0.0006283400
## 2  0.011204921 -0.005266743  0.015955383  0.012098063 -0.0021491918
## 3  0.003016471 -0.001013036  0.001503375  0.006487894  0.0003361258
##     2021-08-13   2021-08-16    2021-08-17   2021-08-18   2021-08-19  2021-08-20
## 1  0.001963482  0.001197997 -0.0117567298 -0.008417718  0.004281131 0.009871720
## 2 -0.008736374 -0.009519180 -0.0159522256 -0.009212380 -0.016274827 0.007772149
## 3  0.004046112  0.006194452 -0.0005962355 -0.010888447  0.003112708 0.005656688
##      2021-08-23   2021-08-24  2021-08-25   2021-08-26  2021-08-27   2021-08-30
## 1  0.0127905915  0.007534817 0.004892989 -0.004460004 0.011463506  0.006096424
## 2  0.0186719970  0.015514972 0.011369082 -0.012285436 0.020579438 -0.012560066
## 3 -0.0009615026 -0.002012457 0.001825069 -0.004959380 0.004913799  0.002476761
##     2021-08-31   2021-09-01  2021-09-02   2021-09-03   2021-09-07   2021-09-08
## 1 -0.004802545  0.003202477 0.004458144  0.002936488 -0.004265175 -0.005919685
## 2  0.002042734 -0.006725258 0.008923839 -0.007145014 -0.005299371 -0.008669673
## 3  0.001335106  0.003059073 0.006696997 -0.003019003 -0.011647739  0.006629393
##      2021-09-09   2021-09-10    2021-09-13    2021-09-14  2021-09-15
## 1  0.0009275951 -0.002397097 -0.0057318841 -0.0005930049 0.006814162
## 2  0.0042449644 -0.007503953  0.0154398048 -0.0154685640 0.018514509
## 3 -0.0081612890 -0.007227726  0.0008249042 -0.0052958143 0.004628310
##     2021-09-16   2021-09-17   2021-09-20   2021-09-21  2021-09-22  2021-09-23
## 1  0.004657793 -0.009550056 -0.020110872  0.003343803 0.010977703 0.012361427
## 2 -0.003212553 -0.007293038 -0.022534694 -0.005305220 0.022404709 0.027130814
## 3 -0.003924763 -0.007804975 -0.008718879 -0.002897817 0.004657386 0.006105819
##      2021-09-24   2021-09-27   2021-09-28   2021-09-29   2021-09-30  2021-10-01
## 1 -0.0012859431 -0.010436248 -0.032189623 -0.004637186 -0.005981633 0.006208889
## 2  0.0052581549  0.021319105 -0.009409987 -0.003618003 -0.019006830 0.024996286
## 3 -0.0007447715 -0.004861989 -0.011865680  0.007429429 -0.015317628 0.005970917
##      2021-10-04  2021-10-05   2021-10-06  2021-10-07   2021-10-08   2021-10-11
## 1 -0.0236250445 0.013324795  0.002344194 0.013290661 -0.008712402 -0.007152003
## 2 -0.0005947131 0.009191157 -0.005290593 0.010399894  0.003996824 -0.004449877
## 3 -0.0043365387 0.005487546  0.005090369 0.005940466 -0.003657092 -0.005603014
##     2021-10-12   2021-10-13 2021-10-14  2021-10-15    2021-10-18  2021-10-19
## 1 0.0005919918  0.007991222 0.02045112 0.003804644  0.0098802163 0.008152150
## 2 0.0017039843 -0.003918739 0.01546902 0.004367815  0.0002098784 0.002023832
## 3 0.0003983536  0.003761059 0.01652601 0.002118391 -0.0026866604 0.007380814
##      2021-10-20   2021-10-21    2021-10-22   2021-10-25   2021-10-26
## 1 -0.0001622771  0.012290735 -0.0006190826  0.007859442 -0.002244944
## 2  0.0090658120 -0.006043915  0.0029018071  0.004949467 -0.003491246
## 3  0.0090842718  0.002949102  0.0047847619 -0.001414125 -0.000338242
##     2021-10-27  2021-10-28    2021-10-29  2021-11-01   2021-11-02  2021-11-03
## 1 -0.004499728 0.016940044  0.0085543404 0.005120299  0.005324011 0.004768610
## 2 -0.022122075 0.011277646 -0.0093492316 0.018596779 -0.001356809 0.009638541
## 3 -0.009574313 0.007551259 -0.0006284225 0.001188705  0.003798652 0.004415515
##     2021-11-04   2021-11-05    2021-11-08    2021-11-09  2021-11-10
## 1  0.010576899 -0.001138769  4.875856e-03 -0.0007243247 -0.02050293
## 2 -0.004888737  0.019789067  1.749342e-03 -0.0030076014 -0.01068956
## 3 -0.002700629  0.003374830 -7.085796e-05  0.0016474630  0.00120848
##     2021-11-11   2021-11-12   2021-11-15    2021-11-16   2021-11-17
## 1  0.007880456  0.013073288 -0.002642239  0.0147646397 -0.006293229
## 2  0.005811535 -0.000972983  0.002402530 -0.0044371896 -0.009132585
## 3 -0.001575912  0.005438306  0.003037671  0.0006770972 -0.002399546
##      2021-11-18   2021-11-19   2021-11-22   2021-11-23   2021-11-24  2021-11-26
## 1  0.0008177002  0.003303503 -0.015618177 -0.010293097 4.904591e-03 -0.01739087
## 2 -0.0049283952 -0.015992801  0.011175650  0.011061090 6.524711e-05 -0.04170243
## 3 -0.0034841520 -0.002852352  0.001519134  0.004464697 1.018267e-04 -0.01676855
##    2021-11-29  2021-11-30   2021-12-01 2021-12-02   2021-12-03   2021-12-06
## 1 0.022467295 -0.02154333 -0.017997808 0.01413169 -0.017426658 0.0009237185
## 2 0.003458547 -0.02901096 -0.020006148 0.03708348 -0.010011919 0.0224810768
## 3 0.005892198 -0.02479416 -0.006912749 0.01963911  0.003235613 0.0133989557
##    2021-12-07  2021-12-08   2021-12-09  2021-12-10   2021-12-13   2021-12-14
## 1 0.035420698 0.006509760 -0.017963777 0.003794103 -0.010056421 -0.015821668
## 2 0.018095477 0.004416387 -0.008014812 0.003820777 -0.022598055 -0.001212812
## 3 0.009461417 0.002308158 -0.003375033 0.008458476  0.003640991 -0.004941210
##    2021-12-15   2021-12-16   2021-12-17   2021-12-20  2021-12-21  2021-12-22
## 1 0.024023204 -0.026296245  0.002241193 -0.014315880 0.027479408 0.011166218
## 2 0.002408687  0.002007954 -0.010250838 -0.020666670 0.035005845 0.006401127
## 3 0.012121225  0.004711052 -0.011886516 -0.008285763 0.007810233 0.006830723
##    2021-12-23 2021-12-27   2021-12-28    2021-12-29   2021-12-30    2021-12-31
## 1 0.008145160 0.01709680 -0.007850739  0.0031682173 -0.002753183 -0.0039952374
## 2 0.008848020 0.01243079  0.001556698 -0.0003801224 -0.002524528  0.0004592271
## 3 0.004558017 0.01145876  0.004462471  0.0051057251 -0.001268576  0.0020777584
##     2022-01-03   2022-01-04   2022-01-05   2022-01-06   2022-01-07
## 1 -0.004781670 -0.012969245 -0.039144637  0.001119830 -0.022068370
## 2  0.015781556  0.027221207 -0.013914578  0.010916545  0.008772580
## 3 -0.006852556  0.003289948 -0.009259398 -0.002434377 -0.002648441
##      2022-01-10  2022-01-11   2022-01-12   2022-01-13    2022-01-14  2022-01-18
## 1 -0.0001479439 0.017277794 0.0008687447 -0.028871377 -0.0005772052 -0.03097465
## 2 -0.0085078584 0.014139407 0.0024697129  0.003356111  0.0030515498 -0.01745398
## 3 -0.0035356898 0.003704385 0.0009873800 -0.002742791 -0.0050885766 -0.01117399
##     2022-01-19   2022-01-20   2022-01-21  2022-01-24   2022-01-25   2022-01-26
## 1 -0.010615253 -0.015505171 -0.025973029 0.015615797 -0.035652766 -0.006550778
## 2 -0.019347688 -0.016334434 -0.021165852 0.008431095  0.003493893 -0.004411588
## 3 -0.004042806 -0.008231409 -0.006260746 0.002920441 -0.011008432 -0.008878827
##     2022-01-27 2022-01-28  2022-01-31   2022-02-01  2022-02-02   2022-02-03
## 1 -0.015218008 0.03264217 0.043661728 9.678787e-03 0.006894672 -0.037386314
## 2 -0.007926629 0.01030708 0.015305723 1.835873e-02 0.004827427 -0.012528475
## 3 -0.001340883 0.01820892 0.009567342 8.783531e-05 0.009633736 -0.008494267
##     2022-02-04   2022-02-07  2022-02-08 2022-02-09   2022-02-10   2022-02-11
## 1  0.008370612 -0.003363949 0.010083169 0.03271838 -0.024432659 -0.034625958
## 2  0.003038685  0.007147736 0.013769745 0.01896835 -0.007315793 -0.010649631
## 3 -0.007239362 -0.002024894 0.005798344 0.01131693 -0.018906554 -0.007678445
##     2022-02-14  2022-02-15    2022-02-16   2022-02-17    2022-02-18
## 1 -0.005216771 0.029652773 -3.020519e-05 -0.034088216 -0.0118281639
## 2 -0.011787503 0.021797777  5.980868e-03 -0.022805243 -0.0057588772
## 3 -0.006257099 0.006926586  1.656750e-03 -0.009584323 -0.0009711423
##     2022-02-22  2022-02-23   2022-02-24 2022-02-25   2022-02-28   2022-03-01
## 1 -0.013556959 -0.02652010 0.0476672755 0.02039216 -0.004068919 -0.016314273
## 2 -0.013623357 -0.01679270 0.0005718949 0.03096157 -0.004579730 -0.031750299
## 3 -0.005994015 -0.01284527 0.0059240587 0.02687688 -0.006556509 -0.008527982
##   2022-03-02   2022-03-03   2022-03-04  2022-03-07   2022-03-08 2022-03-09
## 1 0.02020044 -0.017909963 -0.017518591 -0.04614879 -0.001863728 0.04115994
## 2 0.03369213 -0.008319331 -0.018452706 -0.04248296  0.008925052 0.02688131
## 3 0.01668497  0.006043851  0.004484247 -0.01710135 -0.016210282 0.01453628
##     2022-03-10   2022-03-11   2022-03-14 2022-03-15  2022-03-16 2022-03-17
## 1 -0.015594459 -0.024564497 -0.020181368 0.03130611 0.046851344 0.01668526
## 2  0.003939679 -0.008786337 -0.005583608 0.01079407 0.026331477 0.01399399
## 3 -0.002443826 -0.007745019  0.002019717 0.01638097 0.009435687 0.01055498
##    2022-03-18    2022-03-21  2022-03-22  2022-03-23  2022-03-24   2022-03-25
## 1 0.027175456 -0.0128592260 0.017345200 -0.02494798 0.021970417 -0.007778544
## 2 0.006454538  0.0024365682 0.008798901 -0.01057300 0.012365390  0.011809385
## 3 0.003465149 -0.0004246567 0.002960040 -0.01076548 0.008801141  0.009240678
##     2022-03-28 2022-03-29   2022-03-30  2022-03-31   2022-04-01   2022-04-04
## 1  0.013834514 0.02654520 -0.019000200 -0.01772076 0.0002501877  0.015758228
## 2 -0.007266578 0.01656258 -0.008569422 -0.01660311 0.0002208581  0.001309990
## 3  0.005365639 0.01084564 -0.000981739 -0.01029485 0.0080474743 -0.003743394
##     2022-04-05   2022-04-06   2022-04-07   2022-04-08   2022-04-11   2022-04-12
## 1 -0.026582992 -0.025761878  0.005384627 -0.012833378 -0.018784069 -0.008713846
## 2 -0.015569405 -0.012270768 -0.001716214  0.008973042 -0.004425435  0.001468354
## 3 -0.001929344  0.007079811  0.005658350  0.002974942 -0.009567430 -0.002546300
##    2022-04-13   2022-04-14   2022-04-18 2022-04-19   2022-04-20   2022-04-21
## 1 0.018755338 -0.021816121 -0.003544052 0.03078808 -0.010003594 -0.030696532
## 2 0.016695448 -0.001157504  0.004603664 0.01855722  0.006529095 -0.018654652
## 3 0.005784309 -0.004500860 -0.005970749 0.01388709  0.012376486 -0.006980168
##    2022-04-22   2022-04-25  2022-04-26   2022-04-27 2022-04-28  2022-04-29
## 1 -0.02859255  0.016700029 -0.04092007 -0.004157205 0.03861285 -0.03490622
## 2 -0.03003782 -0.002455509 -0.02522213  0.004107550 0.01857124 -0.02798661
## 3 -0.02522511  0.001304717 -0.01663185  0.003139647 0.01123080 -0.03024091
##     2022-05-02  2022-05-03 2022-05-04  2022-05-05  2022-05-06  2022-05-09
## 1  0.020309367 0.003952966 0.03784780 -0.05278957 -0.02410775 -0.04697261
## 2  0.006629399 0.015832089 0.03008626 -0.03044352 -0.01118589 -0.04294854
## 3 -0.005792080 0.004659162 0.02417231 -0.02367576 -0.00282417 -0.01785213
##     2022-05-10   2022-05-11   2022-05-12 2022-05-13    2022-05-16 2022-05-17
## 1  0.010165259 -0.034329846  0.015418513 0.04637062 -0.0175666202 0.02977899
## 2 -0.001138393 -0.012576879 -0.001203340 0.02929603 -0.0033830993 0.03155826
## 3 -0.005946174 -0.004307014  0.004035255 0.01387101  0.0003863007 0.01204485
##    2022-05-18   2022-05-19   2022-05-20  2022-05-23  2022-05-24  2022-05-25
## 1 -0.04676229  0.011305146  0.008350516 0.005149975 -0.02670354 0.018184083
## 2 -0.03749155 -0.005037390 -0.007180103 0.021146349 -0.01614773 0.021574664
## 3 -0.03560208 -0.003294855  0.003264114 0.012582097  0.00560226 0.003638801
##   2022-05-26 2022-05-27   2022-05-31   2022-06-01 2022-06-02   2022-06-03
## 1 0.03309329 0.03839634 -0.013205240 -0.014135780 0.04319297 -0.022948373
## 2 0.02947038 0.02411097 -0.006493037 -0.010726618 0.01448185 -0.010245972
## 3 0.01271646 0.01767025 -0.009850298 -0.008495224 0.01287108 -0.009058179
##    2022-06-06  2022-06-07  2022-06-08  2022-06-09  2022-06-10  2022-06-13
## 1 0.002973436 0.011671298 -0.01255908 -0.02560800 -0.03849576 -0.05374259
## 2 0.005558741 0.011806017 -0.01528497 -0.02795836 -0.03688433 -0.04964018
## 3 0.002027362 0.008132442 -0.01441973 -0.01822849 -0.01682128 -0.03130935
##     2022-06-14  2022-06-15  2022-06-16    2022-06-17 2022-06-21   2022-06-22
## 1 -0.002514228 0.024282658 -0.04958566  0.0129509291 0.01763171  0.001601136
## 2 -0.001912837 0.009913983 -0.04987294  0.0024390761 0.01631244 -0.012883188
## 3 -0.009090895 0.007371614 -0.02279121 -0.0001965098 0.01865456  0.004115836
##    2022-06-23 2022-06-24   2022-06-27   2022-06-28   2022-06-29   2022-06-30
## 1  0.02534525 0.03576386 -0.006692358 -0.031637619 -0.005960001 -0.010276809
## 2 -0.01253706 0.04168640  0.002461147 -0.005231563 -0.019272462 -0.012340729
## 3  0.01281655 0.02538488  0.001101539 -0.014395394  0.002383986 -0.002192459
##    2022-07-01   2022-07-05   2022-07-06  2022-07-07    2022-07-08   2022-07-11
## 1 0.004768179  0.021290127  0.002673681 0.030367698 -0.0005682699 -0.020313585
## 2 0.012303696 -0.008625314 -0.009564722 0.025416841 -0.0054306861 -0.013167653
## 3 0.014705705 -0.008541197  0.005580371 0.004462484 -0.0034163193 -0.002578792
##    2022-07-12   2022-07-13   2022-07-14 2022-07-15   2022-07-18 2022-07-19
## 1 -0.01543017 -0.003218163 -0.003383768 0.02507727 -0.005794434 0.03974786
## 2  0.00350158 -0.006267385 -0.016210598 0.02677951  0.007290893 0.03674166
## 3 -0.00640417 -0.005036665 -0.005248798 0.01318825 -0.010393769 0.02213264
##     2022-07-20    2022-07-21   2022-07-22   2022-07-25    2022-07-26
## 1  0.023998165  0.0204666753 -0.018864349 -0.005681710 -0.0191302266
## 2  0.010090011 -0.0009806806 -0.009974902  0.012381854 -0.0151439408
## 3 -0.001928165  0.0080387868  0.001165377  0.002234518  0.0004213359
##    2022-07-27  2022-07-28  2022-07-29   2022-08-01   2022-08-02  2022-08-03
## 1 0.042015257 0.025212663 0.014575540  0.001616828 -0.000996169 0.019840745
## 2 0.024295550 0.008589084 0.012617950 -0.003214717 -0.008015813 0.008349129
## 3 0.009229455 0.016282119 0.006597031 -0.002670764 -0.006453349 0.007366414
##      2022-08-04   2022-08-05    2022-08-08    2022-08-09 2022-08-10
## 1  0.0082325211 -0.002795174 -0.0007342495 -0.0246909959 0.03886435
## 2 -0.0100862571  0.004701117  0.0059375991 -0.0020036681 0.02456656
## 3 -0.0006322304  0.001746467  0.0028509639 -0.0004909067 0.01418698
##      2022-08-11 2022-08-12   2022-08-15   2022-08-16   2022-08-17  2022-08-18
## 1 -4.448954e-03 0.01975445  0.004816373 -0.005290748 -0.017441524 0.004960892
## 2  1.795444e-02 0.01457323 -0.005586717  0.007399197 -0.010858801 0.008386308
## 3 -8.393663e-05 0.01556049  0.005116057  0.003972384 -0.005146891 0.001012355
##     2022-08-19  2022-08-22   2022-08-23  2022-08-24  2022-08-25  2022-08-26
## 1 -0.025864737 -0.02825793 -0.001158783 0.007115294 0.023812695 -0.04614425
## 2 -0.015779030 -0.02354875  0.008357568 0.008955888 0.019320746 -0.03051170
## 3 -0.006023281 -0.01664772 -0.006648664 0.002552676 0.009800081 -0.02711765
##     2022-08-29   2022-08-30   2022-08-31   2022-09-01    2022-09-02
## 1 -0.012451125 -0.008715295 -0.006819294 -0.003621631 -0.0078357653
## 2 -0.003135735 -0.014509456 -0.009150343 -0.007324852 -0.0005628449
## 3 -0.003833309 -0.009920370 -0.005698485  0.007513650 -0.0108965644
##      2022-09-06 2022-09-07 2022-09-08  2022-09-09  2022-09-12  2022-09-13
## 1 -0.0038494703 0.02609434 0.01440826 0.019851262 0.008455761 -0.05295648
## 2 -0.0063932455 0.01875801 0.01171906 0.019200453 0.013183924 -0.04027433
## 3 -0.0005027647 0.02226970 0.00492226 0.009232992 0.006853151 -0.03284083
##     2022-09-14   2022-09-15   2022-09-16  2022-09-19  2022-09-20  2022-09-21
## 1  0.005856829 -0.014205315 -0.009452413 0.002556588 -0.01832832 -0.01464668
## 2  0.002163552 -0.002493809 -0.018448426 0.013470275 -0.01678886 -0.02312565
## 3 -0.002532599 -0.008906948 -0.006098898 0.006318621 -0.01494867 -0.01276418
##     2022-09-22  2022-09-23  2022-09-26   2022-09-27 2022-09-28  2022-09-29
## 1 -0.024424346 -0.01101845 -0.01142930  0.004191566 0.02552187 -0.02374788
## 2 -0.020698432 -0.03174633 -0.01910024  0.003040800 0.03026583 -0.02060971
## 3 -0.007543074 -0.01058767 -0.01263828 -0.008033417 0.01969972 -0.01665942
##    2022-09-30 2022-10-03 2022-10-04   2022-10-05   2022-10-06  2022-10-07
## 1 -0.01449504 0.03017997 0.04090148  0.001664777 -0.005247530 -0.04065747
## 2 -0.01042443 0.03282692 0.04757111 -0.002082432 -0.007428167 -0.01964878
## 3 -0.01061692 0.02646137 0.02370329 -0.006290636 -0.015822172 -0.02064938
##      2022-10-10   2022-10-11   2022-10-12 2022-10-13  2022-10-14 2022-10-17
## 1 -0.0188428992 -0.018194997 -0.002590356 0.01618199 -0.03118018 0.03317573
## 2 -0.0092719564 -0.006597621  0.001093350 0.02987863 -0.02338534 0.02078408
## 3 -0.0005362492  0.001675241 -0.010101815 0.02248253 -0.01948231 0.02150095
##   2022-10-18   2022-10-19   2022-10-20 2022-10-21  2022-10-24 2022-10-25
## 1 0.01313558 -0.016145858 -0.006138214 0.02734823 0.008535553 0.03211517
## 2 0.01614618 -0.009746116 -0.008985373 0.02951456 0.008561999 0.01963965
## 3 0.01402488 -0.011047214 -0.012815156 0.01851078 0.011815464 0.01641148
##     2022-10-26   2022-10-27 2022-10-28    2022-10-31    2022-11-01  2022-11-02
## 1 -0.004834720 -0.011021748 0.02423964 -0.0105796384 -0.0013399878 -0.03596641
## 2  0.002272471  0.002882948 0.01834058 -0.0006346896  0.0067954001 -0.02521334
## 3  0.003480567  0.003280587 0.02169570 -0.0041568552  0.0007205297 -0.01933123
##     2022-11-03 2022-11-04  2022-11-07  2022-11-08  2022-11-09 2022-11-10
## 1 -0.012463802 0.01972424 0.009847388 0.009521665 -0.01812272 0.09582630
## 2 -0.001536338 0.02238442 0.009317317 0.007083558 -0.02771987 0.05713858
## 3 -0.004190014 0.01042926 0.005569273 0.004730320 -0.01173539 0.04149731
##     2022-11-11   2022-11-14  2022-11-15    2022-11-16   2022-11-17  2022-11-18
## 1  0.027533037 -0.016044288 0.022629423 -0.0250692394 -0.012933869 0.001386859
## 2  0.020554898 -0.013417211 0.008699897 -0.0178053484 -0.003122732 0.004886676
## 3 -0.003029382 -0.008213594 0.006781623 -0.0007671971 -0.004018990 0.011703532
##     2022-11-21  2022-11-22  2022-11-23   2022-11-25  2022-11-28    2022-11-29
## 1 -0.011412006 0.017229834 0.011020578 -0.003893263 -0.01585294 -0.0047560500
## 2 -0.002913737 0.018208380 0.001046108  0.003431455 -0.02184090  0.0123573088
## 3  0.004978362 0.008495596 0.004168523  0.004689391 -0.01298413  0.0008617793
##   2022-11-30    2022-12-01    2022-12-02  2022-12-05   2022-12-06   2022-12-07
## 1 0.04614897  0.0057011836 -0.0063394095 -0.02424839 -0.019638411 -0.001963913
## 2 0.01789776 -0.0023382086 -0.0007504326 -0.02445089 -0.013623870 -0.005222973
## 3 0.02193556  0.0009025249  0.0014982658 -0.01422297 -0.007412263  0.001090546
##    2022-12-08   2022-12-09 2022-12-12  2022-12-13   2022-12-14  2022-12-15
## 1 0.016254226 -0.010131027 0.01448370 0.019143388 -0.008088299 -0.03403657
## 2 0.001791824 -0.006387212 0.01795538 0.005950063 -0.008272606 -0.02216666
## 3 0.005546971 -0.007411245 0.01248398 0.003577324 -0.004642751 -0.01837018
##    2022-12-16  2022-12-19    2022-12-20 2022-12-21   2022-12-22  2022-12-23
## 1 -0.01186999 -0.01464104 -0.0004528116 0.02109884 -0.021749894 0.000484064
## 2 -0.01118217 -0.01123672  0.0052109663 0.01527096 -0.013798481 0.012092268
## 3 -0.01140638 -0.00557916 -0.0005193361 0.01272213 -0.005642797 0.005749745
##     2022-12-27  2022-12-28 2022-12-29    2022-12-30    2023-01-03  2023-01-04
## 1 -0.010238111 -0.01199000 0.03045023 -0.0037853510 -0.0033122309 0.016065775
## 2  0.002272496 -0.01848318 0.01832212 -0.0005169224 -0.0041629460 0.023942472
## 3  0.002722217 -0.01110924 0.01227697 -0.0062138938  0.0005677729 0.009688278
##      2023-01-05 2023-01-06    2023-01-09  2023-01-10 2023-01-11   2023-01-12
## 1 -0.0168716008 0.02476394  0.0127318754 0.011268193 0.01868265  0.004175699
## 2 -0.0004448504 0.02612343  0.0007000348 0.009494608 0.01016478  0.012609436
## 3 -0.0141481998 0.02223312 -0.0041692629 0.004315586 0.01134261 -0.001665115
##    2023-01-13   2023-01-17   2023-01-18   2023-01-19 2023-01-20  2023-01-23
## 1 0.005495933  0.003623528 -0.007982885 -0.016887732 0.02895549 0.028336166
## 2 0.002994990 -0.003016510 -0.016726717 -0.008441559 0.01930551 0.014118380
## 3 0.001333811 -0.003490428 -0.016955994 -0.008658052 0.01179591 0.004856131
##      2023-01-24    2023-01-25  2023-01-26    2023-01-27   2023-01-30 2023-01-31
## 1 -0.0078693771 -0.0015479034 0.017886879  0.0059907133 -0.020469005 0.01940759
## 2 -0.0011588942  0.0065542537 0.011517088  0.0014158448 -0.011551541 0.01686499
## 3  0.0006598317  0.0004859799 0.003260135 -0.0006558085 -0.005474497 0.01510465
##    2023-02-01  2023-02-02   2023-02-03   2023-02-06  2023-02-07   2023-02-08
## 1 0.029364611 0.028551343 -0.020141536 -0.012917023 0.020543522 -0.015803850
## 2 0.004640021 0.006247954 -0.005739141 -0.008162024 0.012105177 -0.007589538
## 3 0.006596252 0.005127934 -0.010388488 -0.003058638 0.002977946 -0.007340014
##     2023-02-09   2023-02-10  2023-02-13   2023-02-14  2023-02-15   2023-02-16
## 1 -0.007117170 -0.007867800 0.016748536  0.007294609 0.011574604 -0.017966909
## 2 -0.008002339  0.004617450 0.010670444  0.001341994 0.001662848 -0.009954542
## 3 -0.009470844  0.007751357 0.008553065 -0.006545194 0.004409889 -0.007767481
##     2023-02-17  2023-02-21    2023-02-22  2023-02-23  2023-02-24    2023-02-27
## 1 -0.011830241 -0.02725872 -0.0017432348 0.009574860 -0.01943772  0.0047821957
## 2 -0.008050640 -0.02320333  0.0009792197 0.004825618 -0.00452083  0.0027308332
## 3  0.005465152 -0.01670828 -0.0020523479 0.001377286 -0.00658428 -0.0008436713
##     2023-02-28    2023-03-01  2023-03-02 2023-03-03   2023-03-06  2023-03-07
## 1  0.002652185 -0.0006929933 0.012334966 0.02041169 -0.006692092 -0.01230169
## 2 -0.002719450  0.0049094865 0.004353083 0.01356201 -0.007577043 -0.01874824
## 3 -0.004847248 -0.0067098185 0.009306411 0.01089481 -0.001434184 -0.01495583
##      2023-03-08  2023-03-09  2023-03-10   2023-03-13 2023-03-14   2023-03-15
## 1  0.0083062816 -0.01880487 -0.02177587  0.004427186 0.02291267 -0.007977670
## 2 -0.0004039272 -0.03087387 -0.02597091 -0.032639524 0.01384967 -0.032230660
## 3  0.0016316527 -0.01347742 -0.01562215  0.002022608 0.01090520 -0.006637754
##    2023-03-16  2023-03-17  2023-03-20  2023-03-21  2023-03-22   2023-03-23
## 1 0.024186743 -0.01087037 0.005944643 0.017883755 -0.01913479  0.010799686
## 2 0.016094293 -0.02562109 0.017486048 0.028093673 -0.02872820 -0.008988215
## 3 0.008787182 -0.01340840 0.013394859 0.003285928 -0.01812431 -0.004287273
##     2023-03-24   2023-03-27   2023-03-28 2023-03-29  2023-03-30 2023-03-31
## 1 -0.001319918 -0.001978173 -0.006831844 0.02084215 0.006988557 0.01861227
## 2  0.002308529  0.014281196  0.006836550 0.01848636 0.003595271 0.01567983
## 3  0.014286035  0.005606446  0.002191165 0.01092770 0.004714821 0.01309606
##     2023-04-03   2023-04-04   2023-04-05    2023-04-06  2023-04-10  2023-04-11
## 1 -0.006246498 -0.008480653 -0.016003144 -0.0009174394 0.009380032 0.001200391
## 2  0.005188798 -0.017931185 -0.006398035 -0.0011970321 0.012976211 0.011635307
## 3  0.001401196 -0.006209425  0.004724226  0.0018441673 0.002046585 0.004895953
##     2023-04-12  2023-04-13   2023-04-14  2023-04-17    2023-04-18    2023-04-19
## 1 -0.008019654 0.016158379 -0.004964782 0.003646421  0.0011721574 -0.0028201151
## 2 -0.008098356 0.006656917 -0.000682845 0.007285806  0.0034024205  0.0004547212
## 3 -0.001542833 0.005503259 -0.006247723 0.007425492 -0.0007725643  0.0002023098
##     2023-04-20    2023-04-21    2023-04-24   2023-04-25   2023-04-26 2023-04-27
## 1 -0.006589434  0.0007654035 -0.0005374827 -0.030183841 -0.003705599 0.01392374
## 2 -0.009955943 -0.0051561510  0.0021243179 -0.023254519 -0.009400730 0.01573897
## 3 -0.001895536  0.0022040208  0.0026236535 -0.008270783 -0.011626786 0.01718270
##    2023-04-28    2023-05-01   2023-05-02    2023-05-03   2023-05-04 2023-05-05
## 1 0.014390794  2.434069e-05 -0.012899219  0.0005896596 -0.008126238 0.01092520
## 2 0.016757280 -4.116819e-03 -0.022667664 -0.0101637610 -0.019628869 0.02838315
## 3 0.007086068  2.586021e-03 -0.009957653 -0.0045962685 -0.003287610 0.01259101
##      2023-05-08   2023-05-09   2023-05-10   2023-05-11    2023-05-12
## 1 -0.0019385690 -0.008890632  0.005850124 -0.002778027  0.0004881499
## 2 -0.0004187221 -0.001506013 -0.009159179 -0.008911304 -0.0011670168
## 3 -0.0025019774 -0.003566529  0.002516622 -0.003323491  0.0011333579
##      2023-05-15   2023-05-16  2023-05-17 2023-05-18    2023-05-19   2023-05-22
## 1  0.0107420918 -0.009404886 0.014342034 0.02065876 -0.0039222428  0.007903220
## 2  0.0142817215 -0.018500849 0.025497247 0.01123088 -0.0054156469  0.003843819
## 3 -0.0006337011 -0.013230657 0.005325988 0.00133703 -0.0005386417 -0.001090731
##     2023-05-23   2023-05-24    2023-05-25  2023-05-26   2023-05-30   2023-05-31
## 1 -0.016439124 -0.010021453  0.0162985435 0.023947917  0.002591990 -0.008348467
## 2 -0.006601848 -0.013159030 -0.0009778071 0.007008061 -0.002345444 -0.017014470
## 3 -0.011043893 -0.009887933 -0.0053635129 0.003478722 -0.003375268 -0.002287108
##    2023-06-01 2023-06-02   2023-06-05   2023-06-06   2023-06-07   2023-06-08
## 1 0.011538949 0.01216534 -0.005171323 0.0063409927 -0.008072352  0.005415582
## 2 0.011122878 0.03603811 -0.005341603 0.0187838015  0.018529073 -0.003952584
## 3 0.004723802 0.01776446 -0.001749528 0.0003573935  0.006920445  0.002006515
##     2023-06-09  2023-06-12  2023-06-13    2023-06-14 2023-06-15   2023-06-16
## 1  0.002103017 0.020540737 0.009662572  0.0037916453 0.01158154 -0.005846680
## 2 -0.001822612 0.002920815 0.014572507 -0.0074285355 0.01118391 -0.002807529
## 3 -0.002283040 0.003771899 0.006683090 -0.0006859072 0.01267096  0.001740197
##     2023-06-20   2023-06-21   2023-06-22   2023-06-23    2023-06-26  2023-06-27
## 1 -0.005710727 -0.011740110  0.001828222 -0.009188883 -0.0003486384 0.019226262
## 2 -0.011752637  0.001180810 -0.010561436 -0.008012698  0.0088809748 0.017246794
## 3 -0.008075224  0.001635515 -0.002161174 -0.008178740  0.0059027263 0.006096983
##     2023-06-28  2023-06-29  2023-06-30   2023-07-03   2023-07-05   2023-07-06
## 1  0.002075753 0.003454168 0.011551465 4.913315e-05 -0.007475412 -0.012659111
## 2  0.001682706 0.011266896 0.007520962 8.370801e-03 -0.007838614 -0.010456380
## 3 -0.005447860 0.007334704 0.009856226 1.000829e-03 -0.001651367 -0.005347873
##      2023-07-07  2023-07-10  2023-07-11  2023-07-12  2023-07-13    2023-07-14
## 1  0.0006251204 0.019423687 0.007505686 0.011850205 0.012603597 -0.0030166340
## 2  0.0130756515 0.008006603 0.016495194 0.003712082 0.005933086 -0.0158501237
## 3 -0.0036998342 0.004929855 0.008570125 0.002685550 0.002092924 -0.0006061638
##     2023-07-17  2023-07-18   2023-07-19    2023-07-20   2023-07-21   2023-07-24
## 1  0.012465084 0.003573859 0.0002011569 -0.0214802554  0.004942039 -0.001579371
## 2  0.003378403 0.015510619 0.0042282354 -0.0003343611 -0.003904732  0.005489830
## 3 -0.002423129 0.001589439 0.0064184307  0.0064838024  0.004104477  0.001762270
##     2023-07-25   2023-07-26   2023-07-27  2023-07-28    2023-07-31   2023-08-01
## 1  0.008479529 -0.002570260 -0.005709303 0.014433739  0.0021018641 -0.004201039
## 2 -0.002443077  0.005237971 -0.006138737 0.005329329  0.0086566820 -0.003506465
## 3  0.001111724  0.001004819 -0.011028657 0.001572091 -0.0003149675 -0.003244762
##     2023-08-02    2023-08-03    2023-08-04  2023-08-07   2023-08-08
## 1 -0.025916091 -0.0059005068 -0.0055587416 0.006321711 -0.008107962
## 2 -0.010778847  0.0007971952 -0.0005711951 0.010726921 -0.002098208
## 3 -0.001943177 -0.0062698048 -0.0065932257 0.008264964 -0.005826587
##      2023-08-09   2023-08-10    2023-08-11   2023-08-14  2023-08-15
## 1 -0.0092291812  0.001751641 -8.825779e-03  0.011885587 -0.01323141
## 2 -0.0044984254 -0.002698513 -5.640633e-05 -0.004147749 -0.01780196
## 3  0.0003121123 -0.001285298  3.098572e-03 -0.001270493 -0.01061758
##     2023-08-16   2023-08-17   2023-08-18   2023-08-21    2023-08-22  2023-08-23
## 1 -0.014000439 -0.012102669 -0.002016753  0.011155579 -0.0010756524 0.014535746
## 2 -0.007863702 -0.005800291  0.002271625 -0.002939903 -0.0090769839 0.008390720
## 3 -0.003809098 -0.007505227  0.002255687 -0.001790875 -0.0007338309 0.006443209
##     2023-08-24  2023-08-25  2023-08-28  2023-08-29  2023-08-30    2023-08-31
## 1 -0.021731276 0.008180387 0.007770582 0.022583866 0.008309601  0.0026825254
## 2 -0.008827776 0.001593372 0.010458084 0.012090999 0.001994897 -0.0005779214
## 3 -0.006213104 0.005863325 0.005243122 0.007423019 0.001634213 -0.0071078530
##      2023-09-01   2023-09-05   2023-09-06   2023-09-07    2023-09-08
## 1  0.0048512786 -0.006238545 -0.003954130 -0.012924198 -4.899721e-03
## 2  0.0081192752 -0.011329835 -0.004537539 -0.007819949  5.218839e-03
## 3 -0.0002424794 -0.013600174 -0.001868808  0.001454400 -2.316456e-05
##     2023-09-11   2023-09-12    2023-09-13  2023-09-14   2023-09-15
## 1  0.004177165 -0.011653368  0.0005992927 0.009493657 -0.016741679
## 2 -0.001703936  0.006588039 -0.0115523800 0.015892145 -0.007242465
## 3  0.003397804 -0.003329528 -0.0001096102 0.009461930 -0.006363203
##      2023-09-18   2023-09-19    2023-09-20  2023-09-21    2023-09-22
## 1 -0.0027142184 -0.001307750 -0.0109528782 -0.02344730 -0.0004462848
## 2 -0.0044907465 -0.003106911 -0.0074454493 -0.01763564 -0.0066604918
## 3 -0.0001195431 -0.001106759  0.0000440927 -0.01429907 -0.0032913598
##    2023-09-25  2023-09-26   2023-09-27  2023-09-28   2023-09-29   2023-10-02
## 1 0.003983326 -0.01476185  0.004988085 0.014436571  0.002090478 -0.001323779
## 2 0.004304317 -0.01396229  0.006017912 0.010411380 -0.004396181 -0.014854462
## 3 0.001231278 -0.01368996 -0.003732390 0.002985877 -0.003203261 -0.011750377
##     2023-10-03   2023-10-04    2023-10-05  2023-10-06  2023-10-09  2023-10-10
## 1 -0.020525529 0.0118381573 -0.0047180642 0.015702681 0.004459935 0.010138012
## 2 -0.017245931 0.0005542363 -0.0007650465 0.009427711 0.008549518 0.010429720
## 3 -0.005907563 0.0074586203 -0.0043472397 0.005930354 0.008024748 0.005720092
##    2023-10-11  2023-10-12   2023-10-13 2023-10-16  2023-10-17  2023-10-18
## 1 0.003290969 -0.01548108 -0.012428656 0.01464114 0.002018127 -0.02025852
## 2 0.003567246 -0.01242051 -0.004600717 0.01528982 0.011310659 -0.01933223
## 3 0.000891361 -0.01280820  0.003200357 0.01069448 0.002610999 -0.01264965
##    2023-10-19   2023-10-20   2023-10-23  2023-10-24   2023-10-25    2023-10-26
## 1 -0.01371344 -0.015762541 -0.001997619 0.007225765 -0.031363692 -0.0127125378
## 2 -0.01313168 -0.017562649 -0.006836402 0.005031432 -0.009972263  0.0034128904
## 3 -0.01058981 -0.007643726 -0.006987212 0.007593106 -0.005793178 -0.0005404618
##     2023-10-27    2023-10-30  2023-10-31  2023-11-01 2023-11-02 2023-11-03
## 1 -0.002727071 -0.0008735145 0.011553806 0.002039544 0.02534170 0.02245167
## 2 -0.013771702  0.0115326485 0.006577346 0.001280662 0.02839613 0.02123648
## 3 -0.012888410  0.0083872007 0.009181855 0.004957659 0.01753100 0.01206615
##     2023-11-06   2023-11-07    2023-11-08   2023-11-09  2023-11-10   2023-11-13
## 1 -0.006657082  0.010173334 -0.0001564637 -0.010882083 0.019351259 -0.003668911
## 2 -0.010099838 -0.007830192 -0.0045245607 -0.007695146 0.011841938 -0.001892653
## 3 -0.001952007 -0.002296149 -0.0004993650 -0.008542685 0.009230901 -0.001181788
##   2023-11-14  2023-11-15    2023-11-16   2023-11-17  2023-11-20   2023-11-21
## 1 0.04080933 0.008150415 -0.0025218993 0.0049247625 0.013440437 -0.004240478
## 2 0.03392782 0.007127896 -0.0098223446 0.0113514298 0.002543159 -0.006157398
## 3 0.02288984 0.002493330  0.0001433904 0.0008242054 0.002214397  0.001824760
##    2023-11-22  2023-11-24   2023-11-27    2023-11-28    2023-11-29   2023-11-30
## 1 0.004569281 0.002466061 -0.001858961  0.0004330907  0.0087423633 0.0001566887
## 2 0.003975787 0.003649593 -0.002720155 -0.0008500774  0.0077208788 0.0090386627
## 3 0.005184967 0.003382398 -0.002861737 -0.0008542094 -0.0008880145 0.0104044847
##   2023-12-01    2023-12-04   2023-12-05    2023-12-06  2023-12-07   2023-12-08
## 1 0.01621828 -0.0030934447 -0.006503606 -0.0014882444 0.010545579  0.005176522
## 2 0.02126143  0.0009111809 -0.013542613 -0.0009996421 0.006686378  0.008869631
## 3 0.01150152  0.0016755575 -0.007089076  0.0026948091 0.002180296 -0.000786350
##    2023-12-11   2023-12-12 2023-12-13  2023-12-14    2023-12-15   2023-12-18
## 1 0.014660692  0.004232535 0.02307858 0.021448169 -0.0003280025  0.003542314
## 2 0.005886259 -0.001997651 0.02343518 0.030862920 -0.0065929783 -0.001725442
## 3 0.008498597  0.002888163 0.01929068 0.000159009 -0.0087833282  0.002192082
##    2023-12-19  2023-12-20 2023-12-21  2023-12-22  2023-12-26   2023-12-27
## 1 0.011400472 -0.01978992 0.01883624 0.002240463 0.007835341 1.810585e-03
## 2 0.012018346 -0.01817778 0.01351938 0.001507634 0.006866165 6.502317e-05
## 3 0.005022282 -0.01499920 0.00880218 0.004648065 0.004581451 1.914598e-03
##      2023-12-28    2023-12-29   2024-01-02   2024-01-03    2024-01-04
## 1 -0.0002062345 -0.0072430072 -0.017946215 -0.024367596 -3.184864e-03
## 2 -0.0003786822 -0.0057571221  0.002395978 -0.014216706 -2.486831e-03
## 3  0.0031579844 -0.0008169185  0.005110560 -0.009762766  3.486646e-05
##     2024-01-05  2024-01-08    2024-01-09    2024-01-10   2024-01-11
## 1 0.0003844931 0.024603499 -0.0001187222  0.0060109044  0.001203644
## 2 0.0079835623 0.006527076 -0.0108846213 -0.0007418777 -0.003687164
## 3 0.0002027697 0.008744407 -0.0021754135  0.0014573812 -0.004048781
##     2024-01-12   2024-01-16   2024-01-17  2024-01-18  2024-01-19  2024-01-22
## 1 -0.005450991 -0.006401716 -0.009297514 0.014546356 0.019318546 0.010581833
## 2 -0.005780687 -0.009708310 -0.010443054 0.004371882 0.010005253 0.006118722
## 3  0.002526249 -0.005043476 -0.005921317 0.002323468 0.003717375 0.002254857
##     2024-01-23    2024-01-24 2024-01-25   2024-01-26  2024-01-29   2024-01-30
## 1 0.0012591865 -0.0024082226 0.00370711 -0.005112704 0.013846446 -0.005568777
## 2 0.0005239617  0.0006445296 0.01419067  0.001913446 0.004832566  0.003063049
## 3 0.0011053299 -0.0102942838 0.00953344  0.001462698 0.004459905  0.001589995
##     2024-01-31  2024-02-01    2024-02-02   2024-02-05  2024-02-06  2024-02-07
## 1 -0.021230679 0.014072988  0.0077336295  0.001319034 0.003394389 0.010840541
## 2 -0.015639739 0.004751316  0.0002963597 -0.010373004 0.006899551 0.001511589
## 3 -0.007990591 0.016023465 -0.0047904965 -0.011452885 0.006566553 0.002350244
##     2024-02-08   2024-02-09  2024-02-12  2024-02-13 2024-02-14 2024-02-15
## 1  0.005908022  0.008040218 0.003231118 -0.02516166 0.02179109 0.01000787
## 2  0.006301838 -0.001681951 0.012452249 -0.01967180 0.00882982 0.01671055
## 3 -0.001244900  0.001540279 0.004470297 -0.01185023 0.00578969 0.01049335
##     2024-02-16    2024-02-20   2024-02-21  2024-02-22    2024-02-23
## 1 -0.011615299 -0.0093150446 -0.005191280 0.023769491 -0.0020811711
## 2 -0.004636670 -0.0047015777  0.004715966 0.008893149  0.0003733824
## 3 -0.002245019  0.0006655552  0.004951970 0.006502065  0.0048544290
##     2024-02-26  2024-02-27    2024-02-28  2024-02-29  2024-03-01    2024-03-04
## 1  0.001192260 0.003031765 -0.0006688317 0.010212037 0.016706810 -0.0003943176
## 2 -0.004254682 0.007792642 -0.0004227602 0.008258850 0.004099168  0.0013785074
## 3 -0.007103722 0.002948589  0.0009320718 0.002347179 0.002209589  0.0044770412
##      2024-03-05  2024-03-06  2024-03-07   2024-03-08   2024-03-11   2024-03-12
## 1 -0.0181520302 0.009054275 0.017672646 -0.008428911 -0.001372284  0.009207036
## 2 -0.0001396909 0.003301525 0.006299864  0.000127331  0.003400082 -0.000484333
## 3 -0.0033445903 0.006759149 0.005222809  0.001204865  0.002991273  0.001629522
##      2024-03-13   2024-03-14    2024-03-15  2024-03-18  2024-03-19  2024-03-20
## 1 -0.0082087471 -0.011869412 -0.0078415968 0.005065224 0.002478269 0.012058511
## 2  0.0069738057 -0.010205321 -0.0004913060 0.003139640 0.007831735 0.014994668
## 3 -0.0002533811 -0.007650621 -0.0001492487 0.002001216 0.005678317 0.003395155
##    2024-03-21   2024-03-22    2024-03-25   2024-03-26 2024-03-27  2024-03-28
## 1 0.013821667 -0.007040999 -0.0050210313 -0.002332791 0.01162577 0.002448221
## 2 0.009177049 -0.008536866  0.0009522766 -0.001419274 0.01872106 0.006451872
## 3 0.003532528 -0.004863845 -0.0029825178 -0.001181443 0.01646382 0.003910198
## 
## Clustering vector:
##   [1] 1 2 1 3 1 3 2 3 1 1 3 3 1 3 3 2 2 2 3 3 3 2 1 3 3 1 3 1 3 3 2 3 1 1 1 3 3
##  [38] 2 3 3 2 3 3 3 1 3 3 1 2 3 2 2 3 3 2 1 3 2 3 3 3 1 2 2 2 2 3 3 3 3 3 3 2 1
##  [75] 2 2 3 3 3 2 3 3 2 3 2 1 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 1 3 3 3 3 2 3 2 3 3
## [112] 2 3 1 3 1 1 3 1 3 3 1 2 3 3 3 2 2 3 2 1 2 2 1 2 3 3 1 3 2 3 3 3 3 2 3 2 3
## [149] 3 3 2 1 3 1 3 3 1 3 3 1 3 2 2 1 2 1 3 3 2 3 3 3 3 1 3 3 3 3 2 3 2 2 3 2 3
## [186] 3 3 1 3 1 3 2 3 2 2 2 1 1 3 3 2 3 3 3 3 2 3 2 1 1 1 3 2 3 2 3 2 3 2 3 3 2
## [223] 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 1 3 3 1 3 1 1 3 2 2 1 2 3 1 3 3 2 3 3 2 3
## [260] 3 3 3 2 3 3 2 1 3 2 1 3 2 2 3 3 3 2 3 1 3 3 3 2 3 3 3 3 1 1 2 2 2 2 2 3 3
## [297] 2 3 3 1 3 1 3 3 2 1 2 2 3 1 2 3 3 3 3 3 2 2 1 3 1 2 2 1 1 3 2 1 1 1 2 3 3
## [334] 3 3 1 3 1 3 1 3 3 2 2 2 1 3 2 2 1 3 1 2 2 1 3 3 3 2 1 2 1 3 3 3 3 3 3 2 3
## [371] 3 2 1 3 3 3 2 3 3 1 1 3 3 2 3 2 1 2 2 1 1 1 2 2 3 2 2 2 2 3 3 3 3 2 3 2 1
## [408] 3 3 2 3 3 2 1 2 1 3 2 3 3 3 2 2 1 3 2 1 2 3 2 3 3 2 3 1 2 1 2 3 3 2 3 3 2
## [445] 2 1 1 3 3 1 3 3 1 1 2 1 2 1 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3
## [482] 2 2 3 2 2 3 2 3 3 2 1 3 2 2 3 2 3 3 3 3 1 3
## 
## Within cluster sum of squares by cluster:
## [1] 38.10420 52.66844 48.16548
##  (between_SS / total_SS =  14.9 %)
## 
## Available components:
## 
## [1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss"
## [6] "betweenss"    "size"         "iter"         "ifault"
summary(final_cluster)
##              Length Class  Mode   
## cluster       503   -none- numeric
## centers      3012   -none- numeric
## totss           1   -none- numeric
## withinss        3   -none- numeric
## tot.withinss    1   -none- numeric
## betweenss       1   -none- numeric
## size            3   -none- numeric
## iter            1   -none- numeric
## ifault          1   -none- numeric
tidy(final_cluster)
## # A tibble: 3 × 1,007
##   `2020-04-02` `2020-04-03` `2020-04-06` `2020-04-07` `2020-04-08` `2020-04-09`
##          <dbl>        <dbl>        <dbl>        <dbl>        <dbl>        <dbl>
## 1      0.0127       -0.0161       0.0931    -0.00113        0.0381      0.00835
## 2      0.00624      -0.0191       0.101      0.0310         0.0609      0.0366 
## 3      0.0180       -0.0139       0.0645     0.000615       0.0385      0.0236 
## # ℹ 1,001 more variables: `2020-04-13` <dbl>, `2020-04-14` <dbl>,
## #   `2020-04-15` <dbl>, `2020-04-16` <dbl>, `2020-04-17` <dbl>,
## #   `2020-04-20` <dbl>, `2020-04-21` <dbl>, `2020-04-22` <dbl>,
## #   `2020-04-23` <dbl>, `2020-04-24` <dbl>, `2020-04-27` <dbl>,
## #   `2020-04-28` <dbl>, `2020-04-29` <dbl>, `2020-04-30` <dbl>,
## #   `2020-05-01` <dbl>, `2020-05-04` <dbl>, `2020-05-05` <dbl>,
## #   `2020-05-06` <dbl>, `2020-05-07` <dbl>, `2020-05-08` <dbl>, …
glance(final_cluster)
## # A tibble: 1 × 4
##   totss tot.withinss betweenss  iter
##   <dbl>        <dbl>     <dbl> <int>
## 1  163.         139.      24.4     4
augment(final_cluster, stock_date_matrix_tbl) %>%
  
  ggplot(aes(2020-04-02, 2020-04-03 , color = .cluster)) +
  geom_point()

#Select optimal number of clusters

kclusts <- tibble(k = 1:9) %>%
  mutate(kclust = map(.x = k, .f = ~ kmeans(stock_date_matrix_tbl %>%
select(-symbol), centers = .x, nstart = 20)),
glanced = map(.x = kclust, .f = glance)) 

kclusts %>% 
  unnest(glanced) %>%
  ggplot(aes(k, tot.withinss)) +
  geom_point() +
  geom_line()

final_cluster <- kmeans(stock_date_matrix_tbl %>%
select(-symbol), centers = 5, nstart = 20) 
augment(final_cluster, stock_date_matrix_tbl) %>%
  
  ggplot(aes(2020-04-02, 2020-04-03, color = .cluster)) +
  geom_point()

Reduce dimensions using UMAP

umap_results <- stock_date_matrix_tbl %>%
  select(-symbol) %>%
  umap() 

umap_results_tbl <- umap_results$layout %>%
  as.tibble() %>%
  bind_cols(stock_date_matrix_tbl %>% select(symbol))

umap_results_tbl
## # A tibble: 503 × 3
##        V1     V2 symbol
##     <dbl>  <dbl> <chr> 
##  1  3.08   1.76  A     
##  2 -3.01   0.953 AAL   
##  3  1.41   3.05  AAPL  
##  4  2.59  -0.175 ABBV  
##  5 -0.934  2.30  ABNB  
##  6  2.60   0.728 ABT   
##  7 -2.09  -0.255 ACGL  
##  8  1.31   2.10  ACN   
##  9  1.67   3.09  ADBE  
## 10  0.560  3.49  ADI   
## # ℹ 493 more rows
umap_results_tbl %>%
  ggplot(aes(V1, V2)) +
  geom_point()

Visualize clusters by adding k-means results

kmeans_umap_tbl <- final_cluster %>%
  augment(stock_date_matrix_tbl) %>%
  select(symbol, .cluster) %>%
  
  # add umap results 
  left_join(umap_results_tbl)
  
kmeans_umap_tbl
## # A tibble: 503 × 4
##    symbol .cluster     V1     V2
##    <chr>  <fct>     <dbl>  <dbl>
##  1 A      5         3.08   1.76 
##  2 AAL    1        -3.01   0.953
##  3 AAPL   5         1.41   3.05 
##  4 ABBV   2         2.59  -0.175
##  5 ABNB   5        -0.934  2.30 
##  6 ABT    2         2.60   0.728
##  7 ACGL   3        -2.09  -0.255
##  8 ACN    3         1.31   2.10 
##  9 ADBE   5         1.67   3.09 
## 10 ADI    5         0.560  3.49 
## # ℹ 493 more rows
graph <- kmeans_umap_tbl %>%
  
  #Create Graph Label 
  mutate(text_label = str_glue("Ticker Symbol: {symbol},
                                Cluster: {.cluster}")) %>%
  
  #Plot 
  ggplot(aes(V1, V2, color = .cluster, text = text_label)) + 
  geom_point()

graph %>% ggplotly(tooltip = "text")