Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 184

 
Taras Slobodyanik:

Obrigado!

Você pode fazer o resultado funcionar como uma soma de pips para todas as posições abertas? Eu uso uma biblioteca para trabalhar com pedidos e não posso realizar operações de pedidos sem ela :(

 

Saudações.

Você pode me dizer algo?

A OrderSend tem

data deexpiração=0,// data de expiração


Como posso definir a ordem para ser apagada depois de aberta, por exemplo, após 3 horas ou 3 velas do gráfico atual?

 
Andrey Sokolov:

Saudações.

Você pode me dizer algo?

A OrderSend tem

data deexpiração=0,// data de expiração


Como posso especificar que o pedido seja apagado após ter sido aberto, por exemplo, após 3 horas ou 3 velas da tabela atual?


Período()*3*60

Período()- número de minutos no período

3 - número candelabros de que você precisa

60 segundos em um minuto

Em seguida, acrescentamos isso ao Time[0].

É isso aí.

 
Cпасиб
 
Alekseu Fedotov:


Período()*3*60

Período()- número de minutos no período

3 - número velas que você quer

60 segundos em um minuto

Acrescente ao Time[0] o que você recebe.

É isso aí.

Há muito tempo é possível escrever PeriodSeconds() com o tempo necessário ao invés de Period()*60

No total, parece que é o seguinte:

time_expiratonn=Time_set_order+PeriodSeconds(PERIOD_CURRENT)*number_of_words;

Ou, ao invés do período atual, use o número necessário de velas de um determinado período de tempo: PeriodSeconds(PERÍODO_M15)*3 é a duração da ordem de três velas de quinze minutos.

 
Andrey Sokolov:

Saudações.

Você pode me dizer algo?

A OrderSend tem

data deexpiração=0,// data de expiração


Como posso especificar que o pedido deve ser apagado após 3 horas ou 3 velas da tabela atual?

em termos gerais - de jeito nenhum. Porque os limites são desconhecidos. Há um tempo mínimo, há um tempo máximo, há restrições quanto aos tipos de pedidos. Elas não são comunicadas ao cliente, portanto não podem ser utilizadas.

Obviamente, a ação depende do estado de espírito atual do CD em particular. Portanto, controle suas próprias ordens :-)

 
Artyom Trishkin:

Há muito tempo é possível escrever PeriodSeconds() com o tempo necessário ao invés de Period()*60

O resultado total é o seguinte:

time_expiratonn=Time_set_order+PeriodSeconds(PERIOD_CURRENT)*number_of_ candles;

Ou, ao invés do período atual, podemos usar o número de velas de um determinado período de tempo: PeriodSeconds(PERÍODO_M15)*3 é a duração da ordem de três velas de quinze minutos.


Obrigado!
 

O tema foi discutido muitas vezes, mas vou pedir uma explicação.


Decidi escrever um indicador, fiz e executei no m5, ele até funciona e mostra algo.

Meus problemas começaram quando decidi instalar em paralelo no m5 uma catraca de outra TF

Como fazê-lo mostrar os dados de diferentes TFs em uma janela?

 

Olá ...


A função OrderSelect() copia os dados do pedido para o ambiente de software ...Quando as ordens são selecionadas sequencialmente usando o parâmetro SELECT_BY_POS, as informações são dadas na ordem em que foram recebidas do servidor comercial ...= Ouvi dizer que as ordens também podem ser pesquisadas em ordem inversa, você pode dizer a um "dummie" como exibir isso em código MQL4 ...

 
Yaroslav Nykula:

Olá ...


A função OrderSelect() copia os dados do pedido para o ambiente de software ...Quando as ordens são selecionadas sequencialmente usando o parâmetro SELECT_BY_POS, as informações são dadas na ordem em que foram recebidas do servidor comercial ...= Já ouvi dizer que as ordens também podem ser pesquisadas em ordem inversa, você diria a um "boneco" como exibir isso em código MQL4 ...

Busca por aberto

  for(int i=0; i<OrdersTotal(); i++) {
   if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {

Busca inversa por fechado

 for(int i=OrdersHistoryTotal()-1; i>=0; i--) {
  if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
Razão: