[ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5. - página 372

 
Chiripaha:

Artem já disse que o Stop-Level também pode flutuar - não é uma constante! - E o tamanho do tick é, sim, uma constante.

E de alguma forma eu não pensei nisso, esse nível de estol não é um valor constante. Fiel à forma.

Chiripaha:

A questão da produtividade (otimização de coruja) é diferente. Pessoalmente não enfiei todas estas funções na coruja. Eu apenas tomo os parâmetros conforme preciso. Sim, eu tenho que escrever mais código, mas a coruja lida com menos coisas "desnecessárias" de biblioteca, porque nem tudo do MarketInfo pode vir a ser necessário na coruja.

Sim, se você obtém um monte de variáveis de ambiente diferentes através de uma função, isso também não é uma opção. Aparentemente, é mais fácil obter estes dados, conforme necessário, antes dos cálculos em uma função específica.

 
tara:


1. formatar o código sem salvar linhas (escadas). - você pode dar um pequeno exemplo?


tara,Chiripaha-Obrigado pessoal, funcionou muito mais rápido!
 

Eu escrevi o primeiro indicador. Tudo conta corretamente, apenas problema com a exibição na última barra e com a atualização à chegada de uma nova barra (não atualiza).
Aqui está a foto:

Qual poderia ser o problema?

Arquivos anexados:
 

avise por favor, se em um novo netbookAsus Eee PC 1025C (branco)Intel ® Atom ™ 1600 freqüência, gig RAM win 7 Starter colocou 10 terminais MT4, sem download de cotações históricas, com um dois pares de moedas, sem indicadores e 1 assessor de negociação para cada terminal - netbook irá mantê-los simultaneamente?

E se houver 20 МТ4?

Acho que nunca vou precisar de 30 :))

ou devo comprar um laptop mais forte?

 

Fox_RM:

1. Formatar o código sem salvar linhas (escadas). - Posso ter um pequeno exemplo?
Aqui, um exemplo - seu código em uma escadaria. Eu mesmo tive que formá-lo primeiro para encontrar o que eu lhe disse. Caso contrário, era difícil para mim encontrá-lo.
int start()
  {
  
   int    limit;
   int    counted_bars=IndicatorCounted();
   double prev,current;
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;

   for(int i=0; i<limit; i++)   // -------------------------------------------- Основной цикл
     {
     
      //---- Awesom + Volumes
     
      AOBuffer3[i]=iMA(NULL,0,EMA,0,MODE_SMA,PRICE_MEDIAN,i)-iMA(NULL,0,SlowEMA3,0,MODE_SMA,PRICE_MEDIAN,i);
      
      if (Show_Volume==true)
       {
        double nSum = Volume[i]*Point*coaf;
        if (AOBuffer3[i]<=0) ExtMapBuffer1[i] =  nSum;
        if (AOBuffer3[i]>0)  ExtMapBuffer1[i] = -nSum;
      
        double Vol_Arr[];
        if (AOBuffer3[i]<=0) Vol_Arr[i] =  Volume[i]*Point*coaf;
        if (AOBuffer3[i]>0)  Vol_Arr[i] = -Volume[i]*Point*coaf;
       }

//----------------------------- Блок поиска значений -----------------------------------------//
 
      //-- Поиск Low & Time & Min_AO 
      if (AOBuffer3[i] < 0)
       {
        price_up_end = 0; 
        AO_up        = 0;  
        price_dn_start = Low[i]; 
        if (price_dn_end == 0) price_dn_end = Low[i]; 
        if (price_dn_start <= price_dn_end)
         {
          price_dn_end = price_dn_start; 
          time_dn      = Time[i]; 
          shift_dn     = iBarShift(NULL, 0, time_dn);
         }
        if (AOBuffer3[i] <= AO_dn)
         {
          AO_dn = AOBuffer3[i]*0.2+AOBuffer3[i]; 
          AO_time_dn = Time[i];
         }
      
        dn_koaf = dn_koaf_round;
        up_koaf_round++;
       }   
  
      //-- Поиск High & Time & Max_AO  
      if (AOBuffer3[i] > 0)
       {
        price_dn_end = 0; AO_dn = 0;  
        price_up_start = High[i];
        
        if (price_up_start >= price_up_end) 
         {
          price_up_end = price_up_start; 
          time_up      = Time[i]; 
          shift_up     = iBarShift(NULL, 0, time_up);
         }
        if (AOBuffer3[i] >= AO_up) 
         {
          AO_up = AOBuffer3[i]*0.2+AOBuffer3[i]; 
          AO_time_up = Time[i];
         }
      
        up_koaf = up_koaf_round;
        dn_koaf_round++;
       }   
//--------------------------------- Выставляем значения --------------------------------------------//
    
      Vol_AO_up = 0; Vol_AO_dn = 0;
      if (shift_up > shift_dn)
       {
        for (int dn_br = shift_dn; dn_br <= shift_up; dn_br++)            //-------------- Перебор значений внутри основного цикла
          {
           Vol_AO_up += Volume[dn_br]; 
           SetText("Awesome_super_volumes"+up_koaf, DoubleToStr(Vol_AO_up,0), AO_time_dn, AO_dn, Blue);
          }   
       }
 
      if (shift_dn > shift_up)
       {
        for (int up_br = shift_up; up_br <= shift_dn; up_br++)            //-------------- Еще один перебор значений внутри основного цикла
          {
           Vol_AO_dn += Volume[up_br]; 
           SetText("Awesome_super_volumes"+dn_koaf, DoubleToStr(Vol_AO_dn,0), AO_time_up, AO_up, Red);
          }   
       }
     } 
           
//---- done

   return(0);
  }
 
Chiripaha:
Aqui, um exemplo é o código da sua escada. A fim de encontrar o que eu mesmo lhe disse, tive que formulá-lo primeiro. Caso contrário, era difícil para mim encontrá-lo.


OK! Obrigado!
 
lottamer:

avise por favor, se em um novo netbookAsus Eee PC 1025C (branco)Intel ® Atom ™ 1600 freqüência, gig RAM win 7 Starter colocou 10 terminais MT4, sem download de cotações históricas, com um dois pares de moedas, sem indicadores e 1 assessor de negociação para cada terminal - netbook irá mantê-los simultaneamente?

E se houver 20 МТ4?

Acho que nunca precisarei de 30 deles :))

ou devo comprar um laptop mais forte?

A CPU, muito provavelmente, será suficiente. Mas memória para 30 ou mais... Mais uma vez, depende do que você vai fazer com estes terminais. Se, como você descreveu, 2-3 pares de moedas, apenas para negociar - então invista mais memória à taxa de 100-150 mb para 1 terminal (isso me leva em frente) e vá em frente. Mas, quando você tem mais de 5, você vai se cansar de trocar entre eles no seu laptop. Eu recebo 7, mas isso é em 4 monitores (não monitores de laptop, ou seja, não pequenos). Seu show de RAM é apenas o suficiente para 7. : )) Isto deve ser levado à letra. E se isso também tira desta memória e vídeo. Um laptop é destinado a 1-2 mt4. Para fazer algo rápido. (imho)
Uma tela de 10 polegadas "quebrará" seus olhos. Meu amigo está usando seu modelo como substituto. E recomenda vivamente pelo menos 13-14 polegadas. E a memória de 2 GB no máximo - não é suficiente se você realmente colocar 20 peças, e provavelmente ainda usar algo mais - pelo menos a Internet... A memória de vídeo é retirada da memória total. - Até 4GB é melhor.
 
sv.:

Eu escrevi o primeiro indicador. Tudo conta corretamente, apenas problema com a exibição na última barra e com a atualização à chegada de uma nova barra (não atualiza).
Aqui está a foto:

Qual poderia ser o problema?

Seu indicador não aparece de todo... Não é hoje - tentarei mais tarde, se alguém mais experiente não me provocar até aquele momento.
 
Chiripaha:
E seu indicador não aparece de todo... Isso não é hoje - vou falar sobre isso mais tarde, se alguém mais experiente não o sugerir até lá.


Isso é estranho.
Eu verifiquei, está aparecendo.
Eu verifiquei. Talvez você precise diminuir o gráfico verticalmente, se o canal for largo, você pode não vê-lo quando ampliado.
 
Chiripaha:
O processador provavelmente é suficiente. Mas 30 ou mais memórias. Mais uma vez, depende do que você vai fazer com estes terminais. Se, como você descreveu, 2-3 pares de moedas, basta negociar - instalar mais memória à taxa de 100-150 mb para 1 terminal (isso me leva em frente) e seguir em frente. Mas, quando você tem mais de 5, você vai se cansar de trocar entre eles no seu laptop. Eu recebo 7, mas isso é em 4 monitores (não monitores de laptop, ou seja, não pequenos). Seu show de RAM é apenas o suficiente para 7. : )) Isto deve ser levado à letra. E se isso também tira desta memória e vídeo. Um laptop é destinado a 1-2 mt4. Para fazer algo rápido. (imho)
Tela de 10 polegadas - você "quebrará seus olhos" nela. Meu amigo está usando seu modelo como substituto, mas ele é XP x86. E recomenda vivamente pelo menos 13-14 polegadas. E a memória é de 2 GB no máximo - não o suficiente se você realmente colocar 20 peças, e provavelmente porque você vai usar algo mais - pelo menos a Internet... A memória de vídeo é retirada da memória total. - Até 4GB é melhor.

A idéia é a seguinte: preciso de um servidor dedicado para que meus EAs possam rodar nele 24 horas por dia, sem me distrair nem a mim nem ao meu computador principal. Faz sentido comprar VPS, mas há problemas de segurança, além de que ainda custa dinheiro - pelo menos 400 rublos por mês. É uma ótima idéia.

Meu aparelho só tem uma coisa a fazer: tem o MT4, o mais leve possível, sem indicadores, com apenas um Expert Advisor funcional. Em meu computador, um exemplo de tal MT4 leva 30 metros de RAM. Portanto, logicamente, 10 deles ocuparão 300 metros.

Para 10, deve ser suficiente. Mas levar em conta WIN7 por 20 Мt4 600 metros de memória livre pode não ser suficiente... Acho que vou ter que procurar um netbook com 2 GB de RAM.

Meu netbook não fará mais nada. Nada de Internet, nada de programas, NEM! Na verdade, eu o virei na segunda-feira e o esqueci. Na sexta-feira à noite você o desliga. 11 horas de duração da bateria permitirão trabalhar em caso de emergência...+GPRS modem...

Razão: