Bonjour,
J’utilise dans un indicateur la fonction DRAWLASTONBARONLY.
dans cet indicateur il y a des flèches pour les signaux baissiers et haussiers.
Existe t-il une possibilité d’avoir sur le graphique les 4 ou 5 dernières flèches faisant
partie du signal, contrairement à DRWALASTONBARONLY qui affiche le signal en cours
Merci pour votre réponse
Cordialement
Puisque l’historique est lu de gauche à droite (du premier chandelier au dernier), on ne peut pas savoir à l’avance combien il reste de signaux avant d’arriver au chandelier courant.
Donc ce que l’on peut faire, c’est enregistrer dans une variable de type tableau tous les signaux et dés que l’on est sur le chandelier courant, utiliser une boucle en arrière pour afficher uniquement les X derniers.
Si tu pouvais partager ton code d’indicateur, je pourrai te montrer comment implanter cette façon de procéder.
Bonjour Nicolas,
merci pour cette réponse,
je te joins le code
Juste une petite info, les variables de prd et length sont paramétrées en haut du code dans les variables
prd = 10
length = 100
l’idée serait d’avoir les 4 ou 5 dernières flèches à partir des signaux qui se déclenchent
ligne 73 et 82
Merci pour ton aide
Bon après-midi
Codrialement
// -- CODE DE BASE et RAJOUT DE LA WMA4 PÉRIODES --
defparam DRAWONLASTBARONLY = true
// HORAIRES D'AFFICHAGE DES SIGNAUX
TRADINGTIME = time >= 070000 and time < 230000
// La régression quadratique est une rgéression polynomilae de degrée deux. Elle se calcule à partir de l'équation quadratique d'une parabole formée àapartir de points.
// --- VARIABLES
//length = 100
// --- FIN DES VARIABLES
y = close
x1 = barindex
x2 = square(x1)
S11 = summation[length](x2) - square(summation[length](x1))/length
S12 = summation[length](x1*x2) - (summation[length](x1) * summation[length](x2))/length
S22 = summation[length](square(x2)) - square(summation[length](x2))/length
Sy1 = summation[length](y*x1) - (summation[length](y)*summation[length](x1))/length
Sy2 = summation[length](y*x2) - (summation[length](y)*summation[length](x2))/length
max1 = average[length](x1)
max2 = average[length](x2)
may = average[length](y)
b2 = ((Sy1 * S22) - (Sy2*S12))/(S22*S11 - square(S12))
b3 = ((Sy2 * S11) - (Sy1 * S12))/(S22 * S11 - square(S12))
b1 = may - b2*max1 - b3*max2
QR = b1 + b2*x1 + b3*x2 // Résultat de la moyenne quadratique
// Calcul de la médiane du Canal de Donchian
// P = 10 // nombre de périodes
HAUT = highest[prd](high[1])
BAS = lowest[prd](low[1])
MEDIAN = (HAUT + BAS) / 2 // Calcul de la Médiane du Canal de Donchian
// Utiliser l'indicateur de " CANAL DONCHIAN - Candle_Median " et appliquer median et chandelier sur le graphique
// VARIABLES GÉNÉRALES
EMA7 = ExponentialAverage[7](close)
ST = supertrend[2.5,10]
RSI14 = rsi[14]
WMA4 = WeightedAverage[4](close) // Correspond à la ligne Court Terme de PRTBands
// FIN DES VARIABLES
// ------------------------------------------------------------
// CRÉATION DU SIGNAL D'ACHAT
if EMA7 < CLOSE and close > ST and close > WMA4 and RSI14 > 50 and close > MEDIAN and QR < close and TRADINGTIME THEN
DRAWARROWUP (barindex,low-6.0 * pointsize)coloured(0,0,255) // BLEU
endif
// ------------------------------------------------------------
// CRÉATION DU SIGNAL DE VENTE
if close < EMA7 AND CLOSE < ST and close < WMA4 and RSI14 < 50 and close < MEDIAN and QR > close and TRADINGTIME THEN
DRAWARROWDOWN (barindex,high+6.0 * pointsize)coloured(255,0,0) // ROUGE
endif
RETURN
Bonjour Nicolas,
je reviens vers toi n’ayant pas eu de réponse.
tu m’avais proposé de me monter comment enregistrer une variable dans un tableau.
Merci pour ton aide
Bon après midi
Cordialement