3

kmeans クラスター内のどこに属しているかによって、R の OHLC チャートをプロットしようとしています。

データに kmeans クラスターを作成し、XTS データに適合するクラスターを追加しました。

                    Open   High     Low   Close ..2
2008-06-25 18:00:00    0 0.0017  0.0000  0.0015   9
2008-06-25 22:00:00    0 0.0102 -0.0045  0.0080   6
2008-06-26 02:00:00    0 0.0014 -0.0002  0.0000   9
2008-06-26 06:00:00    0 0.0005 -0.0003  0.0003   9
2008-06-26 10:00:00    0 0.0016 -0.0025  0.0010   9
2008-06-26 14:00:00    0 0.0010 -0.0011 -0.0007   9

最後の列は、それが属するクラスターです。

OHLC棒グラフを使用してRでこれをプロットし、最後の列でグループ化する最良の方法を見つけようとしています。

quantmod とプロットの概要を確認しましたが、これを行う方法がわかりませんか?

4

1 に答える 1

3

そのようなことを試してください

s <- get(getSymbols('SPY'))["2012::"]
s$h <- Hi(s) / Op(s) - 1
s$l <- Lo(s) / Op(s) - 1
s$c <- Cl(s) / Op(s) - 1
s$cluster <- as.numeric(kmeans(s[,7:9] , centers = 6)$cluster)
chart_Series(xts(coredata(s)[order(s$cluster),],order.by = index(s))

そして結果は

ここに画像の説明を入力

もちろん展示のみです。

2 番目のアプローチは、プロットの上に TA をプロットすることです。

chart_Series(s)
add_TA(Lo(s) * 0.99 , on=1 , type = 'p' , cex = 1.5 , pch = 20 , col = s$cluster)

そして出力

ここに画像の説明を入力

于 2013-07-02T14:51:24.110 に答える