Especialistas: Servidor DDE - página 6

 
Cen Chen:
Oi irmão, você tem uma versão MT4 disso? O MT4 DDE não funciona. Mas o que estou usando para FX não tem um servidor MT5. Obrigado por me fornecer um código, se você tiver um. Quero obter meu patrimônio líquido e o lucro/perda da moeda da posição.
https://www.metatrader4.com/zh/trading-platform/help/service/dde
Export of Quotes - Tools - MetaTrader 4帮助
Export of Quotes - Tools - MetaTrader 4帮助
  • www.metatrader4.com
Source data serving as a basis for the entire analytical work of the terminal user are those about security price changes. This information is...
 

O método acima não consegue obter o valor líquido e o lucro e prejuízo da moeda, apenas os preços de abertura e fechamento mais altos e mais baixos.

Aqui está um método por meio do método de ponte RTD, interessado em ler http://www.fxchs.com/productdetails.aspx?pcid=2&pid=63

 

THOMASILVA :


Por favor, visite os comentários brasileiros


https://www.mql5.com/en/forum/33344

Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação

Expert Advisors: MT5 DDE - Servidor

Tom Sasson , 2020.06.28 09:52

Desculpe-me pela resposta tardia, é claro que era possível.

Eu disse "era" porque não uso essa ferramenta há 3 anos e não tentei no Windows 10, então você pode experimentar e relatar o resultado.

@Tom Sasson


Oi THOMASILVA,

Siga estas etapas ...


Inicie o servidor DDE.

Inicie o mt5 e compile o dde_example.mq5.

Abra o gráfico do ativo desejado no mt5 e arraste o dde_example.ex5 (resultado da compilação).

Você verá os itens na tela do servidor.


... Ainda não consegui exibir nenhum valor na janela do MT4DDE, embora o EA de amostra esteja em execução.

Você pode me dar alguma dica sobre a configuração do MT5 ou do Windows ou outros aspectos que possam afetar o processo?

(ou seja, para o MT4 DDE, é necessário permitir o servidor DDE, mas essa caixa de seleção não está no MT5)

Desde já, obrigado!

Porque a Hospedagem Virtual no MetaTrader 4 e no MetaTrader 5 são Melhores que os VPS Usuais
Porque a Hospedagem Virtual no MetaTrader 4 e no MetaTrader 5 são Melhores que os VPS Usuais
  • www.mql5.com
A rede de hospedagem virtual em nuvem foi desenvolvida especialmente para o MetaTrader 4 e o MetaTrader 5, possuindo todas as vantagens de uma solução nativa. Obtenha os benefícios de nossa oferta gratuita por 24 horas - teste um servidor virtual agora mesmo.
 

Alterei um pouco o código para imprimir os valores mais básicos: Atual, Abertura, Fechamento, Mínima do Dia e Máxima do Dia


void OnInit()
  {
    EventSetTimer(1);

   return;
  }

void OnTimer()

  {
//--- filling an array MA[] with current values of iMA
//--- Copying 100 elements


// Check & Add Item DDE
   if(!CheckItem(_Symbol,"Atual")) 
     {
      if(!AddItem(_Symbol,"Atual")) return; 
     } 
     
   if(!CheckItem(_Symbol,"Abertura")) AddItem(_Symbol,"Abertura");
   if(!CheckItem(_Symbol,"Fechamento")) AddItem(_Symbol,"Fechamento");
   if(!CheckItem(_Symbol,"Mínima")) AddItem(_Symbol,"Mínima");
   if(!CheckItem(_Symbol,"Máxima")) AddItem(_Symbol,"Máxima");


// Set Item Value DDE  
   //HCL candles
   SetItem(_Symbol,"Atual",SymbolInfoDouble(_Symbol,SYMBOL_LAST));
   SetItem(_Symbol,"Abertura",SymbolInfoDouble(_Symbol,SYMBOL_SESSION_OPEN));
   SetItem(_Symbol,"Fechamento",SymbolInfoDouble(_Symbol,SYMBOL_SESSION_CLOSE));
   SetItem(_Symbol,"Mínima",SymbolInfoDouble(_Symbol,SYMBOL_LASTLOW));
   SetItem(_Symbol,"Máxima",SymbolInfoDouble(_Symbol,SYMBOL_LASTHIGH));
  }
 

Falta polimento mas está funcional se tu precisa do DDE reportando os valores em formato internacional (separador de milhares com ponto e de decimais com vírgula).

Exemplo: Cotação de 12 reais e 13 centavos, ao invés de reportar 12.13, com o script abaixo vai reportar 12,13. Ótimo pra manter a planilha do Excel do jeito que já vem instalado.


void OnInit()
  {
    EventSetTimer(1);

   return;
  }

void OnTimer()

  {
//--- filling an array MA[] with current values of iMA
//--- Copying 100 elements


// Check & Add Item DDE
   if(!CheckItem(_Symbol,"Atual")) 
     {
      if(!AddItem(_Symbol,"Atual")) return; 
     } 
     
   if(!CheckItem(_Symbol,"Abertura")) AddItem(_Symbol,"Abertura");
   if(!CheckItem(_Symbol,"Fechamento")) AddItem(_Symbol,"Fechamento");
   if(!CheckItem(_Symbol,"Mínima")) AddItem(_Symbol,"Mínima");
   if(!CheckItem(_Symbol,"Máxima")) AddItem(_Symbol,"Máxima");


// Set Item Value DDE  
   //HCL candles
   string atual = SymbolInfoDouble(_Symbol,SYMBOL_LAST);
   string abertura = SymbolInfoDouble(_Symbol,SYMBOL_SESSION_OPEN);
   string fechamento = SymbolInfoDouble(_Symbol,SYMBOL_SESSION_CLOSE);
   string minima = SymbolInfoDouble(_Symbol,SYMBOL_LASTLOW);
   string maxima = SymbolInfoDouble(_Symbol,SYMBOL_LASTHIGH);
   
   StringReplace(atual,".",",");
   StringReplace(abertura,".",",");
   StringReplace(fechamento,".",",");
   StringReplace(minima,".",",");
   StringReplace(maxima,".",",");
   
   SetItem(_Symbol,"Atual",atual);
   SetItem(_Symbol,"Abertura",abertura);
   SetItem(_Symbol,"Fechamento",fechamento);
   SetItem(_Symbol,"Mínima",minima);
   SetItem(_Symbol,"Máxima",maxima);
  }
 

NÃO consigo colocar tiques que tenham traço exemplo (OIL-XXX) OU BRENT-XXX Alguem sabe me explicar como altero o codigo ask e bid para pegar esses ticks ?

 
Olá colegas. O aplicativo é bastante interessante, especialmente para iniciantes. Eu o utilizo bastante para desenvolver e testar minhas estratégias, juntamente com os recursos do Excell. Tenho uma pergunta importante. Talvez alguém mais experiente saiba como fazer a ação inversa: ler alguns dados comuns do DDE em um programa MQL? Ficaria muito grato se me dessem um exemplo simples, que eu gostaria de estudar e usar amplamente em meus desenvolvimentos.
 
Posso obter cotações de compra e venda?
 
Luis Henrique Cavallari #:

Segue as alterações que fiz no código abaixo.

Consigo utilizar esse código para exportar via DDE do Meta Trader 5 para o Excel em real time o campo variação de preço?
 
Olá, como posso transferir dados do MT4 para o Excel?