[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 372

 
Chiripaha:

Artem ha già detto che lo Stop-Level può anche fluttuare - non è una costante! - E la dimensione del segno di spunta è, sì, una costante.

E in qualche modo non ci ho pensato, che stollevel non è un valore costante. Fedele alla forma.

Chiripaha:

La questione della produttività (ottimizzazione dei gufi) è diversa. Personalmente, non ho mai messo tutte queste funzioni nel gufo. Prendo i parametri quando ne ho bisogno. Sì, devo scrivere più codice, ma owl gestisce meno sciocchezze di librerie "inutili", perché non tutto ciò che viene da MarketInfo può rivelarsi necessario in owl.

Sì, se si ottiene un mucchio di variabili d'ambiente diverse attraverso una funzione, anche questa non è un'opzione. Apparentemente, è più facile ottenere questi dati come necessario prima dei calcoli in una funzione specifica.

 
tara:


1. formattare il codice senza salvare le linee (scala). - può fare un piccolo esempio?


tara,Chiripaha-Grazie ragazzi, ha funzionato molto più velocemente!
 

Ho scritto il primo indicatore. Tutto conta correttamente, solo il problema della visualizzazione sull'ultima barra e dell'aggiornamento all'arrivo di una nuova barra (non si aggiorna).
Ecco l'immagine:

Quale potrebbe essere il problema?

File:
 

consigliare per favore, se su un nuovo (non smerigliato) netbookAsus Eee PC 1025C (bianco)Intel ® Atom ™ 1600 frequenza, gig RAM win 7 Starter mettere 10 terminali MT4, senza download di quotazioni storiche, con uno due coppie di valute, senza indicatori e 1 consigliere di trading per ogni terminale - netbook li terrà contemporaneamente?

E se ci sono 20 МТ4?

Non credo che avrò mai bisogno di 30 :))

o dovrei comprare un portatile più forte?

 

Fox_RM:

1. Formatta il codice senza salvare le linee (scala). - Posso avere un piccolo esempio?
Ecco, un esempio - il vostro codice in una scala. Ho dovuto formarlo prima io per trovare quello che ti ho detto. Altrimenti era difficile per me trovarlo.
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:
Ecco, un esempio è il vostro codice delle scale. Per trovare quello che ti ho detto ho dovuto prima formularlo io stesso. Altrimenti era difficile per me trovarlo.


OK! Grazie!
 
lottamer:

consigliare per favore, se su un nuovo (non smerigliato) netbookAsus Eee PC 1025C (bianco)Intel ® Atom ™ 1600 frequenza, gig RAM win 7 Starter mettere 10 terminali MT4, senza download di quotazioni storiche, con uno due coppie di valute, senza indicatori e 1 consigliere di trading per ogni terminale - netbook li terrà contemporaneamente?

E se ci sono 20 МТ4?

Non credo che ne avrò mai bisogno di 30 :))

o dovrei comprare un portatile più forte?

La CPU, molto probabilmente, sarà sufficiente. Ma la memoria per 30 o più... Anche in questo caso, dipende da cosa farete con questi terminali. Se, come hai descritto, 2-3 coppie di valute, solo per commerciare - hai bisogno di più memoria al ritmo di 100-150 mb per 1 terminale (mi ci vuole così) e andare avanti. Ma, quando ne avete più di 5, vi stancherete di passare da uno all'altro sul vostro portatile. Ottengo 7, ma su 4 monitor (non quelli dei portatili, cioè non quelli piccoli). Il tuo giga di RAM è sufficiente solo per 7. : )) Questo dovrebbe essere preso alla lettera. E se toglie anche questo ricordo e questo video. Un portatile è pensato per 1-2 mt4. Per fare qualcosa di veloce. (imho)
Uno schermo da 10 pollici vi "romperà" gli occhi. Il mio amico sta usando il vostro modello come sostituto. E raccomanda vivamente almeno 13-14 pollici. E la memoria di 2 GB al massimo - non è abbastanza se metterete davvero 20 pezzi, e probabilmente userete ancora qualcos'altro - almeno Internet... La memoria video è presa dalla memoria totale. - Fino a 4GB è meglio.
 
sv.:

Ho scritto il primo indicatore. Tutto conta correttamente, solo il problema della visualizzazione sull'ultima barra e dell'aggiornamento all'arrivo di una nuova barra (non si aggiorna).
Ecco la foto:

Quale potrebbe essere il problema?

Il tuo indicatore non compare affatto... Non è oggi - lo proverò più tardi, se qualcuno più esperto non me lo dirà per quell'ora.
 
Chiripaha:
E il tuo indicatore non appare affatto... Non è oggi - lo farò più tardi, se qualcuno più esperto non lo suggerisce per allora.


Questo è strano.
Ho controllato, si vede.
Ho controllato, forse hai bisogno di restringere il grafico verticalmente, se il canale è largo, potresti non vederlo quando fai lo zoom.
 
Chiripaha:
Il processore è probabilmente sufficiente. Ma 30 o più di memoria. Anche in questo caso, dipende da cosa farete con questi terminali. Se, come hai descritto, 2-3 coppie di valute, solo commercio - installare più memoria al ritmo di 100-150 mb per 1 terminale (mi ci vuole così) e andare avanti. Ma, quando ne avete più di 5, vi stancherete di passare da uno all'altro sul vostro portatile. Ottengo 7, ma su 4 monitor (non quelli dei portatili, cioè non quelli piccoli). Il tuo giga di RAM è sufficiente solo per 7. : )) Questo dovrebbe essere preso alla lettera. E se toglie anche questo ricordo e questo video. Un portatile è pensato per 1-2 mt4. Per fare qualcosa di veloce. (imho)
schermo da 10 pollici - vi "romperete gli occhi" su di esso. Il mio amico sta usando il vostro modello come sostituto, ma è XP x86. E raccomanda vivamente almeno 13-14 pollici. E la memoria è di 2 GB al massimo - non abbastanza se metterete davvero 20 pezzi, e probabilmente perché userete qualcos'altro - almeno Internet... La memoria video è presa dalla memoria totale. - Fino a 4GB è meglio.

L'idea è questa: ho bisogno di un server dedicato in modo che i miei EA possano girare su di esso tutto il giorno, senza distrarre me o il mio computer principale. Ha senso comprare VPS, ma ci sono problemi di sicurezza, in più costa ancora soldi - almeno 400 rubli al mese. È una grande idea.

Il mio dispositivo ha solo una cosa da fare: ha MT4, il più leggero possibile, senza indicatori, con un solo Expert Advisor funzionante. Sul mio computer, un esempio di tale MT4 prende 30 metri di RAM. Quindi, logicamente, 10 di loro occuperanno 300 metri.

Per 10 dovrebbe essere sufficiente. Ma tenendo conto di WIN7 per 20 Мt4 600 metri di memoria libera potrebbero non essere sufficienti... Credo che dovrò cercare un netbook con 2 GB di RAM.

Il mio netbook non fa altro: niente internet, niente programmi, niente di niente! Infatti, l'ho acceso lunedì e me ne sono dimenticato. Il venerdì sera si spegne. 11 ore di durata della batteria permetteranno di lavorare in caso di emergenza...+ modem GPRS...

Motivazione: