Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 1059

 
leonerd:

OK, eu falei mal. Vamos citar a fonte original:

Estrutura do resultado do pedido de comércio (MqlTradeResult)

Emresposta aum pedido de negociação para colocar uma ordem no sistema de negociação, o servidor de negociação devolve dados contendo a informação sobre o resultado do processamento do pedido de negociação como uma estrutura especial pré-definida MqlTradeResult.


p.s. Onde está a citação no editor? Tenho de entrar em html? Que inconveniente.

Depois de "Código (Alt+S)" vem "Style". Clique na seta e veja "Citação (Ctrl+3)".

 
Artyom Trishkin:

Depois de "Código (Alt+S)" vem "Style". Clique na seta e veja "Citação (Ctrl+3)".

Isso é terrível :)

 
leonerd:

Há aqui obviamente algum tipo de erro lógico. MqlTradeResult é o resultado de uma operação comercial.

Isto é, se Result.price fosse chamado Result.dealprice, tudo seria lógico?

 
fxsaber:

Isto é, se Result.price fosse chamado Result.dealprice, seria tudo lógico?

O campo

Descrição

retcode

Código de retorno do servidor comercial

negócio

Bilhete denegócio, se tiver sido realizado um negócio. Reportado na operação comercialTRADE_ACTION_DEAL

encomenda

Encomendar bilhete, se tiver sido colocado um bilhete. Notificado durante uma operação decomércio_ACÇÃO_PENDENTE

volume

Volume do comércio confirmado pelo corretor. Dependedo tipo de preenchimento da encomenda

preço

Preço de negócio, confirmado pelo corretor. Depende do campo dodesvio nopedido comercial e/ou do tipo decomércio

oferta

Preço actual de oferta de mercado (preço de requote)

perguntar

Preço actual de licitação no mercado (preços de requote)

comentário

Comentário do corretor à operação (por defeito, é preenchido com a descodificação do código de retorno do servidor de troca)

request_id

Solicitar identificação a ser preenchida pelo terminal ao enviá-la para o servidor comercial

retcode_external

Código do erro devolvido pelo sistema de comércio externo. As estatísticas e tipos destes erros dependem de um corretor e de um sistema de comércio externo, para o qual as operações de comércio são produzidas


Há negócio e ordem. Há volume para ambos. Porque é que o preço é apenas para negócio? Bem, podemos fazer negócio de preços, mas depois precisamos também de um campo de encomendas. Parece-me que o preço deve ser simplesmente o preço da ordem, se a troca não for feita e a ordem for estabelecida.

 
leonerd:

Campo

Descrição

retcode

Código de retorno do servidor comercial

negócio

Bilhete denegócio, se tiver sido realizado um negócio. Reportado na operação comercialTRADE_ACTION_DEAL

encomenda

Encomendar bilhete, se tiver sido colocado um bilhete. Notificado durante uma operação decomércio_ACÇÃO_PENDENTE

volume

Volume do comércio confirmado pelo corretor. Dependedo tipo de preenchimento da encomenda

preço

Preço de negócio, confirmado pelo corretor. Depende do campo dodesvio nopedido comercial e/ou do tipo decomércio

oferta

Preço actual de oferta de mercado (preço de requote)

perguntar

Preço actual de licitação no mercado (preços de requote)

comentário

Comentário do corretor à operação (por defeito, é preenchido com a descodificação do código de retorno do servidor de troca)

request_id

Solicitar identificação a ser preenchida pelo terminal ao enviá-la para o servidor comercial

retcode_external

Código do erro devolvido pelo sistema de comércio externo. As estatísticas e tipos destes erros dependem de um corretor e de um sistema de comércio externo, para o qual as operações de comércio são produzidas


Há negócio e ordem. Há volume para ambos. Porque é que o preço é apenas para negócio? Bem, podemos fazer negócio de preços, mas depois precisamos também de um campo de encomendas. Parece-me que o preço deve ser simplesmente o preço da ordem se a transacção não tiver sido executada e uma ordem tiver sido estabelecida.

Criar uma petição para incluir Resultado.preço para encomendas. E torná-lo completo - exigência de incluir o resultado.expiração, segundo preço para ordens STOP_LIMIT, etc.


// Пока петиция не прошла
bool OrderSend_leonerd( const MqlTradeRequest &Request, MqlTradeResult &Result )
{
  const bool Res = OrderSend(Request, Result);
  
  if (Res && !Result.order)
    Result.order = Request.order;
    
  return(Res);
}

// Делаем за разработчиков их работу
#define OrderSend OrderSend_leonerd
 

Olá

Por vezes, quando abro uma encomenda, aparece o erro 4754 - Encomendanão encontrada

Isso é tudo o que a EA pende porque tenta abrir uma ordem

Reinstalar a EA ajuda

Para abrir uma encomenda, utilizo a classe CTrade

Por favor, informe o que pode estar errado?

 
Mikhail Rudyk:

Olá

Por vezes, quando abro uma encomenda, aparece o erro 4754 - Encomendanão encontrada

Isso é tudo o que a EA pende porque tenta abrir uma ordem

Reinstalar a EA ajuda

Utilizo a classe CTrade para abrir uma encomenda

Por favor, informe o que pode ser?

Pode ser mais preciso? Código MQL5, símbolo, prazo. Este é o local onde o erro é mostrado.

É difícil dizer algo definitivo sem estes dados.

 
O Codebase tem uma EA com a função "um comércio por barra"? (Excluindo EAs a trabalhar na abertura de bares)
 

Na MQL5 chamo o manípulo indicador no OnInit desta forma

diver_handle=iCustom(NULL,0,"ao_diver");

Esta chamada pendura completamente o terminal.
O indicador está localizado em Indicadores e não requer quaisquer parâmetros de entrada adicionais.
O que pode estar errado com esta chamada?

 
Evgeny Dyuka:

Na MQL5 chamo um manípulo indicador no OnInit desta forma

Esta chamada pendura completamente o terminal.
O indicador encontra-se em Indicadores e não requer quaisquer parâmetros de entrada adicionais.
O que pode estar errado com esta chamada?

".ex5" especificar.

Razão: