Я бы хотел создать такой график https://stat.ethz.ch/pipermail/r-sig-finance/attachments/20110826/19da3834/attachment.png, используя QuantMod.
Я немного расстроен, наверное, очень простой задачей. Я хотел бы иметь возможность нарисовать линию на графике с помощью QuantMod. После нескольких дней попыток я ничего не получаю. Я не вижу пример того, как это сделать с помощью функции quantmod :: addLines (это единственный подобный вопрос, который я нашел, но не смог найти на него ответ http://r.789695.n4.nabble.com/quantmod-plot-trendline-td894632.html)
Моя проблема заключается в следующем: я хотел бы построить горизонтальную линию с указанным значением даты / времени / бара и значения y. Эта строка может содержать только n (например, 5) баров, начиная с некоторого определенного бара (дополнительно я также хотел бы добавить текст чуть выше строки указанного значения y).
Я пробовал несколько вещей:
getSymbols("SPY")
lines.SPY <- (Hi(SPY) + Lo(SPY))/2
names(lines.SPY) <- c("lines")
lines.SPY$BuySell <- ifelse(lag(lines.SPY$lines) > lines.SPY$lines, 1, -1)
chartSeries(SPY, subset="2011-08::", theme=chartTheme('white',
up.col='blue', dn.col='red'))
addTA(lines.SPY$lines[lines.SPY$BuySell == -1,], type='p', col='darkred', pch="_", on=1, cex = 2.5)
addTA(lines.SPY$lines[lines.SPY$BuySell == 1,], type='p', col='green4', pch="_", on=1, cex = 2.5)
Но на самом деле это не строки ... И я не знаю, как добавить текст ...
Тогда я попробовал это
getSymbols("SPY")
subset = "2011-03::"
dev.new()
chartSeries(SPY, subset=subset, theme="white")
test <- xts(rep(coredata(last(Cl(SPY))), 20), order.by=index(last(SPY, n=20)))
addTA(test, on=1, col="red", legend=NULL, lwd=3)
Опять же, добавление текста невозможно. Другая проблема с этим подходом состоит в том, что я не могу избавиться от легенды наверху. Поскольку я хочу нарисовать десятки или сотни этих линий на одной диаграмме, легенда не должна отображаться ...
Заранее спасибо за ваши идеи / примеры кода / ...
С наилучшими пожеланиями,
Samo.