Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 271

 
tiiga:
Não, esta é a segunda vez que a encontro, da última vez esqueci-me dela.


Pode não funcionar se j não for inicializado em todas as funções e não for zerado em nenhum lugar ....try this

j=0;

for(j=0; j<=1; j++)

 
tiiga:
Não, esta é a segunda vez que me deparo com ela, da última vez que me esqueci dela.
Os milagres não existem. Mostre-me todo o ciclo.
 
Se você definir de 0 a 3 ou mais, por exemplo, funciona, mas até 1 não funciona por alguma razão
 
tiiga:
Se você fizer 0 a 3 ou mais, por exemplo, funciona, mas até 1 não funciona por alguma razão.
Tome dois: mostre todo o ciclo.
 

esta é a versão corrigida que funcionou

 if (true)
               { //Alert("добавляем стаки покупки",totalstack );
               for(int g=0; g<=genofond; g++)
                //  for(j=0; j<=1; j++)
                    {  
                     if (check[g]==1){
                     if (stacked[g][1]!=1)//
                      {  
                    //    if (j==1)
                   //     {
                           totalstack+=1;
                           if (totalstack<=maxstack)
                              {
                                 for(i=1; i<=maxstack; i++)
                                    {
                                       if (istackstart[i][1]==0)
                                          {
                                             break;
                                          }
                                    }
                              }
                            else
                              {
                                maxstack+=1;
                                i=maxstack;
                              }  
                           ArrayResize(istackstart, maxstack+1);
                           ArrayResize(pstackstart, maxstack+1);
                           
                           istackstart[i][1]=del[g];
                           istackstart[i][2]=g;
                           istackstart[i][3]=j;
                          
                           pstackstart[i][1]=Bid;
                           pstackstart[i][2]=1;   //buy
                           stacked[g][j]=1;
                           Print("добавляем стаки покупки ",totalstack,"  ",maxstack );
                           }
                     //   }
                  //      else
                    //       {
                    if (stacked[g][0]!=1)//
                      {  
                           totalstack+=1;
                            if (totalstack<=maxstack)
                              {
                                 for(i=1; i<=maxstack; i++)
                                    {
                                       if (istackstart[i][1]==0)
                                          {
                                             break;
                                          }
                                    }
                              }
                            else
                              {
                                maxstack+=1;
                                i=maxstack;
                              } 
                        ArrayResize(istackstart, maxstack+1);
                        ArrayResize(pstackstart, maxstack+1);
                       istackstart[i][1]=del[g];
                        istackstart[i][2]=g;
                       istackstart[i][3]=j;
                      
                        pstackstart[i][1]=Bid;
                        pstackstart[i][2]=-1; //sell
                        stacked[g][j]=1;
                        Print("добавляем стаки покупки ",totalstack,"  ",maxstack );
                          
                     }//скобка отпроверки стка
                    }//скобка от чека
                   }//скобка от двойного цикла 
                   //  Alert("добавили стаки покупки",totalstack );
               }
а вот это не рабочий вариант
   
    if (true)
               { //Alert("добавляем стаки покупки",totalstack );
               for(int g=0; g<=genofond; g++)
                  for(j=0; j<=1; j++)
                    {  
                     if (check[g]==1){
                     if (stacked[g][j]!=1)//
                      {  
                        if (j==1)
                        {
                           totalstack+=1;
                           if (totalstack<=maxstack)
                              {
                                 for(i=1; i<=maxstack; i++)
                                    {
                                       if (istackstart[i][1]==0)
                                          {
                                             break;
                                          }
                                    }
                              }
                            else
                              {
                                maxstack+=1;
                                i=maxstack;
                              }  
                           ArrayResize(istackstart, maxstack+1);
                           ArrayResize(pstackstart, maxstack+1);
                           
                           istackstart[i][1]=del[g];
                           istackstart[i][2]=g;
                           istackstart[i][3]=j;
                          
                           pstackstart[i][1]=Bid;
                           pstackstart[i][2]=1;   //buy
                           stacked[g][j]=1;
                           Print("добавляем стаки покупки ",totalstack,"  ",maxstack );
                        }
                        else
                           {
                           totalstack+=1;
                            if (totalstack<=maxstack)
                              {
                                 for(i=1; i<=maxstack; i++)
                                    {
                                       if (istackstart[i][1]==0)
                                          {
                                             break;
                                          }
                                    }
                              }
                            else
                              {
                                maxstack+=1;
                                i=maxstack;
                              } 
                        ArrayResize(istackstart, maxstack+1);
                        ArrayResize(pstackstart, maxstack+1);
                       istackstart[i][1]=del[g];
                        istackstart[i][2]=g;
                       istackstart[i][3]=j;
                      
                        pstackstart[i][1]=Bid;
                        pstackstart[i][2]=-1; //sell
                        stacked[g][j]=1;
                        Print("добавляем стаки покупки ",totalstack,"  ",maxstack );
                           }
                     }//скобка отпроверки стка
                    }//скобка от чека
                   }//скобка от двойного цикла 
                   //  Alert("добавили стаки покупки",totalstack );
               }
 

Boa tarde, aqui está o problema. Fez com que a EA negociasse em um determinado intervalo de tempo, mas não funciona - ela a ignora. Aqui está o código. A função do tempo retorna verdadeiro, e o comércio não deve ir, mas vai. Qual poderia ser o erro? Os valores no Expert Advisor são:

fio externo dark_TimeBegin = "23:30";

