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

 
Vitaly Muzichenko #:

Depende da sequência de sobreposição, a última no topo

Definir buffer comDRAW_FILLING primeiro

Surpreendentemente, funcionou! Pensei que este truque era apenas para os amortecedores de um indicador, mas acaba por ser o mesmo para todos.

Obrigado!

 
Vitaly Muzichenko #:

Muito obrigado, vou tentar

 
Comentários não relacionados com este tópico foram transferidos para "Perguntas dos principiantes do MQL4 MT4 MetaTrader 4".
 

Optimização:

"Todas as carraças" e"Todas as carraças baseadas em carraças reais" são a mesma coisa? O que é mais credível, se o teste estiver a decorrer desde 2012


No primeiro caso, o terminal escreve "96% de qualidade histórica", no segundo "26% de carraças reais".

 
Ivan Butko #:

Optimização:

"Todas as carraças" e"Todas as carraças baseadas em carraças reais" são a mesma coisa? O que é mais credível, se o teste estiver a decorrer desde 2012


No primeiro caso, o terminal escreve "96% de qualidade histórica", no segundo "26% de carraças reais".

Leia os registos - e verá de que ano são as carraças reais. Como regra geral, há carraças reais nos últimos três anos.

 
Vladimir Karputov #:

Leia os registos - e verá de que ano vêm os verdadeiros carrapatos. Há normalmente carraças reais nos últimos três anos.

Estou a ver, portanto os carrapatos reais são melhores, apesar de dizer 26% contra 96%. O último número parece mais bonito)

Pode também dizer-me como seleccionar o último tick da história? Ou a última troca. Preciso de saber como fechou: parando ou não.

Tentar alguma coisa, não funcionar.

    int Last_deal_ticket = 0;
    for(int cnt=PositionsTotal()-1;cnt>=0;cnt--)
      {
        if(PositionSelectByTicket(PositionGetTicket(cnt)))
        if(PositionGetSymbol(cnt)==Symbol() && PositionGetInteger(POSITION_MAGIC)==Magic_number)
        Last_deal_ticket=PositionSelectByTicket(PositionGetTicket(cnt));
      }
    // потом, когда закроется, будет висеть с этим тикетом в истории
    // обращаемся к истории
    HistorySelectByPosition(Last_deal_ticket);
    if (HistoryDealGetString(Last_deal_ticket, (ENUM_DEAL_PROPERTY_STRING)DEAL_REASON)==DEAL_REASON_SL......... )


 
Ivan Butko #:

Já percebi, portanto os carrapatos reais são melhores, apesar de dizer 26% contra 96%. O último número parece mais bonito)

Não, não se percebe.

1. As carraças reais dão a imagem real quando testadas.

2. Mas, tem de usar carraças reais de frente - tem de olhar para os registos para ver a partir de que data há carraças reais. Caso contrário, no seu caso, de 2012 até (aproximadamente 2018) vai "todas as carraças" e só depois vai "cada carraça baseada em carraças reais".

3. Insira o código DIREITO: Primeiro o botão Código e depois insira o código na janela pop-up!!!

 
Vladimir Karputov #:

Não, não está a perceber.

1. Os tiques reais dão a imagem real quando testados.

2. Mas, tem de usar carraças reais de frente - tem de olhar para os registos para ver a partir de que data há carraças reais. Caso contrário, no seu caso, de 2012 até (aproximadamente 2018) vai "todas as carraças", e só depois vai "cada carraça baseada em carraças reais".

3. Insira o código DIREITO: PRIMEIRO o botão e depois insira o código no popup!!!

Já está, obrigado

 
Ivan Butko #:


Pode dizer-me como seleccionar o último bilhete da história? Ou a última troca. Preciso de saber como fechou: parando ou não.

Estou a tentar alguma coisa, não consigo.

Agarrei o último negócio da história e tentei verificar como estava fechado

Print("Last deal close = ", HistoryDealGetInteger(Last_deal_ticket,DEAL_REASON)); 

Registo

Último negócio fechado = 3


Vi a documentação e lá

Identificador

Descrição

DEAL_REASON_CLIENT

O negócio foi executado como resultado de uma ordem accionada a partir do terminal de secretária

DEAL_REASON_MOBILE

O negócio foi executado como resultado de uma ordem de encomenda accionada a partir da aplicação móvel

DEAL_REASON_WEB

O negócio é executado como resultado de uma encomenda feita a partir da plataforma web

DEAL_REASON_EXPERT

A transacção é executada como resultado de uma ordem de encomenda accionada do programa MQL5 - Expert Advisor ou script

DEAL_REASON_SL

O negócio foi executado como resultado de uma ordem de Stop Loss que desencadeou


Primeiras 5 linhas.

Não compreendo o que significa: se contarmos a partir de 1, então 3 éDEAL_REASON_WEB, o que é errado. Se de zero, entãoDEAL_REASON_EXPERT.Mas, então, não compreendo agora como saber em que comércio ocorreu o stop loss.

Por favor, ajudem-me.

 
Ivan Butko #:

Parece ter capturado a última transacção da história, tentou ver como fechou

Registo

Last_deal_ticket = 3


Veja-se a documentação, ali

ID

Descrição

DEAL_REASON_CLIENT

O negócio foi executado como resultado de uma ordem de encomenda accionada colocada a partir do terminal de secretária

DEAL_REASON_MOBILE

O negócio foi executado como resultado de uma ordem de encomenda accionada a partir da aplicação móvel

DEAL_REASON_WEB

O negócio é executado como resultado de uma encomenda feita a partir da plataforma web

DEAL_REASON_EXPERT

A transacção é executada como resultado de uma ordem de encomenda accionada do programa MQL5 - Expert Advisor ou script

DEAL_REASON_SL

O negócio foi executado como resultado de uma ordem de Stop Loss que desencadeou


Primeiras 5 linhas.

Não compreendo o que significa: se contarmos a partir de 1, então 3 éDEAL_REASON_WEB, o que é errado. Se de zero, entãoDEAL_REASON_EXPERT.Mas, então, não percebo agora como saber em que comércio veio o fim da perda.

Por favor, ajudem-me.

Está a utilizar a enumeração ENUM_DEAL_REASON. Não é necessário comparar um enumero com quaisquer dígitos, é necessário compará-lo com um enumero. Aqui está um exemplo que acede ao histórico comercial (embora na OnTradeTransaction) e detecta o desencadeamento de Stop Loss e Take Profit:

Exemplo: rastrear o desencadeamento do Stop Loss ou Take Profit

How to start with MQL5
How to start with MQL5
  • 2020.09.17
  • www.mql5.com
This thread discusses MQL5 code examples. There will be examples of how to get data from indicators, how to program advisors...
Razão: