Data
mf <- read.csv("Data/pasardana_rdpu_oktober2023.csv")
head(mf)
## Reksadana MI Kategori
## 1 BNP Paribas Rupiah Plus PT BNP Paribas Asset Management Konvensional
## 2 Batavia Dana Likuid PT Batavia Prosperindo Aset Manajemen Konvensional
## 3 Mandiri Investa Pasar Uang PT Mandiri Manajemen Investasi Konvensional
## 4 Mandiri Pasar Uang Syariah PT Mandiri Manajemen Investasi Syariah
## 5 Batavia Dana Kas Maxima PT Batavia Prosperindo Aset Manajemen Konvensional
## 6 Bahana Dana Likuid PT Bahana TCW Investment Management Konvensional
## X1D MTD X1Mo X3Mo X6Mo YTD X1Yr Ann.Return St.Dev
## 1 0.00008 0.00273 0.00280 0.00770 0.01410 0.02416 0.02617 0.02810469 0.00126113
## 2 0.00012 0.00230 0.00238 0.00731 0.01412 0.02394 0.02622 0.02823723 0.00126214
## 3 0.00008 0.00320 0.00329 0.00944 0.01840 0.03179 0.03402 0.03648788 0.00152465
## 4 0.00015 0.00362 0.00369 0.01074 0.02081 0.03522 0.03779 0.04076085 0.00164963
## 5 0.00011 0.00318 0.00328 0.00976 0.01961 0.03455 0.03687 0.04006791 0.00165485
## 6 0.00009 0.00301 0.00311 0.00939 0.01869 0.03376 0.03638 0.03912980 0.00167408
## Track.Error MaxDrawdown Rating AUM
## 1 0.02810469 -0.00016064 1 1032540000000
## 2 0.02823723 0.00000000 1 492309000000
## 3 0.03648788 0.00000000 1 10066000000000
## 4 0.04076085 -0.00000785 2 188211000000
## 5 0.04006791 0.00000000 2 10020800000000
## 6 0.03912980 0.00000000 2 4187060000000
str(mf)
## 'data.frame': 39 obs. of 16 variables:
## $ Reksadana : chr "BNP Paribas Rupiah Plus" "Batavia Dana Likuid" "Mandiri Investa Pasar Uang" "Mandiri Pasar Uang Syariah" ...
## $ MI : chr "PT BNP Paribas Asset Management" "PT Batavia Prosperindo Aset Manajemen" "PT Mandiri Manajemen Investasi" "PT Mandiri Manajemen Investasi" ...
## $ Kategori : chr "Konvensional" "Konvensional" "Konvensional" "Syariah" ...
## $ X1D : num 0.00008 0.00012 0.00008 0.00015 0.00011 0.00009 0.0001 0.00011 0.00008 0.00013 ...
## $ MTD : num 0.00273 0.0023 0.0032 0.00362 0.00318 0.00301 0.00328 0.00352 0.00339 0.00391 ...
## $ X1Mo : num 0.0028 0.00238 0.00329 0.00369 0.00328 0.00311 0.00328 0.00363 0.00343 0.00395 ...
## $ X3Mo : num 0.0077 0.00731 0.00944 0.01074 0.00976 ...
## $ X6Mo : num 0.0141 0.0141 0.0184 0.0208 0.0196 ...
## $ YTD : num 0.0242 0.0239 0.0318 0.0352 0.0345 ...
## $ X1Yr : num 0.0262 0.0262 0.034 0.0378 0.0369 ...
## $ Ann.Return : num 0.0281 0.0282 0.0365 0.0408 0.0401 ...
## $ St.Dev : num 0.00126 0.00126 0.00152 0.00165 0.00165 ...
## $ Track.Error: num 0.0281 0.0282 0.0365 0.0408 0.0401 ...
## $ MaxDrawdown: num -0.00016064 0 0 -0.00000785 0 ...
## $ Rating : int 1 1 1 2 2 2 1 2 2 2 ...
## $ AUM : num 1032540000000 492309000000 10066000000000 188211000000 10020800000000 ...
summary(mf)
## Reksadana MI Kategori X1D
## Length:39 Length:39 Length:39 Min. :-0.0000100
## Class :character Class :character Class :character 1st Qu.: 0.0000800
## Mode :character Mode :character Mode :character Median : 0.0001200
## Mean : 0.0001172
## 3rd Qu.: 0.0001350
## Max. : 0.0003700
## MTD X1Mo X3Mo X6Mo
## Min. :0.002300 Min. :0.002380 Min. :0.005970 Min. :0.00710
## 1st Qu.:0.003540 1st Qu.:0.003595 1st Qu.:0.009415 1st Qu.:0.01854
## Median :0.003770 Median :0.003840 Median :0.010390 Median :0.02025
## Mean :0.003663 Mean :0.003718 Mean :0.010261 Mean :0.01990
## 3rd Qu.:0.003975 3rd Qu.:0.004060 3rd Qu.:0.011220 3rd Qu.:0.02217
## Max. :0.004340 Max. :0.004310 Max. :0.012320 Max. :0.02442
## YTD X1Yr Ann.Return St.Dev
## Min. :0.01578 Min. :0.01393 Min. :0.01514 Min. :0.001261
## 1st Qu.:0.03381 1st Qu.:0.03653 1st Qu.:0.03930 1st Qu.:0.001867
## Median :0.03650 Median :0.03978 Median :0.04282 Median :0.002043
## Mean :0.03569 Mean :0.03841 Mean :0.04163 Mean :0.002810
## 3rd Qu.:0.03959 3rd Qu.:0.04300 3rd Qu.:0.04643 3rd Qu.:0.002533
## Max. :0.04430 Max. :0.04778 Max. :0.05150 Max. :0.021397
## Track.Error MaxDrawdown Rating
## Min. :0.01514 Min. :-0.0133114 Min. :1.000
## 1st Qu.:0.03930 1st Qu.:-0.0006039 1st Qu.:2.000
## Median :0.04282 Median :-0.0001041 Median :3.000
## Mean :0.04163 Mean :-0.0007792 Mean :2.538
## 3rd Qu.:0.04643 3rd Qu.: 0.0000000 3rd Qu.:3.000
## Max. :0.05150 Max. : 0.0000000 Max. :4.000
## AUM
## Min. : 100753000000
## 1st Qu.: 201856500000
## Median : 492309000000
## Mean : 1334768153850
## 3rd Qu.: 1271450000000
## Max. :10066000000000
Plot
Graphs Return for 3Mo
vs 1Mo

Graphs Annualized
Return vs Standard Deviation

Clustering
mf_clean <- mf %>%
arrange(MI) %>%
select(-MI, -Kategori) %>%
na.omit()
head(mf_clean)
## Reksadana X1D MTD X1Mo X3Mo X6Mo
## 1 Ashmore Dana Pasar Uang Nusantara 0.00007 0.00417 0.00423 0.00906 0.01688
## 2 BNI-AM Dana Likuid 0.00008 0.00328 0.00322 0.00963 0.01871
## 3 BNI-AM Dana Lancar Syariah 0.00004 0.00391 0.00394 0.00914 0.01812
## 4 BNI-AM Likuid Grandis 0.00005 0.00380 0.00385 0.00923 0.01901
## 5 BNP Paribas Rupiah Plus 0.00008 0.00273 0.00280 0.00770 0.01410
## 6 Danareksa Gebyar Dana Likuid 0.00010 0.00328 0.00328 0.00917 0.01792
## YTD X1Yr Ann.Return St.Dev Track.Error MaxDrawdown Rating
## 1 0.03385 0.03740 0.04028651 0.00348724 0.04028651 -0.00091131 3
## 2 0.03530 0.03787 0.04080485 0.00203020 0.04080485 -0.00008903 2
## 3 0.03512 0.03736 0.04022172 0.00279335 0.04022172 -0.00097663 3
## 4 0.03650 0.03982 0.04281630 0.00313883 0.04281630 -0.00131441 3
## 5 0.02416 0.02617 0.02810469 0.00126113 0.02810469 -0.00016064 1
## 6 0.03097 0.03351 0.03606457 0.00169588 0.03606457 -0.00010801 1
## AUM
## 1 396579000000
## 2 602040000000
## 3 134486000000
## 4 195783000000
## 5 1032540000000
## 6 1389180000000
rownames(mf_clean) <- mf_clean$Reksadana
mf_clean_norow <- mf_clean[,-1]
set.seed(123)
mf_clean_norow.km <- kmeans(mf_clean_norow, 4)
mf_clean$cluster <- mf_clean_norow.km$cluster
mf_clean$cluster <- as.factor(mf_clean$cluster)
head(mf_clean)
## Reksadana X1D
## Ashmore Dana Pasar Uang Nusantara Ashmore Dana Pasar Uang Nusantara 0.00007
## BNI-AM Dana Likuid BNI-AM Dana Likuid 0.00008
## BNI-AM Dana Lancar Syariah BNI-AM Dana Lancar Syariah 0.00004
## BNI-AM Likuid Grandis BNI-AM Likuid Grandis 0.00005
## BNP Paribas Rupiah Plus BNP Paribas Rupiah Plus 0.00008
## Danareksa Gebyar Dana Likuid Danareksa Gebyar Dana Likuid 0.00010
## MTD X1Mo X3Mo X6Mo YTD
## Ashmore Dana Pasar Uang Nusantara 0.00417 0.00423 0.00906 0.01688 0.03385
## BNI-AM Dana Likuid 0.00328 0.00322 0.00963 0.01871 0.03530
## BNI-AM Dana Lancar Syariah 0.00391 0.00394 0.00914 0.01812 0.03512
## BNI-AM Likuid Grandis 0.00380 0.00385 0.00923 0.01901 0.03650
## BNP Paribas Rupiah Plus 0.00273 0.00280 0.00770 0.01410 0.02416
## Danareksa Gebyar Dana Likuid 0.00328 0.00328 0.00917 0.01792 0.03097
## X1Yr Ann.Return St.Dev Track.Error
## Ashmore Dana Pasar Uang Nusantara 0.03740 0.04028651 0.00348724 0.04028651
## BNI-AM Dana Likuid 0.03787 0.04080485 0.00203020 0.04080485
## BNI-AM Dana Lancar Syariah 0.03736 0.04022172 0.00279335 0.04022172
## BNI-AM Likuid Grandis 0.03982 0.04281630 0.00313883 0.04281630
## BNP Paribas Rupiah Plus 0.02617 0.02810469 0.00126113 0.02810469
## Danareksa Gebyar Dana Likuid 0.03351 0.03606457 0.00169588 0.03606457
## MaxDrawdown Rating AUM cluster
## Ashmore Dana Pasar Uang Nusantara -0.00091131 3 396579000000 4
## BNI-AM Dana Likuid -0.00008903 2 602040000000 4
## BNI-AM Dana Lancar Syariah -0.00097663 3 134486000000 4
## BNI-AM Likuid Grandis -0.00131441 3 195783000000 4
## BNP Paribas Rupiah Plus -0.00016064 1 1032540000000 1
## Danareksa Gebyar Dana Likuid -0.00010801 1 1389180000000 1
mf_clustered <- inner_join(mf, mf_clean)
## Joining with `by = join_by(Reksadana, X1D, MTD, X1Mo, X3Mo, X6Mo, YTD, X1Yr,
## Ann.Return, St.Dev, Track.Error, MaxDrawdown, Rating, AUM)`
head(mf_clustered)
## Reksadana MI Kategori
## 1 BNP Paribas Rupiah Plus PT BNP Paribas Asset Management Konvensional
## 2 Batavia Dana Likuid PT Batavia Prosperindo Aset Manajemen Konvensional
## 3 Mandiri Investa Pasar Uang PT Mandiri Manajemen Investasi Konvensional
## 4 Mandiri Pasar Uang Syariah PT Mandiri Manajemen Investasi Syariah
## 5 Batavia Dana Kas Maxima PT Batavia Prosperindo Aset Manajemen Konvensional
## 6 Bahana Dana Likuid PT Bahana TCW Investment Management Konvensional
## X1D MTD X1Mo X3Mo X6Mo YTD X1Yr Ann.Return St.Dev
## 1 0.00008 0.00273 0.00280 0.00770 0.01410 0.02416 0.02617 0.02810469 0.00126113
## 2 0.00012 0.00230 0.00238 0.00731 0.01412 0.02394 0.02622 0.02823723 0.00126214
## 3 0.00008 0.00320 0.00329 0.00944 0.01840 0.03179 0.03402 0.03648788 0.00152465
## 4 0.00015 0.00362 0.00369 0.01074 0.02081 0.03522 0.03779 0.04076085 0.00164963
## 5 0.00011 0.00318 0.00328 0.00976 0.01961 0.03455 0.03687 0.04006791 0.00165485
## 6 0.00009 0.00301 0.00311 0.00939 0.01869 0.03376 0.03638 0.03912980 0.00167408
## Track.Error MaxDrawdown Rating AUM cluster
## 1 0.02810469 -0.00016064 1 1032540000000 1
## 2 0.02823723 0.00000000 1 492309000000 4
## 3 0.03648788 0.00000000 1 10066000000000 2
## 4 0.04076085 -0.00000785 2 188211000000 4
## 5 0.04006791 0.00000000 2 10020800000000 2
## 6 0.03912980 0.00000000 2 4187060000000 3
Cluster Plot

Plot after Cluster
Graphs Return for 3Mo
vs 1Mo

Graphs Annualized
Return vs Standard Deviation

Plot Cluster #1
Graphs Return for 3Mo
vs 1Mo

Graphs Annualized
Return vs Standard Deviation

Plot Cluster #2
Graphs Return for 3Mo
vs 1Mo

Graphs Annualized
Return vs Standard Deviation

Plot Cluster #3
Graphs Return for 3Mo
vs 1Mo

Graphs Annualized
Return vs Standard Deviation

Plot Cluster #4
Graphs Return for 3Mo
vs 1Mo

Graphs Annualized
Return vs Standard Deviation

Table
library(DT)
datatable(mf_clustered, filter = "top")