Mql5 dilinin özellikleri, incelikleri ve çalışma yöntemleri - sayfa 28
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
Hatalar, hatalar, sorular
Renat Fatkhullin , 2017.03.31 09:10
Dinamik nesneler için ArraySize kullanın ve statik nesneler için yalnızca sizeof kullanın. Sizeof, derleme zamanında kabul edilir ve her zaman bir sabittir.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
SeriesInfoInteger(_Symbol,_Period,SERIES_SYNCHRONIZED)) ve SymbolIsSynchronized(_Symbol)
Slava , 2017.04.04 08:05
Uzman Danışmanlarda ve komut dosyalarında, Kopyalama işlevleri çağrılırken birkaç deneme yapılır - sunucudaki ilk tarih kontrol edilir, istemci terminalindeki ilk tarih kontrol edilir, istenen tarihle karşılaştırılır, sembol senkronizasyonu kontrol edilir, bir istek yapılır indirmeye devam etmek için gönderildi, kısa bir bekleme ve senkronizasyonu kontrol eden çemberin etrafında. Sembol hala senkronize değilse, verilen ve isteğin koşullarını karşılayan şey. Aynı zamanda, veri yükleme işlemi sırasında anında tamamlandığı için istenen zaman serilerinin senkronizasyonu kontrol edilmez.
Göstergelerde yalnızca bir istek yapılır - döngü yok! Sonra almayı başardıkları her şey hemen verilir.
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
SeriesInfoInteger(_Symbol,_Period,SERIES_SYNCHRONIZED)) ve SymbolIsSynchronized(_Symbol)
Slava , 2017.04.04 08:06
SymbolInfoDouble istenirken, her zaman en son veriler döndürülür"Gerçek keneler" modundaki MT5 test cihazında, tarihin temeli gerçek keneler değil, M1 çubuklarıdır. Bu, gerçek keneler çubuklara karşılık gelmiyorsa, o zaman yok sayılırlar ve bunların yerine çubuklara karşılık gelmesi gereken yapay keneler üretilir.
Aynı zamanda, 128K'dan fazla ekstrem parça için CopyTicks istenirse, test cihazında bunlar önbellekten (gerçek keneler + oluşturulanlar) değil, veritabanından - gerçek olanlardan alınacaktır. Ve aynı kene geçmişinin test cihazında ve test cihazının kurduğu şeyde bir uyumsuzluk elde edin.
"Gerçek keneler" modundaki MT5 test cihazında, tarihin temeli gerçek keneler değil, M1 çubuklarıdır. Bu, gerçek keneler çubuklara karşılık gelmiyorsa, o zaman yok sayılırlar ve bunların yerine çubuklara karşılık gelmesi gereken yapay keneler üretilir.
Aynı zamanda, 128K'dan fazla ekstrem parça için CopyTicks istenirse, test cihazında bunlar önbellekten (gerçek keneler + oluşturulanlar) değil, veritabanından - gerçek olanlardan alınacaktır. Ve aynı kene geçmişinin test cihazında ve test cihazının kurduğu şeyde bir uyumsuzluk elde edin.
Berbat! Gerçekten doğru mu? - SD'ye yazdılar mı?
Şimdi neye inanmalı, nasıl yaşamalı ... (neredeyse üzücü bir ironi olmadan)
Berbat! Gerçekten doğru mu? - SD'ye yazdılar mı?
Aynı zamanda, 128K'dan fazla ekstrem parça için CopyTicks talep edilirse,
Ne taraftan? 128K son, ya da ne?
Yoksa ilk mi?
Ne taraftan? 128K son, ya da ne?
Yoksa ilk mi?
En yeni.
Berbat! Gerçekten doğru mu? - SD'ye yazdılar mı?
Şimdi neye inanmalı, nasıl yaşamalı ... (neredeyse üzücü bir ironi olmadan)
https://www.mql5.com/ru/docs/runtime/testing#real_ticks
Test ederken, dakika verilerinin daha güvenilir olduğu kabul edilir.
Dakika çubukları daha güvenilir mi? Onay verisi son çare değil mi? Eğer dikkate alınmıyorlarsa neden gerçek kene verilerine ihtiyacımız var?
Bunu safça yapardım: Dakikalarca test ettim, sonra keneler üzerinde test ettim, sonra son bir hassasiyet kontrolü olarak gerçek keneler üzerinde test ettim. Şimdi anlıyorum ki üçüncü kontrolde özel bir anlam yok.
Test ederken, dakika verileri daha güvenilir olarak kabul edilir.
Dakika çubukları daha güvenilir mi? Onay verisi son çare değil mi? Eğer dikkate alınmıyorlarsa neden gerçek kene verilerine ihtiyacımız var?
Bunu safça yapardım: Dakikalarca test ettim, sonra keneler üzerinde test ettim, sonra son bir kesinlik kontrolü olarak gerçek keneler üzerinde test ettim. Şimdi anlıyorum ki üçüncü kontrolde özel bir anlam yok.
Cümleyi bağlamdan çıkarmaya gerek yok. İfade şöyle gider:
Test sırasında en yüksek doğruluğu sağlamak için dakika çubukları gerçek tıklama modunda da kullanılır. Kene verilerini kontrol etmek ve düzeltmek için kullanılırlar. Ayrıca, test cihazındaki ve istemci terminalindeki çizelgeler arasındaki tutarsızlığın önlenmesine yardımcı olur.
Test cihazı, tik verilerinin dakika çubuğunun parametreleriyle eşleşip eşleşmediğini kontrol eder: tik, çubuğun Yüksek/Düşük fiyatlarının ötesine geçmemelidir, dakika için açılış ve kapanış tikleri, çubuğun Açık/Kapalı fiyatlarıyla eşleşmelidir. Hacim de karşılaştırılır. Bir uyumsuzluk tespit edilirse, bu dakika çubuğuna karşılık gelen tüm işaretler atılır. Bunun yerine, oluşturulan onay işaretleri kullanılacaktır ("Tüm işaretler" modunda olduğu gibi).
Sembolün geçmişinde bir dakika çubuğu varsa, ancak o dakika için tik verisi yoksa, test cihazı "Tüm tikler" modunda tikler oluşturacaktır. Bu, aracıdan eksik onay verisi olması durumunda test cihazında doğru grafiği oluşturmanıza olanak tanır.
Sembolün geçmişinde dakika çubuğu yoksa, ancak o dakika için kene verileri varsa, bunlar test cihazında kullanılabilir. Örneğin, hisse senedi sembollerinin çubukları Son fiyatlarda oluşturulur. Sunucudan sadece Son fiyat olmayan Alış/Satış fiyatları olan keneler gelirse bar oluşmayacaktır. Dakika verileriyle çelişmediği için test cihazı bu onay verilerini kullanacaktır.
Kene verileri, çeşitli nedenlerle dakika çubuklarıyla eşleşmeyebilir. Örneğin, kaynaktan istemci terminaline veri aktarımındaki bağlantı kesilmeleri veya diğer arızalar nedeniyle. Test ederken, dakika verileri daha güvenilir olarak kabul edilir.