{ 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());} // ответы с е, че заааа
Buen tiempo, Tarea: Encontrar los precios H(max) o L(min) en un número determinado de barras en cuestión.
He hurgado, no puedo asignar un rango de selección, es decir, dónde insertar la variable (DO), para seleccionar el intervalo de búsqueda
double UpperFractal(int DO) // Фрактал UP { //--- объявление переменных 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;
Buen tiempo, Tarea: Encontrar los precios H(max) o L(min) en un número determinado de barras en cuestión.
He hurgado, no puedo asignar un rango de selección, es decir, dónde insertar la variable (DO), para seleccionar el intervalo de búsqueda
double UpperFractal(int) // Фрактал UP { //--- объявление переменных 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); }
¿Por qué tengo que usar fractales?
Primero CopyHigh() para el rango requerido, y luego en el array donde se copia el rango, buscar max (ArrayMaximum()).
Buenas tardes. Estoy normalizando los valores, pero al depurar los números con *e ¿cómo es?
No puedo escribir los valores en Excel.
Si se asigna otro parámetro a la matriz (arrayZ[0][q][z] = 0;), se guarda
{
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");
}
Buenas tardes. Estoy normalizando los valores, pero al depurar los números con *e ¿cómo es?
No puedo escribir los valores en Excel.
Si se asigna otro parámetro a la matriz (arrayZ[0][q][z] = 0;), se guarda
{
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");
}
Utilice DoubleToString() para imprimir la salida.
Hola, ¿es cierto que es posible ganar dinero en este foro? Si es así, ¿podría decirme cómo?
Buen tiempo, Tarea: Encontrar los precios H(max) o L(min) en un número determinado de barras en cuestión.
He hurgado, no puedo asignar un rango de selección, es decir, dónde insertar la variable (DO), para seleccionar el intervalo de búsqueda
{
//--- объявление переменных
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);
}
Buen tiempo, Tarea: Encontrar los precios H(max) o L(min) en un número determinado de barras en cuestión.
He hurgado, no puedo asignar un rango de selección, es decir, dónde insertar la variable (DO), para seleccionar el intervalo de búsqueda
{
//--- объявление переменных
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);
}
¿Por qué tengo que usar fractales?
Primero CopyHigh() para el rango requerido, y luego en el array donde se copia el rango, buscar max (ArrayMaximum()).
Lo mismo para min, pero CopyLow() y ArrayMinimum()
No entiendo qué es lo que falla, la tarea es encontrar el valor mínimo en un intervalo dado (índice)
//| Получим 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);
}
No entiendo qué es lo que falla, la tarea es encontrar el valor mínimo en un intervalo dado (índice)
//| Получим 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 devuelve el INDEX del elemento cuyo valor es el más bajo. Ahora necesitamos obtener el valor mismo del arrayLow por el índicelow:
Bajo [bajo]