Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1453

 
ANDREY:

E o que exatamente o testador faz com cada tick , se não houver um único símbolo no programa que está rodando, o que daria ao testador um comando?

Bem, o testador cria uma simulação do mercado. Ele envia um novo preço para a sua EA a cada tique. E como existem 53 mil carrapatos, é preciso um tempo considerável para enviá-los todos. Tudo isso acontece antes que o código EA seja executado. O que escrever na EA é assunto do programador e não tem nada a ver com o trabalho do testador.

 

O tempo total inclui o tempo de execução do testador e o tempo de preparação do testador. Seu tempo de funcionamento do testador é mínimo (processado em) em ambos os modos. O tempo de preparação é padrão, independentemente da modalidade.

 
ANDREY:

Ao testar em PREÇOS DE ABERTURA - de 160 pedidos que foram abertos em CADA TICK, apenas 120 foram abertos, e além disso não a preços intra-minutos (como o código exige).

Aqui tudo está nas mãos do programador: como construir a lógica, como ela funcionará, procurar por erros na compreensão do programa.

Trabalhar com carrapatos em uma longa história leva muito tempo. E como haverá um grande número de testes, o tempo de cálculo deve ser reduzido. Portanto, é melhor desenvolver um Expert Advisor com controle de abertura de um novo bar e usar a modalidade - abrindo os preços. E depois estudar e analisar o que está errado.

 
Aleksei Stepanenko:

Bem, o testador cria uma operação de mercado simulada. Ele envia um novo preço para sua EA a cada tick. E como existem 53 mil carrapatos, é preciso um tempo significativo para enviá-los todos. Tudo isso acontece antes que o código EA seja executado. O que escrever na EA é assunto do programador e não tem nada a ver com o trabalho do testador.

Obrigado pela informação. No entanto, as frases amarelas e cinzentas parecem contradizer-se. Parece que o testador enviará TODOS os ticks com preços ao meu Expert Advisor no momento em que a função OnTick() começar a funcionar. Mas, quando OnTick( ) começar a trabalhar , o testador não enviará carrapatos com preços para o Expert Advisor. Neste caso, e se não forem carrapatos que serão processados pelas linhas de programa da minha EA? Sinto muito se o entendi mal.

 
Aleksei Stepanenko:

Tudo aqui está nas mãos do programador: que tipo de lógica construir, como funcionará, procurar erros na compreensão de como o programa funciona.

Trabalhar com carrapatos em uma longa história leva muito tempo. E, como o testador irá correr um grande número de vezes, o tempo de cálculo deve ser reduzido. Portanto, é melhor desenvolver um Expert Advisor com controle de abertura de um novo bar e usar a modalidade - abrindo os preços. E depois estudar e analisar o que está errado.

Você concorda que se os pedidos forem abertos em uma vela de um minuto sobre carrapatos, o modelo BAR PREÇO DE ABERTURA DE BARRAMAS não abrirá os pedidos a preços de carrapatos em uma vela de um minuto? Mesmo se controlarmos a abertura de cada vela de minuto.

 
Aleksei Stepanenko:

O tempo total inclui o tempo de execução do testador e o tempo de preparação do testador. Seu tempo de funcionamento do testador é mínimo (processado em) em ambos os modos. A preparação leva o tempo padrão, independentemente da modalidade.

Isto significa que você só pode economizar o tempo de execução do testador em

 
Olá! eu não sabia onde escrever um pouco fora do tópico, preciso de um indicador para a aplicação Binance, há um "indicador configurável" adicionado pela entrada direta de um código. Se você puder ajudar, aqui está a tarefa:
"Identificação de uma vela de impulso"

1. Comparando o tamanho do corpo de um candelabro acabado de fechar com candelabros anteriores (número de candelabros anteriores X (deve ser alterado na janela de parâmetros indicadores ou no próprio código?)

2. O castiçal deve ser maior que os castiçais anteriores por Y% (possibilidade de alterar o Y na janela de parâmetros indicadores ou no código)

3. A sombra de um castiçal não faz mais do que Z% do corpo do castiçal (ele também deve mudar)

Quando todas as três condições forem cumpridas, é desejável enviar uma notificação para o e-mail.
Eu já tenho um em formato luac, mas preciso dele no Binance.

 
ANDREY:

Acontece que o testador enviará TODOS os ticks com preços ao meu Expert Advisor no momento em que a função OnTick() começar a funcionar.

OnTick() é a função de captura de eventos, onde o evento é a chegada de um tick ao terminal, ou a imitação de tal chegada no testador. Os ticks vêm um após o outro, e ativam a função. Se houver um código no OnTick(), ele executará cada tic. Se um novo tick chega no momento de processar o tick antigo, o novo tick não é colocado na fila, mas pulado (no modo de comércio). Se não há código no OnTick(), o tick também ativa esta função, mas o código não está lá, portanto não há nada para executar.

 
Aleksei Stepanenko:

OnTick() é uma função de captura de eventos, onde o evento é a chegada de um tick no terminal, ou uma chegada simulada no equipamento de teste. Os bilhetes vêm um após o outro, e ativam a função. Se houver código no OnTick(), então ele processa cada sinal que vem. Se um novo tick chega enquanto o antigo está sendo processado, o novo tick é pulado e não colocado na fila. Se não houver código no OnTick(), o tick também ativa esta função, mas não há código lá, então não há nada para se resolver.

Entendi. Obrigado.

 
Olá, você pode me ajudar a entender porque PrintFormat() precisa do sinal %, se sem ele os valores são registrados como em Print()?
PrintFormat("%s %d: ombro = 1:%I64d",
servidor,login,alavancagem);
Razão: