Hatalar, hatalar, sorular - sayfa 1231

 

P./S.: Ayrıca, MT5'te MQL5 hesabının yetkisi olmadan bile ürünü Market'ten indirmek mümkündü (MT4'te izinsiz denemedim).

Bu olasılığı daha önce bilmiyordum.

 
meat :

Ve dürüst olmak gerekirse, argümanlarınız garip. Kullanmayı bilmeyenler kullanmazlar. FileFlush'ın kullanıldığı çok fazla kod gördünüz mü? ben hiçbiri değilim.

Hemen hemen herkes bunu kötüye kullandı ve ardından "Metatrader yavaşlıyor" oldu. Bu WinAPI işlevi son derece gecikmelidir.

600 yapıya geçerken, tüm dosya çalışmalarını tamamen yeniden yazdık ve normal küçük parça çalışma modlarında onlarca kez hızlandırdık.


Ve dosyayı yeniden açmak kodu karmaşıklaştırır.

Ancak hemen sonuçları düşünmenizi sağlar, her onay işaretine FileFlush koymayın ve ardından ticaret stratejisi test cihazındaki sonuçlara şaşırmayın.

 
Renat :

Hemen hemen herkes bunu kötüye kullandı ve ardından "Metatrader yavaşlıyor" oldu.

Evet, abartıyorsun. Belki bazı talihsiz kodlayıcılar olmuştur ama genelleme yapmamalısınız. Sözlerinden, buradaki herkesin çaylak ve salak olduğu ortaya çıktı.

Ama hemen sonuçları hakkında düşünmenizi sağlar ...

Renat, bu ciddi değil, Tanrım! Okulda değiliz. Öğrencilere, acı çekmelerine izin verin, ama düşünmeyi öğrenin, vb. gibi ödevler verdiğiniz izlenimini edinirsiniz. ("öğretmede zor - savaşta kolay"). MQL'yi aptallar için bir öğretici olarak mı yoksa programcılar için bir çalışma aracı olarak mı konumlandırıyorsunuz? İkincisi ise, neden tekerleklere yapay çubuklar koyarsınız?

Birisi bir şey bilmiyorsa veya nasıl olduğunu bilmiyorsa - bunlar onun kişisel sorunlarıdır, öğrenmesine izin verin. Neden onun yüzünden diğer herkesin işlevselliğini kesti?

 
meat :

Evet, abartıyorsun. Belki bazı talihsiz kodlayıcılar olmuştur ama genelleme yapmamalısınız. Sözlerinden, buradaki herkesin çaylak ve salak olduğu ortaya çıktı.

Renat, bu ciddi değil, Tanrım! Okulda değiliz. Öğrencilere, acı çekmelerine izin verin, ama düşünmeyi öğrenin, vb. gibi ödevler verdiğiniz izlenimini edinirsiniz. ("öğretmede zor - savaşta kolay"). MQL'yi aptallar için bir öğretici olarak mı yoksa programcılar için bir çalışma aracı olarak mı konumlandırıyorsunuz? İkincisi ise, neden tekerleklere yapay çubuklar koyarsınız?

Birisi bir şey bilmiyorsa veya nasıl olduğunu bilmiyorsa - bunlar onun kişisel sorunlarıdır, öğrenmesine izin verin. Neden onun yüzünden diğer herkesin işlevselliğini kesti?

Lütfen forumlarımıza ve kod tabanımıza bir göz atın.

Okulda değiliz. Çok sayıda düşük kaliteli kodun olduğu ve MetaQuotes'un her zaman her şey için öncelikli olarak suçlandığı çok daha kötü bir yerdeyiz. Bunu yaparsanız suçlusunuz, tersini yaparsanız yine suçlusunuz.

FileFlush'ı yenme kararı, onu kapatmanın, tüccarların frenlerini ve şikayetlerini izlemekten daha az kötü olduğu anlayışından geldi. Sadece kapatmakla kalmadık, tüm dosya çalışmalarını tamamen yeniden yazdık, böylece artık her türlü hatayı ve verimsiz geliştirici uygulamalarını düzelten son derece verimli ve hızlı bir motor oldu. Çok iyi düşündük.


Bilgi için: 13 yıldan fazla bir süredir forumlarımızda halka açık tartışmalar yürüttüğüm için abartmıyorum:


 
crOss :
Herhangi bir Uzman Danışmanı alın (MetaQuotes örneklerinden), belirli bir süre ve parametrelerle build 975 altında çalıştırın,
işin sonuçlarını almak, yani. verim eğrisi grafiği ve işlem tablosu.


Şimdi aynı Expert Advisor'ı build 1010 altında aynı periyotta çalıştırın ve aynı parametrelerle tamamen farklı sonuçlar alacaksınız...

PS Meta Test Cihazı 32-bit

975 yapı ve 1010 yapı test cihazındaki anlaşmaların analizi ne gösteriyor?

İlk önce, fark noktasını bulun. Swapların değerini karşılaştırın. İşlem hacimlerini görüntüleyin

 
Servis Masasından bir haftadır cevap gelmediği için sorunu burada dile getiriyorum ( MT4 745 build):
1. Aşağıdaki koda sahip bir gösterge vardır:
 #property strict
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
{
   EventSetTimer ( 10 );
   return ( INIT_SUCCEEDED );
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start ()
{
   return 0 ;
}
//+------------------------------------------------------------------+

void OnTimer ()
{
   ChartSetSymbolPeriod ( 0 , _Symbol , 1 );
}
2. Bununla ilgili bir uzman var:
 #include <ChartObjects\ChartObjectsTxtControls.mqh>     


CChartObjectButton *p_button1 = NULL ;                              
int OnInit ()
{
   p_button1 = new CChartObjectButton; 
   p_button1.Create( 0 , "ddd" , 0 , 10 , 20 , 30 , 40 ); // create button
 
   return INIT_SUCCEEDED ;
}

void OnDeinit ( const int reason)
{
   if (p_button1 != NULL )
   {
      p_button1.Delete();
       delete p_button1;
   }
}
void OnTick ( void )
{
}

3. İlk önce göstergeyi ekliyoruz, ikincisi - uzman
4. Grafiği kırın ve ChartSetSymbolPeriod kullanırken donmasını bekleyin
5. Her şey TF'nin manuel olarak değiştirilmesiyle ve döviz çiftlerinin manuel olarak değiştirilmesiyle çalışır. Ancak yazılımla çalışmaz (ya bir yayın eğrisindeki bir yığın ya da bir tür sızıntı ....)


TF'yi değiştirerek sorunu çözmeyi başardım - API bir kez daha güvenilir
Ancak API'yi kullanarak döviz çiftini istenen çifte nasıl değiştirebilirim?

 
ALXIMIKS :
Servis Masasından bir haftadır cevap gelmediği için sorunu burada dile getiriyorum ( MT4 745 build):
1. Aşağıdaki koda sahip bir gösterge vardır:
2. Bununla ilgili bir uzman var:

3. İlk önce göstergeyi ekliyoruz, ikincisi - uzman
4. Grafiği kırın ve ChartSetSymbolPeriod kullanırken donmasını bekleyin
5. Her şey TF'nin manuel olarak değiştirilmesiyle ve döviz çiftlerinin manuel olarak değiştirilmesiyle çalışır. Ancak yazılımla çalışmaz (ya bir yayın eğrisindeki bir yığın ya da bir tür sızıntı ....)


TF'yi değiştirerek sorunu çözmeyi başardım - API bir kez daha güvenilir
Ancak API'yi kullanarak döviz çiftini istenen çifte nasıl değiştirebilirim?

Başvurunuz kaybolmadı.

Kesinlikle cevap vereceğiz.

 
Birisi açıklayabilir mi: (profildeki) derecem son birkaç gündür düşüyor. Bu yeni bir özellik mi, sitenin algoritmasında ince ayar yapılmış bir şey mi yoksa başka bir şey mi?
 
Renat :

Lütfen forumlarımıza ve kod tabanımıza bir göz atın.

Okulda değiliz. Çok sayıda düşük kaliteli kodun olduğu ve MetaQuotes'un her zaman her şey için öncelikli olarak suçlandığı çok daha kötü bir yerdeyiz. Bunu yaparsanız suçlusunuz, tersini yaparsanız yine suçlusunuz.

Bu masalın yayılmasına belki de sizin katkıda bulunduğunuzu hiç düşündünüz mü? Onlar. Görünüşe göre a priori kendini suçlu görüyorsun. Birkaç acemi, orada onlar için bir şeylerin yolunda gitmediğini iddia ederek size geliyor ve onlara kibarca açıklamak veya materyal öğrenmeye göndermek yerine, onların altına eğiliyor ve cehaletleri uğruna ürününüzü yeniden yapıyorsunuz. Bu şekilde mi çalışıyor? Sonuç olarak, ürünün kalitesi de zarar görür ve bu insanlar hiçbir şey öğrenmezler.

Bir ticaret platformu olsa bile anlıyorum. Ancak esnekliğin önemli olduğu bir programlama dilinden bahsediyoruz. Ve bu esnekliği mahrum bırakıyorsunuz. Sonuçta, siz kendiniz bir programcısınız ve muhtemelen evrensel bir çözüm olmadığını anlıyorsunuz. Etkili olduğu iddia edilen mekanizmanız yalnızca bazı özel durumlar için uygundur ve diğer durumlarda tamamen uygun değildir. Birinin her 10 saniyede bir, diğeri - her 10 megabaytta, üçüncüsü - her tıklamada diske veri dökmesi gerekir (evet, bilgi çok önemliyse böyle bir ihtiyaç vardır). Ve tekrar ediyorum, bir insan bir şeyi yanlış kullanırsa, bunlar onun kişisel sorunlarıdır, onun cahilliğine teslim olmaya, onun altına eğilmeye gerek yoktur.

Tüm bunlara yeni başlamadım. FileFlush kullanarak infa'nın periyodik olarak diske döküldüğü bir kodum vardı. Ve son zamanlarda, veriler 30-40 MB'ta birikse de hiçbir şeyin atılmadığını fark ettim. Sonuç olarak, terminal çöktüğünde (ve bu nadir değildir), her şey kaybolur. Ve en azından bu konuda uyarma zahmetine bile girmedin. Bu, herhangi bir anda herhangi bir işlev çalışmayı durdurabilirse, MQL'nin güvenilirliğini tamamen sarsar.

 
meat :

Bu masalın yayılmasına belki de sizin katkıda bulunduğunuzu hiç düşündünüz mü? Onlar. Görünüşe göre a priori kendini suçlu görüyorsun. Birkaç acemi, orada onlar için bir şeylerin yolunda gitmediğini iddia ederek size geliyor ve onlara kibarca açıklamak veya materyal öğrenmeye göndermek yerine, onların altına eğiliyor ve cehaletleri uğruna ürününüzü yeniden yapıyorsunuz. Bu şekilde mi çalışıyor? Sonuç olarak, ürünün kalitesi de zarar görür ve bu insanlar hiçbir şey öğrenmezler.

Sürekli ve yeterince derin düşünüyoruz. Sonuç olarak, herkes için daha az hata olacak şekilde kararlar alıyoruz.


Bir ticaret platformu olsa bile anlıyorum. Ancak esnekliğin önemli olduğu bir programlama dilinden bahsediyoruz. Ve bu esnekliği mahrum bırakıyorsunuz. Sonuçta, siz kendiniz bir programcısınız ve muhtemelen evrensel bir çözüm olmadığını anlıyorsunuz. Etkili olduğu iddia edilen mekanizmanız yalnızca bazı özel durumlar için uygundur ve diğer durumlarda tamamen uygun değildir. Birinin her 10 saniyede bir, diğeri - her 10 megabaytta, üçüncüsü - her tıklamada diske veri dökmesi gerekir (evet, bilgi çok önemliyse böyle bir ihtiyaç vardır). Ve tekrar ediyorum, bir insan bir şeyi yanlış kullanırsa, bunlar onun kişisel sorunlarıdır, onun cahilliğine teslim olmaya, onun altına eğilmeye gerek yoktur.

Forumlarımızda bizim için "bunlar sizin kişisel sorunlarınız" gibi cevap vermenize izin verin. Size bir işi nasıl yürüteceğinizi ve neden yanıldığınızı söylemeden önce kaç saat dayanabileceğinizi görelim.


Tüm bunlara yeni başlamadım. FileFlush kullanarak infa'nın periyodik olarak diske döküldüğü bir kodum vardı. Ve son zamanlarda, veriler 30-40 MB'ta birikse de hiçbir şeyin atılmadığını fark ettim. Sonuç olarak, terminal çöktüğünde (ve bu nadir değildir), her şey kaybolur. Ve en azından bu konuda uyarma zahmetine bile girmedin. Bu, herhangi bir anda herhangi bir işlev çalışmayı durdurabilirse, MQL'nin güvenilirliğini tamamen baltalar.

Yukarıda, önceliğimizin yan taraftaki çalışma modu değil, sadece platformumuzun verimli çalışması ve maksimum performansı olduğunu belirtmiştim. Bu öncelikle tüm dosya işlemleri için geçerlidir: günlükler, veritabanları ve uzman dosyaları.

Açık (ve bu başlı başına ciddi bir sorun) dosyalarla gerçekten dışarıda çalışmak istiyorsanız, harekete geçin.

Duvara çarpmanıza gerek yok - bu karar bilinçlidir ve değiştirilmeyecektir.

Neden: