[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 430

 

Mezz'ora ieri, e mezz'ora oggi, e mezz'ora nel forum prima di arrivare a!!!!!!!! Grazie!!!!!!!!!!

...si può anche fare così: -Sì, grazie. Sto bene così com'è, funzione chiara e semplice!

 
Trendy:
Ciao, sto studiando il tutorial MQL4 di Sergey Kovalev e non ho ancora trovato come accedere agli array di serie temporali di altre coppie di valute. Cioè, ho bisogno di caricare array di serie temporali di diverse coppie di valute in un EA. So che si può accedere ad alcuni dati usando la funzione MarketInfo(), ma il problema è che gli ID delle richieste non contengono la chiusura o altri parametri per le serie di prezzi. Per favore, consigliatemi dove posso leggere come organizzare il lavoro (se esiste) con array-tempi e diversi strumenti, o forse come aggirare questa limitazione.
doppio iClose( simbolo stringa, int timeframe, int shift)
Restituisce il valore del prezzo di chiusura della barra specificata dal parametro shift dal grafico corrispondente(simbolo,timeframe). In caso di errore, la funzione restituisce 0. Per maggiori informazioni sull'errore, chiamate GetLastError().
Per il grafico corrente, le informazioni sui prezzi di chiusura possono essere trovate nell'array predefinito Close[].
Parametri:
simbolo - Nome del simbolo. NULL significa simbolo corrente.
timeframe - Periodo. Può essere uno dei timeframe di un grafico. 0 significa il periodo del grafico corrente.
turno - Indice del valore ottenuto dalla serie temporale (spostamento relativo alla barra attuale del numero di periodi indietro specificato).
Esempio:
 Stampa("Barra corrente per USDCHF H1: ", iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ", iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ", iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i);

È così.
 

C'è un indicatore compilato in ex4 che è un

una striscia di punti blu e rossi come segnale per comprare o vendere.

Ho bisogno di codice per una condizione per entrare in un trade quando il grafico a barre cambia colore.

Sarei molto grato, anche per un abbozzo.

 
Ciao amici. C'è bisogno di implementare la seguente cosa: lo stocastico attraversa un certo livello dall'alto verso il basso n-numeri di volte e a condizione che ciò avvenga entro un certo intervallo di tempo alla variabile viene assegnato un valore (+). Bene, se per esempio in 30 minuti lo stocastico incrocia 80 tre volte dall'alto in basso. Grazie in anticipo)
 

Saluti a tutti!

Sto usando questo indicatore, ma tende a bloccarsi dopo ogni nuova barra aperta. Penso che sia a causa del gran numero di barre che vengono ricalcolate. Ho provato a limitare il numero di barre ma non funziona - l'indicatore cambia aspetto. Qualcuno può aiutarmi con questa funzione? Te ne sarei molto grato!

File:
 
Integer:

Provato. EMA su mql e in dll.

È abbastanza evidente. Se i calcoli sono più complessi, sarà più evidente.


Vi farò sapere. Ci sono anche molti cicli.
 

Ciao, l'unico profit-taker nell'EA è il Trailing Stop, che effettivamente chiude i trade. Non ci sono StopLoss e TakeProfit separati.

Naturalmente, ci sono situazioni in cui l'EA apre in una direzione, mentre il mercato va in un'altra.

In questi casi, le operazioni vengono chiuse con un profitto minimo, ma 2 operazioni del periodo di test sono state chiuse con perdite di -2,40 e -2,50.

Nei risultati del test, lo StopLoss è impostato diversi punti sopra o anche sotto il prezzo di apertura del trade.

Ecco il codice Trailing di MacdSample qui sotto. Per favore, aiutatemi a capire!

//-------------------------Trailing Stop----------------------------------+
for(cnt=0;cnt<total;cnt++)
     {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      if(OrderType()<=OP_SELL &&   // check for opened position 
         OrderSymbol()==Symbol())  // check for symbol
        {
         if(OrderType()==OP_BUY)   // long position is opened
           {
            // check for trailing stop
            if(TrailingStop>0)  
              {                 
               if(Bid-OrderOpenPrice()>Point*TrailingStop)
                 {
                  if(OrderStopLoss()<Bid-Point*TrailingStop)
                    {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
                     return(0);
                    }
                 }
              }
           }
         else // go to short position
           {
            // check for trailing stop
            if(TrailingStop>0)  
              {                 
               if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
                 {
                  if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                    {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
                     return(0);
                    }
                 }
              }
           }
        }
     }
   return(0);
 
skyjet:

Ciao...


Probabilmente uno scambio.
 
Integer:

Probabilmente uno scambio.


Il fatto è che non riesco a capire perché il Trailing Stop chiude un trade prima che la distanza tra il prezzo attuale e il prezzo di apertura abbia superato il valore TS, dopo che il prezzo si è mosso in direzione opposta all'apertura e poi è tornato al prezzo di apertura?

 
Buon pomeriggio.
Voglio aprire un ordine con 0,01 di volume sul mio conto $12,93, stop loss e take profit 0, ma il programma dice che non ci sono abbastanza soldi, perché?