Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
![Скрипты](https://c.mql5.com/i/code/script.png)
Конвертирование реальных тиковых данных в FXT-файлы тестера стратегий - скрипт для MetaTrader 4
- Просмотров:
- 6605
- Рейтинг:
- Опубликован:
- 2014.08.14 10:57
- Обновлен:
- 2016.11.22 07:33
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
При проверке работоспособности экспертов в тестере стратегий MetaTrader 4 наиболее дотошные трейдеры сталкиваются с ограниченной точностью процесса тестирования. Связано это ограничение с тем, что детализированная история котировок хранится терминалом в виде минутных свечей. В свою очередь, каждая минутная свеча представлена только четырьмя значениями (ценами открытия, закрытия, максимума и минимума).
Во многих случаях этого вполне достаточно для воспроизведения реальных событий, что и делает тестер, моделируя поведение цены внутри минутной свечи. Но для тех случаев, когда речь идет о восстановлении событий во время выхода важных новостей, моделирование оказывается бессильным, а помочь восстановить реальные события может только детализированная тиковая история.
Скрипт преобразует файл тиковой истории формата TKS в файл FXT, подставляя итоговый файл в папку тестера стратегий. Программа использует символ и период графика, к которому прикреплен, в качестве параметров для создания файла соответствующего символа и таймфрейма.
Дата начала и окончания тестирования указываются в первых двух параметрах скрипта. Третий параметр служит для указания размера предварительной истории (минимум 1, максимум - вся история, доступная на графике символа), подкачиваемой до начала тестирования. Четвертый параметр - спред в пунктах. Именно это значение будет использовано при запуске процесса тестирования, а не то, которое установлено в тестере.
При запуске тестера стратегий необходимо выбрать такой же символ и таймфрейм, который использовался при запуске скрипта, модель тестирования "Все тики" и интервал дат, который хотя бы немного пересекается с интервалом дат, указанным в скрипте.
Файл TKS (данные о тиках) должен содержать последовательные записи следующего вида:
struct TickStruct { datetime time; // Дата/время поступления тика double bid; // Цена Bid тика double ask; // Цена Ask тика };
Более подробно работа скрипта описана в статье Тестирование на реальной истории.
![eaTemplate](https://c.mql5.com/i/code/expert.png)
Шаблон для советника, содержащий базовый набор функций, необходимых при создании стратегии.
![Swap Hunting](https://c.mql5.com/i/code/script.png)
Скрипт для открытия ордеров по всему списку "Обзор рынка" с положительным свопом.
![e-ScreenShot](https://c.mql5.com/i/code/expert.png)
Советник в начале каждого бара делает скриншот текущего графика.
![e-Trailing](https://c.mql5.com/i/code/expert.png)
Автоматический Trailing Stop всех открытых позиций.