fio externo dark_TimeEnd = "01:00";
bool isTradeTimeString(string tb = "00:00", string te = "00:00") 
{
  datetime dtBegin, dtEnd;        // Время начала и окончания работы
  int      hc, he;                // Часы текущего времени и окончания работы

  dtBegin=StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+tb);
  dtEnd  =StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+te);
  hc     =TimeHour(TimeCurrent());
  he     =TimeHour(dtEnd);
  if (dtBegin>=dtEnd) 
  {
    if (hc>=he) dtEnd+=24*60*60; else dtBegin-=24*60*60;
  }

  if (TimeCurrent()>=dtBegin && TimeCurrent()<=dtEnd) return(True);
  else return(False);
}
   if(isTradeTimeString(dark_TimeBegin, dark_TimeEnd) == true)
   {  if(((CountBuy() > 0) || (CountSell() > 0)) && (NormalizeDouble(MarketInfo(Symbol(), 13) ,0) <= trade_spread))
      {
      dark_Close_Sell();
      dark_Close_Buy();
      //Order_limit();
      }
   }
      if(isTradeTimeString(dark_TimeBegin, dark_TimeEnd) == false)
         {
            if((isTrade(time_start_last_new, time_end_last_new) == false) && ((CountBuy() > 0) || (CountSell() > 0)) && (NormalizeDouble(MarketInfo(Symbol(), 13) ,0) <= trade_spread))
            {
               Close_Sell();
               Close_Buy(); 
               //Order_limit();
            }
            if((isTrade(time_start_last_new, time_end_last_new) == true) && (NormalizeDouble(MarketInfo(Symbol(), 13) ,0) <= trade_spread))
            {
               Order_send();
               Close_Sell();
               Close_Buy();               
            }
         }

      Order_limit();
 
tiiga:

é uma versão revisada que funciona.

O que está impedindo você de escrever assim?

for(int g=0; g<=genofond; g++)
   Print("Перед циклом j = "+j);
   for(j=0; j<=1; j++) {  
      Print("В цикле j = "+j);
      if (check[g]==1) {
 
Elleremo:

Eu escolhi livre e foi por isso que fiz a pergunta. Você teria a gentileza de dizer a um recém-chegado qual é seu desgosto por sintéticos?
ou me remeta para o fio que explica sua antipatia por eles. Obrigado).
Há uma sutileza no trabalho com os sintéticos. O mesmo "mecanismo" na história e diretamente em tempo real construirá castiçais diferentes: e quanto maior o TF, maior a divergência (na história não sabemos como o preço se movia dentro do castiçal). Segue-se que os testes sobre "sintéticos históricos" não são aplicáveis ao comércio de "sintéticos reais".
 
VladislavVG:


"On" é regional, e a Ucrânia não faz parte da Federação Russa.

"Em 1993, a pedido do Governo da Ucrânia, variantes para a Ucrânia (e respectivamente da Ucrânia) deveriam ter sido reconhecidas como normativas . Assim, na opinião do Governo da Ucrânia, a conexão etimológica das construções com a Ucrânia e com a periferia, que não lhe convinha, foi quebrada . Ucrânia como se recebesse a confirmação linguística de seu status de Estado soberano, pois os nomes dos estados e não das regiões são formados na tradição russa com as preposições em (in) e de (in)..." (Graudina L. K., Itskovich V. A., Katlinskaya L. P. Correção gramatical do discurso russo. Moscou: Nauka, 2001. С. 69).

Enquanto que por inércia alguns continuam a velha tradição. ;)

Isto é o que quero dizer, que em russo está "ligado", em ucraniano pode ser o que você quiser. Vladislav, é uma formalidade - ele entra / não entra. A Ucrânia é um território nativo russo. É povoada por russos. Não há necessidade de fazer uma distinção, pelo menos no fórum. Quaisquer que sejam os ucranianos com um preconceito nacional que não se autodenominem, eles continuarão sendo russos. Não há necessidade de brigar sobre isso de forma alguma. Existe uma nacionalidade - nós somos russos! Existem grupos étnicos (grandes russos, pequenos russos, russos brancos).

VOLDEMAR:


Não mudou, mas não é correto, não dizemos ir ao CANADÁ, FINLÂNDIA, ÍNDIA, dizemos ir ao CANADÁ, NA CHINA, então se aplica à Ucrânia ...

A preposição NA é mais comum em nossas mensagens como ir NA... ))))

Eu não sei de onde veio. Em todos os lugares da língua russa é "para a Ucrânia". Muito provavelmente é por causa da etimologia da palavra "Ucrânia" == no limite.

 
Zhunko:

É isso que estou dizendo, que em russo está "ligado", em ucraniano pode ser o que você quiser. Vladislav, é uma formalidade entrar/não entrar. A Ucrânia é um território nativo russo. É povoada por russos. Não há necessidade de fazer uma distinção, pelo menos no fórum. Quaisquer que sejam os ucranianos com um preconceito nacional que não se autodenominem, eles continuarão sendo russos. Não há necessidade de brigar sobre isso de forma alguma. Existe uma nacionalidade - nós somos russos! Existem ethnoses (os grandes russos, os pequenos russos, os russos brancos).

Eu não sei de onde veio. Em toda parte no idioma russo é "para a Ucrânia". Muito provavelmente é por causa da etimologia da palavra "Ucrânia" == no limite.

Por que todo esse alvoroço? Somos todos eslavos. Somente a Ucrânia, como Estado, não quer admiti-lo. Eles são ucranianos de merda.

E em geral - tais tópicos pertencem ao próprio ouriço.