Скрипт экспортирует данные equity по группе инструментов.
Что именно он делает:
Скрипт сохраняет историю историю стоимости выбранных инструментов в файл CSV. Скрипт рассчитывает, как изменились бы средства, если бы мы удерживали позиции по этим инструментам. Поддерживается выгрузкы данных по валютным парам и CFD контрактам.
Для чего это нужно:
Комбинируя торговые инструменты между собой с определенными лотами можно получить синтетический инструмент с заданными свойствами (обычно это либо нахождение в ограниченном коридоре или устойчивый тренд). Скрипт служит для выгрузки данных, чтобы передать их в MS Excel, либо в иной пакет статистического анализа (R, SAS, Statistica, SPSS) для построения моделей многофакторной регрессии. Можно строить модели двух типов:
Модель хеджирования — взаимосвязи между одним инструментом и группой других инструментов (синтетик имитирует некоторый реальный инструмент). При этом данные по equity основной группы инструментов выступают независимыми переменными регрессии (X), а один инструмент выступает как зависимая переменная (Y).
Модель синтетического тренда — приравнивающая весь портфель инструментов к некоторой функции, выражающей тренд (синтетик имитирует линейный тренд). При этом данные по equity всех инструментов выступают независимыми переменными регрессии (X), а значения функции тренда используется как зависимая переменная (Y).
Результатом расчета регрессионной модели будут коэффициенты для всех валютных пар, которые будут выступать лотами для открываемых позиций (после масштабирования и округления). Свободный член регрессионного уравнения (константа) всегда должен быть равен нулю.
Модель хеджирования предполагает торговать разницей реального инструмента и синтетического инструмента.
Модель синтетического тренда аналогична покупке портфеля — предполагается удерживать позиции о тренду по всей группе инструментов.
Параметры:
start_time = время начала интервала выгрузки
finish_time = время конца интервала выгрузки, этот параметр можно использовать в дальнейшем чтобы тестировать модели в режиме out-of-sample
symbol_list = перечень инструментов для выгрузки, разделитель — пробел, например: "EURUSD GBPUSD USDCAD USDJPY"
lots = объем условных позиций в каждой валюте, обычно это 0.01
remove_empty = опция чтобы убирать пропуски графиков (в том числе в выходные дни), обычно менять эту опцию не требуется
separator = символ-разделитель (обычно точка с запятой или запятая)
таймфрейм выгрузки задается таймфреймом текущего графика
Дополнительные сведения:
Данные выгружаются в файл equity_data_export.csv, который помещается в \experts\files\. В выгружаемом файле присутствуют колонки даты и времени, а также колонка NUM, которая представляет собой счетчик строк и одновременно ее можно использовать как функцию линейного тренда, подставляя эту колонку в качестве переменной в модель регрессии. Качество полученной модели можно оценить визуально на графике в MS Excel.
Особенность Метатрейдера не позволяет получить историческое значение цен единомоментно, так как есть небольшой временной лаг в получении данных с сервера. По этой причине желательно перед запуском скрипта либо заранее обновить данные экспортируемых инструментов, либо запустить скрипт два раза подряд: первый раз — для подгрузки данных с сервера, второй раз — для рабочей выгрузки. Возможно этот недостаток будет устранен в будущих версиях скрипта.
Скрипт содержит контроль синхронности истории по разным инструментам. Это позволяет не проверять вручную, что начало истории по всем инструментам совпадает, скрипт сам определяет ближайшую точку отсчета, начиная с которой доступна история по всем инструментам. Это также устраняет проблему некорректной выгрузки, когда выбранная начальная точка попадает в пропущенные периоды истории отдельных инструментов.
Своп-пункты и спреды не учитываются при выгрузке.