Скачать MetaTrader 5

Помогите разобраться с оптимизацией

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

Есть советник.При тестировании с заданными параметрами проходит нормально,показывает результаты.При визуализации все строится,ордера открываются,уровни меняются.Но когда делаю оптимизацию, то выдаёт одни нули.В советнике есть графические объекты(линии),которые перестраиваются по мере изменения графика.Старт изменяемого параметра в оптимизации задаю верно,так же как и шаг и стоп.Тестирование на интервале 1 месяц проходит 1-2 минуты,но при оптимизации если 11 вариантов,то проходит 20 секунд.

Помогите разобраться кто может.Спасибо.

Slava
Модератор
6972
Slava  

1. О какой платформе идёт речь? MT4 или MT5?

2. Если запустить одиночное тестирование без визуализации, то какой будет результат?

Dmitiry Ananiev
8257
Dmitiry Ananiev  
Советник строит линии и отслеживает пересечения ценой этих линий. В тестере такой подход не работает. Необходимо реализовать расчет пересечений. Sin, cos, tg в помощь ! 
baromix
39
baromix  
Slawa:

1. О какой платформе идёт речь? MT4 или MT5?

2. Если запустить одиночное тестирование без визуализации, то какой будет результат?

Спасибо за ответ.

Платформа МТ4.Если запустить одиночное тестирование без визуализации,то все проходит нормально(с результатами как и с визуализацией). Только когда запускаю оптимизацию,она проходит быстро(даже если на год ставлю). История загружена вплоть до 1М.

baromix
39
baromix  
Dmitiry Ananiev:
Советник строит линии и отслеживает пересечения ценой этих линий. В тестере такой подход не работает. Необходимо реализовать расчет пересечений. Sin, cos, tg в помощь ! 

Спасибо за ответ.

У меня в советнике реализовано по принципу,если цена выше или ниже построенной линии,тогда происходит открытие ордеров.

Slava
Модератор
6972
Slava  
baromix:

Спасибо за ответ.

Платформа МТ4.Если запустить одиночное тестирование без визуализации,то все проходит нормально(с результатами как и с визуализацией). Только когда запускаю оптимизацию,она проходит быстро(даже если на год ставлю). История загружена вплоть до 1М.

Понятно.

Это - ограничение оптимизации. При оптимизации в четвёрке графические объекты не обрабатываются

baromix
39
baromix  
Slawa:

Понятно.

Это - ограничение оптимизации. При оптимизации в четвёрке графические объекты не обрабатываются

Ясно.Нужно на MT5 переходить.

Спасибо.

Andrey Khatimlianskii
58093
Andrey Khatimlianskii  
baromix:

Ясно.Нужно на MT5 переходить.

Спасибо.

Или заменить графические объекты на несколько переменных.

Если линия горизонтальная, нужно просто запомнить ее уровень и сравнивать с ним. Если трендовая, нужны 2 точки и расчет значения для нужного бара.

Все решается. 

baromix
39
baromix  
Andrey Khatimlianskii:

Или заменить графические объекты на несколько переменных.

Если линия горизонтальная, нужно просто запомнить ее уровень и сравнивать с ним. Если трендовая, нужны 2 точки и расчет значения для нужного бара.

Все решается. 

Спасибо за ответ.

Это с помощью глобальных переменных или переменных типа "extern"?

Я так понимаю, что при наступлении события "OnTick()" локальные переменные не сохраняют значения предыдущего "OnTick()".

Andrey Khatimlianskii
58093
Andrey Khatimlianskii  
baromix:

Спасибо за ответ.

Это с помощью глобальных переменных или переменных типа "extern"?

Я так понимаю, что при наступлении события "OnTick()" локальные переменные не сохраняют значения предыдущего "OnTick()".

Достаточно переменных, объявленных на глобальном уровне видимости (вне функций) или статических переменных.

Глобальные нужны, чтоб хранить состояние между запусками советника или терминала.

Алексей Тарабанов
7328
Алексей Тарабанов  
Andrey Khatimlianskii:

Достаточно переменных, объявленных на глобальном уровне видимости (вне функций) или статических переменных.

Глобальные нужны, чтоб хранить состояние между запусками советника или терминала.

Андрей, Вы все еще используете "статические" переменные? 
123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий