Riguardo a questo indicatore, chiedo se è possibile semplificarlo nel codice lasciando le sole linee di volatilità sopra e sotto il prezzo, eliminando quindi le linee invisibili che danno problemi quando si utilizza questo indicatore in un trading system. Allego il pdf che si trova su internet dell’Ensign volatility stop; in effetti sembra tutto più lineare e fruibile. Grazie
Non è un indicatore, è un trading system. E’ una formula un pò strana, in quanto sembra un ATR, ma non lo è esattamente, poi c’è l’aggiustamento in base alla posizione aperta (Long o Short). Questo è quello che puoi provare, nel backtest vedrai il valore calcolato sul prezzo:
IF close crosses over average[100,0](close) then
buy at market
elsif close crosses under average[100,0](close) then
sellshort at market
endif
N = 20
Multiplier = 1.0
HH = max(close[1],high)
LL = min(close[1],low)
MyTR = HH - LL
MyATR = average[N,1](MyTR)
IF ShortOnMarket THEN
VolSTOP = lowest[BarIndex - TradeIndex + 1](close) + (MyATR * Multiplier)
ELSIF LongOnMarket THEN
VolSTOP = highest[BarIndex - TradeIndex + 1](close) - (MyATR * Multiplier)
ENDIF
set target pprofit 500
set stop ploss 200
graphonprice VolSTOP
Si esatto, Roberto, mi riferivo all’indicatore che hai citato. Le linee sono due ma disegna dei segmenti strani e il trading system che ho creato in programmazione assistita fa un pò confusione. Comunque grazie, proverò a fare dei confronti con il tuo suggerimento. Un buon weekend
Ho fatto dei test sul tuo suggerimento di trading system, che utilizza una media mobile per gli ingressi e uscite dai trade. Funziona bene, ma vanno settati dei parametri ottimali per ogni stile di trading. Io l’ho cambiato in questa versione:
// Ensign prova Gozzi
IF close crosses over average[100,0](close) then
buy 2000 cash at market
elsif close crosses under average[100,0](close) then
sellshort 2000 cash at market
endif
N = 20
Multiplier = 1.0
HH = max(close[1],high)
LL = min(close[1],low)
MyTR = HH - LL
MyATR =ExponentialAverage[N](MyTR)
// MyATR = average[N,1](MyTR)
IF ShortOnMarket THEN
VolSTOP = lowest[BarIndex - TradeIndex + 1](close) + (MyATR * Multiplier)
ELSIF LongOnMarket THEN
VolSTOP = highest[BarIndex - TradeIndex + 1](close) - (MyATR * Multiplier)
ENDIF
// set target pprofit 500
// set stop ploss 200
graphonprice VolSTOP
La mia richiesta, magari comunicata in modo impreciso, era quella di utilizzare le due linee dell’indicatore Ensign volatility stop nel trading system (al posto della media mobile). E’ nel solco del progetto del pdf che ho allegato. L’indicatore, tradotto da carlvan, è in libreria prorealcode e presente nella homepage ancora oggi. Solo che questo indicatore ha un problema di disegno delle due linee upline e downline, in quanto non si interrompe una quando funziona l’altra ma sono un continuum sul grafico (rese bianche nei momenti non attivi di ognuna di esse). Vedendo il grafico nella descrizione dell’indicatore e la richiesta stessa dell’autore è immediatamente comprensibile il problema. Grazie ancora
Questa versione modificata dell’indicatore dovrebbe risolvere il problema delle doppie linee.