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

 
Vladimir Karputov:
 m_trade.SetExpertMagicNumber(InpMagic);

Sim, cometi, acontece que cometi um erro lógico que fez com que o método não fosse chamado. Obrigado pela resposta.


Mais uma pergunta: como chamar outro método da mesma classe dentro de um método de classe (em ficheiro .mqh)?

A construção não funciona:

void CTradeMT45::CloseAll(int OrderType) {

CloseOrder(ticket);

}

void CTradeMT45::CloseOrder(ulong ticket){

}
 
Ildar Yusupov:

Sim, cometi, acontece que cometi um erro lógico que fez com que o método não fosse chamado. Obrigado pela resposta.


Mais uma pergunta: como chamar outro método da mesma classe dentro de um método de classe (em ficheiro .mqh)?

A construção não funciona:

Aqui está uma dica: esqueça a palavra "ordem" (apenas "ordem pendente" é permitida) e terá imediatamente toda a lógica no lugar.

 
Vladimir Karputov:

Um conselho: esqueça a palavra "ordem" (apenas "ordem pendente" pode ser usada) e toda a lógica cairá imediatamente no lugar.

Em vez de "Ordem", seria mais correcto usar a palavra "Ordem" em mt5. Embora sejam semelhantes na sua essência.

 
Valeriy Yastremskiy:

Em vez de Ordem, a palavra correcta a usar em mt5 é Ordem. Embora sejam palavras semelhantes.

Há também uma ordem de mercado no MetaTrader 5. Não se pode simplesmente desistir de algo, que é parte integrante do sistema de ordens da plataforma de negociação, por razões "religiosas".

Há encomendas em MT5. E são exibidos na história. E até transportam informações que uma pessoa conhecedora irá utilizar em seu próprio benefício.

Só é preciso saber melhor como as coisas funcionam, e não dar passo a passo o nome daquilo a que se chama exactamente uma ordem. É uma ordem comercial. É o originador do resto da cadeia de metamorfoses que conduz a uma posição. Uma ordem pendente é uma entidade diferente. Pode também ser atribuída a ordens - uma "ordem condicional", por assim dizer.

Quando a ordem é executada, uma ordem de mercado aparece e é transformada num negócio que gera uma posição ou a altera. Se a memória não me falha - já passou muito tempo desde que olhei para toda a história com a cadeia de acontecimentos, desde a ordem até ao fecho de uma posição. Mas quando eu estava a lidar com isto de forma minuciosa, se a memória me serve neste momento, é exactamente assim: ordem -- ordem de mercado -- negociar -- abrir/alterar/fechar posição.

E, sim - estas não são palavras intimamente relacionadas, mas uma tradução do inglês para o russo. Encomenda == Encomenda

 
Artyom Trishkin:

O MetaTrader 5 também tem uma ordem de mercado. Não se pode simplesmente abdicar de algo que é parte integrante do sistema de ordens da plataforma de negociação por razões "religiosas".

Há encomendas em MT5. E são exibidos na história. E até transportam informações que uma pessoa conhecedora irá utilizar em seu próprio benefício.

Só é preciso saber melhor como as coisas funcionam, e não dar passo a passo o nome daquilo a que se chama exactamente uma ordem. É uma ordem comercial. É o originador do resto da cadeia de metamorfoses que conduz a uma posição. Uma ordem pendente é uma entidade diferente. Também pode ser classificado como uma ordem, por assim dizer, uma ordem condicional.

Quando a ordem é executada, uma ordem de mercado aparece e é transformada num negócio que gera uma posição ou a altera. Se a memória não me falha - já lá vai algum tempo desde que olhei para toda a história com a cadeia de acontecimentos, desde a ordem até ao fecho de uma posição. Mas quando eu estava a lidar com isto de forma minuciosa, se a minha memória me serve neste momento, é exactamente assim: ordem -- ordem de mercado -- negociar -- abrir/alterar/fechar posição.

E, sim - estas não são palavras intimamente relacionadas, mas uma tradução do inglês para o russo. Ordem == Ordem.

Aparentemente, não estou a falar inglês. Não estou, de forma alguma, a pedir uma substituição de conceitos. Só por uma questão de compreensão adequada, substitua as palavras. E ao explicar, use a substituição. E de utilizar conceitos existentes.

No comércio, é utilizada como tradução. E em russo um mandado é uma ordem a ser executada em produção. Uma ordem de produção é normalmente uma ordem de produção.

 
Valeriy Yastremskiy:

Aparentemente, não sou muito articulado. Não estou de modo algum a pedir uma substituição de conceitos. Apenas para substituir as palavras por uma compreensão adequada. E de utilizar substituições ao explicá-las. E de utilizar conceitos existentes.

No comércio, é utilizada como tradução. E em russo um mandado é uma ordem a ser executada em produção. Uma ordem de produção é normalmente.

Uma ordem para executar em produção, é chamada de naryad. Em alguns lugares chamava-se uma ordem de encomenda, uma atribuição de encomendas.

Havia sempre apenas uma guia de remessa para a libertação dos produtos. E normalmente foi emitido um mandado de captura... ou de busca... Qual deve ser escrito)))))))))

Não é assim tão mau... Havia também um mandado para um lugar para viver. Já tive dois desses...

 

Não consigo perceber que tipo de disparates é que o indicador está a dar. Quero verificar quais das próximas 10 velas têm picos em zigue-zague, nas mesmas velas quero destacar apenas os altos e também apenas os baixos. Eu sei que em 0 buffer todos os picos locais, em 1 - hai, em 2 - baixos.

Qual é o problema aqui? Não o compreendo. Verifiquei as definições do indicador no gráfico e as que passo à chamada - são as mesmas. Imprimo apenas o zero tampão principal para verificar a operação.

input int ExtDepth = 40;
input int ExtDeviation = 5;
input int ExtBackstep = 3;

double zz = 0;
double zi_0[];
double zi_1[];
double zi_2[];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   ArraySetAsSeries(zi_0,  true);
   ArraySetAsSeries(zi_1,  true);
   ArraySetAsSeries(zi_2,  true);
   zz = iCustom(_Symbol,PERIOD_CURRENT,"Examples\\ZigZag",ExtDeviation,ExtDeviation,ExtBackstep);
   
   CopyBuffer(zz,0,0,10,zi_0);
   CopyBuffer(zz,1,0,10,zi_1);
   CopyBuffer(zz,2,0,10,zi_2);
   
  
  for(int i = 0; i < 10; i++)
     {
       Print(i,"  ",zi_0[i]);
     }
   
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {

   
  }
//+------------------------------------------------------------------+


 
Nikita Chernyshov:

Não consigo perceber que tipo de disparates é que o indicador está a dar. Quero verificar quais das próximas 10 velas têm picos em zigue-zague, nas mesmas velas quero destacar apenas os altos e também apenas os baixos. Eu sei que em 0 buffer todos os picos locais, em 1 - hai, em 2 - baixos.

Qual é o problema aqui? Não o compreendo. Verifiquei as definições do indicador no gráfico e as que passo à chamada - são as mesmas. Imprimo apenas o zero tampão principal para verificar o seu trabalho.


Nos picos de tampão "0" = valores de pico, ou "0". "0" são as barras que não são picos.

 

Boa tarde.

A questão é esta. Quando trabalho no Strategy Tester, o Expert Advisor guarda as informações necessárias sobre as posições num ficheiro. O ficheiro é guardado na pasta
"<terminal_folder>\Tester\< testing_agent_name>\MQL5\Files\ ".

Mais tarde quero utilizar o mesmo ficheiro de dados apenas no gráfico (NÃO no testador). O terminal permite trabalhar com ficheiros a partir da pasta

"<terminal_folder>\mQL5\Files=COPY12".

É possível que o código da MQL5 arraste os ficheiros carregados pelo Expert Advisor para a pasta "Terminal_folder> Tester>Testing_agent_name>MQL5Files> "? Ou estas áreas estão estritamente separadas entre o Strategy Tester e o trabalho habitual?

Não tenho sido capaz de escrever tudo desde o Testador de Estratégia até "<Terminal_folder>\MQL5\Files\" ou de o copiar usando o métodoFileMove.

 
satorifx:

Boa tarde.

A questão é esta. Quando trabalho no Strategy Tester, o Expert Advisor guarda as informações necessárias sobre as posições num ficheiro. O ficheiro é guardado na pasta
"<terminal_folder>\Tester\< testing_agent_name>\MQL5\Files\ ".

Mais tarde quero utilizar o mesmo ficheiro de dados apenas no gráfico (NÃO no testador). O terminal permite trabalhar com ficheiros da pasta

"<terminal_folder>\mQL5\Files=COPY12".

É possível que o código da MQL5 arraste os ficheiros carregados pelo Expert Advisor para a pasta "Terminal_folder> Tester>Testing_agent_name>MQL5Files> "? Ou estas áreas estão estritamente separadas entre o Strategy Tester e o trabalho habitual?

Não tenho sido capaz de escrever tudo desde o Testador de Estratégia até "<Terminal_folder>\MQL5\Files\" ou de o copiar utilizando o métodoFileMove.

Escrever na pasta partilhada para todos os terminais(FILE_COMMON flag)