Как предсказать курс доллара. Поиск доходной стратегии с языком R
Шрифт:
В то время как остальные курсы по не рублевым валютным парам представляют собой кросс-курсов, рассчитанные на основе данных российского Центробанка. Поскольку евро появился в обороте лишь с 1 января 1999 года, то до этой даты нами использовались данные ЦБ РФ по котировкам ЭКЮ – практически полного аналога (с точки зрения курсовой стоимости) современной единой европейской валюты, которую при переходе к евро в еврозоне обменяли в соотношении 1 к 1.
Как известно, официальные курсы валют к рублю Банк России устанавливает на следующий день исходя из рыночных котировок по итогам утренних торгов на Московской межбанковской валютной биржи. Для определения
Кроме того, с целью обеспечения сопоставимости данных при расчете всех курсов валют была сделана корректировка на деноминацию рубля. Дело в том, что с 1992 года и по 31 декабря 1997 года Банк России дает курсы валют в неденоминированных рублях, в то время как после деноминации с 1 января 1998 года у российской валюты исчезли три нуля.
Все необходимые для работы с этой книгой ежедневные данные (часть из них Вам в дальнейшем потребуется для самостоятельной работы) по курсам 12 валют, а также аналогичные данные по узкому индексу доллара США (к корзине из шести валют), по ценам на нефть и золоту за период с 30 июня 1992 года и до 28 апреля 2018 года читатель может скачать, открыв публикацию «Как предсказать курс доллара. Поиск доходной стратегии с языком R» по следующему адресу: https://bryukov.blogspot.com/.
В конце этой небольшой публикации есть ссылка, по которой можно скачать файл 'Данные.csv'. Хочу обратить Ваше внимание на тот факт, что в скопированном файле дни торгов в столбце Дата определяются в цифровом формате, исходя из стартовой даты – 1 января 1970 года, то есть с момента начала так называемой эры UNIX (англ. Unix Epoch). В то время как в Excel стартовой датой, от которой ведется отсчет, является 1 января 1900 года.
В том случае, если из-за технического сбоя ссылка с файлом 'Данные.csv' вдруг не сработает, то Вы можете загрузить эти данные, скопировав размещенные на моем блоге четыре материала: «Данные к книге «Как предсказать курс доллара. Поиск доходной стратегии с языком R», ч 1, 2. 3 и 4. Соответственно, ссылки по этим четырем материалам следующие:https://bryukov.blogspot.com/2018/08/r-2.html,и https://bryukov.blogspot.com/2018/08/r-4.html.
Сначала скопируйте «Данные к книге «Как предсказать курс доллара. Поиск доходной стратегии с языком R» из части 1. После чего разместите эти данные в файле Excel, выделите мышкой столбец с этими данными (четыре столбца не разделены), затем последовательно щелкните по опциям ДАННЫЕ/ТЕКСТ ПО СТОЛБЦАМ. А потом в появившемся окне, которое называется МАСТЕР РАСПРЕДЕЛЕНИЯ ТЕКСТА ПО СТОЛБЦАМ, укажите формат данных – С РАЗДЕЛИТЕЛЯМИ, в котором выберите опцию С ПРОБЕЛАМИ. В результате у Вас в файле Excel получится четыре отдельных столбца с данными.
Далее последовательно скопируйте 2, 3 и 4 части с данными к книге «Как предсказать курс доллара. Поиск доходной стратегии с языком R» и аналогичным образом поделите их на столбцы с помощью МАСТЕРА РАСПРЕДЕЛЕНИЯ ТЕКСТА ПО СТОЛБЦАМ. А затем все 16 столбцов с данными сохраните в экселевском файле в формате csv в рабочей директории. Назовите этот файл 'Данные.csv'. Используйте при этом следующую опцию при сохранении файла
в формате csv – «CSV (разделители – запятые)».Итак, сохранив в своей рабочей директории упомянутые выше данные, приступим к работе. При этом любую сессию в R нужно начинать таким образом:
> rm(list=ls(all.names=T))
# команда rm – сокращение от англ. слова remove
# этой командой удаляем все объекты, оставшиеся в памяти после прошлой сессии
# если нужно удалить только часть объектов, то тогда используем команду rm(x, y,z)
# в скобках rm указываем названия удаляемых переменных x, y и z и т.д.
> ls
# эту команду вводим, чтобы проверить наличие не удаленных из памяти объектов
# выводит список всех объектов, находящихся в рабочей среде программы;
character(0)
# ответ character(0) говорит о том, что переменных, оставшихся от прошлой сессии, нет
> getwd
# функция getwd позволяет узнать, какая директория в данный момент является рабочей
[1] "C:/Users/Vladimir/Documents"
# в ответе содержится название рабочей директории по умолчанию
# если мы хотим изменить рабочую директорию, то вводим команду:
> setwd('C:/Users/Vladimir/Documents/Cloud Mail.Ru/1 ANALITIKA/000 R/000 Книга прогноз доллара с R')
# устанавливаем текущую рабочую директорию, где находятся файлы данных
# не забудьте поменять название рабочей директории, так как у каждого читателя она своя
# в рабочую директорию по умолчанию сохраняются полученные результаты
# для импорта файла не из рабочей директории пишем к нему полный путь
# в этом случае заключайте в кавычки названия файлов и директорий
> install.packages(‘zoo’)
# если бы R понимал по-русски, то эту команду можно было бы ввести так:
# установить.пакеты(‘zoo’)
> install.packages(‘fBasics’)
# загружаем на диск компьютера пакеты (библиотеки) zoo и fBasics
# не забудьте при загрузке на диск компьютера заковычить название пакетов
> library(zoo)
# если бы R понимал по-русски, то эту команду можно было бы ввести так:
# библиотека(zoo)
> library(fBasics)
# загружаем в память компьютера библиотеки zoo и fBasics
# эти пакеты нужны нам для текущей работы
# перед каждой сессией нужные пакеты надо загружать в память компьютера
# далее читаем файл с загруженными для работы данными:
> Мои.данные<-read.zoo('Данные.csv', sep = ";", header=TRUE, FUN=as.Date)
# если бы R понимал по-русски, то эту команду можно было бы ввести так:
# Мои.данные<-чтение.zoo('Данные. csv', знак раздела = ";", заголовок=ИСТИНА, Функция=as.Date)
# FUN =as.Date по-русски можно было перевести: функция=как.Даты
# as.Date переводит загружаемые данные в нужный формат календарных дат
# в результате файл Excel в формате csv с загружен из рабочей директории
> options("scipen"=100, "digits"=8)
# устанавливаем количество сокращаемых после запятой знаков=8
# избавляемся от экспоненциального формата представления цифр
# options по-русски означет опции, а digits– цифры
# "scipen" – порядок использования научной нотации в R
> head(Мои.данные)
# по умолчанию загружает первые 6 строк файла Мои.данные
# head в переводе на русский означает голова, заголовок, верхняя часть
# если бы R понимал по-русски, то эту команду можно было бы ввести так: