Perguntas de Iniciantes MQL4 MT4 MetaTrader 4 - página 28

 
Vladimir Karputov:

Adiado:

Gevorg Hakobyan, 2016.12.08 15:26

Olá. Como posso obter uma lista de todos os pares de moedas existentes no Meta Trader 4? E como posso me manter a par de quaisquer mudanças na lista?
https://docs.mql4.com/ru/marketinformation/symbolstotal
SymbolsTotal - Получение рыночной информации - Справочник MQL4
SymbolsTotal - Получение рыночной информации - Справочник MQL4
  • docs.mql4.com
SymbolsTotal - Получение рыночной информации - Справочник MQL4
 
Sergey Gritsay:

SymbolsTotal

Retorna o número de símbolos disponíveis (selecionados em MarketWatch ou todos).

intSymbolsTotal(
bool selecionado// verdadeiro - somente símbolos em MarketWatch
);

Parâmetros

selecionado

[em] Modo de solicitação. Pode aceitar valores verdadeiros ou falsos.

Valor retornado

Se selecionado é verdadeiro, o número de caracteres selecionados no MarketWatch é devolvido. Se falso, ele retorna o número total de todos os símbolos.

Obrigado, Sergei. Mas não preciso de uma quantidade, mas de uma lista de todas as existentes, para processar e calcular a força da moeda no mercado.
 
Obrigado Renat. Mas não preciso de uma quantidade, mas de uma lista de todas as existentes, para processar e calcular a força da moeda no mercado.

 
Nas contas demo e reais do mesmo corretor, esta lista tem um número diferente de pares de moedas. Eu escrevo um indicador que calcula os dados para a moeda selecionada a partir de todos os pares de moedas em que ela está presente. Como o indicador deve funcionar em todas as contas, deve-se levar em conta a disponibilidade desses pares com antecedência.
 
Gevorg Hakobyan:
Obrigado Renat. Mas não preciso de uma quantidade, mas de uma lista de todas as existentes, para processar e calcular a força da moeda no mercado.

Há muitas funções lá, veja o que você precisa nessa seção

https://docs.mql4.com/ru/marketinformation/symbolname

SymbolName - Получение рыночной информации - Справочник MQL4
SymbolName - Получение рыночной информации - Справочник MQL4
  • docs.mql4.com
SymbolName - Получение рыночной информации - Справочник MQL4
 
Gevorg Hakobyan:
Obrigado Renat. Mas não preciso de uma quantidade, mas de uma lista de todas as existentes, para processar e calcular a força da moeda no mercado.

Primeiro obtemos a lista de todos os símbolos:

//+------------------------------------------------------------------+
//|                                                   AllSymbols.mq5 |
//|                              Copyright © 2016, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2016, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   int count=SymbolsTotal(false); // false - all symbols in MarketWatch
   for(int i=0;i<count;i++)
      Print(i,": ",SymbolName(i,false));
  }
//+------------------------------------------------------------------+

Aqui usamos a enumeração de todos os símbolos disponíveis na MarketWatch.

Mas apenas uma lista não nos dará nada. Para obter as propriedades de um símbolo, devemos primeiro selecioná-lo(SymbolSelect).

Arquivos anexados:
 
Vladimir Karputov:

Primeiro obtemos uma lista de todos os símbolos:

Isto utiliza uma busca contra todos os símbolos disponíveis na MarketWatch.

Mas apenas uma lista não lhe dará nada. Para obter as propriedades de um símbolo, você deve primeiro selecioná-lo(SymbolSelect).

Aqui está um erro de impressão:int count=SymbolsTotal(false);// falso - todos os símbolos no MarketWatch- // Sefalso, então o número total de todos os símbolos é devolvido.
A lista dará o que a pessoa pediu, ou seja, informações sobre todos os símbolos. E depois selecionar e processar cada um deles por sua vez.
 
Obrigado a todos vocês. Acho que encontrei uma solução. Primeiro vou tentar comparar minha lista com a da MarketWatch. Se houver novos pares, eu os acrescentarei à minha lista, e se não houver pares, eu simplesmente removerei os desnecessários. Somente agora há um novo problema - os resultados serão ambíguos e dependerão da MarketWatch.
 

Bom dia a todos! Você pode aconselhar como definir a eliminação de um pedido em uma EA?

A situação é a seguinte:

Colocamos 2ordens pendentes em diferentes direções, assim que uma delas aciona, a outra é removida e não é mais exibida.

Eu ficaria muito grato por qualquer ajuda.

Ficarei muito grato por isso.

 
yaaarik777:

Bom dia a todos! Você pode aconselhar como definir a eliminação de um pedido em uma EA?

A situação é a seguinte:

Colocamos 2ordens pendentes em diferentes direções, assim que uma delas aciona, a outra é removida e não é mais exposta.

Eu ficaria muito grato por qualquer ajuda.

Obrigado.

Se a quantidade de ordens pendentes for inferior a 2, exclua a que restou.

Se não quisermos devolver o pedido pendente, é mais difícil, temos que analisar o tempo e as condições para fazer o pedido.

Razão: