{ 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());} // ответы с е, че заааа
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;
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;
こんにちは。私は値を正規化していますが、デバッグでは*eの数値はどうしてですか?
Excelに値を書き込むことができない。
配列に別のパラメータを代入した場合(arrayZ[0][q][z] = 0;),保存さ れます.
{
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");
}
こんにちは。私は値を正規化していますが、デバッグでは*eの数値はどうしてですか?
Excelに値を書き込むことができない。
配列に別のパラメータを代入した場合(arrayZ[0][q][z] = 0;),保存さ れます.
{
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");
}
印刷出力には DoubleToString() を使用します。
こんにちは、この掲示板でお金を稼ぐことが可能というのは本当ですか?もしそうなら、その方法を教えてください。
良い時間、タスク:問題のバーの与えられた番号でH(最大値)またはL(最小値)を見つける。
検索区間を選択するための選択範囲、つまり変数(DO)を挿入する場所を指定することができません。
{
//--- объявление переменных
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);
}
良い時間、タスク:問題のバーの与えられた番号でH(最大値)またはL(最小値)を見つける。
検索区間を選択するための選択範囲、つまり変数(DO)を挿入する場所を指定することができません。
{
//--- объявление переменных
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);
}
なぜ、フラクタルでなければならないのか?
まず必要な範囲をCopyHigh()し、その範囲がコピーされた配列の中で、max(ArrayMaximum())を探します。
minも同様ですが、CopyLow()とArrayMinimum()
何が問題なのか理解できません。タスクは与えられた区間(インデックス)の最小値を見つける ことです。
//| Получим 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);
}
何が問題なのか理解できません。タスクは与えられた区間(インデックス)の最小値を見つける ことです。
//| Получим 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 は、その値が最小となる要素の INDEX を返す。次に,配列Lowから インデックスlowで 値そのものを取得する必要があります.
ロー[low]