Um bug na função OrderSend() ? - página 4

 
hoz:
Bem, sim, eu faço isso em modo visual e olho... E o que ele pode não mostrar corretamente? Afinal de contas, se você lançar o TS no relógio ou no H4 em uma demonstração, ele pode passar o inverno por alguns anos :) ..... :) Isso é uma chatice.

Bem, o visualizador parece mostrar, mas pode faltar algo, em geral, você não pode confiar nele ou não para todos os algoritmos ele pinta com precisão um quadro do que está acontecendo, é melhor observar em paralelo na demonstração, o graal não nasce em um dia ...

P.S. Estou escrevendo todas minhas idéias principalmente para o H1, mas é mais rápido na demonstração do que resolver os quebra-cabeças do testador ...

 
hoz:

Já está feito. Também aumentei um pouco a variável travessão e lá vamos nós.... Acho que nem sempre é possível dizer a olho nu.

Pergunto-me, o que mais a última globalização variável do BarTime tem efeito sobre, além do desempenho? Seu tipo é estático, o que significa que a variável armazena seu valor durante toda a vida do programa...

Há mais uma coisa interessante. Se eu ainda uso a varinha em várias funções, foi correto que eu a declarei de uma só vez no início? Ou não é muito razoável obter valores em cada carrapato, por causa do consumo de recursos?


Umavariável local é uma variável declarada dentro de uma função. O escopo das variáveis locais é o corpo da função, no qual esta variável é declarada. Uma variável local pode ser inicializada por uma constante ou expressão, correspondente ao seu tipo.

Uma variável global é uma variável declarada fora de todas as funções. O escopo das variáveis globais é o programa inteiro. Uma variável global não é localizada em nenhum nível. Uma variável global só pode ser inicializada por uma constante correspondente a seu tipo (mas não por uma expressão). As variáveis globais são inicializadas uma vez antes que funções especiais sejam executadas.

Se o controle em um programa está dentro de uma função, os valores das variáveis locais declaradas em outra função não estão disponíveis. O valor de qualquer variável global está disponível a partir de qualquer função especial e de usuário.

 
É mais simples do que isso. O Static não funciona na MQL4.
 
tara:
É mais simples do que isso. O Static não funciona na MQL4.

Há quanto tempo?
 
Desculpe, não está funcionando em absoluto. Desde o C do início:(
 
tara:
Desculpe, não está funcionando em absoluto. Desde o C do início:(
Algum outro programador que possa confirmar isso? Um voto não será suficiente.
 
tara:
É mais simples do que isso. O Static não funciona na MQL4.
Quantos códigos escritos por profissionais eu já vi, e sua estática está muitas vezes presente. Mas você disse que isso não funciona. Em que devo acreditar agora? :(
 
hoz:
Quantos códigos já vi escritos por profissionais, e muitas vezes eles têm estáticos. E você diz que não funciona. Quem deve acreditar agora? :(
Não se pode confiar em ninguém.
 
tara:
Desculpe, não está funcionando. Desde o C do início:(

Pessoalmente, eu nunca encontrei um statik que não funcionasse.

aqui está um exemplo de um especialista, você quer verificá-lo em um gráfico:

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
   static int cc=20;
   Print("cc = ",cc);
   cc++;
   
   return(0);
  }
 

A estática funciona 100%. Aqui está o teste:

int start()
  {
   static int i=0;
   while(i<3) {Print("K=",test());i++;}
   return(0);
  }
int test()
 {
  static int k=0;
  k++;
  return(k);
 }

E os resultados:

Estático

Razão: