Пакет quantmod для скачивания котировок и построения графиков

Использование пакета quantmod для скачивания котировок

С помощью пакета quantmod можно получить котировки из различных источников:

  • Yahoo Finance (цены открытия, максимумы дня, минимумы, цены закрытия и объёмы; котировки валют недоступны);
  • Google Finance (цены открытия, максимумы дня, минимумы, цены закрытия и объёмы);
  • Federal Reserve Bank of St. Louis FRED®;
  • Oanda (FOREX и металлы, только цены закрытия);
  • локальная база данных MySQL;
  • двоичные файлы R (.RData и .rda);
  • текстовые файлы CSV.

Откройте RStudio и, если вы ещё этого не сделали, установите пакет quantmod.

Затем введём команду для загрузки пакета в память:

library(quantmod)

Теперь скачаем с сайта Yahoo Finance котировки акции Microsoft (тикер MSFT):

getSymbols("MSFT", src = "yahoo")

Использование пакета quantmod для построения биржевых графиков

Построим график:

chartSeries(MSFT)

Выделим только первый квартал 2014-го года (рис. 1):

chartSeries(MSFT["2014-01/2014-03"])
../_images/rintro-01.png

Рис. 1. Построение графиков с помощью пакета quantmod

Выведем таблицу котировок акций Microsoft за все дни января 2014-го года:

MSFT["2014-01"]

Получим:

             MSFT.Open MSFT.High MSFT.Low MSFT.Close MSFT.Volume  MSFT.Adjusted
2014-01-02     37.35     37.40    37.10      37.16    30632200         36.40
2014-01-03     37.20     37.22    36.60      36.91    31134800         36.15
2014-01-06     36.85     36.89    36.11      36.13    43603700         35.39
2014-01-07     36.33     36.49    36.21      36.41    35802800         35.66
2014-01-08     36.00     36.14    35.58      35.76    59971700         35.03
2014-01-09     35.88     35.91    35.40      35.53    36516300         34.80
2014-01-10     35.90     36.15    35.75      36.04    40548800         35.30
2014-01-13     35.99     36.02    34.83      34.98    45901900         34.26
2014-01-14     34.73     35.88    34.63      35.78    41623300         35.05
2014-01-15     35.90     36.79    35.85      36.76    44812600         36.01
2014-01-16     36.69     37.00    36.31      36.89    38018700         36.13
2014-01-17     36.83     36.83    36.15      36.38    46267500         35.63
2014-01-21     36.82     36.82    36.06      36.17    31567300         35.43
2014-01-22     36.26     36.32    35.75      35.93    21904300         35.19
2014-01-23     36.09     36.13    35.52      36.06    43954000         35.32
2014-01-24     37.45     37.55    36.53      36.81    76395500         36.05
2014-01-27     36.87     36.89    35.98      36.03    44420800         35.29
2014-01-28     36.12     36.39    35.75      36.27    36205500         35.53
2014-01-29     35.98     36.88    35.90      36.66    52745900         35.91
2014-01-30     36.79     36.88    36.23      36.86    35036300         36.10
2014-01-31     36.95     37.89    36.56      37.84    93162300         37.06

Преобразование таймфрейма

Зададим недельный таймфрейм, выберем для отображения только 2013 и 2014 годы, изменим цвет фона на белый, бычьи свечи изобразим зелёным, а медвежьи – красным цветом (рис. 2):

candleChart(to.weekly(MSFT["2013/2014"]), theme="white", up.col='green', dn.col='red')
../_images/rintro-02.png

Рис. 2. Изменение цвета элементов графика

Наконец, построим график за 2014-й год в виде баров:

barChart(MSFT["2014"], theme="white")

Технические индикаторы

Откроем пакет TTR (вы не забыли его установить?):

library(TTR)

и добавим на график два индикатора (их параметры оставим по умолчанию):

addMACD()
addBBands()

Получим график, показанный на рис. 3.

../_images/rintro-03.png

Рис. 3. График в виде баров, с индикаторами MACD и полосами Боллинджера

(продолжение следует...)

Ссылки:


Теги: Язык R




Комментарии

Комментариев пока нет.

* Обязательные поля
(Не публикуется)
 
Жирный Курсив Подчеркнутый Перечеркнутый Степень Индекс Код PHP Код Кавычки Вставить линию Вставить маркированный список Вставить нумерованный список Вставить ссылку Вставить e-mail Вставить изображение Вставить видео
 
Улыбка Печаль Удивление Смех Злость Язык Возмущение Ухмылка Подмигнуть Испуг Круто Скука Смущение Несерьёзно Шокирован
 
1000
Captcha
Refresh
 
Введите код:
 
Запомнить информацию введенную в поля формы.