buongiorno a tutti vorrei sapere come codificare un sistema automatico così fatto: incrocio Ema 21/ 63 , dopo 6 candele H4 con pullback sulle medie ed entry su iper stocastico e candela di conferma di ritorno in trend,
stop loss sui Max/ min di candela di conferma e TP 1:2 .
grazie per l’eventuale risposta
Facendo la sola ipotesi LONG, ho capito che, su un grafico H4 una media veloce deve incrociarne al rialzo una più lenta, per il resto dovresti chiarire:
1 – occorre che il pullback sulla media veloce avvenga dopo 6 candele oppure entro 6 candele prima d’invalidare il segnale?
2 – entri quando lo stocastico è in ipervenduto o quando ne sta uscendo?
3 – la candela di conferma come deve essere, un’engulfing o di quale ampiezza?
Roberto
Grazie Roberto per la risposta celere, allora:
1) il pullback sulla media veloce deve avvenire dopo 6 candele e non entro.
2)lo stocastico deve essere in iper, ma con la candela di rientro/conferma, lo stocastico comincia a rientrare di suo .
3) come candela di conferma: engulfing o Pin bar
Ho preparato questa strategia, però ci sono errori nello Stop Loss e Take Profit.
Entra SHORT il 2 Gennaio 2015, ma non colpisce mai lo Stop Loss!!!
L’operazione dura 3000+ candele!
Nicolas, riesci a spiegarci cosa può essere?
DEFPARAM CumulateOrders = false //Entrate multiple disattivate
ONCE n = 1 //Numero contratti/lotti
ONCE Moltiplicatore = 2 //Moltiplicatore per il Target Profit
ONCE Rialzo = 0
ONCE Ribasso = 0
ONCE PullBack = 0
ONCE CandelaIncrocio = 0
ONCE IperVenduto = 25 //20 - 80 aree di Ipervenduto ed...
ONCE IperComprato = 75 - IperVenduto //... Ipercomprato dello Stocastico
ONCE CandeleAttesa = 6 //Numero di candele d'attesa prima che avvenga il pullback
ONCE AmpiezzaCorpoPinBar = 0.10 //corpo PinBar non oltre questa percventuale
ONCE AmpiezzaOmbraMaggiore = 0.80 //Ombra maggiore non inferiore a questa percentuale
ONCE TipoMedia = 1 //EMA(vedi https://www.prorealcode.com/documentation/average)
MediaVeloce = Average[21,TipoMedia](close) //21 media veloce
MediaLenta = Average[63,TipoMedia](close) //63 media lenta
StocK = Stochastic[6,3](close) //10,6 linea K dello Stocastico
StocD = Average[3,0](StocK) //3 linea D dello Stocastico
// Azzerare tutti i valori una volta a mercato
IF OnMarket THEN
Rialzo = 0
Ribasso = 0
CandelaIncrocio = 0
PullBack = 0
ENDIF
// Settare le variabili per sapere se c'è stato un incrocio al Rialzo oppure al Ribasso
IF MediaVeloce CROSSES OVER MediaLenta THEN
Rialzo = 1
Ribasso = 0
CandelaIncrocio = BarIndex
PullBack = 0
ELSIF MediaVeloce CROSSES UNDER MediaLenta THEN
Rialzo = 0
Ribasso = 1
CandelaIncrocio = BarIndex
PullBack = 0
ENDIF
// Se c'è stato un incrocio (Rialzo o Ribasso che sia) ma il pullback non avviene entro n Candele azzerare tutto
IF Rialzo THEN
IF PullBack = 0 THEN
IF low <= MediaVeloce THEN
IF (BarIndex - CandelaIncrocio) >= CandeleAttesa THEN
PullBack = 1
ELSE
//Rialzo = 0
//Ribasso = 0
//CandelaIncrocio = 0
//PullBack = 0
ENDIF
ENDIF
ENDIF
ELSIF Ribasso THEN
IF PullBack = 0 THEN
IF high >= MediaVeloce THEN
IF (BarIndex - CandelaIncrocio) >= CandeleAttesa THEN
PullBack = 1
ELSE
//Rialzo = 0
//Ribasso = 0
//CandelaIncrocio = 0
//PullBack = 0
ENDIF
ENDIF
ENDIF
ENDIF
// Entrare in posizione LONG
a1 = StocK > StocD //K > D nello stocastico
a2 = StocK > IperVenduto //K fuori dall'IperVenduto
a3 = close > open //chiusura corrente al RIALZO
a4 = abs(close - open) >= abs (close[1] - open[1]) //Engulfing ?
Corpo = abs(close - open) <= (range * AmpiezzaCorpoPinBar) //Corpo Pin BAR ?
OmbraInferiore = (min(open,close) - low) >= (range * AmpiezzaOmbraMaggiore) //Ombra Inferiore Pin BAR ?
ax = a1 AND a2 AND a3 AND (a4 or (Corpo AND OmbraInferiore)) AND Rialzo AND PullBack
IF ax THEN
Sl = close - low
Tp = close + ((close - low) * Moltiplicatore)
BUY n CONTRACTS AT MARKET
ENDIF
// Entrare in posizione SHORT
b1 = StocK < StocD //K < D nello stocastico
b2 = StocK < IperComprato //K fuori dall'IperComprato
b3 = close < open //chiusura corrente al RIBASSO
b4 = abs(close - open) >= abs (close[1] - open[1]) //Engulfing ?
Corpo = abs(close - open) <= (range * AmpiezzaCorpoPinBar) //Corpo Pin BAR ?
OmbraSuperiore = (high - max(open,close)) >= (range * AmpiezzaOmbraMaggiore)//Ombra Superiore Pin BAR ?
bx = b1 AND b2 AND b3 AND (b4 or (Corpo AND OmbraSuperiore)) AND Ribasso AND PullBack
IF bx THEN
Sl = high
Tp = close - ((high - close) * Moltiplicatore)
SELLSHORT n CONTRACTS AT MARKET
ENDIF
// Target Profit & Stop Loss
SET STOP LOSS SL
SET TARGET PROFIT Tp
/////////////////////////
//GRAPH Rialzo
//GRAPH Ribasso
//GRAPH Pullback
//GRAPH Sl
//GRAPH Tp
Grazie. Roberto
Grazie Roberto, quindi ci sono difficoltà negli stop
Si, purtroppo non funzionano e non capisco il perché.