Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 607

[Silindi]  
new-rena :

Sorun yok. Algoritmayı attım. Başlangıç sadece bir program olmadan, yani şöyle:

НомерДНЯвМесяце=str.day;
Ayın hafta numarasına ihtiyacım var :)
[Silindi]  
pako :
Ayın hafta numarasına ihtiyacım var :)

5'te yapamam ama 4'te burada kabul edilmiyor.

Kodu yazayım. ve gönderi

[Silindi]  
pako :
4 veya 5 ne fark eder ???, saat aynı :))
Paco, nasıl konuşacağımı bilmiyorum 5 ve artık meseleyi anlamıyorum :)
[Silindi]  
new-rena :
Paco, nasıl konuşacağımı bilmiyorum 5 ve artık meseleyi anlamıyorum :)
4'e yaz
[Silindi]  
pako :
4'e yaz

muhtemelen değil. Bu başlangıç, eleştiriye açığız, gereğini yapacağız.

Danışmanı test cihazında başlatıyoruz, görsel modu açıyoruz, D1 TF'yi seçiyoruz ve dergideki baskılara bakıyoruz.

 //+------------------------------------------------------------------+
//|                                                  WeekOfMonth.mq4 |
//|                                                         new-rena |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "new-rena"
#property link        ""
#property version    "1.00"
#property strict
//--------------------------
double DayOfMonth,WeekOfMonth;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//---
//--- init
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//--- deinit
       return ( 0 );   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
int start()
  {
      DayOfMonth= TimeDay ( TimeLocal ());
       Print ( "DayOfMonth N " + DoubleToStr (DayOfMonth, 0 ));
      WeekOfMonth= MathCeil (DayOfMonth/ 7 );
       Print ( "WeekOfMonth N " + DoubleToStr (WeekOfMonth, 0 ));
      
//--- start
       return ( 0 );   
  }
//+------------------------------------------------------------------+
[Silindi]  
new-rena :

muhtemelen değil. Bu başlangıç, eleştiriye açığız, gereğini yapacağız.

Danışmanı test cihazında başlatıyoruz, görsel modu açıyoruz, D1 TF'yi seçiyoruz ve dergideki baskılara bakıyoruz.

 //+------------------------------------------------------------------+
//|                                                  WeekOfMonth.mq4 |
//|                                                         new-rena |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "new-rena"
#property link        ""
#property version    "1.00"
#property strict
//--------------------------
double DayOfMonth,WeekOfMonth;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//---
//--- init
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//--- deinit
       return ( 0 );   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
int start()
  {
      DayOfMonth= TimeDay ( TimeLocal ());
       Print ( "DayOfMonth N " + DoubleToStr (DayOfMonth, 0 ));
      WeekOfMonth= MathCeil (DayOfMonth/ 7 );
       Print ( "WeekOfMonth N " + DoubleToStr (WeekOfMonth, 0 ));
      
//--- start
       return ( 0 );   
  }
//+------------------------------------------------------------------+

yanlış gösteriyor

3. haftayı gösteriyor ve bugün 4. hafta 22/08/2016

[Silindi]  
pako :
Excel'de öyle düşünüyorlar, hafta =1+INT((A1-DATE(YEAR(A1+4-WEEKDAY(A1+6));1;5)+WEEKDAY(DATE(YEAR(A1+4-WEEKDAY(A1)) +6 ));1;3)))/7)

//+------------------------------------------------------------------+ //|                                                  WeekOfMonth.mq4 | //|                                                         new-rena | //|                                                                  | //+------------------------------------------------------------------+ #property copyright "new-rena" #property link        "" #property version    "1.00" #property strict //-------------------------- double DayOfMonth,WeekOfMonth; int DayOfWeeks,MonthOfYear,PrevMonth,Delta= 0 ,Show= 0 ; //+------------------------------------------------------------------+ //| Expert initialization function                                   | //+------------------------------------------------------------------+ int init()   { //--- PrevMonth= TimeMonth ( TimeLocal ()); DayOfMonth= TimeDay ( TimeLocal ()); if (DayOfMonth== 1 )    {       Delta= TimeDayOfWeek ( TimeLocal ());       Show= 1 ;    } //--- init    return ( 0 );   } //+------------------------------------------------------------------+ //| Expert deinitialization function                                 | //+------------------------------------------------------------------+ int deinit()   { //--- deinit        return ( 0 );     } //+------------------------------------------------------------------+ //| Expert tick function                                             | //+------------------------------------------------------------------+ int start()   { //---   MonthOfYear= TimeMonth ( TimeLocal ()); DayOfMonth= TimeDay ( TimeLocal ()); DayOfWeeks= TimeDayOfWeek ( TimeLocal ()); if (PrevMonth!=MonthOfYear && DayOfMonth== 1 )    {       Delta=DayOfWeeks;       Show= 1 ;    } if (Show== 1 )    {       WeekOfMonth= MathCeil ((DayOfMonth+Delta)/ 7 );              Print ( "DayOfMonth N " + DoubleToStr (DayOfMonth, 0 ));        Print ( "WeekOfMonth N " + DoubleToStr (WeekOfMonth, 0 ));    }

PrevMonth=MonthOfYear; //--- start        return ( 0 );     } //+------------------------------------------------------------------+

[Silindi]  

Ayın 1'i haftasonuna düştüğünde de yapıştırmalıyız, çünkü. test cihazı hafta sonu dönmüyor ... Eski kürk ağacını görmedim.

Peki, birkaç ay öncesinden VE içinde bulunulan aya kadar başlatmada döndürmek için, bir ay boyunca hafta sayısının hesaplanmasının bitmesini beklememek zarar vermez. Ama bunların hepsi nüanslar ....

MQL4'ü güzel yapan da budur - kod kısa ve anlaşılırdır!

[Silindi]  
new-rena :

Ayın 1'i hafta sonu düştüğünde de koymalıyız çünkü. test cihazı hafta sonu dönmüyor ... Eski kürk ağacını görmedim.

Peki, birkaç ay öncesinden VE içinde bulunulan aya kadar başlatmada döndürmek için, bir ay boyunca hafta sayısının hesaplanmasının bitmesini beklememek zarar vermez. Ama bunların hepsi nüanslar ....

MQL4'ü güzel yapan da budur - kod kısa ve anlaşılırdır!

yanlış düşünüyor
[Silindi]  
pako :
yanlış düşünüyor
TAMAM. Hangi yerde? Ay sonunda mı? Takvime baktım...