Почему функция addBBands () выдает ошибку, когда chartSeries строит график с использованием того же набора данных? - PullRequest
0 голосов
/ 18 января 2019

После получения данных OHLC с помощью функции getSymbols я добавляю столбец к данным OHLC.Я могу построить график с помощью функции chartSeries, но когда я пытаюсь добавить полосы Боллинджера с помощью функции addBBands (), я получаю сообщение об ошибке.

При удалении дополнительного столбца из данных OHLC функция addBBands () работает нормально.Мне не ясно, если это должно работать таким образом, или это недостаток дизайна.

library (quantmod)
getSymbols("AAPL")
AAPL <- cbind(AAPL,AAPL[,4])
chartSeries(AAPL["2018"])
addBBands()

Диаграмма построена, и я ожидаю, что функция addBBands () построит график полос Боллинджера, но я получаюошибка: «Ценовой ряд должен быть либо High-Low-Close, либо Close / univariate».

1 Ответ

0 голосов
/ 18 января 2019

Это по замыслу. BBands проверяет имена столбцов. Проверка основана на именах столбцов. В вашем примере у вас есть 2 столбца, которые содержат слово Закрыть . Вот где это идет не так. Если вы назовете новый столбец чем-нибудь, кроме high, low, open, close, volume, он будет работать Нечто вроде ниже.

library (quantmod)
getSymbols("AAPL")
AAPL <- cbind(AAPL,AAPL[,4])

# rename last column so it doesn't have "close" in the column name 
names(AAPL)[7] <- "AAPL.New.Col"

chartSeries(AAPL["2018"])
addBBands()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...