[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 20

 
ZZZEROXXX:

Probabilmente non è del tutto corretto, o ho sbagliato, ecco un disegno di ciò che voglio ottenere.

  if(ObjectFind("VerticalLine")!=-1){
    datetime TimeVL=ObjectGet( "VerticalLine", OBJPROP_TIME1); //получили координату времени где стоит вертикальная линия с именем VerticalLine  
    int shift=iBarShift(NULL, 0, TimeVL); //получил смещение линии от текущего момента в свечах 
    for(int i=0; i<=shift; i++){ // цикл от текущего бара - до бара где стоит вертикальная линия 
     double MA= iMA(NULL, 0, 12, 0, MODE_SMA, PRICE_CLOSE, i) ;
     Print("i=",i," MA=",MA);
    }
   }
   else Print("Нет Вертикальной линии");
 
kaats:

Grazie, ce l'ho, funziona!

 

Buon pomeriggio!!!
Sono un principiante, quindi come un gattino cieco, anche dove puntare:))).
Il problema o la domanda è che ho trovato un indicatore, ma è bloccato (cioè, per imparare le sue prestazioni bisogno di entrare nelle proprietà, e non cambiare nulla per uscire, poi si aggiorna).
Se volessi aggiornarlo, vorrei usare qualche altro EA.
Ho solo 5 indici identici con parametri diversi e devo aggiornarli tutti e 5 ogni volta.

non potrò mai ringraziarvi abbastanza!

 

Gente, per favore aiutatemi, voglio tenere traccia degli ordini nel mio EA e quando arriva un nuovo tick, se c'è un ordine aperto o pendente, andare immediatamente all'inizio della funzione di avvio, per aspettare un nuovo tick, cioè nessun ulteriore calcolo nell'EA finché il numero di ordini aperti o pendenti è 0. Questo codice soddisfa i requisiti?

 //--- Учет колличетва ордеров 
   if (OrdersTotal()>=1)
      return;
 

Domanda per gli esperti, forse qualcuno ha incontrato questo:

Se un EA in esecuzione in un giorno feriale riavvia accidentalmente il terminale in un fine settimana, allora quando la comunicazione con il server (tempo di trading) arriva il lunedì, l'EA smette di funzionare.

Ho provato a riavviare il terminale ad una certa ora nei giorni feriali saltando tra i timeframe, ma l'EA non reagisce come dovrebbe. Dovrebbe ripartire, cioè ricalcolare di nuovo tutti i parametri.

Cosa consigliate? Forse sto complicando le cose e c'è un modo più semplice.

Le opzioni di risposta: "riavviare manualmente" non sono adatte. Alzarsi alle 2 del mattino e riavviare l'Expert Advisor su 20-30 terminali non è molto interessante. Se ci sono centinaia di conti, devo passare tutta la notte a riflettere? In breve, come automatizzare all'inizio della settimana lavorativa?
 
vovan-gogan:

Gente, per favore aiutatemi, voglio tenere traccia degli ordini nel mio EA e quando arriva un nuovo tick, se c'è un ordine aperto o pendente, andare immediatamente all'inizio della funzione di avvio, per aspettare un nuovo tick, cioè nessun ulteriore calcolo nell'EA finché il numero di ordini aperti o pendenti è 0. Questo codice soddisfa i requisiti?


Non ho messo le parentesi graffe,

   if (OrdersTotal()>=1)
    {
      return;
    }
 
forexnew:

Domanda per gli esperti, forse qualcuno ha incontrato questo:

Se un EA in esecuzione in un giorno feriale riavvia accidentalmente il terminale in un fine settimana, allora quando la comunicazione con il server (tempo di trading) arriva il lunedì, l'EA smette di funzionare.

Ho provato a riavviare il terminale ad una certa ora nei giorni feriali saltando tra i timeframe, ma l'EA non reagisce come dovrebbe. Dovrebbe ripartire, cioè ricalcolare di nuovo tutti i parametri.

Cosa consigliate? Forse sto complicando le cose e c'è un modo più semplice.

Le opzioni di risposta: "riavviare manualmente" non sono adatte. Alzarsi alle 2 del mattino e riavviare l'Expert Advisor su 20-30 terminali non è molto interessante. Se ci sono centinaia di conti, devo passare tutta la notte a riflettere? In breve, come automatizzare questo all'inizio della settimana?

Che tipo di errore scrive? Deve scrivere qualcosa o non fa proprio niente?
 
LazarevDenis:


Non ho messo l'apparecchio,

Porca puttana... Le parentesi non sono necessarie qui. Funzionerà così com'è:

 //--- Учет колличетва ордеров 
   if (OrdersTotal()>=1)
      return;
 
forexnew:
...se un EA in esecuzione in un giorno feriale riavvia accidentalmente il terminale nel fine settimana, allora quando la comunicazione con il server (tempo di trading) arriva il lunedì, l'EA smette di funzionare.
Per cominciare, deselezionate queste voci (a volte sono anche disabilitate al re-login). Se non aiuta, devi guardare il codice.

 

Può scrivere zero divide, per quanto mi ricordo. Ma questo è dovuto al fatto che alcuni parametri non vengono ricalcolati. In altre parole, l'EA semplicemente non si avvia correttamente perché è stato avviato prima dell'inizio della sessione di lavoro.

Naturalmente, queste caselle di controllo sono state rimosse.

Suppongo che qualsiasi Expert Advisor lanciato nel fine settimana si comporterà allo stesso modo. Qualcuno l'ha provato o funziona bene per tutti dopo un inizio di fine settimana?