Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 488

 
Il existe deux indicateurs Ind_1 et Ind_GV. L'indicateur Ind_GV diffère de Ind_1 en ce qu'il reçoit une des valeurs de réglage de la variable globale du terminal client.
Lorsque les paramètres Ind_1 et Ind_GV correspondent, Ind_GV a une valeur de résultat légèrement différente de Ind_1.
Si je mets le testeur en pause pendant que Ind_1 et Ind_GV sont appariés et que je compile Ind_GV, la valeur résultante des deux indicateurs correspond complètement.
Qui sait comment cela peut s'expliquer ?
 

Pouvez-vous me dire si j'ai besoin d'un code dans l'Expert Advisor pour fonctionner dans le testeur de stratégie en mode optimisation?

J'essaie d'optimiser mon conseiller expert, mais je ne sais pas ce que c'est :


2014.02.18 21:54:30.386 Testeur : le fichier cache "C:\...\tester\caches\test.NZDUSD5.0" a été trouvé et peut être utilisé pour une optimisation ultérieure.

2014.02.18 21:54:30.388 TestGenerator : fichier tick actuel "C:\...\tester\history\NZDUSD5_0.fxt" trouvé

Nous avons une histoire. Le fichier NZDUSD5_0.fxt pèse environ 150 mètres.

Vous pouvez également voir ceci dans les journaux de bord du testeur.

2014.02.18 22:50:21.251 TestGenerator : erreur de données non correspondantes (limite de volume 305 à 2014.02.12 13:35 dépassée)

De quoi s'agit-il ?


 

Aidez-nous !

Chacune des variables peut prendre une valeur de 1 à 5...Dites-moi comment ne pas écrire 3125 options))))

   if  (Kx==5&&     K>T &&     K>SA &&     K>SB &&     K>Bid &&
        Tx==4&&     T<K &&     T>SA &&     T>SB &&     T>Bid && 
        SAx==3&&    SA<K &&    SA<T &&     SA>SB &&    SA>Bid &&
        SBx==2&&    SB<K &&    SB<T &&     SB<SA &&    SB>Bid &&
        BID==1&&    Bid<K &&   Bid<T &&    Bid<SA &&   Bid<SB
       )
 
niktron:

Aidez-nous !

Chacune des variables peut prendre une valeur de 1 à 5...Dites-moi comment ne pas écrire 3125 options))))

Faites un tirage au sort de 25 choix et déterminez ensuite qui est le plus grand.
 
tara:
Faites un tirage au sort de 25 options et déterminez ensuite qui est le plus grand.

Merci... c'est ce que je fais maintenant... je voulais le faire avec des tableaux, mais je n'ai pas la traction...))
 
En fin de compte, il y a 3125 options, et non 25...mais la division en 25 options est aussi une chose))))
 
Écrivez vos commentaires tout de suite, ils vous seront utiles par la suite.
 
Je suis allé voir une femme.
 

Veuillez m'aider avec l'indicateur avec des pièces jointes ".mqh".

Les tampons des indicateurs ExtBuffer1[], ExtBuffer2[] et Buffer_M[] ont une taille de 0. Dans le même temps, le tampon ExtBuffer0[] fonctionne bien et sa taille est égale à Bars, comme il se doit. Le plus intéressant est qu'il fonctionnait bien dans l'ancienne version de MT4 avant d'être mis à jour vers la nouvelle. Une dernière chose. Si je déplace tous les éléments d'un indicateur vers le même fichier mq4 de base, tout fonctionne à nouveau correctement.

Question : Pourquoi la taille des tableaux des tampons d'indicateurs dans les pièces jointes est-elle remise à zéro ?

Voici le code source de l'indicateur.

//+------------------------------------------------------------------+

//| AO_EMA_(with_includes).mq4 |

//+------------------------------------------------------------------+

#include <AO_EMA_(with_includes)_GLOB.mqh>

//--------------------------------------------

int init()

{

#include <AO_EMA_(with_includes)_INIT.mqh>

return(0);

}

//--------------------------------------------

int start()

{

#include <AO_EMA_(with_includes)_START.mqh>

return(0);

}

//+------------------------------------------------------------------+





//+------------------------------------------------------------------+

//| AO_EMA_(with_includes)_GLOB.mq4 |

//+------------------------------------------------------------------+

#property indicator_separate_window

#property indicator_buffers 4

#property indicator_color1 Black

#property indicator_color2 Green

#property indicator_color3 Red


//---- Input Data

extern int Slow = 100;

extern double Slow_Fast = 4.318;

extern int Average = 25; // Усреднение АО

extern bool Show_AO_G = true,

Show_AO_R = true;


//---- Глобальные переменные

int Fast;

bool Alert_done = false; // Флаг говорит о том, что Alert уже был раз сгенерирован.

//---- indicator buffers

double ExtBuffer0[];

double ExtBuffer1[];

double ExtBuffer2[];

//---- Буфера индикатора, для промежуточных расчетов

double Buffer_M[];

