[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 615

 
ALex2008:
Ainsi, au lieu de PERIOD_M1, etc., on peut simplement mettre un nombre entier correspondant à la période ? Plus précisément, au lieu de iOpen(NULL,PERIOD_M1,1, peut-on iOpen(NULL,1,1 ?

Oui, tu as raison.
 
FAQ:
On y est presque. Merci !
 
Fox_RM:
On y est presque. Merci !


Que voulez-vous dire par "presque" ? Nous n'en avons pas besoin, nous voulons un succès absolu :)

 
Pouvez-vous me suggérer un bon conseiller ?
 
kuk:
Qu'est-ce qu'un bon conseiller ?

Qui imprime sa propre pâte et apporte le café au lit...

Et conseille toujours ...

Sous la présidence de toute la Russie... DDD


L'évaluation environnementale auto-écrite est la meilleure (si vous pouvez le faire).

 

Les gars, s'il vous plaît dites-moi comment tirer les valeurs day_max, day_min d'un indicateur. Il est clair qu'iCustom, mais comment ? C'est-à-dire que la chouette a un tel indicateur inséré en elle.

voici l'en-tête...

#property copyright "DOC"
#property link "none"


#property indicator_chart_window
#property indicator_buffers 6
#property indicator_color1 Red
#property indicator_color2 Blue
#property indicator_color3 Green
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
double ExtMapBuffer5[];
double day_max;
double day_min;

 
DOCTORS:

Les gars, s'il vous plaît dites-moi comment tirer les valeurs day_max, day_min d'un indicateur. Il est clair qu'iCustom, mais comment ? C'est-à-dire que la chouette a un tel indicateur inséré en elle.

Voici l'en-tête...

#property copyright "DOC"
#property link "none"


#property indicator_chart_window
#property indicator_buffers 6
#property indicator_color1 Red
#property indicator_color2 Blue
#property indicator_color3 Green
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
double ExtMapBuffer5[];
double day_max;
double day_min;


Pourquoi se donner la peine de les sortir, alors qu'il serait beaucoup plus facile de les calculer dans l'EA.

D'autant plus que vous ne pouvez prendre que des tampons indicateurs de l'indicateur

 
Vinin:


Et pourquoi les retirer alors qu'il est plus facile de les calculer dans l'EA.

D'autant plus que vous ne pouvez prendre les tampons de l'indicateur que de l'indicateur


Eh bien, au moins montrer les tampons de l'indicateur... :( Je suis juste confus en ce moment, si dans le conseil de chercher pour max/min de la journée précédente. C'est à dire que dans mon indicateur c'est facile - donc boucle, mais mon hibou se bloque...+ problème avec le comptage de la barre actuelle (car je peux utiliser le hibou à tout moment) à la dernière barre du jour précédent (pour calculer les maxs). Peut-être pouvez-vous me dire comment aller de la barre actuelle à la dernière barre de la journée précédente ? au moins la formule pour 30 min, c'est-à-dire que le plus important est de voir l'algorithme...
 
DOCTORS:

Eh bien, au moins montrer les tampons indicateur ... :( Je viens de stumped dans le moment, si le conseil de prescrire une recherche de max / min de la journée précédente. C'est à dire que dans mon indicateur c'est facile - donc boucle, mais ma chouette reste bloquée...+ problème de comptage de la barre actuelle (car la chouette peut être déclenchée à tout moment) à la dernière barre du jour précédent (pour calculer les maxs). Peut-être pouvez-vous me dire comment aller de la barre actuelle à la dernière barre de la journée précédente ? Au moins la formule pour 30 min, c'est-à-dire que je veux voir l'algorithme...


iHigh(NULL, PERIOD_D1,1) - le sommet d'hier

iLow(NULL, PERIOD_D1,1) - le minimum d'hier

iOpen(NULL, PERIOD_D1,1) - ouverture d'hier

iClose(NULL, PERIOD_D1,1) - clôture d'hier

 

Vinin:



iHigh(NULL, PERIOD_D1,1) - le sommet d'hier

iLow(NULL, PERIOD_D1,1) - le bas d'hier

iOpen(NULL, PERIOD_D1,1) - ouverture d'hier

iClose(NULL, PERIOD_D1,1) - clôture d'hier


Je m'excuse pour mon manque d'exactitude par rapport à mes demandes... L'essentiel est que le calcul sur les sommets des différentes échéances est différent, c'est compréhensible, c'est pourquoi j'ai fait ce qui suit (nécessaire pour une stratégie de trading sur différentes échéances) :

double ExtMapBuffer1[];

double day_max;

......

int start()

{

int counted_bars = IndicatorCounted();

int limit;
//---- последний посчитанный бар будет пересчитан

if((counted_bars > 0))

counted_bars--;
limit = Bars - counted_bars;
//---- основной цикл

for(int i = 1; i < limit; i++)
{int k,z,t,b,l,n;

k=TimeHour(Time[i]);
z=TimeMinute(Time[i]);
t=Period();

if (t==60){b=24; //значение b определяет количество баров для дня на таймфрейме.
l=24*Period()*60; //l используется для доп. значений, тут не актуально
}


if (t==30){b=48;
l=48*Period()*60;
}

....

....

if (Close[iHighest(NULL,0,MODE_CLOSE,b,i)]> Open[iHighest(NULL,0,MODE_OPEN,b,i)])
{

ExtMapBuffer1[i] = Close[iHighest(NULL,0,MODE_CLOSE,b,i)];
day_max=Close[iHighest(NULL,0,MODE_CLOSE,b,i)];//сделал для того, что значение ExtMapBuffer1[i] при выводе на экран почему-то 0, тогда как day_max показыает правильно...
..... //тут графика

}

else if (Close[iHighest(NULL,0,MODE_CLOSE,b,i)]<= Open[iHighest(NULL,0,MODE_OPEN,b,i)])
{ExtMapBuffer1[i] = Open[iHighest(NULL,0,MODE_OPEN,b,i)];
day_max= Open[iHighest(NULL,0,MODE_OPEN,b,i)];

//опять графика

}

....}