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

 
eddy:

quindi voglio creare un oggetto in blu)

sergeev, quindiindicator_color1 è una variabile di colore?

int init() {
   IndicatorBuffers(2);
   SetIndexStyle(0, DRAW_ARROW, STYLE_SOLID, 3);
   SetIndexArrow(0, 108);
   SetIndexBuffer(0, g_ibuf_96);
   SetIndexBuffer(1, g_ibuf_100);
   SetIndexEmptyValue(0, 0.0);
   ArraySetAsSeries(g_ibuf_96, TRUE);
   ArraySetAsSeries(g_ibuf_100, TRUE);
   IndicatorShortName("ZigZag(" + ExtDepth + "," + ExtDeviation + "," + ExtBackstep + ")");
   return (0);
}
ecco i cerchi
 
alsu:

noooooo.

Supponiamo di avere un indicatore che disegna una linea. Supponiamo di voler disegnare un cerchio con questo indicatore. Ma vogliamo renderlo verde se la linea dell'indicatore è verde, e rosso se è rosso.

:)) quindi qual è il problema?
 
NON ignorare la richiesta!!! Per favore.
 
Luteciy:
NON ignorare la richiesta!!! Per favore.
mi sembrava che la tua richiesta non avesse nulla a che fare con questo thread. Se volete che qualcun altro scriva il codice per il TOR specificato al posto vostro, allora andate su https://www.mql5.com/ru/job
 
Grazie
 

Brava gente!

So che la situazione è idiota, ma non posso farci niente. Non posso fare amicizia con la funzione "OrderSelect".

Il mio TCP richiede solo un ordine aperto. Per favore, passatemi l'algoritmo di chiusura dell'ordine nel seguente caso:

Se il numero di ordini di mercato = 1, è un ordine di acquisto e la condizione 1 è soddisfatta (la inserisco io stesso), allora

chiuderlo al prezzo corrente.

e se è un ordine di vendita e la condizione 2 è soddisfatta (la inserirò anche io) allora

lo chiudiamo al prezzo corrente.

Di nuovo, il programma può aprire un solo ordine - non dobbiamo cercarlo tra migliaia di ordini!

Grazie.

 
trovare uno script o una funzione per chiudere l'ordine o gli ordini e inserire le vostre condizioni
 
Si possono creare funzioni con parametri opzionali, si può fare una funzione che restituisca la somma dei valori passati ad essa, in modo che il loro numero sia illimitato, o almeno limitato, ma grande)
 
//+------------------------------------------------------------------+
//|// Проверка смены тренда                                            |
//+------------------------------------------------------------------+
bool TrendChange(int Period_MAb,int Period_MAm,int shPer)
{
  int i;
bool TrendCh[i];
  for (int i=0; i<shPer; i++) {       
         double MAbSh[i]=iMA(NULL,0,Period_MAb,0,MODE_EMA,PRICE_WEIGHTED,i); // 
         double MAmSh[i]=iMA(NULL,0,Period_MAm,0,MODE_EMA,PRICE_WEIGHTED,i); 
   if ((MAbSh[0]>MAmSh[0] && MAbSh[i]>MAmSh[i]) ||(MAbSh[0]<MAmSh[0] && MAbSh[i]<MAmSh[i]))
      TrendCh[i]=true; 
   else TrendCh[i]=false;
//   if TrendCh[i-1]==TrendCh[i]
   return (true);
return (false);   
}
//+------------------------------------------------------------------+

Qualcuno ha incontrato il problema della bandiera del cambio di tendenza a due MA...? Sono arrivato a questo punto e mi sono bloccato...

Qualsiasi consiglio, pls! L'idea è di scrivere true nell'array [bar shift] quando MA1> MA2 è fatto. poi se tutto l'array è true - allora la bandiera è true.

 
100yan:

Qualcuno ha incontrato il problema della bandiera del cambio di tendenza a due MA...? Sono arrivato a questo punto e mi sono bloccato...

Qualsiasi consiglio, pls! L'idea è di scrivere true quando MA1> MA2 è fatto nell'array [bar shift] . poi se l'intero array è true - allora la bandiera è true.


bool TrendChange(string smb, int tf, int Period_MAb, int Period_MAm, int nB)
{
  for (int i=0; i<nB; i++) 
  {
     double maB=iMA(smb, tf, Period_MAb, 0, MODE_EMA, PRICE_WEIGHTED, i);
     double maM=iMA(smb, tf, Period_MAm, 0, MODE_EMA, PRICE_WEIGHTED, i); 
     if (maA<maB) return(false);
  }
  return(true);   
}


//imparare a formare il codice