Birisi iş parçacığı zor değilse, lütfen AdaptiveExtrapolator v1.1'i akla getirin - sayfa 4

 
diamondyar писал(а) >>

gösterge yeni bir mumun gelişiyle yeniden çizilmez, ancak yine de grafik güncellendiğinde yeniden çizilir...

...dahası, perspektifin eski kırmızı çizgisi kaybolur ve yerine yenisi oluşur...

Bu nedenle, belki birileri yeni bir mumun gelişiyle göstergenin hala yeniden çizildiğinden emin olabilir, ancak aynı zamanda umut verici hareketin eski parçası (kırmızı olan) da grafikte kalır. Bu, sırasıyla kümeler ve kavşaklar ile bir eğri yelpazesi verecektir. Bence çok ilginç bir sonuç olacak...

Herhangi biri yükselirse, bu işlevi devre dışı bırakabilmenin + grafikteki ölü gelecek vaat eden satırların sayısını ayarlayabilmenin (yani, istendiğinde sınırlayabilmenin) istendiğini unutmayın.

Bence fikir kesinlikle birilerini ilgilendirecek ...)))))

belki birisi bunun hakkında yorum yapabilir ve yapabilir))))

 

yeni bir mumun ortaya çıkmasıyla dahili bir veri dizisi oluşturursunuz, diziyi 1 kaydırırsınız, bu mumu hesaplarsınız ve ortaya çıkan sonuç

değer yeni bir dizinin başına yazılır..görüntüleme için bu dizi görüntü arabelleğine gönderilir..

 extern int   Counter   = 1000 ;
// Массивы отображения данных 
double FxView [ ] ;
// рабочие переменные и массивы
int TimeSave ;
int   TimeCurr ;
double   TimeBuf [ ] ;

void Init ( )
{
     SetIndexBuffer ( 0 , FxView ) ;
      TimeSave = Time [ Counter ] ;
       ArrayResize ( TimeBuf , Counter ) ;
     ArrayInitialize ( TimeBuf , EMPTY_VALUE ) ;
     return ;
}

void done ( )
{
       ArrayResize ( TimeBuf , 0 ) ;
     return ;
}

void Start ( )

{

  TimeCurr = Time [ 0 ] ;
  CalcCount = iBarShift ( NULL , 0 , TimeCurr ) - iBarShift ( NULL , 0 , TimeSave ) ;
// смещение данных
for ( int Ix = Counter - 1 ; Ix > = CalcCount ; Ix - - )
{
    TimeBuf [ Ix + 1 ] = TimeBuf [ Ix ] ;
}


. . .

расчеты на кол - ве данных CalcCount

for ( Ix = CalcCount - 1 ; Ix > = 0 ; Ix - - )
{
    TimeBuf [ Ix ] = functionCalculated ( ) ;
}
TimeSave=TimeCurr;
// отображение полученого массива
ArrayCopy ( FxView , TimeBuf , 0 , 0 , Counter ) ;

   return ;

}

 
forte928 писал(а) >>

bir dahili veri dizisi oluşturursunuz, yeni bir mumun ortaya çıkmasıyla, diziyi 1'e kaydırırsınız, bu mumu ve ortaya çıkan sonucu hesaplarsınız.

değer yeni bir dizinin başına yazılır..görüntüleme için bu dizi görüntü arabelleğine gönderilir..

teşekkür etmek! Temelde eylemlerin mantığını anlıyorum. O kadar da zor olmadığını biliyorum...

... Ama programlama dilini tam olarak bilmediğim için herhangi bir işlem yapamıyorum.

...Dolayısıyla, istek aslında bir -------- mümkünse bir gösterge şeklinde, derlemeye yetecek kadar hazır bir çözüm vermek ve bu kadar...

...şimdiden teşekkürler...----kalıcılık için özür dilerim...

 

Bitirmen gereken o indikatörü kişisel bir yere at.. Cuma günü yapacağım..

 
forte928 писал(а) >>

Kişisel olarak bitirmeniz gereken göstergeyi atın.. Cuma günü yapacağım.

yani sizin göstergenizden bahsediyorum -------- bu konunun hangisi olduğu, ------ net değil mi?
 

Bu göstergenin tüm sorunu, gösterdiği verilerin sürekli değişmesidir.yani daha büyük sayılarla

kimlikteki harmonik göstergesi, daha az sayıda harmonik ile geçtiği noktaları tekrarlar, hesaplama noktalarını değiştirir.

Bir komut dosyası kullanarak dinamik olarak sola kaymaya bakarsanız, bu kesinlikle gözlemlenir ..

Örneğin, üzerlerinde iki grafik gösteriliyor, çizginin konumundaki fark açıkça görülüyor .. iki grafikteki gösterge parametreleri aynı..

Ancak, hesaplanan verilerin nasıl arabelleğe alınacağına ve yalnızca güncellenenlerin nasıl hesaplanacağına ilişkin bir uygulamaya ihtiyacınız varsa, o zaman

Daha önce hesaplanan verileri arabelleğe alma ilkesini uygulayan geGapBuff göstergelerinden birinin uygulamasını atıyorum

ve yeni verilerin sadece küçük bir kısmının hesaplanması.

Dosyalar:
gegapbuff.mq4  9 kb
 
forte928 писал(а) >>

Bu göstergenin tüm sorunu, gösterdiği verilerin sürekli değişmesidir.yani daha büyük sayılarla

kimlikteki harmonik göstergesi, daha az sayıda harmonik ile geçtiği noktaları tekrarlar, hesaplama noktalarını değiştirir.

Bir komut dosyası kullanarak dinamik olarak sola kaymaya bakarsanız, bu kesinlikle gözlemlenir ..

Örneğin, üzerlerinde iki grafik gösteriliyor, çizginin konumundaki fark açıkça görülüyor .. iki grafikteki gösterge parametreleri aynı..

Ancak, hesaplanan verilerin nasıl arabelleğe alınacağına ve yalnızca güncellenenlerin nasıl hesaplanacağına ilişkin bir uygulamaya ihtiyacınız varsa, o zaman

Daha önce hesaplanan verileri arabelleğe alma ilkesini uygulayan geGapBuff göstergelerinden birinin uygulamasını atıyorum

ve yeni verilerin sadece küçük bir kısmının hesaplanması.

...belli ki birbirimizi anlamıyoruz ...)))))

yine de, anlamak zor değil ...----- Burada, mumun son tıkında, beklentinin kesin bir resmine sahibiz ------ kırmızıya sahibiz --- bu mum için , bu kapanış fiyatı için "gelecekteki" son değişiklik. ..

... bir şekilde bu eğriyi grafikte ilgili olduğu yere kaydedin ------ dondurun ---... Ardından yeni mum çubuğunun ilk işareti gelir ------- ve "canlı gösterge" mevcut muma ---- geçer ve mum kapanışına karşılık gelen son tik işaretine kadar yaşar ve seğirir ------- ve sonra bu "gelecek" eğrisi tekrar mumun fiyatında ölçülür. son değişiklik ve bu formda grafikte kalır ...

...böylece, çubukların 1. ve 2. maddelerinde çizilmiş 2 ölü kırmızı "gelecek" eğrisi + 0 numaralı çubukta bir canlı eğri var.... ------- vb...

...tam olarak demek istediğim buydu. Anlıyor musun?

 

Yarısını anladım ama daha doğrusu algoritmayı boyamanız gerekiyor ..

üç (veya iki) çubuğa sahip olmanın ve sırayla nasıl ortaya çıktığının böyle bir açıklamasıyla başlayalım ve ardından uygulama süreci daha fazladır.

daha hızlı git..

- üçüncü çubuğun başlangıcı:

- üçüncü çubuğun sonu:

- İstenen sonuç:

- ikinci çubuğun başlangıcı:

- ikinci çubuğun sonu:

- İstenen sonuç:

PS İki kişi odaya girerse, onu farklı göreceklerdir .. bu nedenle

Birbirimizi biraz anlamamış olmamızda zor bir şey yok.

karmaşık bir sistemi anlatmak için basit şeyler gerekir..

 
forte928 писал(а) >>

Yarısını anladım ama daha doğrusu algoritmayı boyamanız gerekiyor ..

böyle bir açıklama ile başlayalım, üç (veya iki) çubuğumuz var ve sırayla nasıl ortaya çıkıyor ve ardından uygulama süreci daha fazla

daha hızlı git..

- üçüncü çubuğun başlangıcı:

- üçüncü çubuğun sonu:

- İstenen sonuç:

- ikinci çubuğun başlangıcı:

- ikinci çubuğun sonu:

- İstenen sonuç:

PS Eğer odaya iki kişi girerse, onu farklı göreceklerdir .. bu nedenle

Birbirimizi biraz anlamamış olmamızda zor bir şey yok..

karmaşık bir sistemi anlatmak için basit şeyler gerekir..

...)))) hiçbir şeyin net olmadığı açık ...))))0

Sonra şöyle:

1. Grafiğin, her mum işaretiyle gerçekten yeniden çizilen bir gösterge gösterdiğini ve iki bölümden oluştuğunu doğru anlıyor muyum: geçmiş --- mavi ve gelecek --- kırmızı. --------- bölen geçmişin ve geleceğin ----- bu, kullanım ömrü boyunca göstergenin yerel olarak yeniden çizilmesini gözlemlediğimiz mevcut çubuktur...?

2. Yeni bir mumun ortaya çıkmasıyla ------ küresel bir yeniden çizim var, yani her şeye ek olarak geçmiş ile gelecek arasındaki sınır da sağa mı kayıyor?

3. Zaman anından önce=open(0) grafikte son yeniden çizim şeklinde bir gösterge var mı?

...tüm ihtiyacınız olan ------ yeni çubuğa geçişi yakalamak, yani. 0 numaralı mum üzerinde gösterge oluşana kadar, alıntı göründükten hemen sonra = open(0) -- gösterge görüntülerini bir ara belleğe kaydetmeniz gerekir ------, böylece ekranda statik olarak görüntüleyebilirsiniz. ---- -- oluşturur ve aynı zamanda sıfır mum için mevcut değerleri grafikte görüntüler. Onlar. grafik üzerinde kapat(1), kapat(2), kapat(3), kapat(4).....----- değerleri ile ilgili göstergenin kırmızı parçaları olmalıdır. tamamen statik (donmuş) ve artık yeniden çizilmiyor ve mevcut çubukta yeniden boyamalarla canlı bir dinamik gösterge olmalı...

... bundan size açık olanı ve olmayanı yazın)))))) 0

 

Ondan iyi bir şey çıkmadı..

Sarı çizgi statik veri dizisi..

Dosyalar: