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

 
first_may:
Buona sera. Potreste dirmi se ci sono degli indicatori del profilo di mercato? E anche una documentazione o una descrizione di come usarli? Almeno i segnali più semplici per entrare nel mercato usando gli indicatori del profilo di mercato?

Cosa intende per profilo di mercato?
 
Vinin:

Cosa intende per profilo di mercato?


Ecco qui:
" Profilo dimercato come un modo di rappresentare graficamente l'accettazione o il rifiuto del prezzo nel tempo".

Ho trovato l'indicatore http://fxcoder.ru/indicators/tpo

Ma non so come prendere la decisione giusta, quindi volevo chiedere agli esperti...

 
first_may:


Qui:
"Profilo di mercato come un modo di rappresentare graficamente l'accettazione o il rifiuto del prezzo nel tempo".

Ho trovato l'indicatore http://fxcoder.ru/indicators/tpo

Ma non so come prendere la decisione giusta, quindi volevo chiedere agli esperti...


Allora sembra che lei stia facendo la domanda sbagliata. Questo thread è per uno scopo diverso
 
Vinin:

Allora sembra che tu l'abbia chiesto nel posto sbagliato. Questo thread non è per quello scopo.



Dove posso andare?

C'è anche questo indicatore: https://www.mql5.com/ru/code/8115#20318

Mi chiedo come analizzarlo? Questa domanda non trova risposta qui?

 

Ciao a tutti, buon 9 maggio! Giorno della vittoria!

I professionisti hanno bisogno del vostro aiuto.

if ( торговые условия)
     {                                          
      Opn_S=true;                              
      }
if ( торговые условия)
     {                                          
      Opn_B=true;                            
     }
if ( торговые условия)
     { 
     Cls_S=true;
     }
     else
if ( торговые условия)
     { 
     Cls_B=true;
     }

Dopo questo codice ho bisogno di un codice che agisca separatamente dal codice precedente.

Cioè, la posizione sarà aperta e tenuta da altri criteri impostati, e quando questi spariscono per uscire dalla posizione e iniziare ad agire sulle condizioni di trading originali (codice sopra).

L'essenza della strategia è la seguente: due barre non toccano l'EMA min comprano, due barre non toccano l'EMA max vendono.

Quale codice è necessario per implementarlo.

Sto cercando di mettere questo in criteri (non sono sicuro che questo codice sia una buona soluzione):

else
    for(i=0;i<=Quant_Bars-1;i++)  
   if (Low[i]> MA_3_t)
     {
     Opn_B=true;
     }
      return(false);

Passa senza errori, ma quando aggiungo un criterio di vendita dà errori - questo è un problema.

Un altro - come tagliare un criterio dall'adempimento che sta sopra?

Il terzo è quello di impostare i parametri EMA in base al numero di barre giornaliere (ogni barra dovrebbe fare riferimento all'EMA corrispondente al suo giorno).

 
first_may:



Dove posso andare?

C'è anche questo indicatore: https://www.mql5.com/ru/code/8115#20318

Mi chiedo come analizzarlo? Questa domanda non trova risposta qui?


È lì che si potrebbe fare la domanda
 

Gente, potete dirmi perché il nome utente e la password non si registrano... o chiunque possa sapere e consigliare...

Arriva il messaggio "4032291": connessione fallita (No connection).

Ping sta controllando - significa che c'è una connessione. Altrimenti, non c'è connessione per qualche motivo.

E come usare questo mql4?

 
Vinin:

Ecco come si può fare una domanda lì


Ci sarà una risposta? L'ultima voce è datata 11.05.2010 00:44...
 
first_may:


Risponderanno? L'ultima voce è datata 11.05.2010 00:44...
L'autore della pubblicazione è elencato lì, clicca e fagli una domanda in un messaggio privato!
 

Artyom e Boris, grazie per aver "masticato" la mia domanda. Ho dei periodi in cui posso bloccarmi su cose abbastanza semplici, come è successo questa volta...

Ora c'è una nuova domanda.

Ho aggiunto alla funzione che calcola la quantità di ordini aperti t, cerca gli ordini di un tipo specificato con profitti specificati e confronta i loro profitti con qualche valore specificato (attualmente 0). Inoltre, se non ci sono ordini aperti, vengono restituite 2 bandiere con valore True con i parametri della funzione FindOrders(), significa che è possibile inviare un ordine, ma se ci sono ordini, il profitto viene controllato per assicurarsi che sia superiore al valore impostato, se è inferiore al valore impostato, vengono restituite 2 bandiere con valore False con i parametri della funzione FindOrders(), quindi quando ci sono ordini perdenti in qualche direzione, non ci saranno investimenti nella direzione perdente.

//+-------------------------------------------------------------------------------------+
//| Поиск своих ордеров                                                                 |
//+-------------------------------------------------------------------------------------+
int FindOrders(bool& long, bool& short)
{
   int t, total = OrdersTotal() - 1;
   
   for (int i=total; i>=0; i--)
   {
      if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;
          if (OrderSymbol() != Symbol()) continue;
              if (OrderMagicNumber() != i_magic) continue;
              {
                 if (OrderType() < 0)              // Ордера отсуствуют, значит можно послать ордер..
                     {
                        long = true;               // .. на покупку
                        short = true;              // .. на продажу
                     }
                 
                 if (OrderType() == OP_BUY)        // Найден ордер типа OP_BUY
                 {
                     if (OrderProfit() > 0)        // Если профит ордера выше заданного значения, то..
                         long = true;              // .. разрешена покупка
                 }

                 if (OrderType() == OP_SELL)       // Найден ордер типа OP_SELL
                 {
                     if (OrderProfit() > 0)        // Если профит ордера выше заданного значения, то..
                         short = true;             // .. разрешена продажа
                 }
                 
                 t++;
              }
   }
   
   return (t);
}

Dopo di che chiamo la funzione FindOrders() nella funzione segnale:

//+-------------------------------------------------------------------------------------+
//| Получаем общий торговый сигнал                                                      |
//+-------------------------------------------------------------------------------------+
int GetGeneralSignal()
{
   bool short = false,
        long = false;
        
   if (FindOrders(short, long) > 3)
       return (SIGNAL_NO);

   if (long == false)
       return (SIGNAL_NO);
   if (GetRSI(1) < i_RSIToUpLimit)
      if (GetRSI(0) > i_RSIToUpLimit)
      {
         return (SIGNAL_BUY);
      }
           
   if (short == true)
       return (SIGNAL_NO);
   if (GetRSI(1) > i_RSIToDnLimit)
      if (GetRSI(0) < i_RSIToDnLimit)
      {
         return (SIGNAL_SELL);
      }
            
   return (SIGNAL_NO);
}

Gli ordini si sono aperti del tutto. La logica sembra essere corretta. Forse, potete vedere dove ho sbagliato?

Capisco che tutto può essere fatto più facilmente con una funzione separata e posso farlo. Ma voglio capire perché non funziona in questa versione.

Motivazione: