en yakın tarihi bul

 

Herkese günaydın,

10 tarih saatim var ve bunlardan hangisinin şu anki zamana en yakın olduğunu bilmek istiyorum, hangi formülü kullanabilirim?

Destek için teşekkürler.

 
dr.house7 :

Herkese günaydın,

10 tarih saatim var ve bunlardan hangisinin şu anki zamana en yakın olduğunu bilmek istiyorum, hangi formülü kullanabilirim?

Destek için teşekkürler.

Merhaba dr.house7,

Bize herhangi bir çaba girişimi gösterebilir misin?

Şimdiye kadar bir şey denedin mi? Bize göstermek için herhangi bir kod parçanız var mı?

Gösterecek bir şeyiniz yoksa, Kod Tabanında arama yapmak veya İşler Bölümünde bir iş ilanı yayınlamak daha iyidir.

 
Malacarne :

Merhaba dr.house7,

Bize herhangi bir çaba girişimi gösterebilir misin?

Şimdiye kadar bir şey denedin mi? Bize göstermek için herhangi bir kod parçanız var mı?

Gösterecek bir şeyiniz yoksa, Kod Tabanında arama yapmak veya İşler Bölümünde bir iş ilanı yayınlamak daha iyidir.

eğlenceli
 
dr.house7 :
eğlenceli

Merhaba, Bay House, neden komik? ücretsiz kod ister misin

Bence doğrudan bir formül yok. 10 tarih saatiniz bir dizide mi? Her tarih saatini geçerli saatle karşılaştırmak için bir döngü oluşturun ve geçerli saate daha yakın olan tarih saatini koruyun.

Kodunuzu gönderirseniz, elbette yardım alırsınız.

 
angevoyageur :

Merhaba, Bay House, neden komik? ücretsiz kod ister misin

Bence doğrudan bir formül yok. 10 tarih saatiniz bir dizide mi? Her tarih saatini geçerli saatle karşılaştırmak için bir döngü oluşturun ve geçerli saate daha yakın olan tarih saatini koruyun.

Kodunuzu gönderirseniz, elbette yardım alırsınız.

Bu tam olarak aradığım cevaptı, teşekkürler Ange!

ps

Her zaman ücretsiz kodladım, tsd forumunda

 

tamam işte kod:

 int touchedline[ 10 ];
int temp = 0 ;

touchedline[ 0 ]=doc1Time;
touchedline[ 1 ]=doc2Time;
touchedline[ 2 ]=doc3Time;
touchedline[ 3 ]=doc4Time;
touchedline[ 4 ]=doc5Time;
touchedline[ 5 ]=doc6Time;
touchedline[ 6 ]=doc7Time;
touchedline[ 7 ]=doc8Time;
touchedline[ 8 ]=doc9Time;
touchedline[ 9 ]=doc10Time;


     for ( int i= 0 ;i< 10 ;i++)
    {
         if (touchedline[i]>temp)
        temp=touchedline[i]; 
    }
 

doc1Time, doc2Time, doc3Time, ...vb. tarih

bu formülle son dokunulan zamanı aldım ama kullanılan nesne dizisinin numarasını değil... kullanılan son dokunulan çizgiyi[ x ] tam olarak nasıl bilebilirim?

Hangi nesnenin en yüksek değer olduğunu bilmem gerekiyor, dokunulan çizgi[ 0 ] veya dokunulan çizgi[ 1 ] veya dokunulan çizgi[ 3 ] vb.

Destek için teşekkürler

doktor

 
dr.house7 :

Bu tam olarak aradığım cevaptı, teşekkürler Ange!

ps

Her zaman ücretsiz kodladım, tsd forumunda

Herkes ücretsiz kod yazmakta özgür

Ancak mql4.com ve mql5.com forumlarındaki gelenek, kodlarını paylaşan ve girişimlerini gösteren kişilere yardımcı olmaktır.

   ...
   int highest=- 1 ;

   for ( int i= 0 ;i< 10 ;i++)
     {
       if (touchedline[i]>temp)
        {
         highest=i;
         temp=touchedline[i];
        }
     }

Bu size en yüksek değerin indeksini ve tüm tarih dokunulan çizgi[] değerlerinin geçerli zamandan daha düşük olması şartıyla "şimdiki zamana en yakın" indeksi verecektir.

ArrayMaximum() öğesini de kullanabilirsiniz.

 
angevoyageur :

Herkes ücretsiz kod yazmakta özgür

Ancak mql4.com ve mql5.com forumlarındaki gelenek, kodlarını paylaşan ve girişimlerini gösteren kişilere yardımcı olmaktır.

Bu size en yüksek değerin indeksini ve tüm tarih dokunulan çizgi[] değerlerinin geçerli zamandan daha düşük olması şartıyla "şimdiki zamana en yakın" indeksi verecektir.

ArrayMaximum() öğesini de kullanabilirsiniz.

:D

Çok teşekkür ederim... " int en yüksek=0 ;" kullandım önceki denememde, bu benim sorunumdu.

İyi hafta sonları!

doktor

 
angevoyageur :

Herkes ücretsiz kod yazmakta özgür

Ancak mql4.com ve mql5.com forumlarındaki gelenek, kodlarını paylaşan ve girişimlerini gösteren kişilere yardımcı olmaktır.

Bu size en yüksek değerin indeksini ve tüm tarih dokunulan çizgi[] değerlerinin geçerli zamandan daha düşük olması şartıyla "şimdiki zamana en yakın" indeksi verecektir.

ArrayMaximum() öğesini de kullanabilirsiniz.

Günaydın ve güzel pazarlar!

Umarım beni yine doğru şekilde yönlendirirsiniz... Sadece şimdiki değil, önceki "en yüksek"i de almam gerekiyor, nasıl ilerleyebilirim?

herhangi bir yardım için teşekkürler

doktor

 
dr.house7 :

Günaydın ve güzel pazarlar!

Umarım beni yine doğru şekilde yönlendirirsiniz... Sadece şimdiki değil, önceki "en yüksek"i de almam gerekiyor, nasıl ilerleyebilirim?

herhangi bir yardım için teşekkürler

doktor

Bunun gibi bir şey ?

   ...
   int highest=- 1 ,previousHighest=- 1 ;

   for ( int i= 0 ;i< 10 ;i++)
     {
       if (touchedline[i]>temp)
        {
         previousHighest=highest;
         highest=i;
         temp=touchedline[i];
        }
     }
Diğerleri arasında sadece bir çözüm.
 
angevoyageur :

Bunun gibi bir şey ?

Diğerleri arasında sadece bir çözüm.

çok teşekkürler, bir cazibe gibi çalışıyor!

ama anlamak biraz garip :)