Mt4 Fim do apoio. - página 18

 
Artyom Trishkin:

A tarefa é a seguinte: preciso fazer uma função que retorne o fato de abrir um novo bar. Primeiro no EURUSD M5.

Além disso, a tarefa será estendida.

Estou vendo.

Suponha que o seguinte protótipo de função funcione: bool New_bar(int Timeframe = M1) ?

Isso significa que um usuário chama a função e envia a identificação do tempo desejado para ela. Em resposta, ele fica verdadeiro/falso (um novo bar aberto ou não)?

Se isto é o que é necessário, tentarei escrevê-lo agora.

 
Alexey Viktorov:

Estou vendo. Apanhei o tipo errado... Você sabe como passar uma variável por referência, sem dúvida.

Agora, por simplicidade de escrita no código, se você precisar determinar o período especificado e o período atual. Acontece que você tem que criar variáveis também para o período atual, certo?

Espere um minuto, estou descobrindo a declaração do problema.
 
Реter Konow:

Estou vendo.

Suponha que esta função protótipo funcionaria: bool New_bar(int Timeframe = M1) ?

Ou seja, um usuário chama a função e passa a ela o identificador do prazo desejado. Em resposta, ele fica verdadeiro/falso (um novo bar aberto ou não)?

Se é isso que é necessário, vou tentar escrevê-lo agora.

Basta escrever uma função que peça ao usuário: "há um novo bar no M5?" e recebe uma resposta de sim/não.

Por exemplo:

if(IsNewBar(PERIOD_M5)) // Вопрос: наступил ли новый бар на М5
  {
   // Да, наступил
  }
else
  {
   // Нет, не наступил
  }

Aqui está sua função IsNewBar() e nós a desenvolveremos e a giraremos ainda mais com uma extensão adicional da tarefa

 
Artyom Trishkin:

Basta escrever uma função onde o usuário pergunta: "há um novo bar no M5?" e recebe uma resposta de sim/não.

Por exemplo:

Aqui está sua função IsNewBar() e nós a desenvolveremos e a giraremos ainda mais com uma extensão da tarefa

Estou vendo. Ok. Dê-me algum tempo e eu redigirei o código. Somente em russo. Vou torná-lo mais conveniente.
 
Реter Konow:

Estou vendo.

Suponha que esta função protótipo funcionaria: bool New_bar(int Timeframe = M1) ?

Ou seja, um usuário chama a função e passa a ela o identificador do prazo desejado. Em resposta, ele fica verdadeiro/falso (um novo bar aberto ou não)?

Se isto é o que você precisa, vou tentar escrevê-lo agora.

Uma dica de um estagiário autodidata:

Para facilitar a migração para mql5, seria melhor usar não variáveis int período em mql4, mas a partir do enum ENUM_TIMEFRAMES.

 
Реter Konow:
Entendi. Ótimo. Dê-me algum tempo, eu vou escrever o código. Somente em russo. É mais familiar.

Melhor ainda. É mais fácil para os russos e falantes de russo entenderem.

 
George Merts:

... Herança e polimorfismo...


Acredito de bom grado que seus problemas não podem ser resolvidos sem eles. Você tem que entrar em detalhes para acreditar :)


Artyom Trishkin:

Basta escrever uma função que peça ao usuário: "há um novo bar na M5?" e receba uma resposta de sim/não.

Por exemplo:

Aqui está sua função IsNewBar() e nós a desenvolveremos e a giraremos ainda mais com mais extensão da tarefa

Spin

bool fb_Is_New_Bar(ENUM_TIMEFRAMES e_TF) {
  int
    i_This_Bar = int(floor(TimeCurrent() / PeriodSeconds(e_TF))),
    i_Last_Bar = int(GlobalVariableGet("LastBar " + string(e_TF)))
  ;
  if(i_This_Bar == i_Last_Bar) return(false);
  
  GlobalVariableSet("LastBar " + string(e_TF), i_This_Bar);
  return(true);
}
 

isto vai ser um pouco fora de tópico para a conversa.

Eu estava apenas descascando batatas e um pensamento me ocorreu

se há desenvolvedores e programadores aqui, por que não fazê-lo em µl


- um arquivo auto-suficiente com sua própria interface que executa o terminal, o skype e outro terminal

- no terminal mt4(5) colocando um bot de uma lista selecionada de 3 (menu suspenso)

 
Alexander Puzanov:

...

Spin


Gire-o. Travões terríveis.

 
Mickey Moose:

isto vai ser um pouco fora de tópico para a conversa.

Eu estava apenas descascando batatas e um pensamento me ocorreu

se há desenvolvedores e programadores aqui, por que não fazê-lo em µl


- um arquivo auto-suficiente com sua própria interface que executa o terminal, o skype e outro terminal

- no terminal MT4(5) coloque um bot de uma lista de 3 selecionados (menu suspenso)


Por quê?