[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non potrei andare da nessuna parte senza di te - 2. - pagina 178

 
unnnamed:

Grazie Eddie, ma non è questo.

Creare questi oggetti su un grafico e metterli su tutti.

senza nome:
Ho bisogno di un indicatore che mostri le informazioni inserite su tutti i grafici. Per esempio, seleziono "AUDUSD - su, GBPUSD - giù" nella finestra del grafico e NZDUSD (l'indicatore è visualizzato su di esso) sarà automaticamente aggiornato sotto forma di icone e testo in modalità tempo reale. È possibile fare una cosa del genere e in quale direzione iniziare a cercare?

Puoi farlo qui, e posso farlo io stesso.

 
Roman.:


Soluzione:

Per comprare (vendere - per analogia):

1. Frattura MA - ottenere i valori MA sulle barre 3, 2 e 1 - confrontare. Se i valori MA sulle barre 3>2 e 2<1, è una rottura.

2. poi - frattale - penetrazione - un segnale per fare un accordo

3 Per quanto riguarda l'enumerazione di MA - mettetela in variabili esterne (ottimizzabili):

Period_MA (si può impostare da 2 a 240 con il passo 2), MODE - (metodo di calcolo di MA - gamma di cambiamenti da 0 a 3 passo 1), PRICE_TYPE - (costante di prezzo - gamma di cambiamenti da 0 a 6 passo 1), ho sentito che quando si lavora all'interno del giorno MA contare sui valori medi (prezzo di chiusura non è importante), quando si lavora sulle candele giorno MA contare sui prezzi di chiusura dei giorni.

PERIODO - lo si cambia manualmente ad ogni ottimizzazione successiva - 1,5,15,30,60,240...

Premi F1 sull'iMA - leggi attentamente tutto di nuovo.

E naturalmente ottimizzare TP e Stop Loss come al solito.

P.S. Non dimenticare di scrivere un'informazione sui risultati del test... :-)))

Ho testato tutti i TF da M1 a H1 con l'ottimizzazione di tutte le MA fino a periodo = 120. Il risultato è che questa strategia non è redditizia. La migliore variante era in H1 con ottimizzazione per 16 giorni e test per i prossimi 3 giorni. Ma alla fine anche questa variante dà una perdita.
 
unnnamed:

Grazie Eddie, ma non è questo. Rileggendo il mio post ho capito che era fuorviante. Ho allegato una foto, c'è una descrizione più dettagliata.

Penso che sia fattibile con le classi di mt5... ci sono più funzioni
 
eddy:

Sii più specifico.

un array sono variabili con lo stesso nome ma un numero diverso

Per esempio c'è un flag, può essere scritto manualmente if (!A ) allora ClsB[3] =true.

Non riesco a capire come far prendere automaticamente il valore 3, per questo chiedo un esempio. Nel tutorial, come è lì con un array predefinito Open[i] - non è abbastanza chiaro, almeno per me! Penso che tutti i geni della programmazione abbiano iniziato da qualche parte e non siano nati con una calcolatrice nel loro cordone ombelicale...

if (Cls_B[i]||Cls_S[i]) LotCt=NormalizeLot(OrderLots()/(4-i)); 
 

Cosa intendi per "automatico"? La programmazione è l'automazione. se i non è impostato da un parametro esterno, è impostato automaticamente.

Che valore di i volete?

 
volshebnik:
Testati tutti i TF da M1 a H1 con ottimizzazione di tutte le MA fino a periodo = 120. Il risultato - questa strategia non è redditizia. La migliore variante era in H1 con ottimizzazione per 16 giorni e test per i prossimi 3 giorni. Ma alla fine anche questa variante dà una perdita.


Chi ne dubiterebbe... Tutto avrebbe dovuto essere chiaro come il giorno, secondo me. :-)))

Vi ho aiutato nella vostra ricerca per arrivare a QUESTA soluzione.

 
eddy:

Cosa intendi per "automatico"? La programmazione è l'automazione. se i non è impostato da un parametro esterno, è impostato automaticamente.

Che valore di i volete?

Per risolvere bene questo problema:
if (Cls_1) LotCt=NormalizeLot(OrderLots()/4); 
             else if (Cls_2) LotCt=NormalizeLot(OrderLots()/3);
                  else if (Cls_3) LotCt=NormalizeLot(OrderLots()/2);  
Sotto forma di. Può essere semplice... Ma continuo a ricevere un errore
if (Cls_[i]) LotCt=NormalizeLot(OrderLots()/(4-i)); 
 
100yan:
Per risolvere questo problema meravigliosamente:
Sotto forma di. Può essere semplice... Ma continuo a ricevere un errore.
Formulare la condizione in parole, aiuta.
 
100yan:
Per risolvere bene questo problema:
Sotto forma di. Potrebbe essere semplice... Ma continuo a ricevere un errore.

1) come avete impostato l'array Cls_

2) Perché ne avete bisogno in questo problema in linea di principio? Basta salvare 1/2/3 in Cls_ e scrivere:

 LotCt=NormalizeLot(OrderLots()/(4-Cls_)); 
 
Se all'interno di un indicatore situato su una certa coppia, diciamo Eurodollaro, scrivo Buffer1[0]=Close[i], ottengo il prezzo di questa coppia. Ma se voglio condividere con Close[i] un'altra coppia, diciamo GBPdollaro?
Motivazione: