Hatalar, hatalar, sorular - sayfa 1442

 
Yousufkhodja Sultonov :
Lütfen bana, ayarlarda 1000 belirtmeme rağmen, test cihazı açık pozisyon sayısını yüz ile sınırlandırdığında durumun nasıl üstesinden gelineceğini söyleyin?
hiçbir şekilde, bu bir terminal sınırlaması değil, bir komisyoncu, 100'den fazla emir veren bir komisyoncu ile bir demo hesabı açın
 

CopyRates() hakkında okuma düşünceli yardım:

Not

1. İstenen verinin aralığı tamamen sunucudaki mevcut verinin dışındaysa, fonksiyon -1 değerini döndürür. TERMINAL_MAXBARS (grafikteki maksimum çubuk sayısı) dışında veri istenirse, işlev ayrıca -1 döndürür.

2. İndikatörden veri talep edilirken, istenen zaman serileri henüz oluşturulmamışsa veya sunucudan indirilmesi gerekiyorsa, fonksiyon hemen -1 döndürür, ancak yükleme/inşa sürecinin kendisi başlatılır.

3. Bir Uzman Danışmandan veya bir komut dosyasından veri talep edildiğinde, terminal bu verilere yerel olarak sahip değilse sunucudan indirme başlatılır veya veriler yerel geçmişten oluşturulabilirse gerekli zaman serilerinin yapımı başlar. , ama henüz hazır değil. İşlev, zaman aşımı sona erdiğinde hazır olacak veri miktarını döndürür, ancak geçmiş yüklemesi devam eder ve bir sonraki benzer istek daha fazla veri döndürür.

1. Burada her şey doğru ve mantıklı, veri istemeden önce pencerede izin verilen çubuk sayısını kontrol etmeniz gerekiyor.

2. Burada da her şey doğru, sunucuyla bağlantıyı kontrol etmeyi unutmadan, terminal gerekli miktarı döndürene kadar veri almaya çalışmalısınız. Burada elde edilen verilerin kalitesi konusunda hiçbir şüphe yoktur - veriler ya vardır ya da değildir.

3. Ve burada kesinlikle hiçbir şey net değil. Alınan verilerin eksiksiz olduğundan asla emin olamazsınız. Ve kullanıcı, tamlığı kesin olmayan verilere neden ihtiyaç duyar? Uygulama, hiçbir hilenin (sunucudan indirmeyi başlatmak için veri elde etmeye yönelik ön denemeler) isteğin tam veri alacağına dair güven vermediğini göstermektedir.

Uzman Danışmanlarda veri toplama fonksiyonlarının davranışını göstergelerdeki davranışa benzer hale getirmenin daha pratik olduğuna inanıyorum.

 
Joo Zepper :

CopyRates() hakkında okuma düşünceli referans:


3. Ve burada kesinlikle hiçbir şey net değil. Alınan verilerin eksiksiz olduğundan asla emin olamazsınız. Ve kullanıcı, tamlığı kesin olmayan verilere neden ihtiyaç duyar? Uygulama, hiçbir hilenin (sunucudan indirmeyi başlatmak için veri elde etmeye yönelik ön denemeler) isteğin tam veri alacağına dair güven vermediğini göstermektedir.

Neden emin olamıyorsun? Emin olmak için SeriesInfoInteger kullanın ( sembol , nokta , SERIES_SYNCHRONIZED )

Belgeleri daha fazla okuyun. Daha az düşünceli değil.

 
Slawa :

Neden emin olamıyorsun? Emin olmak için SeriesInfoInteger kullanın ( sembol , nokta , SERIES_SYNCHRONIZED )

Belgeleri daha fazla okuyun. Daha az düşünceli değil.

Bahşiş için teşekkürler, ancak bu bayrağı kontrol etmek benim tarafımdan uzun süredir aktif olarak kullanılıyor. Daha güvenilir yollar var mı?

Bir sonraki tavsiyenizi öngörüyorum - istenen enstrümanın grafik penceresini açmak. Ve bu yapılır, ancak tam veri alınması garanti edilmez.

 
Joo Zepper :
Bahşiş için teşekkürler, ancak bu bayrağı kontrol etmek benim tarafımdan uzun süredir aktif olarak kullanılıyor. Daha güvenilir yollar var mı?

O zaman sorun nedir? Bu bayrak true olarak ayarlanırsa, mevcut veriler tamamen senkronize edilir. Sunucuda sahip olduğunuzdan daha fazla veri olduğundan eksik olabilirler - hikaye daha derin

Ardından geçmişi tam olarak isteyin ve kontrol edin SeriesInfoInteger ( sembol , PERIOD_M1 , SERIES_SERVER_FIRSTDATE ) yerel dakikalarınızın ilk tarihi ile

 
Slawa :

O zaman sorun nedir? Bu bayrak true olarak ayarlanırsa, mevcut veriler tamamen senkronize edilir. Sunucuda sahip olduğunuzdan daha fazla veri olduğundan eksik olabilirler - hikaye daha derin

Ardından geçmişi tam olarak isteyin ve kontrol edin SeriesInfoInteger ( sembol , PERIOD_M1 , SERIES_SERVER_FIRSTDATE ) yerel dakikalarınızın ilk tarihi ile

Ama bu bir uzman için intihar. Ürpertici frenler sağlanacaktır. Ve bir kural olarak, bütünüyle bir hikaye gerekli değildir.

İşte düşündüğüm şey. Piyasa incelemesi her zaman en son verilere sahiptir ve eğer terminal, sunucu geçmişi ve pencerede izin verilen çubuk sayısı içinde istek üzerine gerekli miktarda veri sağlayamazsa, bu gibi durumlarda göstergelerde olduğu gibi -1 döndürür. Ya veri alıyor ya da -1, burada üçüncüsü verilmemelidir.

 

Bunu veri istemeden önce yapıyorum:

 for ( int attempt = 0 ; attempt < 10 ; attempt++) 
  {
     bool flag = true ; 
     for ( int symb = 0 ; symb < SymbolCNT; symb++) 
    {
       if (!synched[symb]) 
      {
         // trial copying of price data
         int copied = CopyRates (symbsName[symb], smPeriod, startPosDataGet, barsReq, prices[symb].Data); 
        
         if (copied >= barsReq) 
        {
           if (idChart[symb] != - 1 ) 
          {
             ChartClose (idChart[symb]); 
            idChart[symb] = - 1 ;
          }
          synched[symb] = true ;
        }
         else 
        {
          flag = false ; 
           if (showAlert) 
             Alert (symbsName[symb] + ": requested/received " + ( string )barsReq + "/" + ( string )copied); 
          
           if (idChart[symb] == - 1 ) 
          {
            idChart[symb] = ChartOpen (symbsName[symb], smPeriod); 
             ChartSetInteger ( ChartFirst (), CHART_BRING_TO_TOP , 0 , true );
          }
        }
      }
    }
     if (!flag) 
       if ( TerminalInfoInteger ( TERMINAL_CONNECTED )) 
         Sleep ( 1000 );
  }
  
   for ( int symb = 0 ; symb < SymbolCNT; symb++) 
     if (idChart[symb] != - 1 ) 
       ChartClose (idChart[symb]); 

Ancak zaten doğrudan isteklerle, delikli veriler gelir. Bazen deliksiz. Bundan bahsediyorum - elde edilen verilerde kesinlik yok.

 
Karputov Vladimir :

Mesaj düzenleyici aracılığıyla eklenen video kaydedilmez.

Google Chrome Sürümü 46.0.2490.86 m.

Internet Explorer 11.11.10586.0.

Hata düzeltilecek, mesaj için teşekkürler.
 

Sistemi Windows 10'a güncelledikten sonra normal göstergeler ÇALIŞMAZ. Sadece grafiğe eklenemez. editörde derleme hatası

hata

 
Alexandr :
Sistemi Windows 10'a güncelledikten sonra normal göstergeler ÇALIŞMAZ. Sadece grafiğe eklenemez. Düzenleyicide derleme hatası https://i.gyazo.com/5dbea3b25ab9a45cf3a9449335c1f57f.png
Belki izinleri olan bir şey , terminalin klasörlerinde yazmaya izin verilip verilmediğini kontrol edin, UAC'yi düşürmeyi deneyin ....