[Arşivle!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 2. - sayfa 23

 
Sergey2011 :

15 dakika içinde, saatin hangi işleviyle, günlük bir sayım döngüsünü nasıl organize edeceğimi anlamıyorum.

Umarım soru açıktır.

yardım için teşekkürler


iBarShift yardımına bakın ve/veya aşağıdaki gibi günlük çubuklarla doğrudan çalışabilirsiniz: iOpen(Symbol(), PERIOD_D1 ,1) - önceki günü açın, vb.
 
Ereke :
Başka bir akıllı adam!
Bu forumun özelliklerinde ne kadar haklı olduğun hakkında hiçbir fikrin yok! Kendinizi böyle bir ortamın içinde bulduğunuz için, kendiniz ve isteklerinizin kalitesi hakkında doğru sonuçlara varacağınızı umuyorum.
 
granit77 :
Bu forumun özelliklerinde ne kadar haklı olduğun hakkında hiçbir fikrin yok! Kendinizi böyle bir ortamın içinde bulduğunuz için, kendiniz ve isteklerinizin kalitesi hakkında doğru sonuçlara varacağınızı umuyorum.
+10 :)
 
granit77 :
Bu forumun özelliklerinde ne kadar haklı olduğun hakkında hiçbir fikrin yok! Kendinizi böyle bir ortamın içinde bulduğunuz için, kendiniz ve isteklerinizin kalitesi hakkında doğru sonuçlara varacağınızı umuyorum.

artmedia70

TEŞEKKÜR EDERİM!.................................. Bana zaten yardım edildi!

 
artmedia70 : Doğru Victor dedi - havada bir atış...
Bana bir şakayı hatırlatıyor...
İki Chukchi ormanda kayboldu...
-Havaya ateş et, belki biri duyar ve yardım eder
Birkaç dakika içinde...
-Daha fazla vur
-Yapamam, oklarım bitti.
 
volshebnik :
Kapanış fiyatı fraktalın çok üzerinde olabilir (eğer fraktal yükselirse) ve potansiyel kâr kaybedilir. Her tikte fiyat kırılımını kontrol ederim.


Katılıyorum, mümkün ve öyle, çünkü. talepte bir satın alma emri açılır, sonra talep ile karşılaştırılabilir...

 if (Ask > upfractal) { DO IT }

Soruya - neden tüm giriş koşulları sizin için çalışmıyor, tekrar ayrıntılı olarak açıklıyorum - bunun nedeni fraktalın yanlış hesaplanmasıdır ...

Son fraktalın değerini doğru bir şekilde hesaplamak için böyle bir yapıyı yardımcı bir değişken kullanarak kullanmak gerekir...

 fractal_h = iFractals ( Symbol (), PERIOD_H1 , MODE_UPPER, 3 );
   if (fractal_h!= 0 )  upfractal= iFractals ( Symbol (), PERIOD_H1 , MODE_UPPER, 3 ); 
   
   fractal_l = iFractals ( Symbol (), PERIOD_H1 , MODE_LOWER, 3 );
   if (fractal_l!= 0 )  dwfractal= iFractals ( Symbol (), PERIOD_H1 , MODE_LOWER, 3 ); 

Bu sizin kodunuzda değil ve şu çıkıyor, Bir fraktal çıktı, evet, değerini iyi hatırlıyorsunuz, doğru yazdınız - 3. değil, 2. çubukta - 0'dayken - zaten biliyoruz değeri, bundan sonra ne olacak... Bir sonraki çubuktaki fiyat bu en taze fraktalın değerini geçmiyorsa, diyelim ki sonraki her çubukta "küçük adımlarla", bir sonrakini oluşturmadan kırmaya geçiyor. fraktallar (genellikle olur), o zaman hepsi bu kadar... sizin tarafınızdan hesaplanan fraktalın değeri kendi kendine "0"a sıfırlanır... ve bunu yaparken ek olarak sıfıra ayarlamanız gerekmez kodunuzda (nerede olduğunu bilmiyorum)... Ve böylece upfraktal ! = 0 olduğu ortaya çıktı, yalnızca hesaplanandan sonraki çubukta (en taze fraktalın olduğu) -

bu nedenle, sonraki çubukların oluşumu sırasında en taze fraktalın değerini tam olarak bir yardımcı değişken girerek hatırlar ve korurlar, bu değişiklikleri kodunuz üzerinde yapmaya çalışın ve anlaşmaların tam olarak en son en taze fraktalın kopması üzerinde yapıldığını göreceksiniz. ve bu kopmanın kaç çubuk olacağı önemli değil, hala net değilse, uyarınız yerine bir çıktı girin ve testte upfraktal değişkenin değerinin her yeni çubukla nasıl değiştiğini görün ve her şeyi anlayacaksınız. - yeni oluşturulmuş bir çubukta kendini "0"a sıfırlar ve fraktalın kendisi kırılır, diyelim ki 8'inde - her şey zaten, onun değeri çoktan sıfıra eşit oldu.

İşte böyle sahipsin:


  
            
                upfractal=iFractals(Symbol(), PERIOD, MODE_UPPER, 3);
                Alert("upfractal вначале = ",upfractal);
if (Двверх==true && upfractal != 0 && Bid > NormalizeDouble (upfractal+ 1 * Point , Digits ) && Tвверх!=Time[ 0 ] && Сделкавверх==false) // Условие открытия ордера при пробитии фрактала вверх

Bu nasıl olmalı:

 fractal_h = iFractals ( Symbol (), PERIOD_H1 , MODE_UPPER, 3 );
   if (fractal_h!= 0 )  upfractal= iFractals ( Symbol (), PERIOD_H1 , MODE_UPPER, 3 );
 if (Двверх==true && Ask > NormalizeDouble (upfractal+ 1 * Point , Digits ) && Tвверх!=Time[ 0 ] && Сделкавверх==false) 
   

"Roman, neden? Aynı şey değil mi? Örneğin, MA_8<MA_2 ise, (MA_8-MA_2)<0 ile aynı mı?"

Bu aynı şeydir, ancak gerçek çalışma ve 100 kiloluk güvenilirlik için, olası "aksaklıklar" için zemin eksikliği nedeniyle - 2. seçeneğe ihtiyaç vardır.

not Uyarılar yerine, baykuşunuzun "doğru" çalışmasını analiz etmek için uzman günlüğündeki test cihazında zaman içinde değişkenlerin alınan değerlerini baskıları kullanın ve izleyin.

 
Roman. :


Katılıyorum, mümkün ve bu yüzden, çünkü. talepte bir satın alma emri açılır, sonra talep ile karşılaştırılabilir...

 if (Ask > upfractal) { DO IT }

Görsel olarak, fraktalı kırmak için grafiği analiz ediyorum ve görünür fiyatta bağımlılıkları araştırıyorum, yani. bidu. Bu nedenle, bir fraktalı kırmayı bir teklifle bir fraktalı kırmak olarak da düşünüyorum (ve upfraktal ayrıca bir teklifin değerini değil, bir teklifin değerini verir).
 
Misal:
 datetime some_time=D'2004.03.21 12:00';
  int shift=iBarShift("EUROUSD",PERIOD_M1,bir_zaman);
  Print("açık zamanlı çubuğun kayması",TimeToStr(bazı_zaman),", ", shift);

Yardıma baktım, anlamıyorum (anlamadım), "some_time" değişkeninde 15 dakika içinde bir önceki güne ihtiyacım olduğunu, yani bugün 25 Ocak ise nasıl belirtebilirim. 2011 o zaman yineleme için 24, 23, 22, vb. Ocakları nasıl ayarlarım.

Eğer çiğnersen teşekkür ederim.

 
volshebnik :
Görsel olarak, fraktalı kırmak için grafiği analiz ediyorum ve görünür fiyatta bağımlılıkları araştırıyorum, yani. bidu. Bu nedenle, bir fraktalı kırmayı bir teklifle bir fraktalı kırmak olarak görüyorum (ve yukarı fraktal ayrıca bir teklifin değerini değil, bir teklifin değerini verir).


belki gerçekten önemli değildir :-)

Şimdi anlaşıldı?

 
Roman. :


Katılıyorum, mümkün ve bu yüzden, çünkü. talepte bir satın alma emri açılır, sonra talep ile karşılaştırılabilir...

Soruya - neden tüm giriş koşulları sizin için çalışmıyor, tekrar ayrıntılı olarak açıklıyorum - bunun nedeni fraktalın yanlış hesaplanmasıdır ...

Son fraktalın değerini doğru bir şekilde hesaplamak için böyle bir yapıyı yardımcı bir değişken kullanarak kullanmak gerekir...

Bu sizin kodunuzda değil ve şu çıkıyor, Bir fraktal çıktı, evet, değerini iyi hatırlıyorsunuz, doğru yazdınız - 3. değil, 2. çubukta - 0'dayken - zaten biliyoruz değeri, bundan sonra ne olacak... Bir sonraki çubuktaki fiyat bu en taze fraktalın değerini geçmiyorsa, diyelim ki sonraki her çubukta "küçük adımlarla", bir sonrakini oluşturmadan kırmaya geçiyor. fraktallar (genellikle olur), o zaman hepsi bu kadar... sizin tarafınızdan hesaplanan fraktalın değeri kendi kendine "0"a sıfırlanır... ve bunu yaparken ek olarak sıfıra ayarlamanız gerekmez kodunuzda (nerede olduğunu bilmiyorum)... Ve böylece upfraktal ! = 0 olduğu ortaya çıktı, yalnızca hesaplanandan sonraki çubukta (en taze fraktalın olduğu) -

bu nedenle, sonraki çubukların oluşumu sırasında en taze fraktalın değerini tam olarak bir yardımcı değişken girerek hatırlar ve korurlar, bu değişiklikleri kodunuz üzerinde yapmaya çalışın ve anlaşmaların tam olarak en son en taze fraktalın kopması üzerinde yapıldığını göreceksiniz. ve bu kopuşun kaç çubukta olacağı önemli değil,

Evet Roman, çok teşekkür ederim. Fraktalı belirlemek için yardımcı bir parametre ekledim, şimdi tüm fırsatlar açıldı.
Neden: