in OnTick() o OnTime() ottiene i dati dell'indicatore al numero di BAR specificato dal buffer INDICATOR richiesto.
Sì, ho sbagliato. Ho bisogno dei valori dell'indicatore sulla prima e sulla seconda barra. Ma diciamo che le Bande di Bollinger hanno tre linee. Quale linea mi restituisce il valore? Mi scuso per le domande stupide, ma sono davvero confuso.
DCodec: Sì, mi sono espresso male. Voglio i valori dell'indicatore sulla prima e sulla seconda barra. Ma diciamo che le Bande di Bollinger hanno tre linee. Quale linea mi sta restituendo? Mi scuso per le domande stupide, ma davvero STUPORE.
Solo un momento ...
Ecco la funzione per recuperare i valori da iBands:
//+------------------------------------------------------------------+//| Get value of buffers for the iBands |//| the buffer numbers are the following: |//| 0 - BASE_LINE, 1 - UPPER_BAND, 2 - LOWER_BAND |//+------------------------------------------------------------------+double iBandsGet(constint buffer,constint index)
{
double Bands[1];
//ArraySetAsSeries(Bands,true);//--- reset error code ResetLastError();
//--- fill a part of the iBands array with values from the indicator buffer that has 0 index if(CopyBuffer(handle_iBands,buffer,index,1,Bands)<0)
{
//--- if the copying fails, tell the error code PrintFormat("Failed to copy data from the iBands indicator, error code %d",GetLastError());
//--- quit with zero result - it means that the indicator is considered as not calculated return(0.0);
}
return(Bands[0]);
}
La funzione è troncata - il suo scopo è di ottenere sempre UN SOLO valore dal buffer dell'indicatore "buffer" sul numero di barra "indice".
Tutte e tre le linee di iBands hanno le loro costanti:
La domanda non è chiara. Descrivete più precisamente DOVE e COSA volete fare.
Quando un EA riceve l'handle di un indicatore in OnInit() ...
intOnInit()
{
//--- Получить хэндл индикатора Envelopes_upper для отрисовки верхней линии
EnvHandle_upper=iEnvelopes(NULL,0,Period_upper,0,MODE_SMA,PRICE_MEDIAN,Deviation_upper);
....terminal disegna entrambe le linee, io ho bisogno solo della linea superiore.
Come disabilitare il disegno di questa linea? Cioè cambiare il suo colore in CLR_NONE, o cambiare lo stile della linea in DRAW_DONE?
Onestamente, non capisco niente. Ho bisogno dei valori della linea superiore dell'indicatore su Close[2], Close[1] e basta.
Come disegnare questi valori da QUALSIASI indicatore per non "incasinare" il codice dell'indicatore.
Potete ottenere i valori di qualsiasi indicatore buffer su qualsiasi BAR, non su Close... Vedere l'aiuto diiCustom:
iCustom
Restituisce l'handle dell'indicatore personalizzato specificato.
Procedura:
Potete ottenere i valori di qualsiasi indicatore buffer su qualsiasi BAR, non su Close... Vedere l'aiuto diiCustom:
iCustom
Restituisce l'handle dell'indicatore personalizzato specificato.
Procedura:
Sì, mi sono espresso male. Voglio i valori dell'indicatore sulla prima e sulla seconda barra. Ma diciamo che le Bande di Bollinger hanno tre linee. Quale linea mi sta restituendo? Mi scuso per le domande stupide, ma davvero STUPORE.
Solo un momento ...
Ecco la funzione per recuperare i valori da iBands:
La funzione è troncata - il suo scopo è di ottenere sempre UN SOLO valore dal buffer dell'indicatore "buffer" sul numero di barra "indice".
Tutte e tre le linee di iBands hanno le loro costanti:
//| 0 - BASE_LINE, 1 - UPPER_BAND, 2 - LOWER_BAND |Solo un momento ...
Ecco la funzione per recuperare i valori da iBands:
La funzione è troncata - il suo scopo è di ottenere sempre UN SOLO valore dal buffer dell'indicatore "buffer" sul numero di barra "indice".
Tutte e tre le linee iBands hanno le loro costanti:
Sì... sì. È solo che non capisco come applicare
//| 0 - BASE_LINE, 1 - UPPER_BAND, 2 - LOWER_BANDProbabilmente è dovuto alla mentalità ristretta. Sto ancora pensando come in MQL4.
Sì... sì. È così che non capisco come applicare
Probabilmente è dovuto alla mentalità ristretta. Sto ancora pensando in termini di MQL4.
Esempio di utilizzo di iBands da KodoBase:Bande di Bollinger RSI
...
Hai avuto fortuna? O creare un argomento con una descrizione passo per passo di come recuperare i dati dall'indicatore?
Come va? O creare un argomento con una descrizione passo per passo di come recuperare i dati dall'indicatore?
Sei divertito. E mi rendo conto solo ora che
CopyBufferQuesto è ciò di cui ho bisogno.
Grazie.
Ho un'altra domanda. Come posso disattivare una linea in un indicatore che non mi serve?
Diciamo di disabilitare UPPER_LINE in iEnvelopes.
Tu stai ridendo. E solo ora ho capito che non sono divertente.
questo è ciò di cui ho bisogno.
Grazie.
Ti stai immaginando le cose. Non stavo ridendo, stavo chiedendo seriamente. Per esempio, ho questo argomento:Simple Expert Advisor. Controllo delle dimensioni della barra. Comprare/Vendere.
Mi permetto un'altra domanda. Come faccio a disattivare la linea nell'indicatore che non mi serve?
Diciamo di disabilitare UPPER_LINE in iEnvelopes.
La domanda non è chiara. Descrivete più precisamente DOVE e COSA volete fare.
L'hai immaginato. Non stavo ridendo, stavo chiedendo seriamente. Per esempio, ho questo argomento:Simple Expert Advisor. Controllo delle dimensioni della barra. Comprare/Vendere.
La domanda non è chiara. Descrivete più precisamente DOVE e COSA volete fare.
Quando un EA riceve l'handle di un indicatore in OnInit() ...
....terminal disegna entrambe le linee, io ho bisogno solo della linea superiore.
Come disabilitare il disegno di questa linea? Cioè cambiare il suo colore in CLR_NONE, o cambiare lo stile della linea in DRAW_DONE?