statik dizi? - sayfa 6

 

Bu sade İngilizce açıklamasında çok fazla kod var. . .

Fraktallar Gösterge arabelleklerinde saklanır, nasıl olduğunu anlıyor musunuz? eğer anlamanıza yardımcı olacak bir kod yazmazsanız. . .

Gösterge arabelleklerini okuyabilir ve Fraktallara ait çubuk numaralarını bulabilir, çubuk numarasından mum değerlerini alabilirsiniz. . .

 
RaptorUK :

Bu sade İngilizce açıklamasında çok fazla kod var. . .

Fraktallar Gösterge arabelleklerinde saklanır, nasıl olduğunu anlıyor musunuz? eğer anlamanıza yardımcı olacak bir kod yazmazsanız. . .

Gösterge arabelleklerini okuyabilir ve Fraktallara ait çubuk numaralarını bulabilir, çubuk numarasından mum değerlerini alabilirsiniz. . .

Gösterge arabelleklerinin nasıl saklandığını tam olarak anlamıyorum.


Ve tam olarak yapmak istediğim şey buydu, fraktallardan bar numarasını bulmak ve mum değerlerini almak

Bununla devam edeceğim, ancak göstergelerin değerleri arabellekte nasıl sakladığını bilseydim muhtemelen daha net olurdum.

teşekkürler

 

3 arabellek vardır, v1, v2 ve v3 ve hesaplama için kullanılan diğer üç çift, val1, val2 & val3 vardır. v3 ve val3 kullanılmış gibi görünmüyor. . .

val1 ve val2 iFractals tarafından üretilen değeri tutar, bu değer her çubuk için birer birer hesaplanır, while döngüsü Çubuklar ile başlayıp sıfıra kadar azalan çubuklar arasında döngü yapar. . .

Böylece her çubuk için fraktal değeri MODE_UPPER için v1'de ve MODE_LOWER için v2'de hesaplanır ve saklanır, v1 için çalışalım. . .

Sırayla her çubuk için. . . val1 0'dan büyükse, çubuk numarası için arabellek v1 için arabellek değeri, bu çubuğun Yüksek değerine ayarlanır, bu nedenle döngünün Çubuklardan 0'a kadar olan çubuklardan kısmen geçtiğini hayal edin, 4934 numaralı çubukta olduğunu hayal edelim, 4934 numaralı çubuk için fraktal hesaplanır, değer 0'dan büyükse v1[4934] Yüksek[4934] olarak ayarlanır, diğer bir deyişle v1 arabelleğinin 4935. öğesi 4934 numaralı çubuğun en yükseğine ayarlanır. . . Dizilerin 0'dan başladığını unutmayın

Son olarak, anlamanız gereken küçük bir komplikasyon var. . . göstergeyi çalıştırın ve her fraktal yüksek ve alçaktan bir nokta çizgisi göreceksiniz. . bir sonrakine kadar. . Şimdi 4933 numaralı çubukta olduğumuzu ve val1 değerinin 0'dan büyük olmadığını hayal edin, şimdi olan şey, bu çubuğun arabellek değerinin bu çubuklara Yüksek olarak ayarlanmadığını, ancak önceki girişle aynı değere ayarlandığını hayal edin. arabellek. . Bu durumda önceki, i+1 anlamına gelir çünkü while döngüsünde i geri sayım yapmaktadır.

Döngü sona erdiğinde ve tüm çubukların fraktalları hesaplandığında, arabelleklerdeki tüm girişler değerleri içerecektir. . . bu size pek yardımcı olmaz. . . kodu biraz değiştirmeniz gerekiyor.

Burada yazdıklarımı okuyun. . . Neler olduğunu anlamıyorsanız, bu kodla uğraşmanıza gerek yok. . . anladıktan sonra ilerleyebilirsiniz. . . herhangi bir sorunuz lütfen sorun.

 
RaptorUK :

3 arabellek vardır, v1, v2 ve v3 ve hesaplama için kullanılan diğer üç çift, val1, val2 & val3 vardır. v3 ve val3 kullanılmış gibi görünmüyor. . .

val1 ve val2 iFractals tarafından üretilen değeri tutar, bu değer her çubuk için birer birer hesaplanır, while döngüsü Çubuklar ile başlayıp sıfıra kadar azalan çubuklar arasında döngü yapar. . .

Böylece her çubuk için fraktal değeri MODE_UPPER için v1'de ve MODE_LOWER için v2'de hesaplanır ve saklanır, v1 için çalışalım. . .

Sırayla her çubuk için. . . val1 0'dan büyükse, çubuk numarası için arabellek v1 için arabellek değeri, bu çubuğun Yüksek değerine ayarlanır, bu nedenle döngünün Çubuklardan 0'a kadar olan çubuklardan kısmen geçtiğini hayal edin, 4934 numaralı çubukta olduğunu hayal edelim, 4923 numaralı çubuk için fraktal hesaplanır, değer 0'dan büyükse v1[4394] Yüksek[4394] olarak ayarlanır, diğer bir deyişle v1 arabelleğinin 4395. öğesi 4394 numaralı çubuğun yükseğine ayarlanır. . . Dizilerin 0'dan başladığını unutmayın

Son olarak, anlamanız gereken küçük bir komplikasyon var. . . göstergeyi çalıştırın ve her fraktal yüksek ve alçaktan bir nokta çizgisi göreceksiniz. . bir sonrakine kadar. . Şimdi 4933 numaralı çubukta olduğumuzu ve val1 değerinin 0'dan büyük olmadığını hayal edin, şimdi olan şey, bu çubuğun arabellek değerinin bu çubuklara Yüksek olarak ayarlanmadığını, ancak önceki girişle aynı değere ayarlandığını hayal edin. arabellek. . Bu durumda önceki, i+1 anlamına gelir çünkü while döngüsünde i geri sayım yapmaktadır.

Döngü sona erdiğinde ve tüm çubukların fraktalları hesaplandığında, arabelleklerdeki tüm girişler değerleri içerecektir. . . bu size pek yardımcı olmaz. . . kodu biraz değiştirmeniz gerekiyor.

Burada yazdıklarımı okuyun. . . Neler olduğunu anlamıyorsanız, bu kodla uğraşmanıza gerek yok. . . anladıktan sonra ilerleyebilirsiniz. . . herhangi bir sorunuz lütfen sorun.

Göstergenin tam olarak tarif ettiğiniz gibi nasıl çalıştığını anlıyorum. Ben de tamponun değerleri nasıl sakladığını anladığımı sanıyordum, bu yüzden kafam karışıyordu çünkü yazdırılacak şeyleri yeniden kodladığımda görmem beklenen sonuçları alamadım.

Ancak, arabelleğin nasıl farklı olduğunu anlamakla büyük bir engelin üstesinden gelindi ve aslında öğelerin sayısını AÇIKLAMADI, bu yüzden arabellekten yazdıramadım

Tamam devam et.
4934 numaralı çubuğa yaptığınız referanslarda bazı yazım hataları olduğunu varsayıyorum, fraktal 4923 numaralı çubuk için hesaplandı ve 4933 okuması gerekiyor.
Ve ayrıca 0'dan büyük bir değer için v1[4394], Yüksek[4394] olarak ayarlanır == 4923/33'e yapılan önceki referansı takip etmesi gerektiğini varsayıyorum, ancak bunun eleman numarasının daha yüksek olduğunu anlıyorum. Çubuk numarası.

Yazım hataları hakkında yanılıyorsam lütfen düzeltin.

Her neyse, bunların yazım hatası olduğunu varsayarsak, bunun ne anlama geldiğini anlıyorum.

Bunu yazdırabilmek veya ondan değer alabilmek için v3 oluşturup ilan edip benzer bir şekilde başlatacağımı düşündüm.
Başlangıçta, Yüksek[i]'nin 0'dan büyük olduğu zamanda ve bu Çubuk için saklanan değerini çıkarmak için i-1 yazdırabileceğimi düşünmüştüm.
Veya şu anda v1[i] = v1[1-1] ve Print v1[i] bile, ancak bu kısmı çözemedim ve ayrıca eleman sayısı bildirilmediğinden yazdırma kısmını da geçemedim.

Bu nedenle, farklı bir v3 şeması oluşturmak istedim, ancak aslında sadece belirtilen sayıda öğeye sahip bir dizi oluşturmak için aynı, bu çubuklar için fraktalların değerini çıkarabileceğim.

Tasarımla ilgili sorun yaşadığım yer burası, bu yüzden üzerinde biraz daha çalışacağım

teşekkürler

 
Agent86 :

Göstergenin tam olarak tarif ettiğiniz gibi nasıl çalıştığını anlıyorum. Ben de tamponun değerleri nasıl sakladığını anladığımı sanıyordum, bu yüzden kafam karışıyordu çünkü yazdırılacak şeyleri yeniden kodladığımda görmem beklenen sonuçları alamadım.

Ancak, arabelleğin nasıl farklı olduğunu anlamakla büyük bir engelin üstesinden gelindi ve aslında öğelerin sayısını AÇIKLAMADI, bu yüzden arabellekten yazdıramadım

Tamam devam et.
4934 numaralı çubuğa yaptığınız referanslarda bazı yazım hataları olduğunu varsayıyorum, fraktal 4923 numaralı çubuk için hesaplandı ve 4933 okuması gerekiyor.
Ve ayrıca 0'dan büyük bir değer için v1[4394], Yüksek[4394] olarak ayarlanır == 4923/33'e yapılan önceki referansı takip etmesi gerektiğini varsayıyorum, ancak bunun eleman numarasının daha yüksek olduğunu anlıyorum. Çubuk numarası.

Yazım hataları hakkında yanılıyorsam lütfen düzeltin.

Yazım hataları için üzgünüm. . . Metnimi doğru değerlerle düzelttim. . . Sabahın ilk işi iyi değilim ;-)

Sizin için çok fazla kullanılmadan önce kodda yapmanız gereken küçük değişikliği görüyor musunuz?

 
     for (i= Bars ; i >= 0 ; i--)
     {
     val3= iFractals ( NULL , 0 , MODE_UPPER,i);
     if (val3> 0 )
      {
       double v3[ 1000 ];
      v3[i]=High[i];
       Print ( "v3[" , i, "]= " , v3[i], " if" );
      }
     else           
         {
         v3[i]=v3[i+ 1 ];
         Print ( "v3[" , i, "]= " , v3[i], " else" );
         }
     }
Tamam, burada biraz ilerleme kaydediyorum, bence asıl mesele, baskı ifadelerim için her zaman 0 üreten arabellek bildirimini geçememekti.

Sanırım buradan halledebilirim
Şu an aradığım değerleri alıyorum en azından şu ana kadar söyleyebileceğim kadarıyla doğru yolda olabilirim.

2011.09.24 12:26:21 2011.01.02 19:09 Agent86_5min EURUSD,M5: v3[5]= 1.3361 ise
2011.09.24 12:26:21 2011.01.02 19:09 Agent86_5min EURUSD,M5: v3[6]= 1.3343 diğer
2011.09.24 12:26:21 2011.01.02 19:09 Agent86_5min EURUSD,M5: v3[7]= 1.3343 diğer
2011.09.24 12:26:21 2011.01.02 19:09 Agent86_5min EURUSD,M5: v3[8]= 1.3343 diğer
2011.09.24 12:26:21 2011.01.02 19:09 Agent86_5min EURUSD,M5: v3[9]= 1.3343 diğer
2011.09.24 12:26:21 2011.01.02 19:09 Agent86_5min EURUSD,M5: v3[10]= 1.3343 ise
2011.09.24 12:26:21 2011.01.02 19:09 Agent86_5min EURUSD,M5: v3[11]= 1.3399 başka


Tekrar teşekkürler
 
Diğerini gerçekten istemediğinden veya buna ihtiyaç duymadığından şüpheleniyorum
 
RaptorUK :
Diğerini gerçekten istemediğinden veya buna ihtiyaç duymadığından şüpheleniyorum

evet haklısın