Значение слова «прогноз» буем понимать так, как это понимается в R под словом «forecast» – для прогноза следующего значения используется предыдущее значение, полученное в результате предыдущего шага прогноза. Пакет forecast является примером такого понимания значения слова «прогноз».
Предсказание. Значение слова «предсказание» будем понимать в смысле универсальной функции predict — предсказание будущего на любое число шагов вперед с использованием имеющихся данных.
В данной книге исторические данные используются для обучения моделей, которые в последующем используются для предсказания будущего.
1.2. Процесс предсказательного моделирования
Существует несколько аспектов в процессе построения модели, которые следует обсудить далее, особенно новичкам в предсказательном моделировании.
Технология предсказательного моделирования выглядит следующим образом:
– на основе некоторого набора исходных данных производится обучение модели;
– в последующем обученная модель используется для предсказания целевой переменной на новом наборе данных;
– в зависимости от того, чему мы учили модель: предсказывать целевую переменную на сегодня, на завтра или на n шагов вперед, мы и получим соответствующее предсказание.
1.2.1. Разделение данных
То, как выделяются данные определенным этапам (например, обучение модели, оценка результативности), является важным аспектом моделирования. Наш главный интерес, к примеру, состоит в предсказании тренда на новых данных, которые отсутствуют в момент обучения модели. Это означает, что до некоторой степени необходимо проверить, как хорошо модель экстраполирует на новых котировках. Если бы мы интересовались предсказанием на тех же самых данных (то есть, интерполяцией), то можно было бы взять простую случайную выборку данных. То, как определены набор данных для обучения и наборы данных для тестирования и проверки, должно отразить применение модели.
Сколько данных должно быть выделено обучающему набору и тестовому? Это обычно зависит от ситуации. Если пул данных небольшой, решения разделения данных могут быть критическими. Небольшой (десятки наблюдений) тестовый набор исходных данных ограничил бы суждения о результативности модели. В этом случае, уверенность в результатах могли бы предоставить методы ресемплирования, которые могли бы решить проблему.
На финансовых рынках достаточно часто доступны большие наборы данных. Обычно доступны наборы данных с несколькими тысячами наблюдений, например, цен валютных пар. Казалось бы, что на финансовых рынках отсутствуют проблемы небольших по объему исходных данных. Однако это не так. К примеру, мы обучили модель на растущем рынке, а тестируем на падающем рынке, и выясняется, что модель дает убыток на этом тестовом наборе данных. На этом примере мы видим, что проблема в обязательности разделения котировок для обучения и тестирования остается и для больших наборов данных, так как