Maksimum ve minimum görünür tırnak - sayfa 4

 
Kullanıcı графики с отступами от правого края. Сколько баров отображается на таком графике ? Dönemlerden, tarihten, kaydırmadan ve diğer her şeyden bağımsız, saf bir geometrik sabit.
Peki ya bir düşünürsen?
Diyelim ki grafik maksimum sağa kaydırılıyor, ardından girinti görünüyor ve örneğin grafikte 100 çubuk var.
Ancak, girintinin kaybolması için grafiği sola kaydırırsanız, girintinin sığabileceği kadar 100 + çubuk olacaktır.
 
Grafiğin mümkün olduğunca sağa kaydırıldığını, ardından girintinin görünür olduğunu ve örneğin grafikte 100 çubuk olduğunu varsayalım.
Ancak, girintinin kaybolması için grafiği sola kaydırırsanız, girintinin sığabileceği kadar 100 + çubuk olacaktır.


Grafiği elle sarmak hiç de ilginç değil.


için hangi sistem fonksiyonlarının ve kitaplıkların bağlanması gerektiği
- mevcut grafiğin dikey ve yatay boyutunu piksel olarak almak;

1. user32.dll'den GetClientRect


İçe aktarma * .dll'yi bulmama yardım et, kesinlikle hiçbir deneyimim yok.
GetClientRect'in açıklamasını buldum

GetClientRect işlevi, bir pencerenin istemci alanının koordinatlarını alır. Çalışma koordinatları, çalışma alanının sol üst ve sağ alt köşelerini tanımlar. Çalışma koordinatları, pencere istemci alanının sol üst köşesine göreli olduğundan, sol üst köşenin koordinatları (0,0) olur.
Sözdizimi
BOOL GetClientRect
(
HWND hWnd, // pencere tutamacı
LPRECT lpRect // iş koordinat yapısının adresi
);
Seçenekler
hWnd
Çalışma koordinatları döndürülecek pencereyi tanımlar.
lpRect
İş koordinatlarını kabul eden bir RECT yapısına işaret eder. Sol ve üst öğeler boş. Sağ ve alt elemanlar, pencerenin genişliğini ve yüksekliğini içerir.
Dönüş Değerleri
İşlev başarılı olursa, dönüş değeri sıfır değildir. İşlev başarısız olursa, dönüş değeri null olur. Genişletilmiş hata bilgilerini almak için GetLastError'u arayın.


Diğer kaynaklar bu işlevi geçersiz olarak tanımlar. Neye inanmalı?

Bağlanmak için #import "user32.dll" belirtmeniz gerekiyor?

Bazı kaynaklara göre RECT yapısı winuser.h'de, diğerlerine göre ise windef.h'de anlatılmaktadır. Bu dosyaların hiçbiri makinemde yok.

#include <winuser.h> veya #include <windef.h> ?

hWnd pencere tanımlayıcısı olarak ne belirtilmelidir?

lpRect yapısından gerekli parametreler nasıl alınır? MQL4, karmaşık veri türlerini (yapıları) desteklemez.


için hangi sistem fonksiyonlarının ve kitaplıkların bağlanması gerektiği

- mevcut grafiğin maksimum ve minimum görünür fiyat tekliflerini almak;

MQL4 dilini uygun işlevlerle desteklemek mantıklı olabilir mi?


|------------------------------------------------| <- 1.8595
|................................................................|
|................................................................|
|............--- Yüksek ................................|
|................................................................|
|................................................................|
|................................................................|
|................................................................|
|................................................................|
|................................................................|
|.............--- Düşük.........|
|................................................................|
|................................................................|
|------------------------------------------------| <- 1.8293

İlgi çekici olan, dikey eksende görünen maksimum ve minimum tırnak değerleridir.
 
Sevgili geliştiriciler!

Lütfen sorularıma cevap verin.
 
Programlama konuları, MQL4.COMmunity özel forumunda tartışılmaktadır.

