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

 

O autor deste guião, tal como o entendo, não é da Rússia, receio que não haja resposta.

Por isso, vou pedir ajuda aqui.

Como corrigir o aviso :

possível perda de dados devido à conversão do tipo

Neste guião.

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

 
erotin:

O autor deste guião, tal como o entendo, não é da Rússia, receio que não haja resposta.

Por isso, vou pedir ajuda aqui.

Como corrigir o aviso :

possível perda de dados devido à conversão do tipo

Neste guião.

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

Experimente isto

f_US=(float)StringToDouble(StringSubstr(CharArrayToString(ch_Buffer),i,8));
 


Terei compreendido correctamente que em mql5, não existem posições na história, e só existem acordos? A julgar pela presença de HistóriaDealsTotal() e ausência de HistóriaPosiçõesTotal().

Porquê então, no separador Histórico do terminal, pode seleccionar "Posições" e elas são visíveis na história?

Como obter o preço de fecho das posições nesta história?


 
secret:

Terei compreendido correctamente que em mql5, não existem posições na história, e só existem acordos? A julgar pela presença de HistóriaDealsTotal() e ausência de HistóriaPosiçõesTotal().

Sim.

Porquê então, no separador Histórico do terminal, pode seleccionar "Posições" e elas são visíveis na história?

Esta é uma das tentativas de interpretar a história como posições. Na minha opinião, não é a de maior sucesso.

Como obter o preço de fecho das posições nesta história?

Faço o seguinte sobre a sebe.

#property script_show_inputs

#include <MT4Orders.mqh> // https://www.mql5.com/en/code/16006

input TICKET_TYPE PositionTicket = 0;

void OnStart()
{
  if (OrderSelect(PositionTicket, SELECT_BY_TICKET))
    OrderPrint();
}
 
Alekseu Fedotov:

Experimente isto

Obrigado
 
fxsaber Sim.

Acontece que, para imprimir um lucro de um comércio aberto, tem de trabalhar com uma lista e bilhete, e para imprimir um lucro do mesmo mas fechado comércio, tem de trabalhar com outra lista e outro bilhete?

 
secret:

Acontece que para imprimir o lucro de um comércio aberto, tem de trabalhar com uma lista e um bilhete, e para imprimir o lucro do mesmo mas fechado comércio, tem de trabalhar com outra lista e outro bilhete?

Não compreendo a pergunta.

 
secret:

Acontece que, para imprimir um lucro de um comércio aberto, tem de trabalhar com uma lista e bilhete, e para imprimir um lucro do mesmo mas fechado comércio, tem de trabalhar com outra lista e outro bilhete?

Cada encomenda e cada comércio tem o seu próprio bilhete, mas também tem ORDER_POSITION_ID e DEAL_POSITION_ID, respectivamente. Isto é o que determina se pertencem ou não a uma posição.

 
secret:

Como se obtém o preço de fecho das posições nesta história?

Deve também estar bem ciente de que este preço de fecho, mesmo numa sebe, pode ter mais casas decimais do que dígitos.


E não tem de estar sequer perto do preço que estava no símbolo no momento do fecho da posição.

Os criadores queriam fazer uma analogia com a história do MT4, mas falharam.

Quando quero ver o histórico comercial no Terminal, utilizo a extensão GUI. Apresenta posições históricas como em MT4. Os preços de fecho correspondem aos horários de fecho, etc.

Por conseguinte, as posições históricas são uma convenção que pode ser objecto de diferentes interpretações.
 
fxsaber:

Não compreendo a pergunta.

Para calcular o lucro de um comércio, é necessário, em particular, o preço de abertura. Enquanto o comércio estiver aberto, o preço aberto tem de ser retirado da lista de posições para o bilhete de posição. E quando o negócio é fechado, então o mesmo preço aberto tem de ser retirado de outra lista (negócios, não posições) para outro bilhete. Certo?