J'ai besoin d'aide pour ajouter un calcul de multiplicateur StdDev à un histogramme simple.
L'histogramme est Close [x smoothing] - Close [x] et sans mon multiplicateur StdDev erroné, il trace bien. Je veux voir à quoi cela ressemble en multipliant le StdDev pour chaque barre par le calcul de l'histogramme.
Voici le code avec le calcul ajouté qui est : *iStdDevOnArray(CloseBuffer,0,30,0,0,0)
en supprimant *iStdDevOnArray(CloseBuffer,0,30,0,0,0) cela fonctionne bien mais je veux expérimenter en ajoutant le multiplicateur StdDev au calcul simple
Quelqu'un peut-il aider avec cela. Merci.
Code inséré ********************************** #propriété indior_separate_window #propriété indior_buffers 2 #propriété indior_color1 Vert #propriété indior_color2 Rouge/----- paramètres d'entrée extern int LookBackPeriod = 12; extern int MaxBarsForComputation = 500 ;/----- tampons double Up#91;#93;; double Dn#91;#93;; double CloseBuffer#91;#93;;/----- int init() { IndiorBuffers(3); SetIndexStyle(0, DRAW_HISTOGRAM,0,2); SetIndexBuffer(0, Up); SetIndexStyle(1, DRAW_HISTOGRAM,0,2); SetIndexBuffer(1, Dn); SetIndexStyle(2, DRAW_NONE); SetIndexBuffer(2, CloseBuffer,INDICATOR_CALCULS);/----- ChiffresIndieurs(Chiffres); chaîne short_name = xDev ( LookBackPeriod ); IndiorShortName(short_name); retour(0); }/----- int start() { int je; if(Bars lt;= LookBackPeriod 1) return(0); int counted_bars = MaxBarsForComputation ; int limit = Bars - counted_bars ; if(counted_bars gt; 0) limit ; for(i = 0; i lt; limit; i ) { CloseBuffer#91;i#93; = Fermer#91;i#93;; if (Close#91;i 1#93; gt; Close#91;i LookBackPeriod#93;) {Up#91;i#93; = (Fermer#91;i 1#93;- Fermer#91;i LookBackPeriod#93;)*iStdDevOnArray(CloseBuffer,0,3 0,0,0,0); Dn#91;i#93;=EMPTY_VALUE;} if (Close#91;i 1#93; lt; Close#91;i LookBackPeriod#93;) {Dn#91;i#93; = (Fermer#91;i LookBackPeriod#93;- Fermer#91;i 1#93;)*iStdDevOnArray(CloseBuffer,0,30,0,0,0)*-1.0; Up#91;i#93;=EMPTY_VALUE;} } return(0); }/ ------------------------------------------------------------ --------------------