Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Bonjour à tous.
J'ai vu de nombreuses versions de cet indicateur et les bougies rouges n'apparaissent jamais, pourriez-vous corriger l'erreur ? ???.
Merci beaucoup.
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 LimeGreen
#property indicator_color2 Red
//---- tampons d'indicateurs
double ind_buffer1[] ;
double ind_buffer2[] ;
double ind_buffer3[] ;
//----
double CB = 0, valueh1 = 0, valuel = 0, valueh = 0, value = 0, price = 0, hi = 1, lo = 1 ;
double resh = 0, resl = 0, deltah = 0, deltal = 0 ;
int CurrentBar=0 ;
//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'indicateur personnalisé
//+------------------------------------------------------------------+
int init()
{
//---- 1 tampon supplémentaire utilisé pour le comptage.
IndicatorBuffers(3) ;
//---- paramètres de dessin
SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2) ;
SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2) ;
IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1) ;
SetIndexDrawBegin(0, 34) ;
SetIndexDrawBegin(1, 34) ;
//---- 3 mappage des tampons d'indicateurs
if(!SetIndexBuffer(0, ind_buffer1) &&
!SetIndexBuffer(1, ind_buffer2) &&
!SetIndexBuffer(2, ind_buffer3))
Print("cannot set indicator buffers !") ;
//---- nom pour l'étiquette de la DataWindow et de la sous-fenêtre de l'indicateur
IndicatorShortName("DeltaForce") ;
SetIndexLabel(0, "DF1") ;
SetIndexLabel(1, "DF2") ;
//---- initialisation terminée
retour(0) ;
}
//+------------------------------------------------------------------+
//| Delta Force |
//+------------------------------------------------------------------+
int start()
{
for(CB = 0 ; CB <= Bars ; CB++)
{
CurrentBar = Bars - CB ;
if(Close[CurrentBar] > Close[CurrentBar+1])
{
resl = 0 ;
si(resh == 0)
deltah = 0 ;
deltah = deltah + (Close[CurrentBar] - Close[CurrentBar+1]) ;
// valeurh = High[CurrentBar] ;
resh= 1 ;
}
si(resh == 0)
deltah = 0 ;
ind_buffer1[CurrentBar] = deltah ;
si(Close[CurrentBar] < Close[CurrentBar+1] )
{
resh = 0 ;
si(resl == 0)
deltal = 0 ;
deltal = deltal + (Close[CurrentBar+1] - Close[CurrentBar]) ;
//valuel = Low[CurrentBar] ;
resl= 1 ;
}
si(resl == 0 )
deltal=0 ;
ind_buffer2[CurrentBar] = deltal ;
}
//---- terminé
retour(0) ;
}
//+------------------------------------------------------------------+
Bonjour à tous.
J'ai vu de nombreuses versions de cet indicateur et les bougies rouges n'apparaissent jamais, pourriez-vous corriger l'erreur ? ???.
Merci beaucoup.
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 LimeGreen
#property indicator_color2 Red
//---- tampons d'indicateurs
double ind_buffer1[] ;
double ind_buffer2[] ;
double ind_buffer3[] ;
//----
double CB = 0, valueh1 = 0, valuel = 0, valueh = 0, value = 0, price = 0, hi = 1, lo = 1 ;
double resh = 0, resl = 0, deltah = 0, deltal = 0 ;
int CurrentBar=0 ;
//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'indicateur personnalisé
//+------------------------------------------------------------------+
int init()
{
//---- 1 tampon supplémentaire utilisé pour le comptage.
IndicatorBuffers(3) ;
//---- paramètres de dessin
SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2) ;
SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2) ;
IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1) ;
SetIndexDrawBegin(0, 34) ;
SetIndexDrawBegin(1, 34) ;
//---- 3 mappage des tampons d'indicateurs
if(!SetIndexBuffer(0, ind_buffer1) &&
!SetIndexBuffer(1, ind_buffer2) &&
!SetIndexBuffer(2, ind_buffer3))
Print("cannot set indicator buffers !") ;
//---- nom pour l'étiquette de la DataWindow et de la sous-fenêtre de l'indicateur
IndicatorShortName("DeltaForce") ;
SetIndexLabel(0, "DF1") ;
SetIndexLabel(1, "DF2") ;
//---- initialisation terminée
retour(0) ;
}
//+------------------------------------------------------------------+
//| Delta Force |
//+------------------------------------------------------------------+
int start()
{
for(CB = 0 ; CB <= Bars ; CB++)
{
CurrentBar = Bars - CB ;
if(Close[CurrentBar] > Close[CurrentBar+1])
{
resl = 0 ;
si(resh == 0)
deltah = 0 ;
deltah = deltah + (Close[CurrentBar] - Close[CurrentBar+1]) ;
// valeurh = High[CurrentBar] ;
resh= 1 ;
}
si(resh == 0)
deltah = 0 ;
ind_buffer1[CurrentBar] = deltah ;
si(Close[CurrentBar] < Close[CurrentBar+1] )
{
resh = 0 ;
si(resl == 0)
deltal = 0 ;
deltal = deltal + (Close[CurrentBar+1] - Close[CurrentBar]) ;
//valuel = Low[CurrentBar] ;
resl= 1 ;
}
si(resl == 0 )
deltal=0 ;
ind_buffer2[CurrentBar] = deltal ;
}
//---- terminé
retour(0) ;
}
//+------------------------------------------------------------------+Essayez-le maintenant : _test.mq4
Stanwell,
Quelques photos montrant tout cela aideraient.
Big BeSalut Big Be,
Bon point, je posterai quelques graphiques demain.
cheers,
Stan
Voici le graphique AUD que j'ai marqué manuellement. Les cases rouges sont les barres qui se chevauchent. Sur la gauche, il y a un carré qui ne montre que trois barres à l'intérieur, donc il ne correspond pas à la définition. Cependant, si cette jambe est significative, disons plus grande que 6 X ATR, je les compterais comme un swing aussi (juste difficile de trader avec seulement trois barres), mais j'ai pensé que cette exigence compliquerait le codage donc nous pouvons la laisser de côté pour le moment.
Merci.
Stan
Bonjour Mladen et Mrtools !
J'ai encore besoin de votre aide, pouvez-vous ajouter une alerte visuelle/acoustique à cet indicateur ?
Merci d'avance, à bientôt !
MLADEN, bonjour.
Merci beaucoup, ont essayé leur _test et le droit apparaît.
Toute aide que j'ai ici, bien que sa domination est beaucoup plus que la mienne, bien que dans ProRealTime / VISUALCHART oui je peux aider plus.
Best regards.
Bonjour,
J'ai un indicateur et je veux limiter le calcul des barres.
Le code original était :
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE]
i changed it with this:
[CODE]int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(NBars-counted_bars,NBars-1);Est-ce correct ? L'indicateur semble fonctionner correctement mais je doute que j'ai vraiment limité le calcul des barres.
Bonjour,
J'ai un indicateur et je veux limiter le calcul des barres.
Le code original était :
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE]
i changed it with this:
[CODE]int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(NBars-counted_bars,NBars-1);thefxpros
Non. Faites-le comme ceci :
int limit = MathMin(MathMin(Bars-counted_bars,Bars-1),NBars) ;
Mais dans ce cas, vous devez toujours vous assurer que NBars est toujours > 0.
Salut mladen
si tu peux m'aider,ajouter les axes X et Y,alors je peux le mettre dans le coin,
et je peux ajuster la taille de la police, désolé pour mon anglais.
!X2014-PIPSv2
Merci beaucoup.
Bonjour mladen
si vous pouvez m'aider, ajouter les axes X et Y, alors je peux le mettre dans le coin,
et je peux ajuster la taille de la police, désolé pour mon anglais.
!X2014-PIPSv2
Merci beaucoup.blueface
Vous les avez déjà : variables posX et posY dans le code.