Discussão do artigo "Que testes deve passar o robô de negociação antes da publicação no Mercado" - página 20

 
Fernando Carreiro #:

Não! O EA deve operar. Se não o fizer, então não é um EA.

Se ele estiver apenas calculando e exibindo linhas de suporte e resistência, então é um indicador e precisa ser codificado como tal usando OnCalculate() em vez de OnTick().

Você pode vender ambos no mercado. Transforme esse indicador em um indicador verdadeiro e venda-o como um indicador. Depois, no futuro, publique o EA para ele separadamente.


Se estiver usando o WebRequest, ele deve ser um EA. Tenho um EA que uso para fazer download e processar dados, mas ele não realiza nenhuma operação de negociação. Então, eu nunca poderia colocá-lo no mercado porque ele não negocia, mesmo que eu seja obrigado a escrevê-lo como um EA?

Da documentação da MQL4 sobre WebRequest:

A função só pode ser chamada a partir de Expert Advisors e scripts, pois eles são executados em seus próprios threads de execução. Se você tentar chamar a função a partir de um indicador, GetLastError() retornará o erro 4060 - "Function is not allowed for call".


Tenho vários EAs que escrevi e que fornecem uma espécie de painel de controle de negociações abertas e opções para o usuário fechar negociações, fazer fechamentos parciais etc. Portanto, eles devem ser EAs. Mas eles não negociam por conta própria, não são estratégias de negociação automatizadas. A definição de um EA para fins de validação no mercado é tão restrita que eu nunca poderia disponibilizá-los, mesmo que estejam funcionando corretamente. Não é verdade que um EA deva negociar para ser um EA. É verdade que ele deve ser um EA para chamar as funções de execução de ordens e WebRequest, mas isso não significa que ele negocie automaticamente.

Como um EA que implementa o WebRequest, mas não negocia, poderia passar na validação?

 
D Armond Lee Speers #:


Se você estiver usando o WebRequest, ele deve ser um EA. Tenho um EA que uso para fazer download e processar dados, mas ele não executa nenhuma operação de negociação. Então, eu nunca poderia colocá-lo no mercado porque ele não negocia, mesmo que eu seja obrigado a escrevê-lo como um EA?

Da documentação da MQL4 sobre WebRequest:


Tenho vários EAs que escrevi e que fornecem uma espécie de painel de controle de negociações abertas e opções para o usuário fechar negociações, fazer fechamentos parciais, etc. Portanto, eles devem ser EAs. Mas eles não negociam por conta própria, não são estratégias de negociação automatizadas. A definição de um EA para fins de validação no mercado é tão restrita que eu nunca poderia disponibilizá-los, mesmo que estejam funcionando corretamente. Não é verdade que um EA deva negociar para ser um EA. É verdade que ele deve ser um EA para chamar as funções de execução de ordens e WebRequest, mas isso não significa que ele negocie automaticamente.

Como um EA que implementa o WebRequest, mas não negocia, poderia passar na validação?

É claro que você pode publicar EAs não negociáveis no Market. Basta escolher o tipo e a categoria corretos.
 
@D Armond Lee Speers # Se você estiver usando o WebRequest, ele deve ser um EA. Tenho um EA que uso para fazer download e processar dados, mas ele não realiza nenhuma operação de negociação. Então, eu nunca poderia colocá-lo no mercado porque ele não negocia, mesmo que eu seja obrigado a escrevê-lo como um EA?

Então, classifique-o como um "Utilitário" em vez de um EA.

 
D Armond Lee Speers #: Tenho vários EAs que escrevi que fornecem uma espécie de painel de controle das negociações abertas e oferecem opções para o usuário fechar negociações, fazer fechamentos parciais etc. Esses também devem ser classificados como "Utilitários".

Esses também devem ser classificados como "Utilitários".

Você nunca notou que, no Market, a seção "Utilities" (Utilitários) inclui Dashboards (Painéis) e Trade Assistants (Assistentes de negociação), etc.?

 
Fernando Carreiro #:

Esses também devem ser classificados como "Utilitários".

Você nunca notou que, no Market, a seção "Utilities" (Utilitários) inclui Dashboards (Painéis) e Trade Assistants (Assistentes de negociação) etc.?

Eu não tinha pensado muito nisso, mas não, eu não tinha notado que havia utilitários que eram tecnicamente EAs, mas não eram categorizados como EAs no mercado.

Obrigado pelo esclarecimento!

 

Descobri que os Expert Advisors com void OnTesterInit() não são otimizados se a versão demo for baixada.

Há planos para corrigir isso? E por que não dar um aviso sobre isso ao desenvolvedor durante a validação do produto?

Estou esperando há um ano que alguém compre um Expert Advisor, enquanto o baixa, mas no final acontece que ele não pode ser otimizado, o que era necessário de acordo com suas instruções.

 
Tive um problema e modifiquei meu EA. Agora, como reenviar para verificação?
 
Não há erros no Expert Advisor, mas ao verificá-lo, há... Não consigo entender o que fazer, não há erros, verifiquei como descrito aqui no registro.
 

2019.03.13 02:46:14 falha na venda instantânea de 0,2 XAUUSD a 1304,17, fechamento #2 compra de 0,2 XAUUSD 1304,11

Por favor, me ajude com esse erro. Como faço para solucioná-lo?


 
Itumeleng Mohlouwa Kgotso Tladi #: 2019.03.13 02:46:14 falha na venda instantânea de 0,2 XAUUSD a 1304,17, fechamento #2 compra de 0,2 XAUUSD 1304,11. por favor, me ajude com esse erro. como faço para resolver isso?

Você postou na seção errada, então movi sua postagem. Sua pergunta é sobre MQL5, não sobre MQL4.

A resposta está aqui, neste mesmo tópico. Leia-a, bem como o artigo principal, e aplique-a em seu código.

Artigos

As verificações que um robô de negociação deve passar antes de ser publicado no Market

MetaQuotes, 2016.08.01 09:30

Antes de qualquer produto ser publicado no Mercado, ele deve passar por verificações preliminares obrigatórias, a fim de garantir um padrão de qualidade uniforme. Este artigo considera os erros mais frequentes cometidos pelos desenvolvedores em seus indicadores técnicos e robôs de negociação. Também mostra como autotestar um produto antes de enviá-lo ao mercado.