[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 5. - sayfa 175

 
alsu :

Hayır, döngüden önce sahip olduğum tek değişkenden. Kayıt

özdeş

   int cnt,i;
 for  (cnt =  0 , i = index + g_center -  1 ; i >=  0  && cnt < g_center; i--) 

   

Şimdi anladım. Teşekkür ederim. Sonra baktım baktım.. Başlangıç noktası yoktu. Şimdi 0 çekildi..


hm. Örneğin, indeks 1 değeri ile geçirilir. Şu kod parçasına bakalım:

 int cnt = 0 , i = index + g_center - 1 ;
   for (; i >= 0 && cnt < g_center; i--)           // Справа от центрального бара должно
   {                                               // ..быть g_center-1 баров с большим..
       if (centerLow >= Low[i])                     // ..минимумом. Не позволяется..
         return ( false );                           // ..наличие баров с меньшим или..
      cnt++;                                       // .. равным минимумом
   }
   

varışta hemen şu şekilde olacaktır: cnt = 0 , i = indeks + g_center - 1 = 1(indeks değeri) + 2( g_center değeri ) - 1 = 2

Ama döngünün durumuna göre i 0'a eşit olana kadar devam edecek. Nasıl olacak?

Koşul, 2 (eğer indeks = 1 ise) i >= 0 arasında bir değere sahipse ve cnt , 0 ila cnt < g_center arasında bir değere sahipse, iç içe koşulların karşılandığı ortaya çıkar.

Buradaki değişken 1 ise, döngüde sadece 1 yinelememiz olacak, değil mi?

 
alsu :

"0 bar ile sınırlı" kavramını genişletin
Başka bir deyişle, 2 fraktal üzerinden bir çizgi (ışın değil) çizmeniz gerekir, ancak 0 bar'da bitmesi gerekir.
 
beginner :
Başka bir deyişle, 2 fraktal üzerinden bir çizgi (ışın değil) çizmeniz gerekir, ancak 0 bar'da bitmesi gerekir.


Algoritma:

1. (i1; p1) ve (i2; p2) fraktallarının koordinatları ve i1<i2 olsun (yani 1. fraktal, 0 çubuğuna 2. fraktaldan daha yakındır)

2. Bu fraktallardan geçen bir doğrunun denklemi p = (p1-p2)/(i1-i2) * i + (p2*i1 - p1*i2)/(i1-i2)

3. Bu nedenle, aşağıdaki koordinatlara sahip bir doğru parçası çizmemiz gerekiyor: (0; (p2*i1 - p1*i2)/(i1-i2)) ve (i2; p2)

4.Nesne Oluştur (...)

5. ???

6. Kar!!!

 
Vinin :

Yeni bir günün ilk tikinde tetiklenmelidir.

Cevabınız için teşekkürler! Doğru, göstergenin başlangıcına ekleyene kadar hiç çalışmadı

if(Saat() == 0 && Dakika() == 0 && Saniye() == 0) { DeleteObject() vb.

}

if(Saat() >= 0 && Dakika() >= 0 && Saniye() >= 1) { gösterge kodu ...

Son zamanlarda ve bu çalışmıyor! Ne yapacağımı bilmiyorum. Ne aydınlatabilirsin? Teşekkür ederim!

Ancak şimdi yazabildim, Cumartesi günü yaşamak için para kazanıyorum.

 
hoz :


Evet, Boris , bu arada, çok geldi! Teşekkür ederim. Ben de bunu istiyordum. Bükülmüş .. bükülmüş .. ama görmek için bükmedi. Henüz çok fazla deneyim yok ve beyin bir profesyonel gibi düşünmüyor. Maviden küntler var .. :(

Hemen sormak istemiyordum ama mecburdum. Çünkü en kesimde işe yaramadı.

Kullanışlı bulduğuna sevindim! Sonuçta ben de sizin gibi 2 yıl önce başladım ama çocukluğumdan beri her zaman her şeye kendi başıma ulaşmaya alışmışımdır, tk. ipuçlarından bilgi sistematik olarak oluşturulamaz. Ve sadece kesinlikle gerekli olduğunda, her şeyi yaptığımda, her yere baktığımda ve işe yaramadığında soruyorum. Buradaki birçok yeni başlayan, hızlı bir şekilde beceriksizlik ve para pompalamak istiyor. Tecrübe onlara öğretecektir. Daha önce, anlamadığınız karmaşık bir şeyden ziyade basit, ki bu sizin için açık olan bir şey olmanın daha iyi olduğunu ve işin özüne inene kadar bu tür durumlardan kaçınmanın daha iyi olduğunu söylemiştim. Kod çeşitli şekillerde yapılabilir, ancak mantık sizin için iki ve iki kadar net olmalıdır. Bu yüzden kullanmaktan kaçınıyorum, ki hala anlamıyorum. Kod sizin aracınızdır ve zamanla sorunsuz bir şekilde düzeltebilmeniz için mükemmel bir şekilde bilmeniz ve ustalaşmanız gerekir. Sana şans diliyorum!
 
hoz :

Şimdi anladım. Teşekkür ederim. Sonra baktım baktım.. Başlangıç noktası yoktu. Şimdi 0 çekildi..


hm. Örneğin, indeks 1 değeri ile geçirilir. Şu kod parçasına bakalım:

varışta hemen şu şekilde olacaktır: cnt = 0 , i = indeks + g_center - 1 = 1(indeks değeri) + 2( g_center değeri ) - 1 = 2

Ama döngünün durumuna göre i 0'a eşit olana kadar devam edecek. Nasıl olacak?

Koşul, 2 (eğer indeks = 1 ise) i >= 0 arasında bir değere sahipse ve cnt , 0 ila cnt < g_center arasında bir değere sahipse, iç içe koşulların karşılandığı ortaya çıkar.

Buradaki değişken 1 ise, döngüde sadece 1 yinelememiz olacak, değil mi?


Döngü , for() ifadesinde ikinci sırada yazılan koşul doğru olmaktan çıktığında, yani bu durumda, i 0'dan küçük olduğunda veya cnt, g_center'dan büyük veya ona eşit olduğunda sona erer. Her iki değişkenin de döngüden önce atanan başlangıç değerleri vardır ve yürütülmesi sırasında değişir: i değişkeninin sonucunda i değişkeni-- (for ifadesinin üçüncü kısmı, döngü kapanış parantezine her ulaştığında yürütülür }), ve cnt++ sonucundaki cnt değişkeni.
 

Merhaba.

Bir demo hesabından ticaretimi html durumuna aktarmaya çalışıyorum. (alpari, son yapı). Rapor olarak kaydet'e basıyorum, klasör seçim penceresi açılıyor, kaydet düğmesine basıyorum, hiçbir şey olmuyor. Demodaki herkes için böyle mi? Başka bir nokta, MT4'üm masaüstüne kurulu. Önemli mi?

 
borilunad :
Hour(), Minute() ve Seconds() global değişkenleri yaparak, DailyPivotPoints göstergesindeki değişikliği gece yarısında (0.00) EA'dan yeni PP seviyelerine ve diğer satırlara kontrol etmenin mümkün olup olmadığını kim bilebilir? Bunu göstergede Hour(), Minute(), Seconds() ile yapardım ve her gece derlemek zorunda kalmadan çalıştı. Ve son zamanlarda kendini değiştirmeyi bıraktı, belki yapıyı değiştirmekten? Teşekkür ederim!


:) Ve neden bu anı yeni çubuğun bir işlevi olarak uygulamıyorsunuz? Günde bir kez, yani. 0.00 saatinden başlayarak türkiye'nin yeniden hesaplama yapması. Bu yüzden kolaylaştırıyoruz. Başlangıçta, ess-no:

 if (lastBarTime == время с ТФ Д 1 )
     return ( 0 );
// что-то тут ещё
// что-то тут ещё
// что-то тут ещё
if (lastBarTime != время с ТФ Д 1 )
{
    пересчитывает уровни пивотов...
    lastBarTime = время с ТФ Д 1 ;
}
Bana göre ilkel de olsa en doğru yol bu!
 
alsu :

Döngü, for() ifadesinde ikinci sırada yazılan koşul doğru olmaktan çıktığında, yani bu durumda, i 0'dan küçük olduğunda veya cnt, g_center'dan büyük veya ona eşit olduğunda sona erer.


Akım da değil, I. Ayrıca && işareti de var.

Anladım. Ama buradaki nokta şu:

 bool IsUpFractal( int index)
{
   double centerHigh = High[index + g_center];     // За точку отсчета берется средний..
                                                   // ..бар на участке из i_fractalPeriod
                                                   // ..баров
// - 1 - == Поиск максимумов справа от центрального бара ================================
   int cnt = 0 , i = index + g_center - 1 ;
   for (; i >= 0 && cnt < g_center; i--)           // Справа от центрального бара должно
   {                                               // ..быть g_center-1 баров с низшим..
       if (centerHigh <= High[i])                   // ..максимумом. Не позволяется..
         return ( false );                           // ..наличие баров с большим или..
      cnt++;                                       // ..равным максимумом.
   }
   
   if (i < 0 )                                       // g_center-1 низших максимумов не..
       return ( false );                               // ..найдено. Фрактала нет
// - 1 - == Окончание блока =============================================================

İndeks değişkeni genellikle Bar - IndicatorCounted() değerine sahiptir.

Onlar. mevcut çubukta 1 ve yeni çubukta 2

Değer, IsUpFractal() işlevine birer birer veya çubuk henüz yeni değilse 1 girer, değil mi?

Bu, i değişkeninin sabit bir değere sahip olacağı anlamına gelir çünkü giriş parametre indeksi de sabittir. Böylece döngü her zaman ilk yinelemeden sonra kırılacaktır. Neden o zaman bisiklet?

 

Lütfen bana neden doğru olmadığını söyle..

 double IN[ 111 ];
double PERI= 33 ;
double KRIT;
int z;      
ArraySetAsSeries (IN, true );

   for (z= 0 ; z<=PERI; z++)  {
IN[z]=     iClose(Symbol1.Name, 0 ,iBarShift(Symbol1.Name, 0 ,Time[z], false )); }

   for (z= 0 ; z<=PERI; z++)  {
KRIT=IN[z]-iMAOnArray(IN, 0 ,PERI, 0 , MODE_SMA ,iBarShift(IN, 0 ,Time[z], false )); }

Print (KRIT);
return ;
Neden: