Ускорение оптимизации в MT5 - варианты решений

 

Всем привет

Перешел на MT5, чего всем советую/рекомендую. Кому интересно почему - здесь основные ответы http://www.metatrader5.com/ru/trading-platform/comparison-mt5-mt4

Использую в торговых роботах немало параметров (10-15), требующих оптимизации, что занимает много времени.

Попробовал в MT5 оптимизацию через удаленных агентов  - реально крутая штука.

Хочу обсудить, какое решение быстрее (по времени) и выгоднее (по деньгам) при ежедневной оптимизации

Локальная сеть (локальная ферма)

  1. Использовать один/несколько мощных ПК (от 8 ядер, от 16 ОЗУ) + задействовать вычисления на GPU
  2. ИЛИ собрать сеть на нетбуках/ноутбуках средней мощности

Облачная сеть (cloud network)

  1. Как узнать стоимость оптимизации до ее начала/старта
  2. Как может у одного процессора (Intel i7 4 ядра/8 потоков) быть разный PR у ядер https://yadi.sk/i/A0ngAI0OxDpvS
  3. Как выбираются (по каким признаком/критериям) агенты, которые задействуются в оптимизации

Общие вопросы по тестеру MT5

  1. Почему тестирование не работает в многопоточном режиме (используется только одно ядро) ?
  2. Как попали торговые инструменты (Все символы, выбранные в окне «Обзор рынка») во вкладку оптимизация https://yadi.sk/i/1yv1KHG3xDrVd, если по логике они должны быть в символах
  3. Оптимизацию в режиме "Все тики, на основе реальных тиков"  стоит ли делать, или только для тестирования?
 
Igor Yeremenko:

Общие вопросы по тестеру MT5

  1. Оптимизацию в режиме "Все тики, на основе реальных тиков"  стоит ли делать, или только для тестирования?

Только по этому вопросу.

Если у Вас не скальпер, в большинстве случаев не имеет смысла. Даже для интрадея минут (1 мин ТФ) хватает. 

 
Yuriy Asaulenko:

Только по этому вопросу.

Если у Вас не скальпер, в большинстве случаев не имеет смысла. Даже для интрадея минут (1 мин ТФ) хватает. 

а скальперам не дадут заработать ) т.е. по сути вообще нет смысла ) ну за редими исключениями и только на бирже
 
Maxim Dmitrievsky:
а скальперам не дадут заработать ) т.е. по сути вообще нет смысла ) ну за редими исключениями и только на бирже

Тут даже не совсем в заработке дело. Скорее в идеологии торговли. 

 
Igor Yeremenko:

Всем привет

Перешел на MT5, чего всем советую/рекомендую. Кому интересно почему - здесь основные ответы http://www.metatrader5.com/ru/trading-platform/comparison-mt5-mt4

Использую в торговых роботах немало параметров (10-15), требующих оптимизации, что занимает много времени.

Попробовал в MT5 оптимизацию через удаленных агентов  - реально крутая штука.

Хочу обсудить, какое решение быстрее (по времени) и выгоднее (по деньгам) при ежедневной оптимизации

Локальная сеть (локальная ферма)

  1. Использовать один/несколько мощных ПК (от 8 ядер, от 16 ОЗУ) + задействовать вычисления на GPU
  2. ИЛИ собрать сеть на нетбуках/ноутбуках средней мощности

Экономически целесообразней купить железо предыдущего поколения, что Intel что AMD - Б.У. . Ноутбуки слабы для этих целей.

Igor Yeremenko:


Облачная сеть (cloud network)

  1. Как узнать стоимость оптимизации до ее начала/старта
  2. Как может у одного процессора (Intel i7 4 ядра/8 потоков) быть разный PR у ядер https://yadi.sk/i/A0ngAI0OxDpvS
  3. Как выбираются (по каким признаком/критериям) агенты, которые заделываются в оптимизации

 1. Сделать один проход, узнать его стоимость и умножить на количество нужных проходов.

 2. i7 это не модель, а скорей класс - нужно сравнивать именно модели и их номера.

 3. Кто самый быстрый и свободный, тому и работу дают - если память не изменяет. 

 

  1. Использовать один/несколько мощных ПК (от 8 ядер, от 16 ОЗУ) + задействовать вычисления на GPU
  2. ИЛИ собрать сеть на нетбуках/ноутбуках средней мощности

По моим наблюдениям мощность ядер мало влияет на скорость. Тестирую на старенькой двухядерной Соньке и четырехядерном восьмипотоковом  i7 Днс-е одновременно. Разницы практически никакой. Т.е. для общей скорости оптимизации важнее не производительность отдельных ядер, а то количество фреймов, которое можно обрабатывать одновременно. Т.е. чем больше ядер (потоков) -тем лучше. ОЗУ же вообще, похоже, не влияет на скорость,( но только  если на компе во время тестирования не используются сторонние и ресурсные проги).

Облако же вообще не рекомендую, слишком дорого для того объема тестирования, который необходим .

 
При оптимизации(не одиночном проходе) линейная зависимость скорости от количества ядер и частоты процессора.

Масштабирование чистейшее и близко к идеальному.

Чтобы доказать обратное, нужны воспроизводимые условия.
 
Renat Fatkhullin:
При оптимизации(не одиночном проходе) линейная зависимость скорости от количества ядер и частоты процессора.

есть класс советников (АТС, чужих, в маркете), которые использует много вычислений или ордеров (сеточники, работающие на каждом тике, мультивалютные и тд), и в режиме "Все тики на основе реальных" тест идет не менее 10 мин, сколько займет времени оптимизацию страшно подумать

почему в MT5  нельзя (не предусмотрено) тестирование в много поточном режиме, т.е. задействуется всего одно ядро (поток), при том что на современных CPU их минимум 2

 
Youri Tarshecki:

По моим наблюдениям мощность ядер мало влияет на скорость. Тестирую на старенькой двухядерной Соньке и четырехядерном восьмипотоковом  i7 Днс-е одновременно. Разницы практически никакой. Т.е. для общей скорости оптимизации важнее не производительность отдельных ядер, а то количество фреймов, которое можно обрабатывать одновременно. Т.е. чем больше ядер (потоков) -тем лучше. ОЗУ же вообще, похоже, не влияет на скорость,( но только  если на компе во время тестирования не используются сторонние и ресурсные проги).

Облако же вообще не рекомендую, слишком дорого для того объема тестирования, который необходим .

при тестировании задействуется всего одно ядро, поэтому скорость (время) будет зависит от частоты процессора, а не количества ядер/потоков

как запустить тестирование на всех ядрах пока не знаю

 
Igor Yeremenko:

есть класс советников (АТС, чужих, в маркете), которые использует много вычислений или ордеров (сеточники, работающие на каждом тике, мультивалютные и тд), и в режиме "Все тики на основе реальных" тест идет не менее 10 мин, сколько займет времени оптимизацию страшно подумать

почему в MT5  нельзя (не предусмотрено) тестирование в много поточном режиме, т.е. задействуется всего одно ядро (поток), при том что на современных CPU их минимум 2

Потому что одиночный проход строго последовательный процесс(будущая секунда зависит от предыдущей с точки зрения торгового состояния) и его нельзя разделить на параллельно просчитываемые участки.

А вот оптимизация множества проходов независима и чисто ложится в параллельную обработку. 

 
Renat Fatkhullin:

Потому что одиночный проход строго последовательный процесс(будущая секунда зависит от предыдущей с точки зрения торгового состояния) и его нельзя разделить на параллельно просчитываемые участки.

А вот оптимизация множества проходов независима и чисто ложится в параллельную обработку. 

да, логично, но можно историю поделить на количество участков = количеству ядер/потоков, протестировать параллельно и "склеить" в один отчет

на коротких промежутках это не даст ускорения, а на длинных  (1-10 лет) будет существенное