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
RocnRoll(price)Parametri
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
price | fonte di prezzo | chiusura | La 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 è:
1 = bullish signal
2 = bearish signal
-1 = exit signalCome 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)
// 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)
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
ENDIFI 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)
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
| Valore | Segnale | Visualizzazione convenzionale |
|---|---|---|
| 1 | Rialzista, condizioni di momentum rialzista soddisfatte | Istogramma verde |
| 2 | Ribassista, condizioni di momentum ribassista soddisfatte | Istogramma rosso |
| -1 | Uscita, abbandona il mercato | Istogramma 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) < 0cattura solo lo stato di uscita. Le bar ribassiste devono essere testate con= 2esplicitamente. - 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.
Istruzioni correlate
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.