Erros, bugs, perguntas - página 2766

 
Alexey Viktorov:

A segunda questão é: Como é que eu estabeleço o dia, em que formato? Ou não importa a hora do dia que será definida?

Em MqlTradeRequest:: tempo zero de expiração deve ser definido

 
A100:

via ORDER_TIME_SPECIFIED e MqlTradeRequest::expiração

Já devia ter lido a documentação há muito tempo.

Mais uma vez! Não estou interessado no tipo ORDER_TIME_SPECIFIED, estou interessado em

HORA_DE_ORDEM_DIA_ESPECIFICADA

A encomenda será válida até às 23:59:59 da data especificada. Se essa hora não cair numa sessão de comércio, a expiração será na hora de comércio mais próxima.

Se eu negociar na TF W1, quero fixar o prazo de validade para sexta-feira. Claro, podemos calcular o tempo até sexta-feira, não só posso ler, mas também contar até 1000. Mas a minha pergunta é aquela em que estou interessado. Também quero saber o formato para especificar o DIÁRIO. Ou não é importante especificar a hora exacta do dia, desde que caia no dia desejado? O que acontecerá à sua encomenda se fechar o seu negócio na sexta-feira às 21:00, por exemplo, e a encomenda for aberta na segunda-feira? Que deve ser a primeira expiração ou activação.

 
A100:

O tempo zero deve ser definido.

Obrigado por apagar a mensagem a que levei tanto tempo a responder.

Tem a certeza disso? Eu fá-lo-ia como precaução. Mas quero ter a certeza.

 
Alexey Viktorov:

Obrigado por apagar a mensagem a que levei tanto tempo a responder.

Tem a certeza disso? Fá-lo-ia como precaução, é claro. Mas quero ter a certeza.

Tem de colocar manualmente a encomenda pendente com data (sem hora) e programar a leitura dos seus valores de tipo_tempo e expiração.

Não fui eu que o inventei, fui eu que o fiz dessa forma.

 
A100:

Definir manualmente uma ordem pendente para expirar numa data específica (sem tempo) e programar a leitura do seu tipo_tempo e valores de expiração

Não fui eu que inventei isto, fui eu que o fiz.

Obrigado pela dica. Não troco nada de mãos e nem sequer pensei que pudesse ser verificado dessa forma. Fi-lo de uma forma ligeiramente diferente. Aqui está o código

  trade.OrderOpen(_Symbol, ORDER_TYPE_SELL_STOP, 0.1, 0, 1.24000, 0.0, 0.0, ORDER_TIME_SPECIFIED_DAY, D'2020.06.03 23:41:02');

e esta ordem.


Acontece que o tempo não é tido em conta.

Mas ainda temos a segunda questão. Que será executado primeiro, a expiração ou a activação da ordem

A única coisa que temo é um comportamento diferente no testador e real ou demo. E mesmo na demonstração, pode esperar até estar estupefacto.
 
Alexey Viktorov:

Mas sem esclarecimento, há uma segunda questão. O que executará primeiro ou activará a ordem...

Depende do corretor e do factor humano - como organizam as coisas lá. Notei que a ordem do dia de sexta-feira permaneceu pendente até à sessão de negociação de segunda-feira (mesmo durante a sessão de cotação ainda estava pendente).

Uma noite telefonei para o banco na sala de operações e perguntei porque é que a minha ordem não foi executada? Disseram: Não o vemos! Como não o vê? Aqui está no meu MetaTrader - coloquei-o há algumas horas e o preço já lá está há uma hora. Trabalhamos com outro programa. De manhã, um novo funcionário vem descarregar dados do MetaTrader e vamos ver tudo.

Assim, as suas encomendas abaixo do limiar não interessam a ninguém (e acima do limiar negociam no modo de preço a pedido) porque não são produzidas em qualquer lugar e o concessionário recebe uma posição agregada na melhor das hipóteses

 

O terminal foi modernizado para construir 2470 ao ar livre

E aqui está o problema, o robô começou a mostrar resultados piores no testador do que antes da actualização.

Comecei a investigar o assunto e foi isto que vi.

Quando passei o robô pela história em modo normal, no final ele chamou um gráfico que mostrava todas as minhas profissões e eu vasculhei e fiquei surpreendido com o que se estava a passar ali

Como se pode ver no gráfico, numa conta de compensação, o petróleo futuro abre algumas posições, embora o robô não tenha nenhuma média, escala, etc. Só há uma paragem e tomada de posição, após a abertura da posição o algoritmo de entrada é desactivado.


Mas, eu fiz e fiz o mesmo teste, mas apenas em testes visuais, fazendo testes visuais, tudo é bom lá


Por favor, diga-me se é uma actualização do bug, em geral, tudo polvilhado após a actualização, take and stop foi previamente definido no método Ask and bid separate depois de o mercado aparecer posição, agora eles ficaram presos e movem-se juntamente com os preços, tive de refazer e colocar um preço e parar no preço de abertura da posição e adicionar o spread ao travessão.

O que fazer onde escavar

 
Konstantin Seredkin:

O terminal foi modernizado para construir 2470 ao ar livre

E aqui está o problema, o robô começou a mostrar resultados piores no testador do que antes da actualização.

...

O que fazer

Escavar para verificar "Será que o Perito Consultor executa o teste?

 
Artyom Trishkin:

Escavar no sentido de verificar "A EA correcta está a executar o teste?

É o único no terminal, já não existem, mesmo os normais foram removidos

 
Konstantin Seredkin:

É o único no terminal, já não existem, mesmo os normais foram removidos

A julgar pelo comportamento que descreveu, trata-se de uma EA diferente com um algoritmo completamente diferente.