Автоматический запуск оптимизации - страница 2

 
Evgeny Potapov:

Интересная идея!

Подскажите, а как создать свой символ?

Какой раздел документации смотреть?

Кастом-символы есть только в МТ5. А этот топик вроде в разделе МТ4 (правда в МТ4 есть оффлайн-чарты, т.е. можно сгенерировать пользовательский "таймфрейм").

Кроме того, надо проверить не будет ли подключение запрашиваться раньше, чем начнется работа с кастом-символами.

Для старта с кастом-символами не с нуля можно использовать например вот такую библиотеку.

ThirdPartyTicks
ThirdPartyTicks
  • www.mql5.com
Исторически сложилось, что для MetaTrader 4 пользуются популярностью сторонние приложения, позволяющие получать тиковую историю из различных источников. Как правило, ее используют в Тестере Стратегий как полигон для проверки советников, а также для исследований (машинное обучение и т.д.). Некоторые источники котировок в обсуждениях стали почти...
 
Stanislav Korotky:

Кастом-символы есть только в МТ5. А этот топик вроде в разделе МТ4 (правда в МТ4 есть оффлайн-чарты, т.е. можно сгенерировать пользовательский "таймфрейм").

Кроме того, надо проверить не будет ли подключение запрашиваться раньше, чем начнется работа с кастом-символами.

Для старта с кастом-символами не с нуля можно использовать например вот такую библиотеку.

Не, я использую MT4, точно не MT5. C MT5 я начинал. Но теперь больше ни ногой!

Таймфрейм будет работать только в оффлайн-чате, но не в тестере. 

Подключение, действительно, запрашивается раньше, чем начинается оптимизация.

Получается, что без Интернета оптимизацию не запустить пакетным файлом, а жаль!

 
Evgeny Potapov:

Не, я использую MT4, точно не MT5. C MT5 я начинал. Но теперь больше ни ногой!

Таймфрейм будет работать только в оффлайн-чате, но не в тестере. 

Подключение, действительно, запрашивается раньше, чем начинается оптимизация.

Получается, что без Интернета оптимизацию не запустить пакетным файлом, а жаль!

Почему не в тестере? Если подготовленные файлы hst/fxt переименовать под какой-нибудь стандартный таймфрейм (заменить ими исходные, а те можно забэкапить, но судя по желанию работать без соединения, это и не важно), то они должны работать в тестере.

Сходу не нашел русские инструкции, но вот что-то в этом роде на английском.

Testing strategies (EA) on Renko/Range Bar charts on the MetaTrader 4 platform | FXCraft
Testing strategies (EA) on Renko/Range Bar charts on the MetaTrader 4 platform | FXCraft
  • fxcraft.biz
In this article I will present a simple method of testing expert advisors on offline charts (e.g. Renko, Range Bar) on MetaTrader 4 platform. At first, we need a script, that genertes an offline chart. On the Internet there are many such scripts. They can be found for example under the following links: When you put a a script on a standard...
 
Evgeny Potapov:

Не, я использую MT4, точно не MT5. C MT5 я начинал. Но теперь больше ни ногой!    

А что не так ?

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

С другой стороны - весь код у меня кроссплатформенный, ему разницы нет, где работать... 

 
Stanislav Korotky:

Почему не в тестере? Если подготовленные файлы hst/fxt переименовать под какой-нибудь стандартный таймфрейм (заменить ими исходные, а те можно забэкапить, но судя по желанию работать без соединения, это и не важно), то они должны работать в тестере.

Спасибо! Да, эту часть можно сделать. Но прежде, чем стартовать оптимизацию, МТ4 пытается присоединиться к серверу, и стопорится на этом. Надо вручную закрывать окошко авторизации. Если бы сделали, например, отмену попытки авторизации при передаче нулевого логина, тогда можно было бы всё полностью стартовать пакетным файлом.

 
Georgiy Merts:

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

С другой стороны - весь код у меня кроссплатформенный, ему разницы нет, где работать... 

Может, я и не прав, возможно МТ5 уже подправили.

По крайней мере, из ваших слов это вытекает.

Я, например, не представляю себе как кроссплатформено написать открытие двух встречных ордеров: Buy и SEll.

Сделайте милость, покажите код!

 
Evgeny Potapov:

Может, я и не прав, возможно МТ5 уже подправили.

По крайней мере, из ваших слов это вытекает.

Я, например, не представляю себе как кроссплатформено написать открытие двух встречных ордеров: Buy и SEll.

Сделайте милость, покажите код!

Это возможно на хедж-счете. Для неттинга выйдет еще тот огород:

  1. Для каждого ордера нужно иметь лимитный и стоповый отложенные ордера (вместо TP и SL; если параметр 0, то все равно нужен соответствующий ордер, но где-то далеко от цены).
  2. На разность объемов открыть позицию.
  3. Не ставить TP и SL для позиции.
 
Ihor Herasko:

Это возможно на хедж-счете. Для неттинга выйдет еще тот огород:

  1. Для каждого ордера нужно иметь лимитный и стоповый отложенные ордера (вместо TP и SL; если параметр 0, то все равно нужен соответствующий ордер, но где-то далеко от цены).
  2. На разность объемов открыть позицию.
  3. Не ставить TP и SL для позиции.

Ммм. Извините, честно, ничего не понял. Можете привести код? Код часто оказывается ясней, чем слова.

Допустим, для простоты, в начале, что разность объёмов равна нулю.

Первое движение произошло вверх - закрыл BUY - зафиксировал прибыль

Второе движение: ещё немного вверх, потом вниз - зафиксировал небольшой убыток.

Как это кодить кроссплатформено?

================================

Если это реально сложно закодить, то тогда какой смысл изучать MQL5? 

Или я что-то не до конца понял?

 
Evgeny Potapov:

Ммм. Извините, честно, ничего не понял. Можете привести код? Код часто оказывается ясней, чем слова.

Такой код огромен. И опять же - нужен только для неттинга. Суть неттинга: открыли Buy, все ОК, открыли на этот же объем Sell - нет позиции. 

Допустим, для простоты, в начале, что разность объёмов равна нулю.

Первое движение произошло вверх - закрыл BUY - зафиксировал прибыль

Второе движение: ещё немного вверх, потом вниз - зафиксировал небольшой убыток.

Как это кодить кроссплатформено?

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

================================

Если это реально сложно закодить, то тогда какой смысл изучать MQL5? 

Или я что-то не до конца понял?

Ну как - зачем? МТ5 - более новый терминал, возможностей больше. А в МТ4, как минимум, все чаще сталкиваешься с проблемой нехватки памяти (32-хразрядное приложение).

 
Ihor Herasko:

Такой код огромен. И опять же - нужен только для неттинга. Суть неттинга: открыли Buy, все ОК, открыли на этот же объем Sell - нет позиции. 

Ну как - зачем? МТ5 - более новый терминал, возможностей больше. А в МТ4, как минимум, все чаще сталкиваешься с проблемой нехватки памяти (32-хразрядное приложение).

Если для простого действия надо писать огромный код, как вы говорите, разве будет много желающих пользоваться таким языком? Большинство, как я, поэкспериментирует - и перейдёт на рационально спроектированный язык.

Помните, был PHP6? Им так никто и не стал пользоваться на практике. Идея была мертворождённая. А не успели сделать PHP7, уже на многих хостингах он доступен, не смотря на массу багов. Потому что даёт преимущества.

MQL5 - это как PHP6. Надо просто сделать работу над ошибками, и спроектировать язык для людей, а не для самоудовлетворения.

Ну, это я слишком размечтался!

Хотя бы в MT4 сделали бы обход авторизации и запуск оптимизации с дефолтными настройками! Вот о чём я на самом деле мечтаю!

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