elzinkhana #: MQL4.5 kullanarak herhangi bir yılın Ocak ayındaki ilk işlem gününün sayısını nasıl bulabilirim?
/********************Script program start function*******************/voidOnStart()
{
datetime newYear[];
int bars = Bars(_Symbol, PERIOD_D1, D'2020.01.01', TimeCurrent())-1;
CopyTime(_Symbol, PERIOD_D1, bars, 1, newYear);
printf("Первый торговый день %s %s", EnumToString(ENUM_DAY_OF_WEEK((newYear[0]/PeriodSeconds(PERIOD_D1)+4)%7)), TimeToString(newYear[0]));
}/******************************************************************/
Sonuç
2023.05.1413:37:02.118 !!0 (EURUSD,D1) Первый торговый день MONDAY2022.01.0300:002023.05.1413:38:18.547 !!0 (EURUSD,D1) Первый торговый день MONDAY2021.01.0400:002023.05.1413:38:35.906 !!0 (EURUSD,D1) Первый торговый день THURSDAY2020.01.0200:00
Neden o günün işlem günü olduğuna karar verdiniz? Fikir kotasyonların varlığında mı? Ve eğer kotasyon varsa ama işlem yapamıyorsanız - bence asıl soru bu.
O günün işlem günü olduğuna nasıl karar verildi? Kotasyonların mevcut olduğu fikri mi? Ve eğer kotasyon varsa ama işlem yapamıyorsanız - bence asıl soru bu.
MT'yi açın ve bir göz atın. Neden bakmadan böyle sorular soruyorsunuz? Çubuk, OHLC'nin tüm özellikleriyle birlikte orada. Geri kalan her şey sadece sizin hayal gücünüz.....
İşlem günlerinin Ocak ayında üç varyanttan biriyle başladığını fark ettim: 2 Ocak veya 3 Ocak veya 4 Ocak. Ve hatta yeni yıldaki ilk işlem gününün tarihini belirlemek için MQL4'te bir alt rutin yazabildim.
int inp_Year=2016; //ilgilenilen yılın numarasını datetime değişkenine koyunfirst_day_New_Year=StringToTime(IntegerToString(in p_Year)+".01.02 00:00"); //eğer belirli bir yılın ticareti 2 Ocak'ta başlamışsa, 2 Ocak hafta içi bir günse, ticaret yılının başlangıcının tam tarihini kaydedeceğimiz değişken if (TimeDayOfWeek(first_day_New_Year)==0) first_day_New_Year=StringToTime(StringSubstr(TimeToString(first_day_New_Year),0,4)+".01.03 00:00"); //3 Ocak belirli bir yılın işlem görmeye başladı, eğer 2 Ocak Pazar ise if (TimeDayOfWeek(first_day_New_Year)==6) first_day_New_Year=StringToTime(StringSubstr(TimeToString(first_day_New_Year),0,4)+"".01.04 00:00"); //4 Belirli bir yılın Ocak ayı işlemleri başladı, eğer 2 Ocak Cumartesi ise Comment("first trading day in ", inp_Year, " year= ",first_day_New_Year);
Anlamama yardım edin. ObjectMove(0, "LineAB", prevTime, prevPrice, newAx, newAy); satırında yanlış parametre sayısı diyor. Hata nerede?
https://www.mql5.com/ru/docs/objects/objectmove
MQL4.5 kullanarak herhangi bir yılın Ocak ayındaki ilk işlem gününün sayısını nasıl bulabilirim?
Bulamazsınız. Bu tür verileri yalnızca kendiniz toplayabilirsiniz.
MQL4.5 kullanarak herhangi bir yılın Ocak ayındaki ilk işlem gününün sayısını nasıl bulabilirim?
Sonuç
Sonuç
Neden o günün işlem günü olduğuna karar verdiniz? Fikir kotasyonların varlığında mı? Ve eğer kotasyon varsa ama işlem yapamıyorsanız - bence asıl soru bu.
O günün işlem günü olduğuna nasıl karar verildi? Kotasyonların mevcut olduğu fikri mi? Ve eğer kotasyon varsa ama işlem yapamıyorsanız - bence asıl soru bu.
MT'yi açın ve bir göz atın. Neden bakmadan böyle sorular soruyorsunuz? Çubuk, OHLC'nin tüm özellikleriyle birlikte orada. Geri kalan her şey sadece sizin hayal gücünüz.....
İşlem günlerinin Ocak ayında üç varyanttan biriyle başladığını fark ettim: 2 Ocak veya 3 Ocak veya 4 Ocak.
Ve hatta yeni yıldaki ilk işlem gününün tarihini belirlemek için MQL4'te bir alt rutin yazabildim.
int inp_Year=2016; //ilgilenilen yılın numarasını
datetime değişkenine koyunfirst_day_New_Year=StringToTime(IntegerToString(in p_Year)+".01.02 00:00"); //eğer belirli bir yılın ticareti 2 Ocak'ta başlamışsa, 2 Ocak hafta içi bir günse, ticaret yılının başlangıcının tam tarihini kaydedeceğimiz değişken
if (TimeDayOfWeek(first_day_New_Year)==0) first_day_New_Year=StringToTime(StringSubstr(TimeToString(first_day_New_Year),0,4)+".01.03 00:00"); //3 Ocak belirli bir yılın işlem görmeye başladı, eğer 2 Ocak Pazar ise
if (TimeDayOfWeek(first_day_New_Year)==6) first_day_New_Year=StringToTime(StringSubstr(TimeToString(first_day_New_Year),0,4)+"".01.04 00:00"); //4 Belirli bir yılın Ocak ayı işlemleri başladı, eğer 2 Ocak Cumartesi ise
Comment("first trading day in ", inp_Year, " year= ",first_day_New_Year);