Questions des débutants MQL5 MT5 MetaTrader 5 - page 708
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
Bon après-midi. Je normalise les valeurs, mais en déboguant les chiffres avec *e, comment se fait-il ?
Je n'arrive pas à écrire les valeurs dans Excel.
Si un autre paramètre est assigné au tableau (arrayZ[0][q][z] = 0 ;), on enregistre
{
arrayIndexY[z] = srcArr[z].close; //данные колонки У
for(int q = 1; q <= copied-1; q++) //Перебор периодов
{
{
qer = NormalizeDouble(sm.d[q-1].m[nBar-z],Digits());
wer = NormalizeDouble(sm.d[q].m[nBar-z],Digits());
arrayZ[0][q][z] = NormalizeDouble(qer-wer,Digits());} // ответы с е, че заааа
}
}
flag = false;
GenerateCsv("test.csv");
}
Bon après-midi. Je normalise les valeurs, mais en déboguant les chiffres avec *e, comment se fait-il ?
Je n'arrive pas à écrire les valeurs dans Excel.
Si un autre paramètre est assigné au tableau (arrayZ[0][q][z] = 0 ;), on enregistre
{
arrayIndexY[z] = srcArr[z].close; //данные колонки У
for(int q = 1; q <= copied-1; q++) //Перебор периодов
{
{
qer = NormalizeDouble(sm.d[q-1].m[nBar-z],Digits());
wer = NormalizeDouble(sm.d[q].m[nBar-z],Digits());
arrayZ[0][q][z] = NormalizeDouble(qer-wer,Digits());}
qer;
}
}
flag = false;
GenerateCsv("test.csv");
}
Utilisez DoubleToString() pour la sortie imprimée.
Bonjour, est-il vrai qu'il est possible de gagner de l'argent sur ce forum ? Si oui, pouvez-vous me dire comment ?
Bonjour, Tâche : Trouver les prix H(max) ou L(min) dans un nombre donné de barres en question.
J'ai cherché un peu partout, mais je ne peux pas attribuer une plage de sélection, c'est-à-dire l'endroit où insérer la variable (DO), pour sélectionner l'intervalle de recherche.
{
//--- объявление переменных
int n,UpperFractal_1;
//--- объявление массивов для записи значений буферов индикатора iFractal
double FractalUp[];
double UpFractal_1;
//--- сначала нужно записать в массивы значения буферов индиктора Fractal
//--- заполнение данными буфера
CopyBuffer(Fractal,0,TimeCurrent(),Bars(Symbol(),PERIOD_D1),FractalUp);
//--- индексация как в таймсериях
ArraySetAsSeries(FractalUp,true);
//--- далее используем оператор цикла for для поиска первого верхнего фрактала
for(n=0; n<Bars(Symbol(),PERIOD_CURRENT); n++)
{
//--- если непустое значение, прерываем цикл
if(FractalUp[n]!=EMPTY_VALUE)
break;
}
//--- запишем ценовое значение первого фрактала в переменную
UpFractal_1=FractalUp[n];
//--- запишем индекс первого фрактала в переменную
UpperFractal_1=n;
return (UpFractal_1);
}
Bonjour, Tâche : Trouver les prix H(max) ou L(min) dans un nombre donné de barres en question.
J'ai cherché un peu partout, mais je ne peux pas attribuer une plage de sélection, c'est-à-dire l'endroit où insérer la variable (DO), pour sélectionner l'intervalle de recherche.
{
//--- объявление переменных
int n,UpperFractal_1;
//--- объявление массивов для записи значений буферов индикатора iFractal
double FractalUp[];
double UpFractal_1;
//--- сначала нужно записать в массивы значения буферов индиктора Fractal
//--- заполнение данными буфера
CopyBuffer(Fractal,0,TimeCurrent(),Bars(Symbol(),PERIOD_D1),FractalUp);
//--- индексация как в таймсериях
ArraySetAsSeries(FractalUp,true);
//--- далее используем оператор цикла for для поиска первого верхнего фрактала
for(n=0; n<Bars(Symbol(),PERIOD_CURRENT); n++)
{
//--- если непустое значение, прерываем цикл
if(FractalUp[n]!=EMPTY_VALUE)
break;
}
//--- запишем ценовое значение первого фрактала в переменную
UpFractal_1=FractalUp[n];
//--- запишем индекс первого фрактала в переменную
UpperFractal_1=n;
return (UpFractal_1);
}
Pourquoi dois-je utiliser des fractales ?
D'abord CopyHigh() pour la plage requise, puis dans le tableau où la plage est copiée, cherchez max (ArrayMaximum()).
Idem pour min, mais CopyLow() et ArrayMinimum()
Je ne comprends pas ce qui ne va pas, la tâche consiste à trouver la valeur minimale sur un intervalle donné (index).
//| Получим Low для заданного номера бара |
//+------------------------------------------------------------------+
double iLow(string symbol,ENUM_TIMEFRAMES timeframe,int index)
{
double low=0;
ArraySetAsSeries(Low,true);
int copied=CopyLow(symbol,timeframe,0,index,Low);
if(copied>0 && index<copied) low=ArrayMinimum(Low);
return(low);
}
Je ne comprends pas ce qui ne va pas, la tâche consiste à trouver la valeur minimale sur un intervalle donné (index).
//| Получим Low для заданного номера бара |
//+------------------------------------------------------------------+
double iLow(string symbol,ENUM_TIMEFRAMES timeframe,int index)
{
double low=0;
ArraySetAsSeries(Low,true);
int copied=CopyLow(symbol,timeframe,0,index,Low);
if(copied>0 && index<copied) low=ArrayMinimum(Low);
return(low);
}
ArrayMinimum renvoie l'INDEX de l'élément dont la valeur est la plus faible. Maintenant nous devons récupérer la valeur elle-même du tableauLow par l'indexlow:
Faible [faible]