Iscriviti ora
Indicatori/probuilder · probacktest · proorder · proscreener

WilderAverage

WilderAverage in ProBuilder restituisce la media mobile smussata di Wilder di un prezzo su N bar, lo smoothing usato all'interno di RSI e ATR. Sintassi, formula, esempi.

Sintassi

probuilder
WilderAverage[N](price)

Parametri

NomeTipoPredefinitoDescrizione
Nintero20Periodo di lookback. Il fattore di smoothing effettivo è 1/N, quindi valori più grandi producono una linea molto più lenta.
pricefonte di prezzochiusuraLa serie da smussare. Accetta close, open, high, low, o qualsiasi variabile personalizzata.

Formula

codice
WilderAverage = previousWilderAverage + (price - previousWilderAverage) / N

In modo equivalente, è una media mobile esponenziale con alpha = 1/N. Una EMA standard usa alpha = 2/(N+1), quindi una media di Wilder di periodo N si comporta come una normale EMA di periodo 2N - 1.

Come funziona

A ogni bar, la media di Wilder si muove di una frazione 1/N della distanza dal suo valore precedente verso il prezzo corrente. I bar recenti hanno quindi più peso di quelli più vecchi, ma il piccolo fattore di livellamento fa sì che la linea si adatti gradualmente e filtri la maggior parte del rumore da bar a bar.

Il metodo esiste perché Wilder progettò i suoi indicatori del 1978 per il calcolo manuale: la forma ricorsiva richiede solo il valore precedente e il nuovo prezzo. RSI, AverageTrueRange, e ADX usano tutti questa attenuazione internamente. Quando si ricostruisce o si modifica uno di quegli indicatori, usare WilderAverage anziché ExponentialAverage è ciò che mantiene l'output identico alla versione integrata della piattaforma.

La principale conseguenza pratica del 1/N fattore è il ritardo. Un WilderAverage[14] è lenta più o meno come una EMA a 27 periodi, quindi le impostazioni di periodo non si trasferiscono direttamente tra i tipi di media.

Esempi

Esempio 1, Variante MACD con smoothing di Wilder (Indicatore)

probuilder
// Difference between a 26- and a 12-period Wilder average
long = WilderAverage[26](close)
short = WilderAverage[12](close)
WilderMACD = long - short
RETURN WilderMACD

Costruisce un oscillatore in stile MACD da due medie di Wilder invece delle EMA standard, producendo una linea di segnale più liscia e più lenta. Questo è l'esempio originale con i commenti riscritti.

Esempio 2, Filtro di trend per un sistema breakout (ProOrder)

probuilder
// Only trade breakouts in the direction of the Wilder-smoothed trend
trend = WilderAverage[50](close)

IF NOT OnMarket THEN
  IF close > trend AND close CROSSES OVER Highest[20](high)[1] THEN
    BUY 1 CONTRACT AT MARKET
  ENDIF
ENDIF
IF LongOnMarket AND close CROSSES UNDER trend THEN
  SELL AT MARKET
ENDIF

Una media di Wilder a 50 periodi definisce il trend. I breakout long vengono presi solo sopra la linea e le posizioni si chiudono quando il prezzo torna sotto di essa.

Esempio 3, Screening di pullback verso la media di Wilder (ProScreener)

probuilder
// Uptrending instruments pulling back close to their Wilder average
wa = WilderAverage[21](close)
uptrend = wa > wa[10]
nearline = ABS(close - wa) / wa < 0.01
SCREENER[uptrend AND nearline](((close / wa) - 1) * 100 AS "% vs WA")

Seleziona gli strumenti la cui media di Wilder a 21 periodi è in salita e il cui prezzo si trova entro l'1 percento dalla linea, un setup di pullback nel trend.

Interpretazione

Una media di Wilder si legge come qualsiasi media mobile: un prezzo sopra una linea in salita suggerisce un trend rialzista, un prezzo sotto una linea in discesa suggerisce un trend ribassista, e gli incroci tra prezzo e linea, o tra due linee di lunghezze diverse, segnalano potenziali cambi di trend.

Rispetto ad altre medie dello stesso periodo è una delle opzioni più lente disponibili, più liscia di Average e molto più regolare di ExponentialAverage. Questo la rende più adatta ai filtri di trend e allo smoothing della volatilità che alla generazione rapida di segnali. Quando la reattività conta più della stabilità, ExponentialAverage, WeightedAverage, o ZLEMA sono le alternative usuali.

Errori e insidie comuni

  • Trattare il periodo come un periodo EMA. WilderAverage[14] è molto più lento di ExponentialAverage[14]. Per approssimare una EMA esistente, usa circa metà del periodo più uno, e per approssimare una media di Wilder con una EMA, usa 2N - 1.
  • Tipi di parentesi errati. Il periodo si mette tra parentesi quadre e il prezzo tra parentesi tonde: WilderAverage[26](close). WilderAverage(26, close) non compila.
  • Riprodurre RSI o ATR con lo smoothing sbagliato. Ricostruire gli indicatori di Wilder con ExponentialAverage o Average produce valori che si discostano da quelli integrati. Usa WilderAverage per corrispondenze esatte.
  • Riscaldamento sulle prime bar. Essendo una media ricorsiva, la linea ha bisogno di un certo numero di bar per convergere dopo l'inizio della serie di dati. I valori sulle prime decine di bar di un grafico o di un backtest sono meno affidabili.
  • Average, media mobile semplice.
  • ExponentialAverage, EMA standard con alpha = 2/(N+1).
  • WeightedAverage, media mobile ponderata linearmente.
  • RSI, oscillatore di momentum basato sullo smoothing di Wilder.
  • AverageTrueRange, misura di volatilità che usa lo stesso smoothing.
  • ADX, indicatore di forza del trend della stessa famiglia Wilder.
  • ZLEMA, media esponenziale a lag ridotto.
  • HullAverage, alternativa a basso lag costruita da medie ponderate.