Где взять больше данных

В предыдущей заметке мы коснулись темы проверки работоспособности торговой системы с помощью IS-OOS тестирования. Используя пример с анализом точности боя стрелкового оружия, мы провели аналогию между количеством информации, которую даёт однин прогон системы на In-Sample и Out-of-Sample промежутках и количеством информации, которую даёт один выстрел по мишени. В данной заметке мы поговорим о том, каким образом можно делать больше «выстрелов» в контексте проверки надёжности Механических Торговых Систем.

Существует два различных пути получения дополнительной информации, характеризующей работоспособность торговой системы:

  1. Генерация синтетических наборов торговых данных с последующим тестированием системы на каждом из них.
  2. Моделирование потенциально возможных сценариев работы торговой системы на основании результатов, полученных в процессе одного IS-OOS прогона на ценовых данных, имевших место в реальной жизни.

Оба этих пути предполагают получение множества результатов тестирования механической торговой системы, к которым становится возможным применять методы статистического анализа. Каждый прогон системы на новом синтетическом ряду ценовых данных, равно как и каждое моделирование работы МТС на основании метрик IS-OOS тестирования, являются смысловым аналогом выстрела из винтовки и измерения отклонения пули от центра мишени.

Рассмотрим первый из упомянутых выше путей увеличения количества анализируемых «выстрелов»: генерация синтетических (искусственных) торговых данных. Идея, лежащая в основе этого пути, может быть сформулирована предельно просто: необходимо искусственным образом создать достаточно большое количество ценовых рядов, похожих на исходный ценовой ряд, имевший место в реальной жизни, после чего протестировать МТС на каждом из полученных рядов и статистически проанализировать всю совокупность результатов. Как это обычно бывает, вся соль сказанного выше заключается в одном слове: «похожих».

В общем случае, можно говорить, что синтетический ценовой ряд похож на исходный ценовой ряд тогда, когда его статистические характеристики близки или совпадают с характеристиками исходного ряда. Набор выбираемых характеристик, говорящих о схожести рядов, может зависеть от свойств Механической Торговой Системы, для работы с которой создаются синтетические данные.

Способы, применяемые для создания искусственных данных, ранжируются от относительно простых до весьма изощрённых с математической точки зрения. Прямой зависимости между сложностью метода генерации синтетических цен и конечной доходностью торгуемого алгоритма, вообще говоря, нет — выбор инструментария должен определяться задачей, а не наоборот. Мы рассмотрим один из методов получения синтетических цен, реализуемый с помощью общедоступного редактора электронных таблиц Excel, тем не менее, хотелось бы так же упомянуть метод, который смело можно отнести к разряду математически изощрённых.

Если предположить (скорее — постулировать), что биржевая торговля является суперпозицией случайных процессов, то для работы с ценовыми данными становится применим соответствующий математический аппарат стохастического (вероятностного) моделирования. Для генерации синтетических данных, необходимо выбрать общую форму случайного процесса, реализация которого и будет давать искомые искусственные котировки. Чаще всего мне приходилось сталкиваться с упоминанием математических моделей класса ARFIMA, применяемых для решения данной задачи. Если тематика стохастического моделирования биржевых процессов вас заинтересовала, то поиск по ключевым словам, используемым в этом абзаце, даст большой объём информации для самостоятельного изучения.

Я остановлюсь на рассмотрении более простого и понятного способа генерации синтетических котировок, который может быть использован как на практике, так и в качестве иллюстрации получения искусственного ряда цен, «похожего» на исходный по одной из заранее выбранных характеристик.

Назад   На оглавление   Вперед

Написать администратору