Discussione sull’articolo "MQL5 per Principianti Guida all'Utilizzo degli Indicatori Tecnici negli Expert Advisor" - pagina 2

 
Per i principianti, questo articolo è sufficiente per illustrare l'uso degli indicatori.
 
Potreste dirmi come in un indicatore, ad esempio, nel file
Bands_handle=iBands(NULL,0,144,0,2,PRICE_CLOSE);

cambiare PRICE_CLOSE con il valore di "indicatore precedente", che è scritto manualmente.
Nel terminale può essere selezionato, ma come scrivere nel codice, non capisco.
Il manuale dice che è necessario l'Handle, ma io ho solo un buffer.
Per favore, aiutatemi.

 
Григорий Муратов #:
Potreste dirmi come cambiare il PRICE_CLOSE in un indicatore, ad esempio nel

cambiare PRICE_CLOSE con il valore di "indicatore precedente", che è scritto manualmente.
Nel terminale può essere selezionato, ma non capisco come scriverlo nel codice.
Il manuale dice che è necessario l'Handle, ma io ho solo un buffer.
Vi prego di aiutarmi.

Guardate l'articolo https://www.mql5.com/ru/articles/15

Индикатор от индикатора в MQL5
Индикатор от индикатора в MQL5
  • www.mql5.com
При написании индикатора, который использует краткую форму вызова функции OnCalculate(), можно упустить то обстоятельство, что индикатор может рассчитываться не только на ценовых данных, но и на данных другого индикатора (встроенного или пользовательского - не имеет значения). Вы хотите улучшить индикатор, чтобы он правильно считался не только на ценовых данных, но и значениях другого индикатора? В этой статье мы по шагам пройдем все необходимые этапы такой модификации и выведем дополнительные полезные правила для правильного написания индикатора.
 
Rashid Umarov #:

Consulta l'articolo https://www.mql5.com/ru/articles/15

Grazie per il link, ma nei commenti si afferma che il codice non è aggiornato. Proverò a controllare
 

Григорий Муратов #:
Подскажите пожалуйста, как в индикаторе, например в 

Bands_handle=iBands(NULL,0,144,0,2,PRICE_CLOSE);

cambiare PRICE_CLOSE con il valore di "indicatore precedente", che è scritto manualmente.
Nel terminale può essere selezionato, ma non capisco come scriverlo nel codice.
Il manuale dice che è necessario un Handle, ma io ho solo un buffer.
Per favore aiutatemi.

Se si guarda la documentazione https://www.mql5.com/ru/docs/indicators/ibands -- la specifica recita:

int  iBands(
   string              symbol,            // nome del personaggio
   ENUM_TIMEFRAMES     period,            // periodo
   int                 bands_period,      // periodo di calcolo della linea media
   int                 bands_shift,       // indicatore sfalsato orizzontalmente
   double              deviation,         // numero di deviazioni standard
   ENUM_APPLIED_PRICE  applied_price      // tipo di prezzo o maniglia
   );

-- "tipo di prezzo o handle" -- qui invece di PRICE_CLOSE si può scrivere l'handle di un indicatore personalizzato.

Per esempio:

MA_Custom_handle=iCustom(NULL,0,"Examples\\Custom Moving Average",
                     MA_Period,
                     MA_Shift,
                     MA_Method,
                     PRICE_CLOSE
                     );
Bands_handle=iBands(NULL,0,144,0,2, MA_Custom_handle );