Cycle
Cycle in ProBuilder estrae la componente ciclica di una serie di prezzi, oscillando attorno allo zero per evidenziare i ritmi ripetitivi del mercato. Sintassi ed esempi.
Sintassi
Cycle(price)Parametri
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
price | fonte di prezzo | chiusura | Serie a cui è applicata l'estrazione del ciclo, come close, open, high, low, o una variabile personalizzata. |
Non esiste un parametro di periodo. La lunghezza del ciclo è determinata internamente da ProRealTime™.
Formula
ProRealTime™ non pubblica un'espressione in forma chiusa per questo indicatore. Concettualmente, la funzione rimuove la componente di trend dalla serie in ingresso e restituisce la componente oscillante residua, così l'output oscilla attorno a una linea dello zero. Il metodo esatto di detrendizzazione e attenuazione è interno alla piattaforma e non è configurabile.
Come funziona
I prezzi di mercato sono spesso modellati come la somma di un trend, una componente ciclica e rumore. Cycle isola la parte centrale: gli swing ricorrenti che si verificano attorno al trend prevalente. L'output è un oscillatore non limitato centrato sullo zero. Quando la componente ciclica è sopra lo zero la serie si trova nella metà superiore dello swing rilevato, quando è sotto lo zero nella metà inferiore.
Poiché il calcolo è fisso, l'indicatore viene usato più come rilevatore di fase che come oscillatore regolabile. Le applicazioni tipiche sono il timing degli ingressi all'interno di un trend consolidato, o la segnalazione di quando uno swing è probabilmente esteso. Gli incroci della linea dello zero segnano il passaggio da una fase del ciclo all'altra.
L'analisi ciclica presuppone che il mercato oscilli davvero. Durante trend forti in una sola direzione la componente ciclica diventa piccola rispetto al trend, e i suoi incroci portano meno informazione. Abbinare l'oscillatore a un filtro di trend, come nell'Esempio 3, è la soluzione comune.
Esempi
Esempio 1, Fasi rialziste e ribassiste del ciclo (Indicatore)
// Classify the current cycle phase from the sign of the output
c = Cycle(close)
IF c > 0 THEN
Bullish = 1
Bearish = 0
ELSE
Bullish = 0
Bearish = -1
ENDIF
RETURN Bullish coloured(0,128,0), Bearish coloured(255,20,147)Mostra una linea a gradini verde a 1 mentre la componente ciclica è positiva e una linea a gradini rosa a -1 mentre è negativa, dando una rapida mappa visiva delle fasi.
Esempio 2, Scansione del ciclo che gira al rialzo (ProScreener)
// List instruments whose cycle component just crossed above zero
c = Cycle(close)
SCREENER[c CROSSES OVER 0](c AS "Cycle")Restituisce gli strumenti che entrano nella fase positiva del loro ciclo sulla bar corrente, un elenco di partenza per ingressi swing.
Esempio 3, Timing del ciclo con un filtro di trend (ProBacktest)
// Buy cycle upturns only while price is above the long-term average
trend = Average[200](close)
c = Cycle(close)
IF NOT LongOnMarket AND close > trend AND c CROSSES OVER 0 THEN
BUY 1 CONTRACT AT MARKET
ENDIF
IF LongOnMarket AND c CROSSES UNDER 0 THEN
SELL AT MARKET
ENDIFLa media a 200 periodi limita il trading ai trend rialzisti, e gli incroci della linea dello zero della componente ciclica danno il timing di ingressi e uscite all'interno di quel trend.
Interpretazione
- Sopra lo zero. Il ciclo rilevato è nella sua fase ascendente. Valori crescenti suggeriscono che la fase di rialzo si stia ancora sviluppando, valori positivi in calo suggeriscono che stia maturando.
- Sotto lo zero. Il ciclo è nella sua fase discendente, da leggere in modo simmetrico.
- Incroci della linea dello zero. Segnano i passaggi di fase e sono il trigger di trade più comune costruito su questo indicatore.
- Ampiezza. L'output non è limitato, quindi i valori estremi sono relativi allo storico recente dello strumento stesso anziché a soglie fisse.
Il segno da solo non misura la forza del trend. Per questo, combina l'oscillatore con un filtro direzionale.
Errori e insidie comuni
- Aggiungere un periodo tra parentesi.
Cycle[20](close)non compila. La funzione accetta solo l'argomento del prezzo tra parentesi e non ha un periodo definito dall'utente. - Nessun livello fisso di ipercomprato o ipervenduto. A differenza di RSI o Stochastic, l'output non ha limiti. Condizioni come
Cycle(close) > 70sono arbitrari; confrontali invece con lo zero o con gli estremi recenti dell'indicatore stesso. - Segnali deboli nei trend forti. Quando il prezzo va forte in una sola direzione, la componente ciclica si appiattisce e gli incroci della linea dello zero diventano rumore. Filtra per direzione del trend prima di agire sugli incroci.
- Non è una previsione. La funzione descrive la posizione ciclica attuale della serie. Non prevede che il ciclo si ripeta con la stessa lunghezza o ampiezza.
Istruzioni correlate
DPO, oscillatore di prezzo detrendizzato, un altro modo per eliminare il trend ed esporre i cicli.TRIX, oscillatore di momentum a tripla attenuazione attorno a una linea dello zero.Stochastic, oscillatore limitato che colloca la chiusura all'interno del range recente.RSI, oscillatore di momentum limitato con soglie fisse.Momentum, differenza di prezzo grezza su N bar.ROC, tasso di variazione in percentuale.Average, media mobile, usata come filtro di trend nell'Esempio 3.