assessor especializado - perguntas diversas - página 35

 

#sparam - Aberto

Eu apenas pego este diferente método "sparam" em meu código principal.
Agora eu tento escolher um método deles, mas luto para escolher um deles, até eu pesquisei sobre isso na documentação mql4.

P: Qual é o método certo e por quê, por favor?

Agradecemos antecipadamente.

// # 1
if(sparam==button)
{
  // here code
}

// # 2
if(id==CHARTEVENT_OBJECT_CLICK && sparam==button)
{
  // here code
}

// # 3 ( was 2 I just forgot to change )
if(id==CHARTEVENT_OBJECT_CLICK)
{
  if(sparam==button)
    {
     // here code
    }
}
 

#1 é normalmente colocado dentro do evento de clique para que você receba o mesmo que # 2 e também o mesmo que o outro # 2

 
#sparam - Fechado

Marco vd Heijden:

#O nº 1 é normalmente colocado dentro do evento do clique, de modo que você receba o mesmo que o nº 2 e também o mesmo que o outro nº 2.

Muito mais obrigado.

 

#Eliminar Objetos de Ordem / OnTrade() - Aberto

Nas últimas 2 horas passei meu tempo para pesquisar a função OnTrade(), finalmente sei que essa função não funciona no MT4. ( por favor, alguém diga: você está errado que ela funciona )

Assim, o preço não atingirá os níveis de Stop Loss e Take Profit em cada ticks, cada segundo, cada minuto, como normalmente ( se eu estiver certo ).
Que eu tento quando o Price atinge o Stop Loss and Take Profit, então os objetos #Ticket poderiam apagar.
Eu sei que posso colocar " My_OrderObjectsDelete() " no OnTimer() e OnTick() - eu tento encontrar funções como OnTrade().

Preciso de conselhos para isso onde posso colocar " My_OrderObjectsDelete() ", por favor.

Obrigado de antemão.

 
É um pouco difícil para mim entender o que você quer.

No mt4, se uma ordem aberta atingiu STP ou TGT, você a encontra na História da Ordem. Portanto, se você não puder mais encontrá-lo no OrderTotal() verifique a lista de OrderHistoryTotal().

Mas e se você rastrear STP e TGT novamente Bid and Ask e verificar os pedidos somente se estas verificações foram bem sucedidas - não importa onde você tenha colocado no InTick() ou OnTimer().
 
Carl Schreiber:
É um pouco difícil para mim entender o que você quer.
No mt4, se uma ordem aberta atingiu STP ou TGT, você a encontra na História da Ordem. Portanto, se você não puder mais encontrá-lo no OrderTotal() verifique a lista de OrderHistoryTotal().
Mas e se você rastrear STP e TGT novamente Bid and Ask e verificar os pedidos somente se estas verificações foram bem sucedidas - não importa onde você tenha colocado no InTick() ou OnTimer().

Acho que você me entendeu corretamente, obrigado por seu comentário.

Mas minha preocupação é: eu não gostaria que essa parte do código fosse executada continuamente, porque o indicador de preço não deveria atingir cada tiquetaque em meu Stop Loss e Take Profit Level.

( Eu já sei como posso apagar esses objetos após o fechamento do pedido - também verifique este comentário - Nome da função é " deleteobjs() " - #238)

 

#Objetos de Pedido Excluídos / OnTrade() - Fechado

Colocarei minha função ou OnTick() ou OnTimer().

 

#StringLen - Aberto

Eu ainda pesquiso sobre esta preocupação - mas não posso realizar nenhum fórum semelhante - e qualquer outra coisa.

Eu tento contar o número de dígitos. O código abaixo me dá resultados diferentes, por favor, me ajude.

Bid_Len = StringLen( IntegerToString( change_to_points( Bid ) ) );

// Results
// EURUSD = 1.23456 > 123456
// NZDUSD = 0.12345 > 12345
Obrigado de antemão.
 
Max Enrik:

#StringLen - Aberto

Eu ainda pesquiso sobre esta preocupação - mas não posso realizar nenhum fórum semelhante - e qualquer outra coisa.

Eu tento contar o número de dígitos. O código abaixo me dá resultados diferentes, por favor, me ajude.

Bid_Len = StringLen( IntegerToString( change_to_points( Bid ) ) );

// Results
// EURUSD = 1.23456 > 123456
// NZDUSD = 0.12345 > 12345
Obrigado de antemão.
Por favor, você pode explicar mais sobre o que você está tentando fazer aqui?
 
honest_knave:
Por favor, você pode explicar mais sobre o que você está tentando fazer aqui?

Obrigado por sua pronta resposta.

A imagem abaixo mostra o que eu quero fazer.

StringLen-1

( feito rapidamente )

Espero que isso o ajude a me entender mais claramente.

// 2ª vez editado

Espero que isto possa ser de maior ajuda.

StringLen - explicar - 1

Razão: