[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 178

 
chief2000 >> :

Eu tinha problemas se eu definisse matrizes para lembrar estados variáveis para qualquer "i" e

não definiram suas dimensões como "[]".

Se array é definido como indicador SetIndexBuffer(0,MyArray); in int init() então não precisa ser inicializado adicionalmente,

Caso contrário, além de declarar MyArray[]; preciso inicializar o tamanho de ArrayResize(MyArray,Count);,

e exatamente na função onde a tarefa será feita.

então em

int start()
{ArrayResize( MyArray, Count);
//...
return(0);
}

.

Mas se o tamanho do Array for declarado explicitamente pelo número MyArray[1000]; não precisamos de tudo isso.

O método ArrayResize é útil, quando você não sabe o tamanho da matriz com antecedência, e calcula-o no programa.

 
Urain >> :

Se um array for definido como um indicador SetIndexBuffer(0,MyArray); no init(), não precisa ser inicializado adicionalmente,

Caso contrário, além de declarar MyArray[]; você precisa inicializar o tamanho de ArrayResize(MyArray,Count);,

e exatamente na função onde a tarefa será feita.

então em

.

Mas se o tamanho de uma matriz é declarado explicitamente como MyArray[1000], não precisamos de tudo isso.

O método ArrayResize é útil quando você não sabe o tamanho da matriz com antecedência, mas calcule-o no programa.



A resposta é exaustiva! Muito obrigado!

 
chief2000 >> :

A resposta é exaustiva! Muito obrigado!

Não resisto a acrescentar que tudo isso e muito mais está escrito de forma compacta e bem clara no livro didático, e que se deve passar gradualmente do ouvir os contos para a leitura por si mesmo.

 

Favor explicar se a declaração do interruptor pode ser inserida depois de Se ?

esses:

se (condição)

interruptor

 
chief2000 >> :

Um Chukcha está pescando na costa. Surge um submarino americano, do qual emerge o capitão.

Ele olha em volta, grita um curso de nordeste. O barco mergulhou e desapareceu. Algum tempo depois, um submarino russo

surge um submarino russo. O capitão pergunta ao Chukcha em que direção o submarino americano desapareceu.

Chukcha responde:
- Curso do Nordeste!
- Não seja esperto comigo, mostre-me com seu dedo!

:)

Alguns conselhos para um iniciante.

Há algumas funções na MQL que são chamadas para fazer um peixe.

Se esta função for reescrita como uma DLL, será possível chamá-la em outros programas, por exemplo, no Omega.

Obrigado.

 
granit77 >> :

Não resisto a acrescentar que tudo isso e muito mais está escrito de forma compacta e bem clara no livro didático, e que se deve passar gradualmente da audição de contos para a leitura por si mesmo.

Tudo isso é verdade, mas tudo leva tempo. E logo você terá que estudar a MQL5.

 

As pessoas gentilmente ajudam com a condição. Como soletrar corretamente a condição como: há um indicador com 2 níveis de 0 e 100 ... e a condição é a seguinte: a linha passou abaixo do nível 0 depois de algum tempo, passou acima do nível 0 e foi além do nível 100 e o nível de saída da condição 100 deve terminar.

ׂ

Não posso colocá-lo no meu EA... Não sei como fazer isso, ........?????

e é possível escrever a condição abaixo ?


 
Infinity >> :

As pessoas gentilmente ajudam com a condição. Como soletrar corretamente a condição como: há um indicador com 2 níveis de 0 e 100 ... e a condição é a seguinte: a linha passou abaixo do nível 0 depois de algum tempo, passou acima do nível 0 e foi além do nível 100 e o nível de saída da condição 100 deve terminar.

Não posso colocá-lo no meu EA... Não sei como fazer isso, ........?????

e é possível escrever a condição abaixo ?


Procure um EA de Laguero, acho que havia lá condições que eu não consigo lembrar exatamente, mas o seu se parece muito com ele...

 
Infinity писал(а) >>

As pessoas gentilmente ajudam com a condição. Como soletrar corretamente a condição como: há um indicador com 2 níveis de 0 e 100 ... e a condição é a seguinte: a linha passou abaixo do nível 0 depois de algum tempo, passou acima do nível 0 e foi além do nível 100 e o nível de saída da condição 100 deve terminar.

Não posso colocá-lo no meu EA... Não sei como fazer isso, ........?????

e é possível escrever a condição abaixo ?

Tem que ser algo parecido:

if( ind[1]>0 && ind[2]<=0) flag_1 = true;
if( ind[1]<0 && ind[2]>=0) flag_1 = false;

if( flag_1 && ind[1]>100 && ind[2]<=100) { flag_2 = true; flag_1=false; }

if( flag_2 && flag_2 && ind[1]<100 && ind[2]>=100)
{
   flag_2 = false;
   // Здесь вроде бы произошло описываемое событие...
   // Но надо экспертом проверять...
}
O que eu quis dizer foi que você tem que descrever com estas caixas de seleção então haverá menos cálculos e, além disso, não haverá ciclos...
 
Infinity >> :

As pessoas gentilmente ajudam com a condição. Como soletrar corretamente a condição como: há um indicador com 2 níveis de 0 e 100 ... e a condição é a seguinte: a linha passou abaixo do nível 0 depois de algum tempo, passou acima do nível 0 e foi além do nível 100 e o nível de saída da condição 100 deve terminar.

Não posso colocá-lo no meu EA... Não sei como fazer isso, ........?????

e é possível escrever a condição abaixo ?


Talvez algo como isto - apenas uma idéia(!) - para o Indicador:

x[ i]=iRSI(...); // <= Пусть RSI будет в качестве Примера. 

TimeStart = 0;
TimeEnd   = 0;


if( x[ i]>0   &&   x[ i+1]<=0) {
   TimeStart=Time[ i];
}
if( x[ i]>=100   &&   x[ i+1]<100){
   TimeEnd=Time[ i+1];
}

if( TimeStart!=0   &&   TimeEnd!=0   &&   TimeEnd> TimeStart) {
   Range_i_Start = iBarShift(NULL,0, TimeStart);
   Range_i_End   = iBarShift(NULL,0, TimeEnd);

   bool status = false;
   for(int k = ... Range_i_Start -> Range_i_End  ) {
      if( x[ k]<0   ||   x[ k]>100) {
         status = true;
         break;
      }
   } // for()

   if( status==false) {
      ... Done;

      TimeStart = 0;
      TimeEnd   = 0;
   }
} // if(TimeStart!=0   &&   TimeEnd!=0) {