Gösterge bozuluyor - sayfa 2

 
jjc :

Örneğin, şu anda sabah 8 ise, kodda (a) sabah 7 çubuğunun 60 çubuk önce olduğunu veya hatta (b) 07:00 için bir çubuğun var olduğunu varsayan herhangi bir şey.

İyi nokta, ilk baktığımda çizelgelerin M1 olduğunu anlamamıştım. . . örneğin gece boyunca sessiz zamanlarda M1 çubuklarının kaybolması oldukça yaygındır.
 
RaptorUK :
İyi nokta, ilk baktığımda çizelgelerin M1 olduğunu anlamamıştım. . . örneğin gece boyunca sessiz zamanlarda M1 çubuklarının kaybolması oldukça yaygındır.
Bu örnekte, komisyoncuyla geçici bir bağlantı kaybı olma ihtimalinin daha yüksek olduğunu düşünüyorum, ancak ilke ve sonuçlar aynı.
 
jjc :
Bu örnekte, komisyoncuyla geçici bir bağlantı kaybı olma ihtimalinin daha yüksek olduğunu düşünüyorum, ancak ilke ve sonuçlar aynıdır.
..."Taşıma Hatası" ekran görüntüsünde de, eksik bir M1 çubuğu varmış gibi göründüğü noktada mor çizgilerin çizilmeye son vermesi dikkat çekicidir.
 
AnkaSoftware :

Hmm, "grafiğe yeni tarihsel veriler eklendi", nasıl? Gösterge başlatılır ve rahatsız edilmeden bırakılır. 1000 barlık sabit bir geriye dönük incelememiz var. Gösterge herhangi bir geçmiş veri yüklemiyor.

Geliştirme ekibinden biri buna bakabilir mi?

Dedin . . . " İlk 16 saat boyunca sorunsuz çalışan bir gösterge geliştirdim" . . . 16 saat x 60 dakika = 960 bar. . . geriye bakma sürenizi 500 bara düşürürseniz ne olur, 8 saat sonra sorun mu yaşıyorsunuz?
 

Jic, gözlemlerin için teşekkürler.

Testler güvenilir bağlantıya sahip bir CNS VPS sunucusunda yapılıyor ve test için kullanılan Demo hesabı IBFX ve VantageFX brokerleri ile

Her tıklamada bir RefreshRates() yapıyorum ve çubuk verilerine erişmek için normal zaman serisi işlevlerini kullanıyorum. Göstergeleri güncellemek için kullanılan kod önceki gönderimde verilmiştir, DrawMoveEx işlevine bakın. TimeSeries'in 0'dan 'Barlar -1'e kadar eksik çubukları olmadığına inanıyorum. Bu varsayımın yanlış olup olmadığını bana bildirin.

Doğru zaman ölçeğine sahip ve sağa kaydırma yapmayan (mevcut IBFX verileriyle) ek bir anlık görüntü.

2011.10.07 15:30 ekindeki excel dosyasına bakma şansınız oldu mu?

 

AnkaSoftware :
I believe the TimeSeries does not have missing bars from 0 to 'Bars -1'. Let me know if this assumption is incorrect.

Orijinal "Taşıma Hatası" ekran görüntünüzde her X ekseni işaretçisi arasında 16 çubuk bulunduğundan bu varsayım kesinlikle yanlış görünüyor - bunları kendiniz sayabilirsiniz - ancak dönemlerden biri 16 dakika yerine 21 dakikayı kapsıyor. Ve RaptorUK'un dediği gibi, kodunuzda güvenle yapabileceğiniz bir varsayım değil. Günün her dakikasında mutlaka bir ticaret olmayacak - yine de büyük tatiller dışında GBPUSD olmasaydı şaşırırdım - ve bu nedenle mutlaka her biri için bir M1 çubuğu olmayacak. tek dakika.

Eksik çubuk olmadığına inanıyorsanız - ekran görüntülerinizden birinde eksik çubuklar olduğu açıkça görülüyorsa - muhtemelen bu varsayıma/inancınıza göre kod yazıyorsunuzdur. En son ekran görüntünüzü karşı kanıt olarak kabul etmem, çünkü (a) ekran görüntüsünde gösterilen dönemden önce eksik veriler olabilir ve bu da (b) ekran görüntüsünde gösterilen çubukların hesaplamalarını bir şekilde etkiler.

