Buongiorno,
sto cercando di costruire in indicatore binario che mi segnali graficamente se una delle due condizioni programmate si sia verificata o meno.
Questo è il listato che ho preparato ma non ricevo alcun segnale sul grafico storico.
Si tratta nello speicifico di visualizzare un risultato positivo o negativo ( +/-1) sull’indicatore o meglio ancora direttamente sul grafico Heikin Ashi al verificarsi di una delle due condizioni
xClose = (open + close + high + low) / 4
xOpen = (xOpen[1] + xClose[1]) / 2
LongReverseCandle = Range[1] > ABS(xOpen[1] – xClose[1]) * 5
ShortReverseCandle = Range[1] > ABS(xOpen[1] – xClose[1]) * 5
Result = 0
If LongReverseCandle THEN
Result = 1
If ShortReverseCandle Then
Result = -1
ENDIF
ENDIF
RETURN Result
GRAZIE !
Ecco fatto. Il problema è che xOpen faceva riferimento a xOpen[1]. Questo genera un errore quando barindex=0. C'era anche un errore nell'istruzione condizionale che calcola il risultato.
In ogni caso, la condizione di reversione short è identica a quella long.
once xOpen=open
if barindex>0 then
xClose = (open + close + high + low) / 4
xOpen = (xOpen[1] + xClose[1]) / 2
LongReverseCandle = Range[1] > ABS(xOpen[1] - xClose[1]) * 5
ShortReverseCandle = Range[1] > ABS(xOpen[1] - xClose[1]) * 5
endif
Result = 0
If LongReverseCandle THEN
Result = 1
elsif ShortReverseCandle Then
Result = -1
ENDIF
RETURN Result
Ecco il codice da visualizzare all’interno del grafico con le frecce. Ho modificato le condizioni per LongReverseCandle e ShortReverseCandle.
once xOpen=open
if barindex>0 then
xClose = (open + close + high + low) / 4
xOpen = (xOpen[1] + xClose[1]) / 2
isDoji = Range[1] > ABS(xOpen[1] - xClose[1]) * 5
LongReverseCandle = isDoji AND (xClose[1] < xOpen[1])
ShortReverseCandle = isDoji AND (xClose[1] > xOpen[1])
endif
If LongReverseCandle THEN
drawarrowup(barindex,low)coloured("green")
elsif ShortReverseCandle Then
drawarrowdown(barindex,high)coloured("red")
ENDIF
RETURN
Grazie, ho aggiunto il colore alla candela di reverse con close>< di open ed è ok.
il secondo listato invece non evidenzia le frecce sul grafico…