Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 785

 
001:
Non riesco a capire come codificare. Ho bisogno che l'EA aspetti per un certo periodo di tempo se l'ultima posa non è stata redditizia. Hai qualche idea?
Avere un tempo di chiusura di una posizione non redditizia OrderCloseTime(). Da esso, si può leggere il tempo tramite TimeCurrent() - OrderCloseTime(). O in barre usando iBarShift (NULL, 0, OrderCloseTime()).
 
AlexeyVik:

Sarà semplice se si definisce la profondità da cercare. Potete usare CopyLow e ArrayMinimum() invece di iLowest



Grazie! Ma questo è il problema, che impostando la profondità troviamo il punto medio, ma in realtà ci potrebbero essere diverse formazioni ABC.
 
Forexman77:
Grazie! È proprio questo il problema, che impostando la profondità, troviamo il punto medio, ma in realtà ci possono essere diverse formazioni ABC.

Qual era la domanda, era la risposta.

Se non trovi quello che vuoi, non lo stai cercando in quel modo. Cambia il tuo approccio al problema.

Purtroppo non capisco dal tuo testo cosa cerchi e cosa trovi.

 

Ho fatto un indicatore: trovare il massimo, controllare la diminuzione di un certo numero di punti dal massimo.

La questione è come tornare indietro dopo l'evento e mettere la freccia sul massimo.

#property indicator_chart_window
#property indicator_buffers 3
#property  indicator_color1 Magenta
#property  indicator_color2 Aqua
#property  indicator_color3 Lime
//--- input parameters
extern int       Period_=5;
extern double       Rmax=0.005;
//--- buffers
double Max[];
double Min[];
double RazmahMax[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   IndicatorBuffers(3);
   SetIndexBuffer(1,Max);
   SetIndexBuffer(2,Min);
   SetIndexBuffer(0,RazmahMax);
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,226);
   SetIndexEmptyValue(0,0.0);
   IndicatorDigits(Digits+1);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
    int counted_bars=IndicatorCounted(),limit, i;
    double minimum,maximum,spuskMax;
   if(counted_bars>0)
      counted_bars--;  
   limit=Bars-counted_bars;
   for(i=0;i<limit;i++)
   {
      maximum=High[iHighest(NULL,0,MODE_HIGH,Period_,i)];//ЗДЕСЬ НУЖНА СТРЕЛКА, ЕСЛИ СРАБОТАЛО СОБЫТИЕ НА ВТОРОМ ЦИКЛЕ
      minimum=Low[iLowest(NULL,0,MODE_LOW,Period_,i)];
      Max[i]=maximum;
      Min[i]=minimum;
   }
   for(i=0;i<limit;i++)
   {
   spuskMax=Max[i]-Low[i];
   if (spuskMax > Rmax && Close[i] < Open[i])RazmahMax[i]=High[i];//падение от max на определенное кол-во пунктов
   }
   return(0);
  }
//+------------------------------------------------------------------+
 
AlexeyVik:

Qual era la domanda, era la risposta.

Se non trovi quello che vuoi, non lo stai cercando in quel modo. Cambia il tuo approccio al problema.

Purtroppo non capisco dal tuo testo cosa cerchi e cosa trovi.


Cerchiamo la formazione ABC tra il massimo e il minimo e non dimentichiamo che ce ne può essere più di una all'interno di queste formazioni .

Quindi dopo aver trovato gli estremi:

1. Facciamo in modo che ci siano tre onde o che ce ne siano diverse (il più poco chiaro è come identificare le formazioni)

2.Se ci sono diversi movimenti, dobbiamo restringere la ricerca.

P.S. Quindi chiedo: in che direzione cambiare l'approccio? E sulla comprensione. Non conosco molto bene l'inglese, ma ho sempre una buona comprensione in un forum straniero.

Questo è spesso il classico "sei un pazzo").

 
Forexman77:

Cerchiamouna formazione ABC tra un massimo e un minimo, tenendo presente che possono essercene più di una all'interno di queste formazioni .

Quindi dopo aver trovato gli estremi:

1. Dobbiamo assicurarci che ci siano tre onde o che ce ne siano diverse (la cosa più poco chiara qui è come identificare le formazioni)

2.Se ci sono diversi movimenti, dobbiamo restringere la ricerca.

P.S. Quindi chiedo: in che direzione cambiare l'approccio? E sulla comprensione. Non conosco molto bene l'inglese, ma ho sempre una buona comprensione in un forum straniero.

Questo è spesso il classico "sei un pazzo").

Forse lo capirei, ma non conosco l'inglese. Non conosco l'inglese, tranne alcune parole applicabili alla programmazione.

Beh, se lo capiscono in quella lingua, perché non hanno risolto il problema? Forse perché capire teoricamente è diverso dal capire matematicamente? A cosa serve capire la formazione dell'ABC se deve essere descritta da prezzi e barre invece che da tali parole? Se io personalmente non ho mai fatto l'analisi delle onde e non mi interessa, allora per capirti devo prima studiare queste onde e poi immaginare come descrivere il tutto. Non sarebbe meglio per te descrivere più concretamente e brevemente ciò che non funziona? Non voglio parlare di tutti o almeno della maggior parte di essi, ma personalmente non voglio cercare errori nel codice degli altri. Leggere 7-10 righe è una cosa, e 70-100 è un'altra.

Non dispiacerti, non ha niente a che vedere con il classico "sei un pazzo".

 

Confesso che io stesso non sono un sostenitore dell'analisi delle onde. Quello che sto cercando di identificare ora sono formazioni con 3 o 4 estremi.

In due immagini il problema principale è quello di rilevare programmaticamente MAX1 e MIN2 in esse. Qualche idea, varianti, come si può fare?

 
 

Per favore consigliatemi!!! come risolvere l'errore di invio di statement.htm su myfxbook.com

Esempio di errore:

2014.11.21 15:01:41.020 Editore: fallito

2014.11.21 15:01:41.020 FTP: impossibile aprire il file [C:\Program Files\MetaTrader 4 - RoboForex\profiles\statement.htm]

2014.11.21 15:01:40.270 Editore: errore nell'apertura del file

2014.11.21 15:01:40.270 Editore: inizio

All'inizio, ho pensato che fosse un problema di server e broker. Ma quando ho scaricato i terminali di altri broker, lo stesso errore ha iniziato a comparire!

Cosa fare?

 
Forexman77:

Confesso che io stesso non sono un sostenitore dell'analisi delle onde. Quello che sto cercando di identificare ora sono formazioni con 3 o 4 estremi.

In due immagini il problema principale è quello di rilevare programmaticamente MAX1 e MIN2 in esse. Qualche idea, varianti, come fare?

C'è un altro problema. Non c'è ambiguità nei vostri disegni. Tra MIN2 nella prima immagine e MIN2 nella seconda immagine vedo almeno cinque minimi simili. Come spiega che questi minimi devono essere ignorati?

Altrimenti come ho suggerito all'inizio CopyLow e dall'array risultante ArrayMinimum e ArrayMaximum. Poi cambia da quale barra e quanto copiare e di nuovo cerca il massimo e il minimo.

Motivazione: