Başlatmada ChartNavigate - sayfa 3

 
Dina Paches :

Neyden? Saçma sapan şeyler mi yazdım/alıntı yaptım?

Saçma olduğundan değil... ama biz sadece burada gezinmeyi araştırıyoruz ve grafiği yeniden çizmek hiçbir şekilde etkilemez (çünkü deneyin başında grafik kaydırmanın devre dışı bırakılması gerektiği açıkça belirtilmişti).

Test kodu en fazla bir veya iki dakika çalışır, bilgisayarlarımız güçlüdür - bu nedenle yük önemsizdir.

 
Vladimir Karputov :

Saçma olduğundan değil... ama biz sadece burada gezinmeyi araştırıyoruz ve grafiği yeniden çizmek hiçbir şekilde etkilemez (çünkü deneyin başında grafik kaydırmanın devre dışı bırakılması gerektiği açıkça belirtilmişti).

Test kodu en fazla bir veya iki dakika çalışır, bilgisayarlarımız güçlüdür - bu nedenle yük önemsizdir.

Test kodları sık sık çalışabilir. /*Şimdi bir dakika burada, sonra bir dakika orada, sonra bir saat başka yerde, vb. ...*/

Bu yazımda Renat'ın sözlerine link verdim. Seninkinden daha güçlü bilgisayarları olduğuna inanıyorum.

Siz Vladimir, bu test kodlarını, çalışmayı (araştırma sonuçlarını) indirilmek üzere göstermek için yayınladınız. İçlerindeki her bir işaretin üzerindeki grafiği yeniden çizmek uygun değildir

 
P./S.: Giriş parametrelerinde, yalnızca ChartRedraw () aracılığıyla yeniden grafik çizmeyi devre dışı bırakma/etkinleştirme seçeneğiniz vardır. Ancak, test kodlarının içinde, Yorum yoluyla her işarette grafiğin yeniden çizilmesine sahipsiniz.
 
Dina Paches :

Test kodları sık sık çalışabilir. /*Şimdi bir dakika burada, sonra bir dakika orada, sonra bir saat başka yerde, vb. ...*/

Bu yazımda Renat'ın sözlerine link verdim. Seninkinden daha güçlü bilgisayarları olduğuna inanıyorum.

Siz Vladimir, bu test kodlarını, çalışmayı (araştırma sonuçlarını) indirilmek üzere göstermek için yayınladınız. İçlerindeki her bir işaretin üzerindeki grafiği yeniden çizmek uygun değildir

Yeniden çizim konusunda haklısın. Şu an uymuyor.)

 
Ihor Herasko :

Yeniden çizim konusunda haklısın. Şu an uymuyor.)

Umm... Her tikte yersiz yeniden çizim. Dikkate değer olmadığına ikna etmeye çalışmak yerine.

Bu konuda söylenmedi.

Ama şimdi, Vladimir ile bunun yersiz ve dikkate değer olmadığına ikna etme çabalarınız nedeniyle, vurgu gerçekten konudan uzaklaştı)

 

1865 oluşturun.

Göstergede değişiklik yapıldı:

   if (count% 12 == 0 /* || count==19*/ )

yani, her 12 tikte bir grafiği zorla hareket ettiririz. Bu ne için:

  1. 12 tik arasında grafiği manuel olarak kaydırabilir ve ilk görünen çubuğun numarasını görebilirsiniz.
  2. Görsel hareket takibi.


Şimdiye kadar bir teori vardı: Grafiğin kayması GRAFİĞİN ÖLÇEKİNE bağlıdır!

Dosyalar:
 

Gösterge sürümü 1.002:

tüm Yorumları kaldırdı (şimdi Yazdır yoluyla çıktı)

varsayılan

 //--- input parameters
input bool redraw= false ;
input ENUM_CHART_POSITION position= CHART_END ;

Grafiğin ölçeğine açık bağımlılık. Ayrıca, grafiği bir kez manuel olarak kaydırmak için zamanınız varsa, bir tür hafıza vardır.

Dosyalar:
 
Ihor Herasko :

ChartNavigate işleviyle ilgili bir sorunla karşılaştım. Yanlış bir şey yapıyorum veya işlevde gerçekten bir sorun var. Yeterince sık kullananların aboneliğinden çıkın.

Bu nedenle, sorunun özü: OnInit() içindeki işlevi çağırırsanız , uçbirim başladığında ChartNavigate grafiği kaydırmaz. Belgeleri özellikle birkaç kez okuyun. Hiçbir yerde başlatma sırasında bir işlevin çağrılamayacağını söylemez.

Oynatma için gösterge kodu:

Oynamak için adımlar:

  1. Grafik otomatik kaydırmayı devre dışı bırakın.
  2. Göstergeyi tabloya ekleyin. ChartNavigate, grafiği doğru konuma taşıyarak çalışacaktır.
  3. Terminali boşaltın.
  4. Terminali indirin. ChartNavigate, grafiği ofset olmadan görüntüleyerek çalışmayacaktır.
Peki, işlev bir hata ürettiyse. Ama o değil. Tüm çağrılar başarılıdır, ancak tam olarak terminal yeniden başlatıldığında grafik kaymaz.

Lütfen söyleyin, terminali boşaltmadan önce tabloyu en son fiyatlara iade ediyor musunuz?

Neden soruyorum:

Bu şartlar altında benim için nasıl çalıştığını görmek için kodunuzu uyguladım. Test ederken, ilk başta tarif ettiğiniz sorunu yeniden oluşturmaya karar verdim. Daha sonra anladım - hayır. Çünkü grafik yüklemeden önce en son fiyatlara döndürülürse terminale yüklendikten sonra koda göre çalışır. Boşaltmadan önce taze fiyatlara dönmezseniz, yüklemeden sonra tablo boşaltmadan önce olduğu yerde kalır.

 
Vladimir Karputov :

1865 oluşturun.

Göstergede değişiklik yapıldı:

yani, her 12 tikte bir grafiği zorla hareket ettiririz. Bu ne için:

  1. 12 tik arasında grafiği manuel olarak kaydırabilir ve ilk görünen çubuğun numarasını görebilirsiniz.
  2. Görsel hareket takibi.


Şimdiye kadar bir teori vardı: Grafiğin kayması GRAFİĞİN ÖLÇEKİNE bağlıdır!

Vladimir Karputov :

Gösterge sürümü 1.002:

...

Grafiğin ölçeğine açık bağımlılık. Ayrıca, grafiği bir kez manuel olarak kaydırmak için zamanınız varsa, bir tür hafıza vardır.


Konunun yazarı, konuyu şu konuda oluşturdu - Başlatma sırasında ChartNavigate :

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Başlatmada ChartNavigate

Ihor Herasko , 2018.06.25 12:17

...

Dolayısıyla, sorunun özü: OnInit() içindeki işlevi çağırırsanız , uçbirim başladığında ChartNavigate grafiği kaydırmaz.


Sen Vladimir, araştırmanı OnInit() içinde değil , OnCalculate() içinde yap. Konunun yazarı tarafından açıklanan konuda değil.

Yani, bu konuda başka bir şey düşünüyorsunuz.

Gerçek bir sorun bulursanız, bunun bir açıklamasıyla Hizmet Masası ile iletişime geçebilir misiniz?


P./S.: Buraya eklenen göstergenin en son test koduna göre, artık her işarette grafiğin zorla yeniden çizilmesine sahip değilsiniz. Ancak bunun yerine, artık her tikte günlüğe yazdırır. Grafikteki ilk çubuğun numarasının değişip değişmediğini görmek için bir kontrol olmaması nedeniyle.

Ek olarak, kodunuzda aktif bir yorum silmeniz var. Yani, kodunuzu başka bir program tarafından gerekli bazı yorumların oluşturulacağı bir çizelgeye koyarsanız, test kodunuz onları yok edecektir.

P./S.: Gönderinin başında alıntılananın kopyasını sildim, bunun yerine birbiriyle bağlantılı başka bir alıntı yaptım.

 
Dina Paches :


Konunun yazarı, konuyu şu konuda oluşturdu - Başlatma sırasında ChartNavigate :


Sen Vladimir, araştırmanı OnInit() içinde değil , OnCalculate() içinde yap. Konunun yazarı tarafından açıklanan konuda değil.

Yani, bu konuda başka bir şey düşünüyorsunuz.

Gerçek bir sorun bulursanız, bunun bir açıklamasıyla Hizmet Masası ile iletişime geçebilir misiniz?


P./S.: Buraya eklenen göstergenin en son test koduna göre, artık her işarette grafiğin zorla yeniden çizilmesine sahip değilsiniz. Ancak bunun yerine, artık her tikte günlüğe yazdırır. Grafikteki ilk çubuğun numarasının değişip değişmediğini görmek için bir kontrol olmaması nedeniyle.

Ek olarak, kodunuzda aktif bir yorum silmeniz var. Yani, kodunuzu başka bir program tarafından gerekli bazı yorumların oluşturulacağı bir çizelgeye koyarsanız, test kodunuz onları yok edecektir.

Dina, senin için işe yarıyor mu? 2-3 saattir (sadece bugün, dünün testleri sayılmıyor) OnInit'te çalışmayan bir seçenek bulmaya çalışıyorum ama hepsi boşuna. Her şey her zaman olması gerektiği gibi çalışır. Sadece şu özellik fark edildi: Göstergeyi iki çizelgeye koyup terminali yeniden başlatırsanız, sadece terminalin açılıp kapanma anında aktif olan çizelge üzerinde çalışacaktır. İkinci, etkin olmayan grafikte çalışmıyor. Ancak bu bence oldukça anlaşılabilir, verilerin gelmesine rağmen grafiğin çizimi yok ve grafiğin kendisi yok.