Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 917

 

Herkese merhaba.

Stratejiyi H1'de test etmek için bir önceki günün kapanışına ilişkin verileri almanız gerekir.

Göstergeye aşağıdakileri yazıyorum (sırasıyla, OnInit() içinde "CloseLine" bildirdikten sonra):


int OnCalculate(sabit int oranlar_toplam, const int önceki_hesaplanmış,

const tarihsaat &saat[], const double &open[],

const double &high[], const double &düşük[],

const double &kapat[], const uzun &tick_volume[],

const uzun &hacim[], const int &spread[])

{

Close_Day=iClose("EURUSD", PERIOD_D1 ,1);

ObjectSet("CloseLine",OBJPROP_PRICE1,Close_Day);

dönüş(oranlar_toplam);

}

Sonuç olarak, Day TF'den alınan fiyat değişmez ve hat yeniden inşa edilmez.

Bana yardım et lütfen.

teşekkürler

 

Merhaba, burada ilk beşe dörtlü soru yazdı. Konuda kim söylesin lütfen...

Gösterge tarafından kenelerin kaydedilmesi ve okunması.

https://www.mql5.com/ru/forum/6343/page400#comment_1768141

önceki sayfada başla - iMAOnArray'i geçemez.

 
Pokrov :
Merhaba! Yinelenen siparişler için en iyi nasıl yapılacağına dair bir soru var - bir döngü, tüm amaçlar için veya birkaç döngü blok blok yapılabilir, soru danışmanın performansı açısından mı yoksa yok mu? fark?

bir döngü daha hızlı. ve döngü içinde, bloklar zaten mümkündür, örneğin bekleyen emirleri analiz etmek için bir blok , piyasa emirlerini analiz etmek için bir blok ve hareket etmek için kullanılmış bir blok.

 for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--)
   {
       if (! OrderSelect (i,SELECT_BY_POS)) 
      {
         Print ( "OrderSelect( " ,i, " ) - Error #" , GetLastError ());
         continue ;
      }
       if (OrderSymbol() != SymbolsArray[symNo])           continue ;
       if (OrderMagicNumber() != Expert_ID) continue ;
       if (OrderType()> 3 ){  } //StopOrder
       if (OrderType()< 2 ){  } //MarketOrder
   }
 
Rattnik :

Herkese merhaba.

Stratejiyi H1'de test etmek için bir önceki günün kapanışına ilişkin verileri almanız gerekir.

Göstergeye aşağıdakileri yazıyorum (sırasıyla, OnInit() içinde "CloseLine" bildirdikten sonra):


int OnCalculate(sabit int oranlar_toplam, const int önceki_hesaplanmış,

const tarihsaat &saat[], const double &open[],

const double &high[], const double &düşük[],

const double &kapat[], const uzun &tick_volume[],

const uzun &hacim[], const int &spread[])

{

Close_Day=iClose("EURUSD",PERIOD_D1,1);

ObjectSet("CloseLine",OBJPROP_PRICE1,Close_Day);

dönüş(oranlar_toplam);

}

Sonuç olarak, Day TF'den alınan fiyat değişmez ve hat yeniden inşa edilmez.

Bana yardım et lütfen.

teşekkürler

Her tikte dünün kapanışını tanımanın mantıklı olduğundan emin misin? belki de değerin değişip değişmediğini öğrenmek daha iyidir ve yalnızca değişmişse, ObjectSet'i çağırın ve başarısız olursa işlemi yapın?
 
iyi akşamlar, belki birinin mumdaki kene sayısını tam olarak mumların üstündeki veya altındaki sayılarda ne olacağını sayan bir göstergesi vardır. Bu göstergeyi hiçbir yerde bulamıyorum.
 
roma1984 :
iyi akşamlar, belki birinin mumdaki kene sayısını tam olarak mumların üstündeki veya altındaki sayılarda ne olacağını sayan bir göstergesi vardır. Bu göstergeyi hiçbir yerde bulamıyorum.
MT4'ün hacimleri vardır. borsadan değiller, keneler, yani mumdaki kenelerin sayısını gösterirler. sayılar olmadan gerçek vardır, ctrl + D tuşlarına basıp mumun üzerine gelindiğinde sayılar görüntülenebilir.
 
danik :
MT4'ün hacimleri vardır. borsadan değiller, keneler, yani mumdaki kenelerin sayısını gösterirler. sayılar olmadan gerçek vardır, ctrl + D tuşlarına basıp mumun üzerine gelindiğinde sayılar görüntülenebilir.
tavsiyen için teşekkürler ama biraz garip
 
tatianati :

Merhaba, lütfen yardım edin.

Eşitlik arayışı, 5. bardan başlayarak 20 bar yüksekliğe sahip ilk barın en düşük seviyesi.

İlk çubuğa bir ok koydum.

Deniyorum yani :

Doğru ayarlanmıyor.

Belki bu yüzden?

 if (MathAbs(iHigh( NULL , 0 ,iHighest( NULL , 0 ,MODE_HIGH,K_Bars,i+ 5 ))-lowr) < n* Point ) //примерно равно)))

Daha fazla değişken başlatmak gerekli olacaktır.

 
tatianati :

tam olarak ihtiyacınız var Ve, bu aralık yaklaşık olarak

5. çubuktan 20'ye kadar olan gösterge için doğru göstergeyi mi arıyorsunuz merak ediyorum.

Arama doğru, ancak aralık tam değil. Fark modülünü belirli bir sayı ile karşılaştırmak daha iyidir.

Bir şekilde böyle:

 if (MathAbs(iHigh( NULL , 0 ,iHighest( NULL , 0 ,MODE_HIGH,K_Bars,i+ 5 ))-lowr) < n* Point ) // разница меньше п пунктов
 
Ve sıfır çubuğu hiçbir yere katılmazsa, döngüye 1'den başlamak mantıklıdır, o zaman [i+1] yazmaya gerek kalmayacaktır.
Neden: