Почему эксперт на демо торгует не как в тестере - страница 3

 
Перенесено из темы "Тестер МТ4".


6
Mr_Goods 31.03.2011 06:36

Эта тема может как-то расширит или дополнит : Почему на демо эксперт торгует не как в тестере (https://forum.mql4.com/ru/39647)

Недавно тестировал очень простую систему на Price Channel.

Проводил тест в трех разных программах MT4, Metastock, Excel

Везде результаты получились разные, самые точные, я считаю это подсчитанные вручную в экселе, там виден весь процесс в деталях.

прибыль составила в

Excel 2981 п

MT4 1820 п

Metastock 2808 п

Как видно Excel и Metastock разница ~170 п, разница с MT4 > 1000 п

Куда делись эти 1000 пп ? Можно- ли это списать на спред ? или это просто тестер глючный ?


198
Sys15975382 31.03.2011 07:23

В тестере метастока и экселя не учитывается спред?

Разработчики МТ каждый день стараются на благо клиентов и добавили в отчет какой спред у данной валютной пары и есть меню где его можно задать....

ой а где же это все? нету? как нету? они же планитаррии для тестара МТ5 рисуют а со спедом до сих пор не разобрались? О_О ужас.

Насчет тестера МТ4.

Во первых тестер берет текущий спред который не соответствует действительности если спред плавающий. Есть такая вещь TakeMySpread которой можно для оффлайн терминала отредактировать спред вручную. прикрепил в описании все есть. У меня была ситуация когда 2 человека в разных городах (я и еще 1 трейдер) создали тестовый терминал МТ оффлайновый. Для этого залогинились одним и тем же класическим счетом и скачали историю с одного места (гелиум нет). Этот человек в один день мне скидывает отчеты и сеты для моего советника сделанные на этом терминале с радостными криками, моханиями руками и т.п. Когда я проверил эти тесты результат у меня получился диаметрально противоположный. Все дело оказалось именно в спреде. Он создал терминал днем когда спред зауженый. я в выходные когда спред берется с пятницы с последнего тика. там он расширен. Итог: программой задаешь максимальный спред по инструменту который ты тестируешь. Какой максимальный спред можно узнать у брокера/ДЦ, либо посмотреть его в выходные дни и округлить в большую сторону. 8.7 = 9 3.3 = 4. Тесты на меньшем спреде показывают лучший результат. поэтому если спред на момент сделки заузится это бонус.

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

В третьих твоя вина, хотя она должна быть на первом месте. это отсутствие модулей обработки ошибок при функциях OrderClose OrderSend OrderModify Order.... Эксперт пытается это сделать, ДЦ ему по каким то причинам не дает (реквота или еще что) и советник больше не пытается этого сделать.

P.S. архивы не дает прикреплять, надо TakeMySpread - пиши в личку мыло, скину.

 
"Максимальный размер файла 4 Мб (mq4, ex4, mq5, ex5, mqh, mqt, zip, txt)"
 
вот, раровский хотел засунуть.
Файлы:
 
По моему все дело в самом моделировании чем лучше показывает он свою торговлю на тестере.тем хуже будет работать на реале.
 
progma137:

когда передаете double в торговые функции - нормализуйте числа на всякий пожарный.

Например этот нормализует и приведет в порядок цену для четырехзнака и пятизнака:

Ну уж цену-то зачем нормализовывать? Она уже нормализована.

Нормализовывать нужно рассчитываемые значения

Причина обращения: