Iscriviti ora
Indicatori/probuilder · probacktest · proorder · proscreener

RocnRoll

RocnRoll in ProBuilder restituisce segnali di trading discreti, 1 rialzista, 2 ribassista, -1 uscita, costruiti a partire dal tasso di variazione e da medie esponenziali. Sintassi, esempi.

Sintassi

probuilder
RocnRoll(price)

Parametri

NomeTipoPredefinitoDescrizione
pricefonte di prezzochiusuraLa serie di prezzi su cui è calcolato il segnale, di solito close, anche open, high, o low.

Formula

RocnRoll è un generatore di segnali composito anziché un oscillatore continuo. Internamente combina il tasso di variazione della serie dei prezzi con medie mobili esponenziali per classificare la bar corrente in uno di tre stati. I periodi esatti e la logica di combinazione sono fissati dalla piattaforma e non esposti come parametri. La mappatura dell'output è:

codice
 1 = bullish signal
 2 = bearish signal
-1 = exit signal

Come funziona

La maggior parte degli indicatori momentum restituisce un valore da interpretare. RocnRoll restituisce invece un codice di decisione, il che lo rende più simile a una linea di segnale pronta all'uso che a una misura grezza. Su ogni bar la logica interna valuta il momentum, tramite il rate of change, rispetto al contesto della sua media esponenziale ed emette uno dei tre stati.

Su un grafico l'indicatore è convenzionalmente visualizzato come istogramma, barre verdi per lo stato 1, barre rosse per lo stato 2 e barre blu per lo stato -1. Nel codice gli stati si utilizzano con semplici test di uguaglianza, il che mantiene breve la logica della strategia, a costo della trasparenza, poiché le soglie interne non possono essere regolate.

Un dettaglio che conta quando si testano gli stati: il segnale ribassista è 2, non -1 o 0. Il valore negativo è riservato allo stato di uscita, quindi condizioni come RocnRoll(close) < 0 corrispondono solo al segnale di uscita, non alle bar ribassiste.

Esempi

Esempio 1, Istogramma dei segnali (Indicatore)

probuilder
// Compute the RocnRoll state for the closing price
myRocnRoll = RocnRoll(close)
// Display the raw state codes as a histogram
RETURN myRocnRoll STYLE(histogram) AS "RocnRoll signal"

Applica RocnRoll al prezzo di chiusura e disegna i codici di stato come istogramma, barre a 1 per rialzista, 2 per ribassista e -1 per i segnali di uscita.

Esempio 2, Sistema solo long guidato dai codici di stato (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

s = RocnRoll(close)

// Enter on the bullish state
IF NOT LongOnMarket AND s = 1 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

// Close the position on the exit state or a bearish flip
IF LongOnMarket AND (s = -1 OR s = 2) THEN
  SELL AT MARKET
ENDIF

I tre stati si mappano direttamente sulla logica degli ordini, lo stato 1 apre il long, lo stato -1 o 2 lo chiude. Non è necessario definire soglie o incroci.

Esempio 3, Ricerca di nuovi segnali rialzisti (ProScreener)

probuilder
s = RocnRoll(close)
// State is bullish now and was not bullish on the previous bar
newSignal = s = 1 AND s[1] <> 1
SCREENER[newSignal](close AS "Last price")

Elenca gli strumenti il cui stato RocnRoll è passato a rialzista sulla bar corrente, escludendo quelli che sono già in stato 1 da molte bar.

Interpretazione

ValoreSegnaleVisualizzazione convenzionale
1Rialzista, condizioni di momentum rialzista soddisfatteIstogramma verde
2Ribassista, condizioni di momentum ribassista soddisfatteIstogramma rosso
-1Uscita, abbandona il mercatoIstogramma blu

L'indicatore fornisce un giudizio categoriale, non una misura di forza. Due bar rialziste consecutive non sono più forti di una, e non c'è alcuna magnitudine da confrontare tra strumenti. È tipicamente usato come trigger all'interno di un quadro più ampio, con filtri di trend e gestione del rischio forniti separatamente.

Errori e insidie comuni

  • Ribassista è 2, non un numero negativo. Testare RocnRoll(close) < 0 cattura solo lo stato di uscita. Le bar ribassiste devono essere testate con = 2 esplicitamente.
  • Nessun parametro regolabile. L'istruzione accetta solo la sorgente di prezzo. I periodi e le soglie interne sono fissi, quindi il segnale non può essere reso più rapido o più lento. Le differenze di comportamento devono venire invece dal timeframe.
  • Trattare lo stato come una magnitudine. Mediare o sommare i codici, per esempio Average[10](RocnRoll(close)), produce numeri che mescolano le etichette 1, 2 e -1 in un'aritmetica senza senso. Confronta solo con l'uguaglianza.
  • Logica opaca. Poiché la formula interna non è esposta, i risultati del backtest non possono essere scomposti nelle condizioni sottostanti di ROC e di media. È essenziale validare il segnale sullo strumento e sul timeframe di destinazione prima dell'uso in reale.
  • ROC, l'oscillatore del tasso di variazione alla base del segnale.
  • RSI, oscillatore di momentum limitato per la costruzione manuale di segnali.
  • MACD, momentum a media esponenziale con segnali di incrocio.
  • ExponentialAverage, la componente di livellamento della logica interna.
  • Momentum, differenza di prezzo grezza su N bar.
  • Stochastic, oscillatore di posizione nel range con proprie convenzioni di segnale.
  • Supertrend, indicatore di stato del trend, un altro segnale di tipo categoriale.
  • SAR, punti di stop and reverse, un generatore alternativo di ingressi e uscite.