Discussão do artigo "Conselhos de um programador profissional (Parte II): armazenamento e troca de parâmetros entre um EA, scripts e programas externos"

 

Novo artigo Conselhos de um programador profissional (Parte II): armazenamento e troca de parâmetros entre um EA, scripts e programas externos foi publicado:

Conselhos de um programador profissional sobre métodos, técnicas e ferramentas auxiliares para tornar a programação mais fácil. Hoje falaremos sobre os parâmetros que podem ser restaurados após reiniciar (fechar) o terminal. Na verdade, todos os exemplos apresentados são partes funcionais do código do meu projeto Cayman.

O script SetTradeLevel permite definir os parâmetros do nível de negociação. Um único objeto (linha reta, linha de tendência ou retângulo) é destacado no gráfico. O script SetTradeLevel encontra o objeto selecionado (nível de negociação) e define seus parâmetros.

Parâmetros do script SetTradeLevel

Em seguida, o script salva os parâmetros no arquivo Files\Cayman\Params\128968168864101576\exp_05_Lev607A160E_H4.txt e envia o comando e o caminho para o arquivo através da função SendCommand

Autor: Malik Arykov

 

Por que preciso de serviços de terceiros para enviar uma mensagem para meu smartphone? Eles são melhores? Há mensagens push no terminal.

Se você precisar transferir informações de uma só vez (ou seja, o script criou algo e o EA o aceitou imediatamente), tudo bem. Se o EA precisar, por exemplo, carregar e obter informações sobre a negociação (nível de martin no momento, grupos de ordens etc., que não estão nas próprias ordens), é melhor gerenciar de alguma forma sem arquivos e armazenamento local, tanto quanto possível. A maioria dos usuários esquecerá que há um arquivo em algum lugar e terá uma surpresa ao transferir o Expert Advisor para outro terminal.

Além disso, além do comentário nas ordens (posições), há também um magik, no qual também é possível criptografar informações.

Eu também prestaria atenção ao desempenho e ao número de verificações na chegada das informações.

 
Sofiia Butenko:

Por que preciso de serviços de terceiros para enviar uma mensagem para meu smartphone? Eles são melhores? Há mensagens push no terminal.

Se você precisar transferir informações de uma só vez (ou seja, o script criou algo e o EA o aceitou imediatamente), tudo bem. Se o EA precisar, por exemplo, carregar e obter informações sobre a negociação (nível de martin no momento, grupos de ordens etc., que não estão nas próprias ordens), é melhor gerenciar de alguma forma sem arquivos e armazenamento local, tanto quanto possível. A maioria dos usuários esquecerá que há um arquivo em algum lugar e terá uma surpresa ao transferir o Expert Advisor para outro terminal.

Além disso, além do comentário nas ordens (posições), há também um magik, no qual você também pode criptografar informações.

Eu também prestaria atenção ao desempenho e ao número de verificações na chegada das informações.

1) Um som para cada tipo de notificação.

2) O usuário não precisa saber sobre os arquivos. Essa é a lógica dos programas. Se houver um arquivo, restaure os parâmetros; se não houver arquivo, use os valores padrão.

3) Posso ver os comentários da ordem no terminal e posso dizer imediatamente o que estava errado em uma negociação perdida. Como posso ver a situação antes de abrir uma ordem de uma só vez.

4) Desculpe, mas não entendi o desempenho e o número de verificações. Pode me mostrar com seu dedo?

 
Malik Arykov:

1) Um som diferente para cada tipo de notificação.

2) O usuário não precisa saber sobre os arquivos. Essa é a lógica do software. Se houver um arquivo, restaure os parâmetros; se não houver nenhum arquivo, use os valores padrão

3) Posso ver os comentários da ordem no terminal no histórico e posso dizer imediatamente o que estava errado em uma negociação perdida. Como posso ver imediatamente a situação antes de abrir uma ordem

4) Desculpe, mas não entendi o desempenho e o número de verificações. Você pode me mostrar com seu dedo?

1) Ok, embora nunca tenha havido uma solicitação desse tipo por parte dos usuários. Houve solicitações de SMS há muito tempo e, para isso, foram necessários serviços de terceiros.

