【问题标题】:Best way to plot a OHLC cluster by cluster in R在 R 中按集群绘制 OHLC 集群的最佳方法
【发布时间】:2013-07-02 02:31:37
【问题描述】:

我正在尝试在 R 中绘制 OHLC 图表以及它们在 kmeans 集群中的所属位置。

我在我的数据上创建了一个 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

最后一列是它所属的集群。

我正在尝试找出在 R 中使用 OHLC 条形图并按最后一列分组的最佳方法。

我查看了 quantmod 和情节概述,但我似乎无法弄清楚如何做到这一点?

【问题讨论】:

  • 我不知道您所说的“分组 OHLC 条形图”是什么意思。您能否描述一下该图表的外观,或者甚至是一个手绘示例?

标签: r charts cluster-analysis quantmod


【解决方案1】:

试试类似的方法

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))

结果是

显然只是为了展示。

第二种方法是在图的顶部绘制一个 TA

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

还有输出

【讨论】:

  • 谢谢 效果很好。只是想看看它发现的模式是什么样的。仍在尝试弄清楚如何有效地创建绘图。
  • 肯定的人。几天前,我在阅读this post 后玩弄了完全相同的东西
  • 大声笑,这与我正在查看的帖子相同。我也带着 100*prop.table 来到了下一部分,我猜它以某种方式给出了下一个班级将遵循上一个班级的概率百分比?你有没有找到获取这些信息的方法?我可能正在考虑一个自定义函数,但不知道这是否是在 R 中构建的。
  • prop.table(table(s$cluster , lag(s$cluster))) * 100
猜你喜欢
  • 2017-10-05
  • 2017-06-24
  • 2012-10-29
  • 2016-02-03
  • 2016-11-23
  • 2014-11-15
  • 2014-06-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多