En şüpheli tek şey, açıkça eksik bir çubuğun olduğu dönemde mor çizgilerin orijinal ekran görüntüsünde durmasıdır. Kodun tamamını görmeden daha fazla yorum yapamadım veya e- tablolarınızın analizini yapamadım.

 
AnkaSoftware :

Jic, gözlemlerin için teşekkürler.

Testler güvenilir bağlantıya sahip bir CNS VPS sunucusunda yapılıyor ve test için kullanılan Demo hesabı IBFX ve VantageFX brokerleri ile

Her tıklamada bir RefreshRates() yapıyorum ve çubuk verilerine erişmek için normal zaman serisi işlevlerini kullanıyorum.

Muhtemelen sorununuzun bir nedeni değil, ama . . Bu İşlevleri kullanıyorsanız RefreshRates() hiçbir fark yaratmaz: https://docs.mql4.com/series RefreshRates yalnızca şu değişkenleri yeniler: https://docs.mql4.com/predefined/variables
 
jjc :

Orijinal "Taşıma Hatası" ekran görüntünüzde her X ekseni işaretçisi arasında 16 çubuk bulunduğundan bu varsayım kesinlikle yanlış görünüyor - bunları kendiniz sayabilirsiniz - ancak dönemlerden biri 16 dakika yerine 21 dakikayı kapsıyor. Ve RaptorUK'un dediği gibi, kodunuzda güvenle yapabileceğiniz bir varsayım değil. Günün her dakikasında mutlaka bir ticaret olmayacak - yine de büyük tatiller dışında GBPUSD olmasaydı şaşırırdım - ve bu nedenle mutlaka her biri için bir M1 çubuğu olmayacak. tek dakika.

Eksik çubuk olmadığına inanıyorsanız - ekran görüntülerinizden birinde eksik çubuklar olduğu açıkça görülüyorsa - muhtemelen bu varsayıma/inancınıza göre kod yazıyorsunuzdur. En son ekran görüntünüzü karşı kanıt olarak kabul etmem, çünkü (a) ekran görüntüsünde gösterilen dönemden önce eksik veriler olabilir ve bu da (b) ekran görüntüsünde gösterilen çubukların hesaplamalarını bir şekilde etkiler.

En şüpheli tek şey, açıkça eksik bir çubuğun olduğu dönemde mor çizgilerin orijinal ekran görüntüsünde durmasıdır. Kodun tamamını görmeden daha fazla yorum yapamadım veya elektronik tablolarınızın analizini yapamadım.

Raptor, "Geri bakmanızı 500 bara düşürürseniz ne olur, 8 saat sonra sorun yaşar mısınız?" diye kontrol edecek. ve geri dön.

JIC, Lütfen sorunun 32 bit platformlarda oluşmadığını unutmayın. Daha önceki gönderilerden birinde bazı kodlar verdim.

 
AnkaSoftware :
TimeSeries'in 0'dan 'Barlar -1'e kadar eksik çubukları olmadığına inanıyorum. Bu varsayımın yanlış olup olmadığını bana bildirin.

Elbette hayır, 0'dan Çubuk-1'e kadar numaralandırılmış Bars mumları var. ArraySize(Close) == Her zaman çubuklar.

Ancak her zaman atlanan çubuklar vardır. Cum 21:59z'den sonraki bar Paz 22:00z'dir. Hafta sonları ve Tatiller ve aktivite olmayan dakikalar.

Zaman[x] == Zaman[x+1] + 60*Period()'un atlanan bir çubukta olmayacağını varsayamazsınız.

SİZİN göstergenizle ilgili yardım istiyorsanız, kodunuzu gönderin - burada akıl okuyucu yok.

 
AnkaSoftware :

Biraz daha bilgi -

a) Göstergelerin bozulması yalnızca Windows 64 bit platformunda olur

b) Bozulmadan önce ve bozulmadan sonra gösterge dizisinin bir dökümünü aldım - aynısı ekteki xls dosyasında yorumlarla birlikte mevcuttur.

Elektronik tablonuzdaki Unix zaman değerlerine bir göz atın, her bitişik değer arasındaki boşluklar 60, 60 saniye olmalıdır, birkaç 240 saniye boşluk ve en az bir 120 saniye boşluk vardır. Kodunuz eksik M1 çubuklarını işlemek için mi tasarlandı?