MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1163

 
çubuk indeksi ve zamanını belirlemek için alın. Görünüşe göre burada, çubuğun oluşumu sırasında saniyelere geçişle daha derine inmeniz gerekiyor.
 
Evgeniy Butakov :
çubuk indeksi ve zamanını belirlemek için alın. Görünüşe göre burada, çubuğun oluşumu sırasında saniyelere geçişle daha derine inmeniz gerekiyor.

Belgeleri dikkatlice okuyun. İşlev aşırı yüklenmelerine dikkat edin.

Neden çubuk sayısını zamandan alıyorsun??? Zaman zaman sana yazıyorum.

 int    CopyRates ( 
   string            symbol_name,       // имя символа 
   ENUM_TIMEFRAMES   timeframe,         // период 
   datetime          start_time,         // с какой даты 
   datetime          stop_time,         // по какую дату 
   MqlRates          rates_array[]       // массив, куда будут скопированы данные 
   );

hangi tarihten ve hangi tarihe sadece bir tarih değil, tarih_saat. Bu nedenle, çubuğun açılış süresi eksi 2*PeriodSeconds( PERIOD_M15 ) değerinden bir sonraki çubuğun H4 zamanına kadar alın

 
Alexey Viktorov :

Belgeleri dikkatlice okuyun. İşlev aşırı yüklenmelerine dikkat edin.

Neden çubuk sayısını zamandan alıyorsun??? Zaman zaman sana yazıyorum.

hangi tarihten ve hangi tarihe sadece bir tarih değil, tarih_saat. Bu nedenle, çubuğun açılış süresi eksi 2*PeriodSeconds( PERIOD_M15 ) değerinden bir sonraki çubuğun H4 zamanına kadar alın

Sıkıntıları çözdüm... Gerekli zamanı "hangi tarihten" ve "neye" saniyelere çevirdim ve onlardan dans ediyorum... Ve neden tam olarak 2*PeriodSeconds( PERIOD_M15 )? Yeterince yedek 900 saniyem var, yani. M15 başına bir çubuk. Çok teşekkürler!!

 
Evgeniy Butakov :

Sıkıntıları çözdüm... Gerekli zamanı "hangi tarihten" ve "neye" saniyelere çevirdim ve onlardan dans ediyorum... Ve neden tam olarak 2*PeriodSeconds( PERIOD_M15 )? Yeterince yedek 900 saniyem var, yani. M15 başına bir çubuk. Çok teşekkürler!!

Bu dilek üzerine

Evgeni Butakov :

Tünaydın!

İkinci kez, daha genç olanın çubukları pahasına daha yüksek çerçevenin (H4) çubuğunun içindeki hesaplama görevim. H4 ile çubukta M15 hakkında nasıl veri alacağımı buldum. Ancak bu noktada zatromozil. Örneğin, 3. mum H4'te TF M15'ten veri topluyorum, sonuç olarak, bu 3. çubuğun içindeki 16 mumun tümü işleniyor. Ve bu 16'ya ek olarak M15'te ek bir çift çubuk nasıl elde edilir , çünkü bunlar zaten H4'teki 4. mumdan olacaklar mı? Lütfen beni işaret et, söyle.

M15'ten veri almak için aşağıdaki kodu kullanır:

Bir çubuğa ihtiyacınız varsa, her şeyi çarpmanız gerekmez.

Ve bir bedava ipucu daha: Saniyelerden vazgeç. 1800 veya 2*PeriodSeconds( PERIOD_M15 ) bir süre sonra başkasının veya kendi kodunuzu okurken daha net olan M15 periyodunun 2 çubuğu saniye olarak ifade edilir. Saniye cinsinden bir hafta veya bir ay nedir? Her seferinde yeniden hesaplayın veya gereksiz bilgilerle bellek hücrelerinizi tıkayın mı?

 
Alexey Viktorov :

Bu dilek üzerine

Bir çubuğa ihtiyacınız varsa, her şeyi çarpmanız gerekmez.

Ve bir bedava ipucu daha: Saniyelerden vazgeç. 1800 veya 2*PeriodSeconds( PERIOD_M15 ) bir süre sonra başkasının veya kendi kodunuzu okurken daha net olan M15 periyodunun 2 çubuğu saniye olarak ifade edilir. Saniye cinsinden bir hafta veya bir ay nedir? Her seferinde yeniden hesaplayın veya bellek hücrelerinizi gereksiz bilgilerle mi tıkayın?

Evet, Alexey, Rehberlik ve yönlendirme için teşekkürler. PeriodSeconds işlevini tamamen unutmuşum;).
 
int file = FileOpen ( "expert_file" , FILE_WRITE | FILE_BIN );
   if (file != INVALID_HANDLE ){
       uint file_bytes = FileWriteArray (file, file_data);
       FileClose (file);
       Print ( "Bytes count: " , file_bytes);
       Print ( "Error: " , GetLastError ());
   } else {
       return false ;  
   }    

Bir dosyaya bir dizi bayt yazmaya çalışıyorum.

Kayıt

dosyanın kendisi

Yani program dosyaya 186368 bayt yazdığını döndürür, ancak dosyanın kendisi kesinlikle boş kalır. Ve hiçbir hata oluşmuyor.

 

Merhaba.

Böyle bir sorun var. Aracının hesabına 1k şartlı depozito yapıldı. Sonra bu depozito başka bir 5k ile dolduruldu. Sonuç olarak, MT5 "geçmiş" raporunda, ilk 1k mevduat olarak, yenileme ise kar olarak belirlenir ve doğal olarak tüm ticaret göstergeleri ölçek dışına çıkar.


Soru: Karı hesaplaması gereken ilk işlem bakiyesinin boyutunu bir şekilde manuel olarak ayarlamak mümkün müdür?!


Şimdiden teşekkürler ^^

 
MQL_User :

OnChartEvent'ten, fare grafik üzerinde tıklandığı anda klavyedeki herhangi bir düğmeye basılıp basılmadığını bir şekilde belirlemek mümkün müdür?

Böyle bir işlev var - GetAsyncKeyState. Kodda kullanılabilir mi?

Bu tasarımı denedim:

#import "user32.dll"
int GetAsyncKeyState(int a0);
#içe aktarmak

printf("--"+(GetAsyncKeyState(88)));

Ancak DLL yüklemesine izin verilmiyor mesajı üretiliyor.

"DLL içe aktarmaya izin ver" onay kutusunu işaretledim. Yardım etmedi.
 
Belki yanlış konuya girdim Allah affetsin Mkl.!!! Dört veya beş göstergenin birleşiminden sinyal verecek bir gösterge yazmam gerekiyor.Bodrumda kurulu.Belki bir şablon vardır. Ya da hazır bir danışman lütfen söyleyin!!!!!!!!!!!!
 
Bir mql5 klasörüne nasıl uzman danışmanı ekleyebilirim ve bunun danışman bölümünde görünmesini nasıl sağlayabilirim?