Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 345

 
Сергей:

Ti capisco perfettamente, ma ti sbagli.

Mettete le virgolette e otterrete:

'EURUSD' - nome previsto MyIndi 3 (MA).mq4 61 14

A destra

E dove sono le citazioni qui?

EURUSD'

 
Artyom Trishkin:

Dove sono le virgolette?


Le virgolette nel mio codice sono doppie, nell'errore ottengo virgolette singole, non posso farci niente.

Non ho problemi con l'emissione di dati nella finestra. Il problema è l'uscita sbagliata. Invece di "flat" si dice "Attenthion!" e viceversa. L'algoritmo è elementare, non so dove ho sbagliato...

Anche io non ho problemi con la compilazione. Posta con il codice #3437.

 

L'indicatore stessohttps://cloud.mail.ru/public/6Ney/gTq1xMcMd

Ho sollevato la questione dei grafici JPY che cambiano i risultati qui

L'indicatore in questione è quihttps://cloud.mail.ru/public/CAXu/p3uD3UzBJ . Allora non ho ricevuto alcun aiuto per la mia domanda, potete aiutarmi ora?
 
Сергей:

Ho le doppie virgolette nel mio codice, ma nell'errore ottengo le virgolette singole, e non posso farci niente.

Non ho problemi con l'emissione di dati nella finestra. Il problema è con i risultati sbagliati. Invece di "flat" si dice "Attenthion!" e viceversa. L'algoritmo è elementare, non so dove ho sbagliato...

Anche io non ho problemi con la compilazione. Posta con il codice #3437.

Per mantenere le persone indovinate, e per essere in grado di capire bene di cosa stai parlando, ci sono tutte le caratteristiche per questo nell'editor di post che si inserisce:

puoi allegare il codice come file (c'è +Aggiungi file in basso),

è possibile emettere il codice come codice,

per esempio:

//+------------------------------------------------------------------+
//| Выводит в журнал список свечей серии                             |
//+------------------------------------------------------------------+
void CSeriesCollection::PrintListCandlesSeries(const uint num_candle)
  {
   int total=m_series.Total();
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
   for(int i=0; i<total; i++){
      CCandleObject* candle=m_series.At(i);
      if(candle!=NULL){
         datetime time=candle.Time();
         if(time<TimeCurrent()-PeriodSeconds()*num_candle) continue;
         string tm=TimeToString(candle.Time());
         this.PrintCandle(candle);
         }
      }
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
  }
//+------------------------------------------------------------------+

puoi anche visualizzare la linea di log come codice (puoi copiarla dal log del terminale e incollarla qui come codice (pulsante SRC))

2017.10.20 04:04:09.014 Свеча NZDUSD 2017.10.20 00:00, open: 0.70296, high: 0.70360, low: 0.70260, close: 0.70355, vol tick: 87, размер: 100, тело: 59, верх. тень: 5, нижн. тень: 36, тип: Бычья

allora la gente non avrà un'incomprensione di ciò di cui stai parlando.

E mandare la gente a una risorsa di terzi per scaricare non si sa che cosa da essa - non è molto amichevole, giusto?

 
Сергей:
...

Nessun problema neanche con la compilazione. Posta con il codice #3437.

Beh, puoi cliccare su #3437, selezionare "Copia link" e incollare il link nel tuo post (anche nell'editor dei post) - in modo che le persone non debbano navigare dove non è necessario ;)

 
Artyom Trishkin:

E rimandare la gente a una risorsa di terzi per scaricare qualsiasi cosa da lì non è molto amichevole, vero?


Perdonate il mio analfabetismo.


MyIndi 1 MultiValue su MultiTimeFrames. In basso mostra il numero di punti di acquisto.

MyIndi 2 Uguale al primo, ma ha rimosso i dati non necessari. Dati aggiunti in basso - questo è il cambiamento medio del prezzo al minuto per i diversi timeframe.

MyIndi 3 è multi valuta. Si basa su un singolo MA con uno spostamento. Quando la differenza del MA viene raggiunta, mostra "Warning!


Tutti e tre funzionano in modo errato quando sono collegati a grafici con JPY (per qualche motivo). MyIndi 3 non funziona affatto correttamente, anche se il codice è molto semplice.

E naturalmente in tutti loro non riesco a trovare cosa c'è di sbagliato, dato che sono nuovo in questo... Se qualcuno ha il tempo di capirlo e aiutarmi, gliene sarei molto grato.
File:
MyIndi.mq4  54 kb
MyIndi_2.mq4  38 kb
 
Сергей:

Perdonate il mio analfabetismo.


MyIndi 1 Multi valuta su MultiTimeFrames. In basso mostra il numero di punti di acquisto.

MyIndi 2 Uguale al primo, ma ha rimosso i dati non necessari. Dati aggiunti in basso - questo è il cambiamento medio del prezzo al minuto per i diversi timeframe.

MyIndi 3 è multi valuta. Si basa su un singolo MA con uno spostamento. Quando la differenza del MA viene raggiunta, mostra "Warning!


Tutti e tre non funzionano correttamente quando sono attaccati a grafici con JPY (per qualche motivo). MyIndi 3 non funziona affatto correttamente, anche se il codice è molto semplice.

E naturalmente non riesco a trovare l'errore in tutti loro perché sono un novizio in questa materia. Se qualcuno ha tempo per capire e aiutare, gliene sarò molto grato.

Guarda"Punto", il JPY è diverso. Usa MarketInfo. Per esempio double EUR_point=MarketInfo("EURUSD",MODE_POINT);

 
Nauris Zukas:

Dai un'occhiata a "Point", JPY è diverso. Usa MarketInfo. Per esempio double EUR_point=MarketInfo("EURUSD",MODE_POINT);

Grazie, lo proverò! Ho avuto un'idea che era il problema, ma non sapevo COME.


Mi ha aiutato! Grazie mille, uomo gentile! =)

Ho aggiunto all'inizio

      double USD_point=MarketInfo("EURUSD",MODE_POINT);
      double JPY_point=MarketInfo("USDJPY",MODE_POINT); 

e a seconda della coppia che elaboro (con o senza JPY) ho usato una o l'altra variabile.

 
Nauris Zukas:

Guarda Point, il JPY è diverso. Usa MarketInfo. Per esempio double EUR_point=MarketInfo("EURUSD",MODE_POINT);

È meglio andare subito.

Point
SymbolInfoDouble(Symbol(),SYMBOL_POINT)
 
Vitaly Muzichenko:

Meglio subito.


Penso che la variante proposta da@Nauris Zukas sia adatta per le multivalute.

E la tua variante è migliore per la moneta unica perché prende i dati dal grafico a cui è collegata.