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

 

(önceki bölüm burada )


Merhaba! Birkaç açık satın alma pozisyonu arasından en düşük fiyattan başlayarak belirtilen lot sayısını (tutarını) sayan ve verilen lot sayısının altındaki fiyatı veren bir mql4 işlevi önerin. Piyasa emirleri. Ve aynı şey, ama satmak için.

Açıklığa kavuşturacağım - farklı sayıda lot içeren tüm siparişler. İşlev, "lot miktarı <=amount" koşulu doğru olduğu sürece, artan OrderOpenPrice sırasına göre siparişleri toplar.

 
pechenuga :

(önceki bölüm burada )


Merhaba! Birkaç açık satın alma pozisyonu arasından en düşük fiyattan başlayarak belirtilen lot sayısını (tutarını) sayan ve verilen lot sayısının altındaki fiyatı veren bir mql4 işlevi önerin. Piyasa emirleri. Ve aynı şey, ama satıyor.

Açıklığa kavuşturacağım - farklı sayıda lot içeren tüm siparişler. İşlev, "lot miktarı <=amount" koşulu doğru olduğu sürece, artan OrderOpenPrice sırasına göre siparişleri toplar.


İşlev, gerçek değerin belirtilenden büyük veya küçük olmasına bağlı olarak, toplam lot sayısını, toplam ile belirtilen lot sayısı arasındaki farkı veya false --true değerini ne döndürmelidir?

Daha doğrusu hangi fiyattan bahsediyoruz, hacim belirtilenden büyük veya eşitse son emrin açılış fiyatı?

 

her şey ... su ısıtıcım kaynadı ....

Bu koddan ORTALAMA kontrolünü kaldırırsanız, çizgiler net bir şekilde çizilmeye başlar.

onu olduğu gibi iade ederseniz ... danışman HİÇBİR ŞEY çizmez!

hatayı kim görüyor ya da sebep? söyle bana

derleyici hataları göstermiyor

Ma_1= iMA ( NULL , PERIOD_H1 , 30 , 0 , MODE_SMA , PRICE_CLOSE , 1 ) ; 
Ma_2= iMA ( NULL , PERIOD_H1 , 60 , 0 , MODE_SMA , PRICE_CLOSE , 1 );

if ( Hour()>= 10 && Hour()< 20 ) 
   {  
       if 
        ( Ma_1>Ma_2)         
              
 { SetVLine(Blue, "" , 0 , 0 , 1 );} 

}
 
Hangi danışmanların alım satım görselleştirmesi için daha iyi olduğunu söyleyin. Yine, aynı anda farklı TF'leri kullanabilmeniz arzu edilir. Teşekkür ederim!
 
lottamer :

her şey ... su ısıtıcım kaynadı ....

Bu koddan ORTALAMA kontrolünü kaldırırsanız, çizgiler net bir şekilde çizilmeye başlar.

olduğu gibi iade ederseniz... danışman HİÇBİR ŞEY çizmez!

hatayı kim görüyor ya da sebep? söyle bana

derleyici hataları göstermiyor


SetVLine()'ı göster;
 
rigonich :

SetVLine()'ı göster;

//===========================
//+------------------------------------------- ------------------------------+
//| Yazar : Kim Igor V. namı diğer KimIV, http://www.kimiv.ru |
//+------------------------------------------- ------------------------------+
//| Sürüm : 07/02/2008 |
//| Açıklama : OBJ_VLINE nesnesinin dikey çizgisini ayarlama |
//+------------------------------------------- ------------------------------+
//| Seçenekler: |
//| cl - çizgi rengi |
//| nm - isim ("" - mevcut çubuğun açılma zamanı) |
//| t1 - zaman (0 - mevcut bar açılış zamanı) |
//| st - çizgi stili (0 - basit çizgi) |
//| wd - çizgi genişliği (1 - varsayılan) |
//+------------------------------------------- ------------------------------+
void SetVLine(color cl, string nm="", datetime t1=0, int st=0, int wd=1) {
if (nm=="") nm=DoubleToStr(Zaman[0], 0);
if (t1<=0) t1=Zaman[0];
if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_VLINE, 0, 0,0);
ObjectSet(nm, OBJPROP_TIME1, t1);
ObjectSet(nm, OBJPROP_COLOR, cl);
ObjectSet(nm, OBJPROP_STYLE, st);
ObjectSet(nm, OBJPROP_WIDTH, wd);
}
 
rigonich :


İşlev, gerçek değerin belirtilenden büyük veya küçük olmasına bağlı olarak, toplam lot sayısını, toplam ile belirtilen lot sayısı arasındaki farkı veya false --true değerini ne döndürmelidir?

Daha doğrusu hangi fiyattan bahsediyoruz, hacim belirtilenden büyük veya eşitse son emrin açılış fiyatı?

İşlev, ihtiyacım olan lot sayısına sahip siparişlerin altındaki fiyatı döndürmelidir. Yani, lot sayısı "toplam"dan büyük olduğunda, fonksiyon bu son siparişin fiyatını döndürür.
 
lottamer:

Ma_1=iMA(NULL,PERIOD_H1,30,0,MODE_SMA,PRICE_CLOSE,1) ; 
Ma_2=iMA(NULL,PERIOD_H1,60,0,MODE_SMA,PRICE_CLOSE,1);
if(TimeHour(iTime(Symbol(),0,0))>10&&TimeHour(iTime(Symbol(),0,0))<20)
   {
   if(Ma_1>Ma_2)SetVLine(Blue, "", 0, 0, 1);
}  
 
rigonich :



kodunuz çalışmıyor!!! :))))))))))))))) çizgiler çekilmiyor

ve zamanın bununla hiçbir ilgisi yoktur. Zaman doğru. çıktısını aldım ...

Ve ortalamalarla karşılaştırmak yerine, stokastik üzerine bir karşılaştırma yapın - her şey açıkça çizilmiştir.

Stoch_1= iStochastic ( NULL , PERIOD_M5 , 5 , 3 , 3 , MODE_SMA , 0 ,MODE_MAIN, 1 ); 
Stoch_2= iStochastic ( NULL , PERIOD_M5 , 5 , 3 , 3 , MODE_SMA , 0 ,MODE_SIGNAL, 1 );


if ( Hour()>= 10 && Hour()< 20 )  
// if ( Ma_1>Ma_2)          // убрал средние
//    {
                      
         if (Stoch_1>Stoch_2)
 { SetVLine(Blue, "" , 0 , 0 , 1 );}   
 

rigonich de haşlanmışa benziyor :))))

Daha fazla kesinlik için, tüm bileşenleri başka bir ÇALIŞMA danışmanından kopyaladım...

ÇİZİM YAPMAZ!

"çekiliş" "al-sat" olarak değiştirildi.

ÇALIŞMIYOR!

MAGIC Kick'e benziyor!

basılı ortalamalar, her ikisi de 134'ü gösteriyor, ancak dönemleri 20 (!) kat farklı olmasına rağmen!

 
lottamer :

rigonich de haşlanmışa benziyor :))))

Daha fazla kesinlik için, tüm bileşenleri başka bir ÇALIŞMA danışmanından kopyaladım...

ÇİZİM YAPMAZ!

"çekiliş" "al-sat" olarak değiştirildi.

ÇALIŞMIYOR!

MAGIC Kick'e benziyor!


Ve bir demoda veya bir test cihazında nerede kontrol edersiniz?
Neden: