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

 
Como depositar
Via app
Para a conta do comerciante!
 
leonerd:
Como posso obter um comentário de posição fechada na OnTradeTransaction?

Pergunta interessante. Para melhor o entender, abri manualmente uma posição e especifiquei o comentário'123456' - depois fechei a posição e executei o guião deHistória de Ofertas e Encomendas. E agora repara que o comentário está presente apenas na ordem (ordem de comércio) com base na qual houve uma transacção que conduziu à posição e na transacção que ocorreu como resultado da execução da ordem):

Deal:
|Ticket              |Order               |Time                |Time msc            |Type                |Entry               |Magic               |Reason              |Position ID        
|566077885           |587994287           |2020.04.30 19:54:32 |1588276472801       |DEAL_TYPE_BUY       |DEAL_ENTRY_IN       |0                   |DEAL_REASON_CLIENT  |587994287          
|Volume              |Price               |Commission          |Swap                |Profit              |Symbol              |Comment                                  |External ID        
|0.01                |0.96703             |0.00                |0.00                |0.00                |USDCHF              |123456                                   |                   
Order:
|Ticket              |Time setup          |Type                |State               |Time expiration     |Time done           |Time setup msc      |Time done msc       |Type filling       
|587994287           |2020.04.30 19:54:32 |ORDER_TYPE_BUY      |ORDER_STATE_FILLED  |1970.01.01 00:00:00 |2020.04.30 19:54:32 |1588276472800       |1588276472801       |ORDER_FILLING_FOK  
|Type time           |Magic               |Reason              |Position id         |Position by id     
|1970.01.01 00:00:00 |0                   |ORDER_REASON_CLIENT |587994287           |0                  
|Volume initial      |Volume current      |Open price          |sl                  |tp                  |Price current       |Price stoplimit    
|0.01                |0.00                |0.96703             |0.00000             |0.00000             |0.96703             |0.00000            
|Symbol              |Comment                                  |External id        
|USDCHF              |123456                                   |                   
        
Deal:
|Ticket              |Order               |Time                |Time msc            |Type                |Entry               |Magic               |Reason              |Position ID        
|566078174           |587994568           |2020.04.30 19:54:45 |1588276485331       |DEAL_TYPE_SELL      |DEAL_ENTRY_OUT      |0                   |DEAL_REASON_CLIENT  |587994287          
|Volume              |Price               |Commission          |Swap                |Profit              |Symbol              |Comment                                  |External ID        
|0.01                |0.96700             |0.00                |0.00                |-0.03               |USDCHF              |                                         |                   
Order:
|Ticket              |Time setup          |Type                |State               |Time expiration     |Time done           |Time setup msc      |Time done msc       |Type filling       
|587994568           |2020.04.30 19:54:45 |ORDER_TYPE_SELL     |ORDER_STATE_FILLED  |1970.01.01 00:00:00 |2020.04.30 19:54:45 |1588276485330       |1588276485331       |ORDER_FILLING_FOK  
|Type time           |Magic               |Reason              |Position id         |Position by id     
|1970.01.01 00:00:00 |0                   |ORDER_REASON_CLIENT |587994287           |0                  
|Volume initial      |Volume current      |Open price          |sl                  |tp                  |Price current       |Price stoplimit    
|0.01                |0.00                |0.96700             |0.00000             |0.00000             |0.96700             |0.00000            
|Symbol              |Comment                                  |External id        
|USDCHF              |                                         |                   
        


Isto significa que ao fechar uma posição (na OnTradeTransaction o tipo de transacção é TRADE_TRANSACTION_DEAL_ADD) temos de seleccionar todas as ordens relacionadas com esta posição a partir do histórico de negociação e encontrar a ordem que fez com que esta posição aparecesse.

History Deals and Orders
History Deals and Orders
  • www.mql5.com
Скрипт "History Deals and Orders" выводит абсолютно все свойства для сделок и ордеров из торговой истории в заданном временном интервале. Доступен вывод как во вкладку "Эксперты" терминала, так и в текстовой файл (текстовой файл располагается в папке [data folder]\MQL5\Files). Если вывод осуществляется в текстовый...
 
DotCom:
Boa tarde. Como desenhar uma linha de tendência em dois extremos sem desenhar um objecto de linha de tendência num gráfico usando ferramentas mql5 e monitorizar o seu avanço sem desenhar a linha em si no gráfico. Será possível, talvez haja uma maneira?
Um consultor especializado desenhará linhas de tendência em 50-70 pares ao mesmo tempo e seria melhor se as janelas destes gráficos fossem fechadas, de modo a que uma quebra de linhas de tendência fosse calculada sem gráficos abertos.

Utilizar a equação da linha recta:

//+------------------------------------------------------------------+
//| Уравнение прямой                                                 |
//+------------------------------------------------------------------+
double EquationDirect(const int left_bar,const double left_price,const int right_bar,const double right_price,const int bar_to_search) 
  {
   return(right_bar==left_bar ? left_price : (right_price-left_price)/(right_bar-left_bar)*(bar_to_search-left_bar)+left_price);
  }
//+------------------------------------------------------------------+

Especifique o número da barra e o preço do ponto à esquerda, especifique o número da barra e o preço do ponto à direita (uma linha virtual é traçada sobre estes pontos) e especifique a barra que procura.
A função devolverá o preço do bar que está à procura.

 
Artyom Trishkin:

Utilizar a equação da linha recta:

Especificar o número da barra e o preço do ponto à esquerda, especificar o número da barra e o preço do ponto à direita (uma linha virtual é traçada sobre estes pontos) e especificar a barra que está à procura.
A função devolverá o preço do bar que está à procura.

Obrigado, vou tentar.

 
Olá,
Pode dizer-me como calcular os parâmetros para o parabólico diário (e o parabólico de quatro horas) para os colocar ( visualizar)
num período de uma hora?
 

Como posso suavizar o gráfico de linhas, ao nível dos picos (exactamente o gráfico apresentado no gráfico principal)?

O iMA não funciona, não há suavização, (talvez a função Curva?)

Arquivos anexados:
1588528157.png  22 kb
 

A tentar trabalhar com o calendário incorporado. O que é sus? Porque é que os dados são diferentes, por exemplo, em comparação com o investing.com.

Aqui está um download das notícias incorporadas (hora do servidor GMT+2) para o ficheiro:

2018.01.11 15:30        EUR     ECB Monetary Policy Meeting Accounts    CALENDAR_IMPORTANCE_MODERATE
2018.01.11 16:30        USD     PPI m/m CALENDAR_IMPORTANCE_MODERATE
2018.01.11 16:30        USD     Core PPI m/m    CALENDAR_IMPORTANCE_LOW
2018.01.11 16:30        USD     PPI y/y CALENDAR_IMPORTANCE_LOW
2018.01.11 16:30        USD     Core PPI y/y    CALENDAR_IMPORTANCE_LOW
2018.01.11 16:30        CAD     New Housing Price Index m/m     CALENDAR_IMPORTANCE_MODERATE
2018.01.11 16:30        USD     Continuing Jobless Claims       CALENDAR_IMPORTANCE_LOW
2018.01.11 16:30        USD     Initial Jobless Claims  CALENDAR_IMPORTANCE_MODERATE
2018.01.11 16:30        USD     Initial Jobless Claims 4-Week Average   CALENDAR_IMPORTANCE_LOW
2018.01.11 17:00        MXN     Industrial Production n.s.a. y/y        CALENDAR_IMPORTANCE_LOW
2018.01.11 17:00        MXN     Consumer Confidence Index       CALENDAR_IMPORTANCE_LOW
2018.01.11 17:00        MXN     Consumer Confidence Index n.s.a.        CALENDAR_IMPORTANCE_LOW

