FORTS Lütfen yardım edin - sayfa 8

 
MigVRN :

hep böyle oldu

O kene uzmanı çalışmıyor. Evet ve sohbetteki diğer her şey. Gerçek, zamanlayıcı ve kullanıcı olaylarını kontrol etmedi.

Ayrıca referanstan

... HCC formatındaki hizmet dosyaları, talep edilen zaman dilimleri için HC formatında fiyat verilerinin çizilmesi için bir veri kaynağı görevi görür. HC formatındaki veriler, hızlı erişim için maksimum düzeyde hazırlanmış zaman serileridir. Yalnızca bir çizelgenin veya bir mql5 programının talebi üzerine , "Grafiklerdeki maksimum çubuklar" parametresinin değerini aşmayan bir miktarda oluşturulurlar ve hc uzantılı dosyalarda daha sonra kullanılmak üzere kaydedilirler.

Kaynaklardan tasarruf etmek için, zaman çerçevesi verileri yalnızca gerektiğinde RAM'e yüklenir ve saklanır ; uzun süre veri erişimi yoksa, RAM'den kaldırılır ve bir dosyaya kaydedilir. Her zaman dilimi için, diğer zaman dilimleri için hazır verilerin bulunup bulunmadığına bakılmaksızın veriler hazırlanır . Veri oluşturma ve kullanılabilirlik kuralları tüm zaman dilimleri için aynıdır. Onlar. HCC formatında veri depolama biriminin bir dakika çubuğu olmasına rağmen, HCC formatında verilerin varlığı, HC formatında aynı ciltte M1 zaman dilimi verilerinin kullanılabilirliği ve kullanılabilirliği anlamına gelmez.

:)

Peki SeriesInfoInteger değilse (sembol, PERIOD_M1 , SERIES_TERMINAL_FIRSTDATE ,first_date) bunları belleğe kim yükleyecek?

Başka bir işlev yok!

Veriler terminaldeyse sunucuya tırmanmak için ne ????

 
Mikalas :

:)

Peki SeriesInfoInteger değilse (sembol, PERIOD_M1 , SERIES_TERMINAL_FIRSTDATE ,first_date) bunları belleğe kim yükleyecek?

Başka bir işlev yok!

Veriler terminaldeyse sunucuya tırmanmak için ne ????

Bu doğru - olanı yükler ve hazırlar. Ancak, göstergedeki herhangi bir gecikmenin, üzerinde asılı olan her şeyle sohbeti yavaşlatması nedeniyle - yaptıkları göstergelerde, çağrı yapıldığında seri hazır değilse, işlev bir hata döndürür ve INITIALIZE veri hazırlığı. Bir süre sonra, artık bir hata döndürmez. Bu, günlüklerinizde oluyor.
 
MigVRN :
Çünkü İLK kez bu diziye özel olarak atıfta bulunan kişidir.

bir döngü yaptım:

 long first_date = 0 ;
     datetime times[ 1 ];
     int fail_cnt = 0 ;
//---
     while ( fail_cnt < 1000 )
    {
       ResetLastError ();  
       if ( SeriesInfoInteger ( symbol, PERIOD_M1 , SERIES_TERMINAL_FIRSTDATE , first_date ) )
      {
         if ( first_date > 0 )
        {
//--- force timeseries build
           CopyTime ( symbol, period, datetime ( first_date ) + PeriodSeconds ( period ), 1 , times );
//--- check date
           if ( SeriesInfoInteger ( symbol, period, SERIES_FIRSTDATE , first_date ) )
//---        
           if ( first_date > 0 && first_date <= long ( start_date ) )
          {
             return ( Bars ( symbol, period, start_date, end_date ) );
          } 
        }
      }
      fail_cnt++;
    }

Tahmin et sonuç ne?

 
MigVRN :
Bu doğru - olanı yükler ve hazırlar. Ancak, göstergedeki herhangi bir gecikmenin, üzerinde asılı olan her şeyle sohbeti yavaşlatması nedeniyle - yaptıkları göstergelerde, çağrı yapıldığında seri hazır değilse, işlev bir hata döndürür ve INITIALIZE veri hazırlığı . Bir süre sonra artık bir hata döndürmeyecektir . Bu, günlüklerinizde oluyor.
Bu süre, OnCalculate()'ye birkaç çağrı veya hatta birkaç saniye sürebilir. Para kazanma makinesi böyle çalışır. Bu nedenle, göstergenin OnInit()'inden veri almakla ilgili herhangi bir şey çağırmak yanlıştır.
 
Mikalas :

bir döngü yaptım:

Tahmin et ne sonuç?

barabashkakvn :
Bu süre, OnCalculate()'ye birkaç çağrı veya hatta birkaç saniye sürebilir. Para kazanma makinesi böyle çalışır. Bu nedenle, göstergenin OnInit()'inden veri almakla ilgili herhangi bir şey çağırmak yanlıştır.

Bu doğru - döngü ÇOK hızlı. hazırlanmak için vaktim yok ... Geliştirici (biz) açısından bunun HELL olduğunu anlıyorum :) , ancak buna alışmanız gerekecek ...

Bu arada, Sleep() göstergelerde çalışmıyor.

:)

 
MigVRN :

Bu doğru - döngü ÇOK hızlı. hazırlanmak için vaktim yok ... Geliştirici (biz) açısından bunun HELL olduğunu anlıyorum :) , ancak buna alışmanız gerekecek ...

Bu arada, Sleep() göstergelerde çalışmıyor.

:)

Teşekkürler Andrey!

Soru sizin için değil, retorik:

ve neden o zaman

SeriesInfoInteger ( sembol, PERIOD_M1 , SERIES_TERMINAL_FIRSTDATE , first_date ) ????

Bir yanıt alamazsam, sunucuyla iletişim kurmam gerekiyor (terminalde gerçekten veri olmayabilir )!

Herkese teşekkürler. Chukchi'ye geldi ....

... ve "saygı duy" MQ!

P/S Artık yardımı okumayacağım...

 
Mikalas :

organik gübre!

Bir şeyi anlamadığınızda veya yanıldığınızda, kimse size Chukchi demez.

Nedenmiş?

Anlamadığım zaman, bana söylenenleri duymaya çalışırım.

Ve benzer bir problemle karşılaşan ve çözen birçok insanın deneyimini inatla görmezden geldiniz.

Bu benim "Çukçi yazarı" dediğim şeydi.

 
Mikalas :

ve neden o zaman

SeriesInfoInteger ( sembol, PERIOD_M1 , SERIES_TERMINAL_FIRSTDATE , first_date ) ????

Bir yanıt alamazsam, sunucuyla iletişim kurmam gerekiyor (terminalde gerçekten veri olmayabilir )!

Hazırsa veri almak veya istek ilk kez yapılıyorsa hazırlığı başlatmak için.
 
MigVRN :

Bu doğru - döngü ÇOK hızlı. hazırlanmak için vaktim yok ... Geliştirici (biz) açısından bunun HELL olduğunu anlıyorum :) , ancak buna alışmanız gerekecek ...

Bu arada, Sleep() göstergelerde çalışmıyor.

:)

Bu arada, aksi takdirde tanımlayıcı ile geliştiricilere müdahale etti.   SERIES_TERMINAL_FIRSTDATE

geri vermek:

-1 - veri yok

0 - veriler mevcut ancak hazır değil

> 0 - tarihin kendisi

 
Mikalas :

Bu arada, aksi takdirde tanımlayıcı ile geliştiricilere müdahale etti.   SERIES_TERMINAL_FIRSTDATE

geri vermek:

-1 - veri yok

0 - veriler mevcut ancak hazır değil

> 0 - tarihin kendisi

Ve bir program (ve bir programcı) için "hayır" ve "hazır değil" arasındaki fark nedir?

Veriler hazır değilse, bir hata olacaktır.

Ya da belki bu bilgi de anında mevcut değildir, bu nedenle gösterilmez.