Iscriviti ora
Indicatori/probuilder · probacktest · proorder · proscreener

Repulse

Repulse in ProBuilder misura la pressione rialzista o ribassista esercitata su ogni candela su n bar, oscillando attorno allo zero. Sintassi, formula, esempi.

Sintassi

probuilder
Repulse[n](price)

Parametri

NomeTipoPredefinitoDescrizione
ninteronessunoNumero di bar analizzate. Valori piccoli come 1 a 5 leggono la pressione sulle singole candele, valori più grandi come 15 o più descrivono l'onda più ampia.
pricefonte di prezzochiusuraLa serie di prezzi usata nel calcolo. Di solito close, accetta anche open, high, o low.

Formula

La definizione comunemente citata confronta una forza verso l'alto con una forza verso il basso, ciascuna espressa come percentuale della chiusura e livellata esponenzialmente:

codice
up   = 100 * (3 * close - 2 * lowest low over n - open) / close
down = 100 * (open + 2 * highest high over n - 3 * close) / close
Repulse = ExponentialAverage[5n](up) - ExponentialAverage[5n](down)

La forza verso l'alto cresce quando la chiusura si colloca molto sopra i minimi recenti, la forza verso il basso cresce quando la chiusura si colloca molto sotto i massimi recenti. La loro differenza livellata oscilla attorno allo zero.

Come funziona

Repulse cerca di rispondere numericamente a una domanda sulle candele: nelle ultime n bar, chi ha spinto più forte, compratori o venditori. Una candela che apre in basso e chiude vicino alla parte alta del suo range recente mostra i compratori che assorbono l'offerta, il che alza la componente rialzista. Il caso opposto alza la componente ribassista. Compensando le due si ottiene una singola linea il cui segno sintetizza quale lato stia vincendo.

L'indicatore si comporta come gli altri oscillatori centrati sullo zero. Il segno indica la direzione prevalente, la pendenza indica la variazione di pressione e le divergenze rispetto al prezzo avvertono che il movimento in corso sta esaurendo i partecipanti. Poiché il periodo di smoothing si scala con n (cinque volte la finestra di analisi), più grande n valori producono linee sensibilmente più lente e più morbide.

Una tecnica comune esegue più istanze contemporaneamente, per esempio Repulse[1], Repulse[5] e Repulse[15], per leggere onde di pressione brevi, intermedie e più lunghe sullo stesso grafico. L'allineamento di tutte tre sullo stesso lato dello zero è considerato una lettura di maggiore convinzione rispetto a una singola linea.

Esempi

Esempio 1, Flag di pressione rialzista e ribassista (Indicatore)

probuilder
i1 = Repulse[10](close)
IF i1 > 0 THEN
  bullish = 1
  bearish = 0
ELSIF i1 < 0 THEN
  bullish = 0
  bearish = 1
ENDIF
RETURN bullish coloured(127,255,0), bearish coloured(255,64,64)

Converte il Repulse a 10 barre in due flag binari, disegnati in verde per la pressione rialzista e in rosso per quella ribassista. Nota che quando i1 è esattamente zero, entrambi i flag mantengono i valori precedenti perché le variabili persistono tra le bar.

Esempio 2, Ingresso all'incrocio dello zero con filtro di trend (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

pressure = Repulse[5](close)
trend    = Average[100](close)

// Buy when pressure turns positive in an established uptrend
IF NOT LongOnMarket AND close > trend AND pressure CROSSES OVER 0 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

// Exit when pressure flips negative
IF LongOnMarket AND pressure CROSSES UNDER 0 THEN
  SELL AT MARKET
ENDIF

La media a 100 bar mantiene gli ingressi sul lato del trend, e l'incrocio dello zero di Repulse sincronizza l'ingresso con il momento in cui la pressione di acquisto riprende il controllo.

Esempio 3, Allineamento della pressione su più periodi (ProScreener)

probuilder
shortP = Repulse[1](close)
midP   = Repulse[5](close)
longP  = Repulse[15](close)
aligned = shortP > 0 AND midP > 0 AND longP > 0
SCREENER[aligned](midP AS "Repulse 5")

Restituisce gli strumenti in cui le letture di Repulse a 1, 5 e 15 bar sono tutte positive, la condizione di allineamento spesso usata come conferma rialzista.

Interpretazione

LetturaSignificato
Repulse > 0Pressione rialzista netta sulla finestra.
Repulse < 0Pressione ribassista netta sulla finestra.
Attraversa 0 al rialzoI compratori prendono il controllo, spostamento del momentum verso l'alto.
Attraversa 0 al ribassoI venditori prendono il controllo, spostamento del momentum verso il basso.
Divergenza rispetto al prezzoNuovo estremo di prezzo senza un nuovo estremo dell'oscillatore, la pressione dietro il movimento si sta affievolendo.

Le letture di Repulse sono relative, non limitate, quindi i valori estremi differiscono per strumento e per n. Normalmente si legge per segno, pendenza e divergenza più che per il livello assoluto, e si conferma con il volume o con il contesto di supporti e resistenze.

Errori e insidie comuni

  • Il livellamento scala con il periodo. Lo smoothing esponenziale interno usa un multiplo di n, quindi raddoppiando n più che raddoppia il ritardo. Un Repulse[15] la linea reagisce molto più tardi di quanto suggerisca l'intuizione basata su un lookback di 15 bar.
  • Nessun limite fisso. A differenza di RSI o Stochastic non esistono livelli universali di ipercomprato o ipervenduto. Soglie come > 20 deve essere calibrato per strumento e timeframe.
  • Whipsaw sull'incrocio dello zero con n piccolo. Repulse[1] cambia segno frequentemente nei mercati tranquilli. Operare sui semplici attraversamenti dello zero senza un filtro di trend genera una serie di operazioni perdenti.
  • Caso di uguaglianza non gestito. Nella logica a rami come nell'Esempio 1, un valore esattamente pari a zero non corrisponde a nessuno dei due > 0 né < 0, quindi le variabili flag mantengono silenziosamente il valore del bar precedente. Aggiungi un ELSE ramo quando è richiesto uno stato definito su ogni bar.
  • RepulseMM, variante a media mobile che accetta i parametri di breve periodo, lungo periodo e livellamento.
  • SmoothedRepulse, versione pre-livellata dello stesso concetto.
  • RSI, oscillatore di momentum limitato con scala fissa da 0 a 100.
  • Stochastic, oscillatore limitato che individua la chiusura all'interno del suo range recente.
  • CCI, oscillatore di deviazione dalla media con lettura centrata sullo zero comparabile.
  • Momentum, differenza di prezzo grezza su N bar.
  • ROC, tasso di variazione percentuale del prezzo.
  • ExponentialAverage, il metodo di livellamento usato all'interno di Repulse.