//+------------------------------------------------------------------+

//| AO_EMA_(with_includes)_INIT.mq4 |

//+------------------------------------------------------------------+

//---- Установка значение для переменной "Fast"

Fast = NormalizeDouble(Slow / Slow_Fast, 0);


//---- indicator buffers mapping

SetIndexBuffer(0, ExtBuffer0);

SetIndexBuffer(1, ExtBuffer1);

SetIndexBuffer(2, ExtBuffer2);

SetIndexBuffer(3, Buffer_M);


//---- drawing settings

SetIndexStyle(0, DRAW_NONE); // Линия не рисуется

SetIndexStyle(1, DRAW_HISTOGRAM); // Гистограмма

SetIndexStyle(2, DRAW_HISTOGRAM); // Гистограмма

SetIndexStyle(3, DRAW_NONE); // Линия не рисуется

//---- drawing begin settings

SetIndexDrawBegin(0, Fast); // Индикатор начинает рисоваться с этого бара, от начала графика слева.

SetIndexDrawBegin(1, Fast);

SetIndexDrawBegin(2, Slow);

SetIndexDrawBegin(3, Slow);


IndicatorDigits(Digits+1);

//---- name for DataWindow and indicator subwindow label

IndicatorShortName("AO_EMA ("+Fast+"-"+Slow+")");

SetIndexLabel(1,"Green");

SetIndexLabel(2,"Red");

//---- Обнуляем буфер индикатора

SetIndexEmptyValue(0, 0.0); SetIndexEmptyValue(1, 0.0);

SetIndexEmptyValue(2, 0.0); SetIndexEmptyValue(3, 0.0);

//---- initialization done

//+------------------------------------------------------------------+

//| AO_EMA_(with_includes)_START.mq4 |

//+------------------------------------------------------------------+

int limit, pos;

int counted_bars=IndicatorCounted();

double prev,current, pr;

bool up;


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

if(counted_bars>0) counted_bars--;

limit=Bars-counted_bars;

Print("counted_bars=",counted_bars," Bars=",Bars," limit=",limit);

Print("0=",ArraySize(ExtBuffer0)," 1=",ArraySize(ExtBuffer1)," 2=",ArraySize(ExtBuffer2)," M=",ArraySize(Buffer_M));


//---- Расчет MACD для Гистограммы "= EMA(fast) - EMA(slow)"

if(Show_AO_G == true || Show_AO_R == true)

{ for(int i=0; i<limit; i++)

Buffer_M[i]=iMA(NULL,0,Fast,0,MODE_EMA,PRICE_MEDIAN,i)-iMA(NULL,0,Slow,0,MODE_EMA,PRICE_MEDIAN,i);


//---- Усредняем MACD по "Average".Это и будет рисоваться на графике..

//---- ... можно заменить на " EMA(Fast)".

pr=2.0/(Average+1);

pos=Bars-2;

if(counted_bars>2) pos=Bars-counted_bars-1;

//---- Основной расчет

while(pos>=0)

{ if(pos==Bars-2) ExtBuffer0[pos+1]=Buffer_M[pos+1];

ExtBuffer0[pos]=Buffer_M[pos]*pr+ExtBuffer0[pos+1]*(1-pr);

pos--; }

//---- Расперделение данных между 2-я буферами, для разделения по цветам

for(i=limit-1; i>=0; i--)

{ // При перерасчете самого левого бара, порядковый номер в массиве [i+1] выходит за пределы размера массива, поэтому расчет первого цикла прорускаем.

if(i == Bars-1) continue;

//------------------------------------

current = ExtBuffer0[i];

prev = ExtBuffer0[i+1];

if(current == prev) continue;

else

{ if(current>prev) up=true;

if(current<prev) up=false;

if(!up)

{ ExtBuffer2[i]=current;

ExtBuffer1[i]=0.0; }

else

{ ExtBuffer1[i]=current;

ExtBuffer2[i]=0.0; }

}}}

//--- Устанавливаем видимость индикаторов

if(Show_AO_G == false) SetIndexStyle(1, DRAW_NONE);

if(Show_AO_R == false) SetIndexStyle(2, DRAW_NONE);

 
NEP:

Veuillez m'aider avec l'indicateur avec des pièces jointes ".mqh".

Les tampons des indicateurs ExtBuffer1[], ExtBuffer2[] et Buffer_M[] ont une taille de 0. Dans le même temps, le tampon ExtBuffer0[] fonctionne bien et sa taille est égale à Bars, comme il se doit. Le plus intéressant est qu'il fonctionnait bien dans l'ancienne version de MT4 avant d'être mis à jour vers la nouvelle. Une dernière chose. Si je déplace tous les éléments d'un indicateur vers le même fichier mq4 de base, tout fonctionne à nouveau correctement.

Question : Pourquoi les tailles des tableaux des tampons d'indicateurs dans les pièces jointes sont-elles remises à 0 ?

Voici le code source de l'indicateur.




Tu aimes faire des choses dans ton cul ?