Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 708
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
İyi zaman. Değerleri normalleştiriyorum ama *e ile sayıların hatalarını ayıklarken nasıl yani?
Excel'e değer yazamıyorum
Bir diziye başka bir parametre atanırsa ( arrayZ[ 0 ][q][z] = 0; ), o zaman kaydeder
{
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" );
}
İyi zaman. Değerleri normalleştiriyorum ama *e ile sayıların hatalarını ayıklarken nasıl yani?
Excel'e değer yazamıyorum
Bir diziye başka bir parametre atanırsa ( arrayZ[ 0 ][q][z] = 0; ), o zaman kaydeder
{
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" );
}
Yazdırma için DoubleToString() kullanın.
Merhaba, burada forumda kazanabileceğiniz doğru mu? Eğer öyleyse, bana nasıl olduğunu söyleme?
İyi zaman, Görev: Belirli sayıda dikkate alınan çubukta H(maks) veya L(min) fiyatlarını bulun.
Etrafta dolaştım, bir seçim aralığı atayamıyorum, yani bir arama aralığı seçmek için bir değişkenin (DO) nereye ekleneceği
{
//--- объявление переменных
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);
}
İyi zaman, Görev: Belirli sayıda dikkate alınan çubukta H(maks) veya L(min) fiyatlarını bulun.
Etrafta dolaştım, bir seçim aralığı atayamıyorum, yani bir arama aralığı seçmek için bir değişkenin (DO) nereye ekleneceği
{
//--- объявление переменных
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);
}
Neden fraktallar aracılığıyla?
İlk olarak, gerekli aralık için CopyHigh() ve ardından aralığın kopyalandığı dizide max (ArrayMaximum()) öğesini arayın.
Min için aynı ama CopyLow() ve ArrayMinimum()
Neyin yanlış olduğunu anlamıyorum, görev verilen bir aralıkta (indeks) minimum değeri bulmak
//| Получим 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);
}
Neyin yanlış olduğunu anlamıyorum, görev verilen bir aralıkta (indeks) minimum değeri bulmak
//| Получим 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, en küçük değere sahip öğenin INDEX'ini döndürür. Şimdi değeri, düşük dizine göre Low dizisinden almamız gerekiyor:
az az]