E aqui está um screenshot de investing.com para a mesma data:


Importância da diferença. As notícias importantes em investing.com podem ser Moderadas no calendário MQL5.

Atribuo a diferença horária de uma hora (também pedida a GMT+2 em investing.com) à transição DST.

 

Olá.

Alguém me pode dizer como redesenhar o indicador a partir da função OnChartEvent()? Nesta função altero o valor do tampão indicador, mas este não se altera no gráfico. ChartRedraw() não ajuda.

O indicador muda no gráfico apenas quando se executa OnCalculate(). Existe alguma forma de o redesenhar sem iniciar a OnCalculate()? Ou como forçar o início OnCalculate()?

 
MQL_User:

Olá.

Alguém me pode dizer como redesenhar o indicador a partir da função OnChartEvent()? Nesta função altero o valor do tampão indicador, mas este não se altera no gráfico. ChartRedraw() não ajuda.

O indicador muda no gráfico apenas quando se executa OnCalculate(). Existe alguma forma de o redesenhar sem iniciar a OnCalculate()? Ou como forçar o início OnCalculate()?

pergunta interessante, queria redesenhar o indicador neste evento há muito tempo atrás, para ver como ficariam num gráfico

Ainda tenho de utilizar este evento na multimoeda, acho que os programadores adiaram o multi-modo normal até à MQL6

---

outra questão. Como sempre, os criadores deram muito em que pensar

o mesmo indicador pode ser construído de duas maneiras:

1 parcela e 1 tampão de cor, ou o mesmo indicador com 2 tampões de parcela - um para cima com a sua própria cor e outro para baixo também com a sua própria cor, é uma variante sem tampão de cor.

Qual deles será mais rápido ou mais correcto? Gostaria de uma resposta especializada

---

parece que pode olhar com 1 parcela + 1 tampão de cor 0 - tendência para cima e 1 - tendência para baixo, e se precisar de valor, pode retirá-lo da parcela. tudo é separado e compreensível, mas

a segunda variante tem 2 tampões de parcelas - a primeira tem EMPTY_VALUE e a segunda o valor e a tendência (cor)

---

A MQL4 falhou completamente, se a segunda opção for apenas o seu legado, há alguma vantagem óbvia em utilizar o método 1? (ou seja, deitar fora a segunda opção de uma só vez)

fizeram uma pergunta a dois bons especialistas, que não puderam responder.

 
Fast235:

Pergunta interessante, quis redesenhar o indicador neste evento há muito tempo atrás, para ver como ficariam semelhantes no gráfico

Ainda tenho de utilizar este evento no modo multi-divisas, os programadores parecem ter adiado o modo multi-modo até à MQL6

---

outra questão. Como sempre, os criadores deram muito em que pensar

o mesmo indicador pode ser construído de duas maneiras:

1 parcela e 1 tampão de cor, ou o mesmo indicador com 2 tampões de parcela - um para cima com a sua própria cor e outro para baixo também com a sua própria cor, é uma variante sem tampão de cor.

Qual deles será mais rápido ou mais correcto? Gostaria de uma resposta especializada

---

parece que pode usar 1 parcela + 1 tampão de cor para olhar para 0 - tendência para cima e 1 - tendência para baixo, e se precisar de valor, pode usar a parcela. tudo é separado e compreensível, mas

a segunda variante tem 2 tampões de parcelas - a primeira tem EMPTY_VALUE e a segunda o valor e a tendência (cor)

---

A MQL4 falhou completamente, se a segunda opção for apenas o seu legado, há alguma vantagem óbvia em utilizar o método 1? (ou seja, deitar fora a segunda opção de uma só vez)

Fez a pergunta a dois bons especialistas, não conseguiu responder.

Não pensei que me deparasse com tal problema, pois à primeira vista deveria ser evidente que o gráfico deveria ser redesenhado a partir do programa. Nesta perspectiva, o objectivo da função ChartRedraw() não é claro...