Обсуждение статьи "Параллельные вычисления в MetaTrader 5 штатными средствами" - страница 2

 
Я правильно понимаю, что в тестере (без включенной оптимизации) многопоточность по данному методу работать не будет? У меня при запуске теста, судя по логу, стопорится после создания всех индикаторов, видимо уходит в бесконечный цикл, т.к. одно из ядер проца остается нагруженным.
 
papaklass:

 

А как Ваш метод применить на чемпионате? Правила: Один эксперт и один график. Позволят ли организаторы запускать шпионов на другие графики? 

Вы не верно трактуете правила.

III. Программы Экспертов (Expert Advisors) для MetaTrader 5

...

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

4. Мультивалютные эксперты могут использовать любые валютные пары из 12 доступных.

...

Это означает что эксперт будет присоединён к одному чарту, а конкретно к тому, символ и период которого укажет участник в профайле.

Но никто не запрещает торговать и получать информацию с любого чарта, равно как и автоматически открывать для своих нужд необходимое количество чартов.

Вы ведь находитесь на терминале один и никому не мешаете.

 
papaklass:

 

А как Ваш метод применить на чемпионате? Правила: Один эксперт и один график. Позволят ли организаторы запускать шпионов на другие графики? 

Можно. Urain уже ответил. В дополнение: вместо Мультивалютный обработчик тиков OnTickMarketWatch используйте это Мультивалютный обработчик событий OnTick(string symbol) или что-то подобное. Проблем не будет.
 
MetaQuotes:

Опубликована новая статья Параллельные вычисления в MetaTrader 5:

Автор: Эндрю

В Win 7 есть DirectX11 и GPU можно использовать для параллельных вычислений, как это можно использовать для тестирования ea? Спасибо
 
спасибо
 
Спасибо, отличная статья!
 

Одиночный проход экспертом начинается с 0-го бара

      FindPrognoze(_Symbol,CurPattern,0,HistoryLen,ExistsPrognozeLen,
                   Prognoze,MaxRating,HistPatternBarStart);

а индикаторам задания раздаются не с 0 а с  PatternLen, т.е. сутки назад на минутном ТФ

         int handle=iCustom(s,_Period,path+"i-Thread",
                            GlobalVarPrefix,t,_Symbol,PatternLen,
                            PatternLen+t*HistPartLen,HistPartLenPlus);

В итоге решения получаются разными.

 
Поддерживает ли это MT4?
 

привет всем.

Я пытаюсь разработать платформу для бэктестов с использованием python. (интеграция между python и meta5).

На одном из этапов мне нужно знать больше о том, как ядра (рабочие) на этапе оптимизации завершают процесс и каков точный поток вклада между ядрами.

Есть ли какая-нибудь полезная документация об этом?

спасибо! c

 

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

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

Только что сделал, всё работает на ура.

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

Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов
Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов
  • www.mql5.com
В своей статье  я сделал достаточно убедительные тесты, доказывающие тот факт, что далеко не каждый вызов пользовательского или даже технического индикатора в коде - это самый оптимальный вариант для обработки им промежуточных расчетов в разрабатываемом индикаторе. Итоговый результат по скорости своего исполнения может оказаться значительно...