Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
Equity Data Exporter - скрипт для MetaTrader 4
- Просмотров:
- 3471
- Рейтинг:
- Опубликован:
- 2013.05.05 23:15
- Обновлен:
- 2014.04.21 14:56
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Назначение
Скрипт экспортирует данные 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 либо с помощью индикатора Equity Chart Modeller (http://codebase.mql4.com/ru/code/10962).
Особенность Метатрейдера не позволяет получить историческое значение цен единомоментно, так как есть небольшой временной лаг в получении данных с сервера. По этой причине желательно перед запуском скрипта либо заранее обновить данные экспортируемых инструментов, либо запустить скрипт два раза подряд: первый раз - для подгрузки данных с сервера, второй раз - для рабочей выгрузки. Возможно этот недостаток будет устранен в будущих версиях скрипта.
Скрипт содержит контроль синхронности истории по разным инструментам. Это позволяет не проверять вручную, что начало истории по всем инструментам совпадает, скрипт сам определяет ближайшую точку отсчета, начиная с которой доступна история по всем инструментам. Это также устраняет проблему некорректной выгрузки, когда выбранная начальная точка попадает в пропущенные периоды истории отдельных инструментов.
Своп-пункты и спреды не учитываются при выгрузке.
Обновление версии
Обновлен код для совместимости с новой версией языка MQL.
Мой маленький советник для М1, торгующий только по МА. По одной. Воплощение идеологии минимализма и моего взгляда на программирование советников.
InformerПоказывает риск и текущее состояние по установленным ордерам (в пунктах, %, и $). Историю с теми же показателями. Звуковой сигнал при стоп-лоссе, тейк-профите и срабатывании отложенного ордера.
Простейший собиратель истории показателя equity, оформленный в виде советника
News_Calendarиндикатор новостей