Sitede birçok makale ve program koleksiyonu bulunmaktadır. Okuyun, pişman olmayacaksınız. Özellikle, minimum ve maksimum alıntılar konusu burada tartışıldı: "MQL4: Interception"

alıntı yapacağım
===
Pencerenin boyutunu piksel cinsinden biliyorsanız, BarsPerWindow ve FirstVisibleBar işlevlerini kolayca kullanabilirsiniz. Çubuk numarasının hesaplanmasında herhangi bir sorun yoktur.
Fiyat koordinatı ile daha zor. Terazi otomatik ise yukarıdan ve aşağıdan en yüksek ve en düşük fiyat değerleri arasındaki farkın yüzde 5'i eklenerek hesaplanabilir. Ölçek sabitse, üst ve alt sınırlar hakkında bilgi olmadığı için hesaplamak imkansızdır.
===
 

alıntı yapacağım
===
Pencerenin boyutunu piksel cinsinden biliyorsanız, BarsPerWindow ve FirstVisibleBar işlevlerini kolayca kullanabilirsiniz. Çubuk numarasının hesaplanmasında herhangi bir sorun yoktur.
Fiyat koordinatı ile daha zor. Terazi otomatik ise yukarıdan ve aşağıdan en yüksek ve en düşük fiyat değerleri arasındaki farkın yüzde 5'i eklenerek hesaplanabilir. Ölçek sabitse, üst ve alt sınırlar hakkında bilgi olmadığı için hesaplamak imkansızdır.
===


Gerçek örnek: EURUSD, M1
Yüksek 1.2613 Maks. görünen değer 1.2620 delta 0.0007
Düşük 1.2602 Min. görünen değer 1.2600 delta 0.0002

Buradaki %5 nerede?

MQL4.COMmunity forumunda GetClientRect araması 2 bağlantı verir. Belirli bir cevap veya öneri yok.
 

MQL4.COMmunity forumunda GetClientRect araması 2 bağlantı verir. Belirli bir cevap veya öneri yok.

Yani bir soru soruyorsun. Sizi bunun için özel bir foruma davet ettim.
Ayrıca kendimden alıntı yaptım: "Fiyat koordinatıyla daha zor." Bu, sorunun net bir cevabı olmadığı anlamına gelir.

Bu arada %5 fiyattan değil, maksimum ve minimum fiyatlar arasındaki piksel sayısından.
 
Şimdiye kadar, kullanıcı için yalnızca Yüksek ve Düşük fiyatlar mevcuttur. Verilen örneğe göre, metin nesnelerinin çıktısı yalnızca grafik alanının %50'sinde mümkündür. Bu normal mi ?
 

Yani bir soru soruyorsun. Sizi bunun için özel bir foruma davet ettim.
Ayrıca kendimden alıntı yaptım: "Fiyat koordinatıyla daha zor." Bu, sorunun net bir cevabı olmadığı anlamına gelir.

Bu arada %5, fiyattan değil, maksimum ve minimum fiyatlar arasındaki piksel sayısındandır.


Tavsiyenize uydu ve MQL4.COMmunity forumunda bir soru yayınladı. Sıfır tepki ve beklenti ve umut yok. Bana yardım et lütfen.
 
Sevgili geliştiriciler!

Geçerli grafiğin dikey ve yatay boyutunu piksel olarak almak için lütfen user32.dll'den GetClientRect işlevini anlamama yardım edin.

Fonksiyonun açıklaması yukarıda verilmiştir.

Bağlanmak için #import "user32.dll" belirtin.

WindowHandle(...) işlevi tarafından döndürülen değeri hWnd pencere tanımlayıcısı olarak belirtin.

MQL4 karmaşık veri türlerini (yapıları) desteklemiyorsa lpRect yapısından gerekli parametreler nasıl alınır?
 
Sevgili geliştiriciler!

Bir aydan fazla bir süredir sorunumu başarılı bir şekilde çözmek için yardım istiyorum.

Bazı gönderiler bir veya iki saat içinde yanıt alır, bazıları ise açıkçası uzun süre göz ardı edilir. Niye ya ?
Neden: