CopyTicksRange(), MQL5.a'da düzgün çalışmıyor - sayfa 2

 
Alexey Viktorov # :

Anahtar kelimeleri vurguladım.

Tanım gereği henüz var olmayan keneler İSTEMEYİN. Milisaniye cinsinden o anki zamandan en az bir milisaniye daha fazla kene talep ederseniz, aynı g………. sıraladığınız problemler şeklinde alırsınız.


Onlar. Anlayışınıza göre, önce bu kenelerin var olup olmadığını kontrol etmeliyim? örneğin nasıl? İstenen aralığın bir izin gününe denk gelip gelmediğini yine de kontrol edebilir miyim? bu, CopyTicksRange() işlevi tarafından yapılmalıdır. Benim işim, belgelere göre girdi parametreleri vermek. Ve onları zaten kontrol etmesine izin verin ve herhangi bir şey bir hata döndürürse, ancak sadece bir cevap şeklinde çöp değil.

Mevcut çubukta ikinci saniyeden üçüncüye kadar keneler olup olmadığını kontrol etmem için bir yol bul, böylece bu fonksiyon arızalanmaz


Yukarıda, her şeyin orada olduğu bir kod örneği yazdım, ancak cevap hala yanlış.

 
RusPro # :


Onlar. anlayışınıza göre, önce bu kenelerin var olup olmadığını kontrol etmeliyim? örneğin nasıl ? Yine de istenen aralığın izinli olup olmadığını kontrol edebilir miyim? bu, CopyTicksRange() işlevi tarafından yapılmalıdır. Benim işim, belgelere göre girdi parametreleri vermek. Ve onları zaten kontrol etmesine izin verin ve herhangi bir şey bir hata döndürürse, ancak sadece bir cevap şeklinde çöp değil.


Yukarıda, her şeyin orada olduğu bir kod örneği yazdım, ancak cevap hala yanlış.

SembolBilgiTick

MqlTick türündeki bir değişkende belirtilen sembol için geçerli fiyatları döndürür.

 bool    SymbolInfoTick (
   string     symbol,     // символ
   MqlTick &  tick         // ссылка на структуру
   );
 struct MqlTick
  {
   datetime      time;           // Время последнего обновления цен
   double        bid;           // Текущая цена Bid
   double        ask;           // Текущая цена Ask
   double        last;           // Текущая цена последней сделки (Last)
   ulong         volume;         // Объем для текущей цены Last
   long          time_msc;       // Время последнего обновления цен в миллисекундах
   uint          flags;         // Флаги тиков
   double        volume_real;   // Объем для текущей цены Last c повышенной точностью
  };

time_msc ötesinde kene istemeye gerek yok

 

1) Yukarıdaki örneğimde istenen aralık mevcut.

2) CopyTicksRange'ın kendisinin önünde ne var?   bu kontrolü yap? ve aynı zamanda belgelere yansıtıyor mu? geliştiriciler neden hatalarım için en basit düzeltmeler yerine koltuk değneği yapmamı teklif ediyor?


Bu arada, SymbolInfoTick hakkında - en azından sentetik sembollerde de düzgün çalışmıyor :)

Hatırladığım kadarıyla, her zaman son tik yerine ilk tik saatini döndürür.

 
RusPro de düzgün çalışmıyor :)

Hatırladığım kadarıyla, her zaman son tik yerine ilk tik saatini döndürür.

Artık bu diyaloga katılmıyorum.

 
Alexey Viktorov # :

Artık bu diyaloga katılmıyorum.

Evet ve Metatrader'ın geliştiricisi değilsiniz, neden onların avukatı rolünü üstlendiniz?

Esasen ortaya atılan sorular doğrudur, işlev doğru çalışmalıdır.
 
Sergey Gridnev # :
Evet ve Metatrader'ın geliştiricisi değilsiniz, neden onların avukatı rolünü üstlendiniz?

Esasen ortaya atılan sorular doğrudur, işlev doğru çalışmalıdır.

Bir açıklama için diyaloğa dönüyorum:

İşlev, kullanıcıların istediği gibi değil, geliştiricilerin istediği gibi çalışmalıdır. Biri bir şey, diğeri başka bir şey istiyor ve üçüncüsü saçmalık istiyor.

Bu yüzden geliştiriciler size cevap vermiyor. Ve avukatlık yapmıyorum ama size basit bir gerçeği aktarmaya çalışıyorum, kendiniz yapamıyorsanız başkalarına yük olmayın. Buna karşılık, “bıyık ... ... ... pes etmeyin ...” eklediniz ve koltuk değneği hakkında efsaneler oluşturdunuz.

Bu gerçekten HER ŞEYDİR¡¡¡ Geliştiriciler size cevap vermeyecektir ... ummayın.

 
RusPro # :

Ve işte ortak:

onlar. binlerce programcı tarafından kullanılan bir işlev, mevcut çubuğun başlangıcından itibaren tüm onay işaretlerini kişisel olarak döndürdüm, ancak istenen aralığa dahil edilmedi

Bu gerçekten bir hatadır. Tam oynatma verileri sağlayın. Onaylanırsa, geliştiriciler sonraki derlemelerde bir düzeltme yapacaktır.

Belki de sorun MqlTick statik dizisindedir.
 

Alexey Viktorov # :

time_msc ötesinde kene istemeye gerek yok

Son tarihsel onay, SymbolInfoTick'ten (CopyTicks'ten sonra adlandırılır) daha yeni olabilir. Her gün bununla uğraşıyorum.

Tersi durum da ortaya çıkar. Senkronize olmayan akışlar.
 
fxsaber # :

Bu gerçekten bir hatadır. Tam oynatma verileri sağlayın. Onaylanırsa, geliştiriciler sonraki derlemelerde bir düzeltme yapacaktır.

Belki de sorun MqlTick statik dizisindedir.

Tamam, kodu en aza indirmeye çalışacağım ve yayınlayacağım. CopyTicks de benzer aksaklıklar içeriyor ve orada daha az tahmin edilebilir bir şekilde çıkıyorlar ve bu yüzden koltuk değneklerini sadece CopyTicksRange için yaptım. Bu muhtemelen bazı yaygın dahili işlevlerdeki bir hatadır.

SymbolInfoTick'e gelince , ben de bir örnek çizeceğim.

 
RusPro # :

binlerce programcı tarafından kullanılıyor

birimler.