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

 
Igor Makanu:

Queria distribuir as classes por 2 inlúdios, mas não me consigo livrar do problema de usarenumeração em ambos os ficheiros .mqh

há o ficheiro 1.mqh:

e arquivo 2.mqh:

Quando o anexar ao código principal, recebo um erro

enumeração já definida 2.mqh

ver declaração anterior de'ENUM_DEAL_TYPE'.

Tanto quanto entendo, a directiva "Compilação condicional (#ifdef, #ifndef, #else, #endif)" é necessária - nunca tive qualquer experiência aqui, é difícil ((.

Pode colocar todos os enums num .mqh separado e ligá-lo a todos os inludes e outros códigos necessários.

 
Alexey Viktorov:

Pode colocar todos os enums num .mqh separado e ligá-lo a todos os inludes e outros códigos necessários.

Eu sei, não quero incluir o ficheiro inteiro por causa de um enumero, e nas variáveis de entrada utilizo o mesmo enumero, em geral, ainda não é conveniente

Deve haver algo semelhante na biblioteca padrão - como utilizar a compilação condicional, não quero procurar em todos os ficheiros, por isso espero obter ajuda

 
Igor Makanu:

Eu sei, não quero incluir o ficheiro inteiro por causa de um enumero, e nas variáveis de entrada uso o mesmo enumero, em geral, ainda não é conveniente

Muito provavelmente deverá haver algo semelhante na biblioteca padrão - como utilizar a compilação condicional, não quero ver todos os ficheiros, por isso espero obter ajuda

A lógica é simples: se não estiver definida - definida. Mas terá de o escrever em todos os ficheiros.
 
Artyom Trishkin:
A lógica é simples: se não for especificada - especificar. Mas teremos de o prescrever em cada ficheiro.

Funciona com #define, sem problemas:

#ifndef  EA_Slippage 
   #define  EA_Slippage  30 
#endif

mas com tipos que não quer trabalhar, como opção para escrever algo com definição - #ifndef no corpo do qual algo a definir ... Não sei como, nunca o usei, é por isso que pergunto como

 
Igor Makanu:

Eu sei, não quero incluir o ficheiro inteiro por causa de um enumero, e nas variáveis de entrada utilizo o mesmo enumero, em geral, ainda não é conveniente

Deve haver provavelmente algo semelhante na biblioteca padrão - como utilizar a compilação condicional, não quero procurar em todos os ficheiros, por isso espero obter ajuda

Não é como se eu estivesse a carregar sacos.

 
Alexey Viktorov:

Bem, não é como carregar sacos.

se tudo fosse medido em sacos....

Já o fiz, preciso de escrever tal expressão no início de cada inluder e no programa principal:

#ifndef  ENUMDEALTYPE 
   #define  ENUMDEALTYPE
   enum        ENUM_DEALTYPE{NONE,BUY,SELL};
#endif

então a ordem dos ficheiros não importa e tudo se compila sem problemas.

 
Igor Makanu:

se tudo fosse medido em sacos....

Já o fiz, preciso de escrever tal expressão no início de cada inluder e no programa principal:

então a ordem dos ficheiros é irrelevante e tudo se compila sem problemas

É disso que estou a falar.
 

Olá !

Os 12 gráficos em MT5 não reflectem (não visualizam) os objectos de negociação no comércio automático normal,

Com com comércios reflectidos na secção "Comércio". Gostaria de compreender a razão de tais gráficos, Por favor, esclareça-me ?

GOSTARIA DE LHE PEDIR QUE ME ESCLARECESSE ?

 
akarustam:

Olá !

Os 12 gráficos em MT5 não reflectem (não visualizam) os objectos de negócio em comércio automático normal,

Com com comércios reflectidos na secção "Comércio". Gostaria de compreender a razão de tais gráficos, Por favor, esclareça-me ?

OBRIGADO.

Verificar Definições no terminal: Definições - Negociação
  • Mostrar ofertas no gráfico em tempo real- se esta opção estiver activada, todas as ofertas realizadas pelo comerciante serão automaticamente marcadas no gráfico com os íconesCompra(buy deal) ePara venda(sell deal). Ao colocar o cursor do rato sobre tal ícone, será exibida uma dica de ferramenta com informação sobre o negócio: bilhete, tipo de negócio, volume, símbolo, preço de abertura e preço no ponto do cursor.

 
Vladimir Karputov:
Verificar as definições no terminal: Definições - Comércio
  • Mostrar negociações no gráfico em tempo real- se esta opção estiver activada, todas as negociações feitas pelo comerciante serão automaticamente marcadas no gráfico com um ícone apropriado (comprar negociação) e (vender negociação). Se colocar o cursor do rato sobre tal ícone, aparecerá uma dica contendo a informação sobre o negócio: bilhete, tipo de negócio, volume, símbolo, preço de abertura e o preço no ponto do cursor.

OBRIGADO.

Mas em todos os 12 pares de moedas, excepto o EURUSD, as linhas de negociação com movimento horizontal e tracejado com indicação do tipo e número de negociação ainda não foram marcadas. Culpo a actualização do Windows 10 porque coloquei encomendas no gráfico EURUSD antes da actualização. Não sei o que fazer agora, claro que posso mudar o meu hábito de visão MT4, mas existe algum botão que me permita finalmente marcar linhas?

Razão: