[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 5. - sayfa 404
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
1. Eh, yeni veriler geldiyse, ihtiyacımız olan şey bu, değil mi?
2. Evet, 0. çubuktan veriye ihtiyacınız var, evet. MarketInfo(), verileri 0. çubuktan çeker, aksi halde değil. O zaman neden onları bir şeyle karşılaştıralım?
3. Tarihte bir boşluk olsa bile, bu mevcut hesaplamaları hiçbir şekilde etkilemeyecektir. Ve bir delik olduğu anda yansıyacaktır. Onlar. mevcut Ask'ı alırsak, o zaman birkaç bar önce fiyatların ne olduğunu derinden morarırız (resmi olarak değil, belirli bir piyasa değişkeniyle ilgili şu an için demek istiyorum, çünkü RefreshRates() mevcut ile ilgili olarak kendi kendine işlev görür. 0'da, bar tamamen haklı çıkacak!
Tabii ki derine indim, ama en iyi nasıl davranacağımı anlamak istiyorum.
4. İşte siz Vadim, yukarıda işlevi yanlış yazdığımı söylediniz, eklenen satırlarla tekrar çoğaltacağım:
Size göre yanlış olan ne?
1. Veri alınmadıysa ve aynı zamanda tüm veriler oradaysa, ancak bu konuda hiçbir şey bilmiyor muyuz? YANLIŞ döndürür. Nasıl değerlendirilir? Veri eksikliği veya bir hata veya veri var mı?
2. 1. nokta sorununu çözmek için kontrol etmek gerekir.
3. Sürecin dinamiklerini dikkate almayın. Bilgisayarı, terminali açtı. Geldi, göründüğü gibi, tüm veriler. Her şey sıfır çubuğunda birleşti. Sinyaller bulundu. Anlaşma yapılır. Tüm verilerin gelmediği ortaya çıktı. 5 dakika sonra eksik çubuklar 1,2,3,4,5 sayılarıyla geldi. Sinyal gitti. Ne yapalım?
4. Kırmızı işaretli. Radyo düğmesinde geçersiz bir tanımlayıcı seçmenin olası hatası henüz ele alınmadı. Yukarıda olması gerektiği gibi yazdım.
Sonucu beklemeden RefreshRates()'i çağırmak işe yaramaz. Uzun bir süre gerçekleşmeyebilir.
Kim böyle bir soru sorar?
Size göre yanlış olan ne?
Yanlış değil, sadece belirsiz.
Bitirme:
ld_price = 0 ise, fonksiyon kendi başına 0 döndürür. Bu nedenle doğrulamaya gerek yoktur.
İşte dağılım:
Ayrıca gerekli değil. Her durumda MraketInfo() kullanabilirsiniz.
Sonunda fonksiyon en saf haliyle MarketInfo() fonksiyonuna dönüşür (gereksiz olan her şeyi kaldırırsanız).
Prensip olarak, teorik olarak, bu yerler doğrudur:
RefreshRates() fonksiyonlarının ne döndüreceği bizim için önemli değil, Ask ve Bid değişkenlerinin terminal tarafından bilinen son değerleri içermesi önemlidir.
Merhaba!
Test cihazı tarafından bir Uzman Danışman için verilen farklı sonuçların nedeninin ne olduğunu söyleyin?
Test edilen dönem, döviz çifti ve zaman çerçevesi aynı, ancak bugün elde edilen sonuçlar öncekilerden çok farklı, danışman uzun pozisyon açmayı durdurdu.
Terminalin alıntıları suçlanacak mı yoksa izin günü mü, bilmiyorum. Belki bilenler bariz nedene gözlerimi açar?
Merhaba!
Test cihazı tarafından bir Uzman Danışman için verilen farklı sonuçların nedeninin ne olduğunu söyleyin?
Test edilen dönem, döviz çifti ve zaman çerçevesi aynı, ancak bugün elde edilen sonuçlar öncekilerden çok farklı, danışman uzun pozisyon açmayı durdurdu.
Terminalin alıntıları suçlanacak mı yoksa izin günü mü, bilmiyorum. Belki bilenler bariz nedene gözlerimi açar?
Birbiri ardına gerçekleştirilen iki test bile farklılık gösterebilir ve çok fark edilebilir. Aracı, spread'i değiştirir ve test farklı bir spread ile devam eder. Bir puanlık değişiklik yeterlidir.
Önceki test uzun zaman önce yapılmışsa, ayarlar gevşetilmiş olabilir.
1. Veri alınmadıysa ve aynı zamanda tüm veriler oradaysa, ancak bu konuda hiçbir şey bilmiyor muyuz? YANLIŞ döndürür. Nasıl değerlendirilir? Veri eksikliği veya bir hata veya veri var mı?
Seni anlamıyorum. Sırayla gidelim... RefreshRates() diyoruz , veriler gelmedi.. Ama veriler orada. Sapık çıkıyor. Veri alınmadıysa, veri olmayacaktır veya veriler güncellenmemiştir. piyasa değişkeni değişmedi... Sadece 2 seçenek var.
RefreshRates()'i çağırdıktan sonra TRU'yu döndürdüyse, veriler güncellenmiştir. Ve FELS geri dönerse, ya güncellenmemişlerdir. bir tür hata veya güncellenmemiş. Veriler tazedir ve güncellenmesi gerekmez.
Dolayısıyla anladığım kadarıyla şu şekilde sayılabilir: RefreshRates() datayı kontrol eder, eğer data yeni değilse o zaman yeni olmayan datayı güncellemez yani. değişmedi ve yeniyse güncellemeler. Bu, yalnızca RefreshRates() işlevi tarafından döndürülen bayrağa güvenebileceğiniz anlamına gelir. Başka seçenekleriniz var mı?
2. 1. nokta sorununu çözmek için kontrol etmek gerekir.
Dedin ki:
Sunucudan (MarketInfo()) gelen verileri sıfır çubuğu ile kontrol ediyorum. Aynı olmalarını bekliyorum.
Peki, MarketInfo() zaten sıfır çubuğundan çekiyor... Yukarıdaki kelimelerle ne demek istiyorsun?
3. Sürecin dinamiklerini dikkate almayın. Bilgisayarı, terminali açtı. Geldi, göründüğü gibi, tüm veriler. Her şey sıfır çubuğunda birleşti. Sinyaller bulundu. Anlaşma yapılır. Tüm verilerin gelmediği ortaya çıktı. 5 dakika sonra eksik çubuklar 1,2,3,4,5 sayılarıyla geldi. Sinyal gitti. Ne yapalım?
Tekrar yenileyin. Ama sonra o an gelir, ya RefreshRates() öğesini çağırırsak ve verileri yavaş yavaş güncellerse? Onlar. hesaplamaların bir kısmı bazı piyasa verileri ile, bir kısmı - diğerleri ile yapılacaktır.. Peki o zaman?
4. Kırmızı işaretli. Radyo düğmesinde geçersiz bir tanımlayıcı seçmenin olası hatası henüz ele alınmadı. Yukarıda olması gerektiği gibi yazdım.
Sonucu beklemeden RefreshRates()'i çağırmak işe yaramaz. Uzun bir süre gerçekleşmeyebilir.
hm. Peki, beklentisiyle, alıntı değişebilir.. Her iki tarafta da çubuk var mı?
Yeniler(); // Dönüş değerini işlemeden bu fren neden?
Bundan birkaç kez bahsediyorsunuz, ancak hiçbir ayrıntı yok. Onlar. Bu fonksiyonun genellikle nasıl kullanıldığını görebildiğim kadarıyla, piyasa verisi değişkenlerinin kullanıldığı kod öncesi çok basit ve bu kadar. Özellikle bununla uğraşmazlar. AMA düşündüm ve aklıma nasıl getireceğimi bulmaya karar verdim. Şu veya bu yaklaşımın gerçekten doğru olduğundan ve tüm normal koşullar altında çalışacağından emin olarak bilinmesi gerekenler.
Öyleyse Vadim , bu ifadeyle ne demek istiyorsun:
"
Dönüş değerini işlemeden bu fren neden?"
Nasıl işlenebilirler? Yukarıda mantığımı yazdım ama cevap alamadım. Oldukça doğru ve seçeneksiz olarak tanımlandı.
Yanlış değil, sadece belirsiz.
Bitirme:
ld_price = 0 ise, fonksiyon kendi başına 0 döndürür. Bu nedenle doğrulamaya gerek yoktur.
İşte dağılım:
Ayrıca gerekli değil. Her durumda MraketInfo() kullanabilirsiniz.
Sonunda fonksiyon en saf haliyle MarketInfo() fonksiyonuna dönüşür (gereksiz olan her şeyi kaldırırsanız).
MarketInfo(fs_symbol, MODE_ASK) her zaman kullanabiliyorsanız, neden hiç sorun (özellikle satın alma fiyatı hakkında konuşuyorsak)? Sonuçta, Sor'a dönerek böyle görünüyorsanız, belirli bir zamanda doğru olduğundan emin olamaz mısınız?
RefreshRates() fonksiyonlarının ne döndüreceği bizim için önemli değil, Ask ve Bid değişkenlerinin terminal tarafından bilinen son değerleri içermesi önemlidir.
Pratik olarak, anladığım kadarıyla başka bir şeye ihtiyacımız var. Ve yerel terminale değil, en son Ask and Bid sunucusuna ihtiyacımız var. Böyle?
İşte bu yüzden, onu düzenlemenin nasıl daha mantıklı ve doğru olduğunu bir kez ve herkes için anlamak için burada bir tartışma başlattım. Teoride bu doğru, ama pratikte...