Tema interessante para muitos: o que há de novo em MetaTrader 4 e MQL4 - grandes mudanças no caminho - página 56

 
MetaDriver:
Com lacunas que vejo, mas como é que o testador ajuda a ver o escorregamento?
Cada TS tem a sua própria história personalizada.
 
Avals:
Para apanhar um deslize no tick data tester, é necessário definir um atraso de tempo aproximado na transmissão de dados entre o corretor e o cliente (atraso). Cada carraça tem o seu tempo quando ocorreu ao milissegundo, por exemplo. No testador, se o tempo de colocação de uma ordem de mercado + desfasamento>a hora do próximo tick, então executamos aos preços do novo tick. É evidente que a execução parcial não pode ser simulada desta forma, precisamos de dados de liquidez.

Sim, é isso mesmo.

+ Também pode especificar a tempo, ou seja, aumentar o atraso no momento da divulgação da notícia (através de um pré-monitoramento no real).

 
Avals:

A fim de apanhar um deslize nos dados do tick no testador, é necessário definir um intervalo de tempo aproximado entre o corretor e o cliente (atraso).

Todos sabem que o Testador de Estratégia MetaTrader 5 tem o modo Random Delay. Ajuda no MetaTrader 5Strategy TesterSettings?

Atraso arbitrário

O modo Arbitrary Delay destina-se a testar Expert Advisors num ambiente quase realista. Desde o momento em que uma ordem é enviada até à sua execução, o preço pode mudar. Dependendo do desvio definido na ordem, pode ser executado ao preço actual (se estiver dentro dos limites de desvio) ou a pedido. Os testes neste modo permitem-lhe programar correctamente o Expert Advisor para lidar com tais situações.

É imitado um atraso para todos os pedidos comerciais enviados do terminal (colocação de encomendas, mudança de níveis de paragem, etc.). O atraso na execução é implementado de acordo com o seguinte princípio: um número aleatório de 0 a 9 é seleccionado e o atraso é implementado durante o mesmo número de segundos; se o número seleccionado for 9, outro número do mesmo intervalo é seleccionado aleatoriamente e adicionado ao primeiro. Assim, a probabilidade de um atraso de 0-8 segundos é de 90%, e a probabilidade de um atraso de 9-18 segundos é de 10%.

 
Rosh:

Todos sabem que o testador MetaTrader5 tem um modo de atraso aleatório Ajuda no MetaTrader 5Strategy TesterSettings?

Isto só é relevante se for capaz de testar em carraças reais e que com nuances (como o atraso por vezes muda com o tempo).

 
Rosh:

Penso que a maioria das pessoas está ciente de que o testador MetaTrader5 tem um modo de atraso arbitrário Ajuda no MetaTrader 5Strategy TesterSettings:

Sim, uma característica útil para "permitir ao redactor da EA programar adequadamente o tratamento de tais situações". Mas o efeito do escorregamento no lucro/perda não funcionará sem carraças. (embora a maioria das pessoas não precise dele))) )
 

O atraso aleatório é uma ferramenta grosseira. Esta é a única forma de testar seriamente:

História indicativa (o robô no testador vê apenas isso - como na vida real) + a sua própria história personalizada criada para um TS particular (o testador executa sobre ele).

Ao criar um histórico personalizado, o LiveTime-preço (+ ping), liquidez (Nível2 e os volumes operados pelo TS), etc., são tidos em conta. E mesmo assim não podemos alcançar uma correspondência ideal, embora seja possível chegar muito mais perto. Há apenas subtilezas que é preciso sentir - para sondar a realidade do seu TS.

P.S. Note que depois de criar uma tal construção personalizada, ainda precisa de lhe aplicar um filtro. Portanto, tal história personalizada pode ter a forma de M1 HighBid+LowAsk. Isto é, não é necessário (quase sempre) testar por um histórico de carrapato ou nível 2 - histórico. Deveríamos apenas criar uma história preliminar de execução a partir dessa enorme história. E depois o padrão continua.

 
hrenfx:

O atraso aleatório é uma ferramenta grosseira. Esta é a única forma de testar seriamente:

História indicativa (o robô no testador vê apenas isso - como na vida real) + a sua própria história personalizada criada para um TS particular (o testador executa sobre ele).

Ao criar um histórico personalizado, o LiveTime-preço (+ ping), liquidez (Nível2 e os volumes operados pelo TS), etc., são tidos em conta. E mesmo assim não podemos alcançar uma correspondência ideal, embora seja possível chegar muito mais perto. Há apenas subtilezas que é preciso sentir - para sondar a realidade do seu TS.

P.S. Note que depois de criar uma tal construção personalizada, ainda precisa de lhe aplicar um filtro. Portanto, tal história personalizada pode ser na forma de M1 HighBid+LowAsk. Isto é, não é necessário (quase sempre) testar por um histórico de carrapato ou nível 2 - histórico. Deveríamos apenas criar uma história preliminar de execução a partir dessa enorme história. E depois o padrão seguirá o seu curso.

Presumo que apenas FOREX se destina?

Porque em futuros, 1 carrapato (4 dígitos) = 10 carrapatos (5 dígitos na maior parte) em FOREX.

 
Se fosse apenas FOREX, eu faria um esclarecimento.
 
hrenfx:

O atraso aleatório é uma ferramenta grosseira. Esta é a única forma de testar seriamente:

História indicativa (o robô no testador vê apenas isso - como na vida real) + a sua própria história personalizada criada para um TS particular (o testador executa sobre ele).

Ao criar um histórico personalizado, o LiveTime-preço (+ ping), liquidez (Nível2 e os volumes operados pelo TS), etc., são tidos em conta. E mesmo assim não podemos alcançar uma correspondência ideal, embora seja possível chegar muito mais perto. Há apenas subtilezas que é preciso sentir - para sondar a realidade do seu TS.

P.S. Note que depois de criar uma tal construção personalizada, ainda precisa de lhe aplicar um filtro. Portanto, uma tal história construída à medida pode ter a forma de M1 HighBid+LowAsk. Isto é, não é necessário (quase sempre) testar por um histórico de carrapato ou nível 2 - histórico. Deveríamos apenas criar uma história preliminar de execução a partir dessa enorme história. E depois o padrão continua.

Esta é a tarefa do testador. Antes de testar/optimizar, é necessário criar o histórico personalizado necessário, dependendo do que está a ser optimizado e do tipo de encomendas, por exemplo. É um aspecto puramente técnico que pode ser executado de forma óptima por um sistema automatizado. Penso que a MT também o faz (preparação de dados históricos) dentro das capacidades do testador
 

Esta é a tarefa de um algotrader adequado, não de um testador. No MT5-tester não há dados sobre as peculiaridades do TS testado e a mesma história de Nível 2 para criar uma história de Execução para o seu TS.

Oatraso aleatório é a primeira coisa que lhe vem à mente quando escreve o seu testador. Áspero - sim, mas com bom senso. Por vezes, tal rugosidade é feita também para os limitadores - retardamento aleatório.

Não se trata de super precisão, trata-se sempre da média dourada entre precisão e velocidade. Só em situações muito específicas é que faz sentido fazer fineza.

Assim, para o MT5, a ideia de um modo de atraso arbitrário (ainda não vi a implementação) é bastante adequada.