2) Obrigatório, se o arquivo for necessário para carregar o EA e tiver que ser transferido junto com o EA. Você não entendeu o que eu quis dizer.

3) E o que havia de errado com a negociação perdida? Às vezes, você precisa de centenas de ordens reais ou do histórico para restaurar o quadro completo da negociação. A seleção de cada uma delas sobrecarrega o recurso, e no MT4 pode não haver histórico (se não for selecionado pelo usuário), portanto, todas as operações de busca devem ser reduzidas ao mínimo. Não estou falando de casos simples.

4) Como você sabe que o segundo programa criou um objeto gráfico? Enumerando constantemente todos os objetos e verificando o nome de cada tique? E então o usuário executará algumas dúzias, ou até mesmo cem versões, e dirá "Faça algo que estou pendurado". Realmente houve casos assim...

-------

Toda a minha opinião é baseada em minha experiência como freelancer - como fazer para que o usuário não quebre nada e não reclame.

 
Sofiia Butenko:

4) Como você sabe que o segundo programa criou um objeto gráfico? Percorrendo constantemente todos os objetos e verificando o nome de cada tique? E então o usuário executará algumas dezenas, ou até mesmo centenas de versões e dirá: "Faça algo que estou pendurado". Realmente houve casos assim...

-------

Toda a minha opinião se baseia em minha experiência como freelancer - como fazer para que o usuário não quebre nada e depois não reclame.

4) O nome do objeto gráfico com parâmetros é único e constante. Executei o script. Defini os parâmetros e os salvei no objeto gráfico. A cada tick, o Expert Advisor verifica se há apenas um objeto. Se houver um objeto, ele lê os parâmetros e o exclui imediatamente. O script e o Expert Advisor estão em um gráfico. Os especialistas em outros gráficos não sabem nada sobre isso.

 
Sofiia Butenko:

2) Obrigatório, se o arquivo for necessário para carregar o EA e tiver que ser transferido junto com o EA. Você não entendeu o que eu quis dizer.

Ao iniciar um Expert Advisor ou script, recebo a mensagem "No file PATH/AppSettings.txt. Favor ler as instruções de instalação"

 
Complicado sobre o simples... ou o que é mais patético chamar de um artigo sobre nada.
 
Sofiia Butenko:

Por que preciso de serviços de terceiros para enviar uma mensagem para meu smartphone? Eles são melhores? Há mensagens push no terminal.

Da ajuda: "A função SendNotification() tem limites rígidos de uso: não mais do que 2 chamadas por segundo e não mais do que 10 chamadas por minuto. A frequência de uso é controlada dinamicamente, e a função pode ser bloqueada se for violada."

Essas são restrições sérias, por exemplo, se o Expert Advisor realizar operações de negociação na abertura da vela.

Eu uso o envio de mensagens no Telegram.

 

Я пользуюсь отправкой сообщений в Телеграм.

Eu também costumava fazer algo assim, mas agora não tenho interesse em enviar nada nem para lugar nenhum, o serviço incorporado ao terminal é suficiente e raramente dou uma olhada nele,

e, em geral, acho que você não pode desacelerar um robô de negociação enviando mensagens..... que, por um motivo ou outro, podem suspender o próprio robô de negociação,

mas com relação ao Telegram e à solução proposta aqui, devo dizer que este artigo oferece uma solução muito mais simples ..... Agradecimentos ao autor

 
Boris Egorov:

Em geral, acredito que você não deve desacelerar um robô de negociação enviando mensagens para ..... que, por um motivo ou outro, pode suspender o próprio robô de negociação,

O WebRequest tem um parâmetro de tempo limite. Para seu interesse, você pode verificar a velocidade do WebRequest para o serviço WirePusher inserindo Print(TimeCurrent()) antes e depois de enviar a solicitação. Em geral, ela é insignificante. Bem, se você ainda receber um código de erro por tempo limite, poderá criar uma fila de processamento de solicitações. A mensagem não saiu no próximo tick, portanto, ela sairá no próximo tick. O principal é removê-las da fila após o envio bem-sucedido ;-)

 
Aleksey Mavrin:
Difícil sobre o simples... ou o que é mais patético chamar um artigo sobre nada.

+