A tarefa de busca de pedidos - página 4

 
Михаил:

...

Dê-me um exemplo ( MT5 ) quando você apenas TEM de deixar uma ordem previamente colocada no mercado,

...

Por exemplo, uma rolha no stop-loss de uma posição.
 
Vladimir Pastushak:

O resultado final é que mesmo que o sistema operacional no servidor esteja desligado, você pode executar um PC doméstico que restaurará o controle da conta no momento em que for necessário para reiniciar o servo.

Em minha experiência trabalhando com os servidores VDS / VPS OS nunca voaram, mas os reinícios são imprevistos e programados.

A essência da minha pergunta é escrever corretamente o código que coleta informações sobre a situação atual...

Que RESTORES, não elimina. Sobre o que eu escrevi? Sobre a restauração, o que é bom. Foi-me dito para apagá-lo. Você deveria ser mais cuidadoso ;)
 
Artyom Trishkin:
Um que irá RESTORAR, não apagar. Sobre o que eu escrevi? Sobre a restauração, o que é uma coisa boa. Disseram-me que você tem que apagar. Você deveria ser mais cuidadoso ;)

Concordo com você, por que você precisaria de uma EA que possa abrir e fechar ordens em lotes quando o sistema falhar, perdendo tudo no spread...

O assessor deve reunir informações por condição e depois trabalhar de acordo com seu algoritmo ...

 
Vasiliy Sokolov:
Merda, cara, *** não diga besteiras. Você mesmo definiu a direção correta: o estado deve ser restaurado pelo ambiente atual, o que a MT lhe dá é a opção mais confiável. Em vez disso, você escreve uma informação de classe longa e inútil, na qual você tem que, de alguma forma, encher os valores encontrados por funções externas. Sim, eventualmente conterá as variáveis que você precisa: bilhete máximo e mínimo em termos de preço para o pedido, bem como outras coisas importantes para você. Mas na realidade o problema é resolvido por um recipiente especializado de pedidos: imagine que você tenha uma lista de pedidos, onde cada pedido representa uma linha de tabela com muitas colunas (id do pedido, tempo aberto, preço aberto, lucro, etc., etc.). Você faz a ordenação por uma das colunas e obtém exatamente a seqüência que precisa. Portanto, tudo isso pode ser feito com a ajuda das aulas, que você gosta de usar (embora sem a menor idéia, desculpe). Escreverei como fazer isso amanhã, se você estiver interessado.
Espero que não tenha apenas agitado o ar... Ou melhor, bytes de internet...
 
Dmitry Fedoseev:
Por exemplo, uma rolha na posição de batente.

O que o impede de desinstalar e depois reinstalar durante a inicialização?

Por que exatamente RESTORAR o controle?

 
Михаил:

O que impede que você apague e depois reinstale durante a inicialização?

Por que você precisa RESTORAR o controle?

Porque, com esta abordagem, só coletamos informações sobre o meio ambiente uma única vez no momento da inicialização,

às vezes acontece que o corretor divide a ordem aberta, ou seja, você envia 0,05 e o corretor a aceita como 0,02 e 0,03

por isso é melhor obter as informações sobre o ambiente em cada tic ou em um determinado intervalo de tempo.

Por exemplo, acredito que a EA deve ter todas as informações sobre o símbolo negociado e as ordens o tempo todo.

 
Михаил:

1. O que impede que ela seja apagada durante a inicialização e depois reinstalada?

2. Por que exatamente RESTORAR o controle?

1. Você já ouviu a anedota sobre a remoção das amígdalas? Não há nada que o impeça.

2. Redundância mínima, interferência mínima e, portanto, maior conformidade com o plano pretendido. As ordens pendentes são executadas sem o controle do Expert Advisor. Portanto, seria mais razoável deixar a ordem no mercado, e depois restaurar o controle. O reinício é de apenas alguns minutos, se durante este tempo a ordem funcionar, a estratégia provavelmente ainda não será quebrada, o Conselheiro Especialista analisará a situação e continuará. Se apagarmos a ordem, não poderemos colocá-la no mesmo lugar e então teremos que corrigir a estratégia pela ordem do mercado, o que torna o algoritmo mais complexo.

Ao reiniciar, temos que apagar e fechar tudo e depois começar de novo. Isto não resiste a críticas.

Há um princípio bem conhecido - "não multiplicar as entidades desnecessariamente". E um princípio semelhante pode e deve ser respeitado aqui - não realizar operações comerciais desnecessárias.

 
Dmitry Fedoseev:

1. Você já ouviu a anedota sobre a remoção de suas amígdalas? Nada se mete no caminho.

2. Ações mínimas desnecessárias, interferência mínima, o que significa maior conformidade com o plano pretendido. As ordens pendentes são executadas sem o controle do Expert Advisor. Portanto, seria mais razoável deixar a ordem no mercado, e depois restaurar o controle. O reinício é de apenas alguns minutos, se durante este tempo a ordem funcionar, a estratégia provavelmente ainda não será quebrada, o Conselheiro Especialista analisará a situação e continuará. Se apagarmos a ordem, não poderemos colocá-la no mesmo lugar e então teremos que corrigir a estratégia pela ordem do mercado, o que torna o algoritmo mais complexo.

Ao reiniciar, temos que apagar e fechar tudo e depois começar de novo. Isto não resiste a críticas.

Há um princípio bem conhecido - "não multiplicar as entidades desnecessariamente". E este princípio pode e deve ser seguido aqui - não para realizar operações comerciais desnecessárias.

Por alguma razão, eu previ esta resposta - NÃO HÁ concreto!

Não tive um único acidente em 4,5 anos, e não tive um único desligamento em 3,5 anos de uso do terminal.

Quando você inicia o Expert Advisor após um "crash" (se acontecer), não importa quantas e quais ordens você teve, e você nunca saberá quais você entrou.

Não importa quantas ordens você teve, mas importa se você tem ou não tem uma POSIÇÃO, porque você pode ter que RETIRAR todas as suas ordens anteriores que agora estão fechadas.

Porque você pode ter que cancelar pedidos que não se encaixam na posição que você já tem, e você pode querer verificar novamente todos os seus pedidos anteriores que atualmente não se encaixam na posição que você tem.

Então por que restabelecer o controle (uma vez por ano!!!) se você tem que remover os pedidos anteriores de qualquer maneira?

Faz algum sentido escrever uma tonelada de código?

Para quê?

 
Михаил:

De alguma forma, eu antecipei esta resposta - NÃO HÁ concreto!

Não tive um único acidente em 4,5 anos e em 3,5 anos de uso do terminal nunca tive um desligamento.

Quando você inicia o Expert Advisor, após o "crash" (se acontecer), não importa quantas e quais ordens você teve, e você nunca saberá quais você teve.

Quando você carrega um EA, se você já tiver um, não importa quantas ordens você tem, mas importa se você tem ou não tem uma POSIÇÃO, porque você pode ter que REMOVER todas as suas ordens anteriores que existem atualmente na plataforma de negociação.

Porque você pode ter que cancelar pedidos que não se encaixam na posição que você já tem, e você pode querer checar novamente sua posição se isso acontecer.

Então por que restabelecer o controle (uma vez por ano!!!) se você tem que remover os pedidos anteriores de qualquer maneira?

Faz algum sentido escrever uma tonelada de código?

Para quê?

Em suma, você é quem está interessado em ocupar tal posição por algum motivo.

Ninguém está proibindo você de escrever brinquedos para seu próprio uso. Você assumiu esta posição porque está escrevendo por si mesmo e certamente não vai dificultar sua vida. Se você fosse um cliente, teria uma posição completamente diferente.

Além de reiniciar, você também pode sofrer interrupções de conexão, após as quais você deve restaurar o controle. Não existe tal coisa como restaurar o controle, porque sem controle não deveria haver nada. A cada tique você analisa a situação e toma uma decisão.

Entendo muito bem seu ponto de vista. Escrever uma EA estável e reinicializável requer uma abordagem bem diferente e outra visão do algoritmo. Não é fácil, e para algumas pessoas isso é até impossível.

 
Dmitry Fedoseev:

Tudo é específico, é você que está interessado em ocupar esse cargo por alguma razão.

Ninguém proíbe que você escreva brinquedos para você mesmo pessoalmente para o testador. Você assumiu esta posição porque está escrevendo por si mesmo, para não complicar sua vida. Se você fosse um cliente, teria uma posição completamente diferente.

Além de reiniciar, você também pode sofrer interrupções de conexão, após as quais você deve restaurar o controle. Não existe tal coisa como restaurar o controle, porque sem controle não deveria haver nada. A cada tique você analisa a situação e toma uma decisão.

E o cliente se importa? A coisa mais importante para o cliente é que o Expert Advisor trabalha!

Se a conexão for quebrada, você não perde o controle, pois o bilhete de pedido não foi perdido!

P/S E, Dimitri, o que o faz pensar que eu escrevo brinquedos para o testador?

Se eu não escrever nada para os clientes e não vender meus EAs, isso não

isso não significa que sejam "brinquedos"!