Discussão do artigo "Cálculos paralelos no MetaTrader 5" - página 2

 
Entendi corretamente que o multithreading não funcionará usando esse método no testador (sem a otimização ativada)? Quando inicio o teste, a julgar pelo registro, ele para depois que todos os indicadores são criados. Aparentemente, ele entra em um loop infinito porque um dos núcleos da CPU permanece carregado.
 
papaklass:

Como você aplica seu método ao campeonato? Regras: Um especialista e um gráfico. Os organizadores permitirão espiões em outros gráficos?

Você está interpretando mal as regras.

III. Expert Advisors (Consultores especializados) para MetaTrader 5

...

3. Cada Expert Advisor é lançado em um terminal separado de uma conta e somente em um gráfico selecionado pelo Participante. 3.

4. Os Expert Advisors multimoedas podem usar qualquer par de moedas dentre os 12 pares de moedas disponíveis.

...

Isso significa que o Consultor Especializado será anexado a um gráfico, especificamente àquele cujo símbolo e período o Participante especifica em seu perfil.

Mas ninguém proíbe a negociação e a obtenção de informações de qualquer gráfico, bem como a abertura automática do número necessário de gráficos para suas necessidades.

Você está sozinho no terminal e não perturba ninguém.

 
papaklass:

Como você aplica seu método ao campeonato? Regras: Um especialista e um gráfico. Os organizadores permitirão a execução de espiões em outros gráficos?

Podemos. Urain já respondeu. Além disso: em vez do manipulador de ticks de várias moedas OnTickMarketWatch, use este manipulador de eventos de várias moedas OnTick(string symbol) ou algo semelhante. Não haverá problemas.
 
MetaQuotes:

Foi publicado o novo artigo Parallel Calculations in MetaTrader 5:

Autor: Andrew

O Win 7 tem DirectX11 e as GPUs podem ser usadas para cálculos paralelos. Como podemos usá-las para testes de EA? Obrigado pela atenção
 
Obrigado
 
Obrigado, ótimo artigo!
 

Uma única passagem pelo Expert Advisor começa a partir da 0ª barra.

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

e as atribuições são dadas aos indicadores não a partir de 0, mas a partir de PatternLen, ou seja, 24 horas atrás em um minuto TF

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

As soluções acabam sendo diferentes.

 
O MT4 é compatível com isso?
 

Olá a todos.

estou tentando desenvolver uma plataforma de backtest usando python (uma integração entre python e meta5).

Em uma de suas etapas, preciso saber mais sobre como os núcleos (trabalhadores) na fase de otimização concluem um processo e qual é o fluxo exato da contribuição entre os núcleos.

Existe algum documento útil sobre isso?

Obrigado! c

 

Obrigado pelo artigo interessante e, principalmente, pela minilição sobre como vincular o EA e o indicador por meio de variáveis globais.

Meu vínculo entre o EA e o indicador requer a transferência de uma quantidade razoável de dados para o EA. Eu costumava fazer isso por meio de buffers de indicadores, mas seu método é mais universal e simples, além de carregar menos o processador com o polling dos buffers de indicadores.

Acabei de fazer isso e tudo funciona perfeitamente.

Além disso, o Expert Advisor tem várias moedas e seu artigo me ajudou a entender como distribuir a carga computacional.

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