Влияние спреда. Как изменить спред для тестирования советников в МТ?

Приветствую всех читателей блога. Поздравляю с наступающим первомаем — Днем весны и труда!
Сегодня предлагаю рассмотреть тему спреда в MetaTrader. Насколько серьезно он может влиять на результаты теста и как его выставить самому на нужный уровень?

 

ПОЧЕМУ РАЗЛИЧАЮТСЯ РЕЗУЛЬТАТЫ ТЕСТИРОВАНИЯ В METATRADER


Известно, что терминал MetaTrader, подключенный к Альпари, часто рекомендуют для тестирования советников, т.к. загрузка архива котировок в нем происходит не с официального сервера MetaQuotes, а с реальных торговых серверов Альпари.

Однако Вы можете столкнуться с другой проблемой при проведении теста в терминале Альпари или в терминалах некоторых других брокеров, предлагающих плавающий спред. Дело в том, что при проведении теста в МТ4 спред для всех сделок будет взят тот, что зафиксирован на текущий момент. Соответственно, если спред изменяется, то результаты тестирования и оптимизации всякий раз будут разные. Но это еще пол беды. Ведь различия при спреде 1.8 и 2.0 не так существенны. Но вот перед выходными на закрытии недели часто фиксируется значительно повышенный спред 4-5 пунктов. Тестирование при таком спреде существенно искажает результат.

 

ВЛИЯНИЕ СПРЕДА НА РЕЗУЛЬТАТ ТОРГОВЛИ


Проиллюстрирую сказанное.

Прямо сейчас на момент написания заметки на сервере Alpari-Classic2 зафиксирован перед выходными нехарактерный повышенный спред 4.6 пунктов



При тестировании с таким спредом советник показал прибыль 140%



При уменьшении спреда до нормальных 2.0 (а на Альпари зачастую нормальный спред составляет 1.8) прибыль возрастает в 2 раза до 284%!



Различие видно на глаз и по динамике графиков. Кто-то возразит, что 2 пункта имеет значение лишь для краткосрочных стратегий. И… будет не прав. Удивительно, но на графиках выше показаны результаты теста довольно среднесрочной стратегии, в которой большинство сделок удерживаются 2-3 дня, средняя убыточная сделка составляет более 50 пунктов, а средняя прибыльная прибыльная сделка почти полторы фигуры! Казалось бы 2 пункта в нашем случае вносят вклад в каждую сделку от 1% до 4%, но такая вот существенная разница в итоге…

Кстати, для тех, кто торгует без четкого плана — это повод задуматься, что их торговля могла бы быть совсем иной, если бы входы и выходы были четко регламентированы. Успешного трейдера от посредственного могут порой отделять всего лишь считанные пункты точности в каждой сделке.


 

КАК САМОСТОЯТЕЛЬНО ИЗМЕНИТЬ СПРЕД В METATRADER


Итак, надеюсь, я убедил Вас, что спред — это серьезно. Давайте же узнаем, наконец, как установить свой спред для проведения корректного тестирования.

UPDATE 29/10/2017
Теперь спред можно менять штатными возможностями тестера



Поэтому скрипт ниже больше не нужен, однако воспользоваться им можно, если необходимо выставить спред = 0.



Выставление спред с помощью скрипта

Шаг 1.
Скачиваем и устанавливаем скрипт SetSpread от Candid
Скачать скрипт SetSpread

Если не знаете, как установить скрипт, то см. инструкцию Как добавлять советники, индикаторы и скрипты в MetaTrader

Шаг 2.
Копируем файл symbols.sel из папки истории терминала путь_установки_MT/history/папка_торгового_сервера в папку /MQL4/files/

Шаг 3.
Запускаем скрипт и выставляем свое значение спреда в настройках скрипта. На скриншоте выставлен спред 2 пункта:

Чтобы установить, например, 18 пунктов по пятизнаку (1.8 стандартных пункта), то нужно выставить 0.00018
Также здесь можно указать необходимый инструмент. По умолчанию спред изменяется для EUR/USD.

Шаг 4.
Закрываем MT, отключаем соединение с сетью (чтобы терминал не смог соединиться с торговым сервером) и копируем файл symbols.sel обратно из files в историю.

Шаг 5.
Запускаем терминал, не подключаясь к Интернету. Все. Теперь спред примет то значение, что Вы указали в настройках скрипта.

Чтобы вернуть прежнее значение, достаточно вновь подключиться к Интернету и перезагрузить MetaTrader.

Теперь плавающий спред не расстроит Ваши планы при тестировании советников. Но не забывайте, что спред должен быть адекватный. Если Ваш советник работает в новостное время, то ему, напротив, может потребоваться повысить спред, ведь во время выхода новостей спред часто раздвигается. Таким образом используйте скрипт для установки значения спреда в соответствии со своими ожиданиями.
  • +6
  • Просмотров: 33815
  • 29 апреля 2012, 13:22
  • Kaur
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "MetaTrader", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Странная ошибка old version of server
02 ноября 2011
01 июля 2012

Брокер для ваших роботов, 15 лет на рынке

Комментарии (19)

+
0
Удивительно, но на графиках выше показаны результаты теста довольно среднесрочной стратегии, в которой большинство сделок удерживаются 2-3 дня

На графике больше 1000 сделок. Если средняя сделка 2-3 дня, то… это тест за 2000-3000 дней? или все-таки стратегия не такая среднесрочная? :) 
avatar

  11  pilot Сообщений: 410

  • 29 апреля 2012, 19:48
+
+1
Так и есть. Дней даже больше. На графиках тест за 12 лет.
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 29 апреля 2012, 20:12
+
+1
оО ну тогда ясно. Солидный период. Правда, 284% за 12 лет не ахти какой заработок *???* 
avatar

  11  pilot Сообщений: 410

  • 30 апреля 2012, 03:50
+
0
Ну цель статьи — не систему рассмотреть :)  Система использована для примера. К тому же график построен без реинвестирования.
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 30 апреля 2012, 08:47
+
+2
На графике больше 1000 сделок. Если средняя сделка 2-3 дня, то… это тест за 2000-3000 дней?

Это, кстати, совсем не обязательно. Сделки могли открывать одновременно сразу несколько. Так что вам повезло, что угадали *tipatogo* 
avatar

  12  BetMaster Сообщений: 433

  • 30 апреля 2012, 09:19
+
+2
Как бы скриптик не взяли на вооружение всякие мошенники для рисования стейтов. Отрицательный спред, наверное, тоже получится выставить?
avatar

  12  BetMaster Сообщений: 433

  • 30 апреля 2012, 09:21
+
0
Отрицательный спред, наверное, тоже получится выставить?

Вроде можно. Надеюсь, что в наше время уже нет инвесторов, которые вкладывают деньги под обещания и отчет тестера :) 
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 30 апреля 2012, 13:05
+
0
Заработал очень мало. Это же почти за 12 лет? Не вдохновляет такое число((
avatar

  2  korieshov Сообщений: 86

  • 27 мая 2013, 17:11
+
0
По этому поводу комментировал выше
цель статьи — не систему рассмотреть )) Система использована для примера. К тому же график построен без реинвестирования.
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 27 мая 2013, 17:14
+
0
ничего себе период! если реально брать, то конечно больше выйдет!
avatar

  1  Albertovich Сообщений: 43 - Юрий Новиков

  • 31 мая 2013, 18:46
+
0
Заметил в тестере МТ4 возможность штатного изменения спреда



Наверное, введи в одном из билдов. Очень хорошо.
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 1 ноября 2013, 21:09
+
0
А у меня ничего не получилось. У меня нет папки /experts/files/, и как найти и запустить скрипт? Можно как то подробнее в картинках?
avatar

  14  beton2011 Сообщений: 895

  • 29 октября 2017, 18:59
+
0
beton2011,, статья от 2012 года — тестер за это время претерпел кое-какие изменения.
avatar

  27  Oxy Сообщений: 3430 - ..ιllιlι.lι.ιllι.ιlι..

  • 29 октября 2017, 19:34
+
0
Поле со сменой спреда сейчас должно быть в терминале на вкладке тестера, скрипт не нужен.
Если не видите его, то попробуйте расширить зону тестера. Иногда поля скрываются, когда не хватает места для их отображения.

Если все равно захотите попробовать скрипт (не ручаюсь, что он работает в последних билдах), то для установки выбрать пункт меню Файл -> Открыть каталог данных. В открывшейся папке MQL4 -> Scripts.
В картинках см. Как добавлять советники, индикаторы и скрипты в MetaTrader
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 29 октября 2017, 19:36
+
0
Я хочу проверить советник в тестере без учета спреда.

Все делал как в инструкции, все рано спред учитывается.
avatar

  14  beton2011 Сообщений: 895

  • 29 октября 2017, 20:33
+
0
Честно говоря, я не пробовал с 0. Вижу, что если 0 поставить штатными средствами тестера, то он не выставляется на деле, а работает с текущим спредом. Если поставить 1, то учитывает нормально.

Если пробовали скриптом, то выполняли ли все шаги? Скопировали symbols.sel? Выключили МТ? Отсоединились от интернета перед запуском и тестированием?
Желательно проконтролировать шаги с файлами — 1) symbols.sel должен быть взят именно из папки нужного торгового сервера; 2) проверить (по дате изменения хотя бы), что скрипт действительно изменил symbols.sel
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 29 октября 2017, 21:17
+
0
Я уже писал выше, у меня нет папки /experts/files/, мне некуда закидывать symbols.sel. Когда я пробовал все сделать, я просто закинул symbols.sel в папку /experts/, может по этому не получилось.
avatar

  14  beton2011 Сообщений: 895

  • 30 октября 2017, 08:23
+
0
Понятно. Надо закидывать сейчас в /MQL4/files
avatar

  47  Kaur Автор Сообщений: 1327 - Руслан Каюмов

  • 30 октября 2017, 10:10

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий