هفت روز هفته، ۲۴ ساعت شبانه‌روز پاسخگوی شما هستیم.

اندیکاتور کلوز نیویورک در متاتریدر ۴ و ۵: کندل روزانه، خط بسته شدن و ساعت سرور

آموزش تحلیل تکنیکال۹ دقیقه مطالعه
تبلتی روی میز سرمه‌ای با نمودار کندل و خط طلایی مرز دو روز معاملاتی، جلوی پنجره‌ای رو به افق شهر در غروب؛ اندیکاتور کلوز نیویورک در متاتریدر - Expert MQL
فهرست مطالب

کلوز نیویورک یعنی ساعت ۵ عصر به وقت نیویورک؛ لحظه‌ای که روز معاملاتی فارکس تمام می‌شود و روز بعد شروع می‌شود. کارگزاری‌ها سواپ شبانه را هم در همین لحظه حساب می‌کنند. کندل روزانه‌ای که با این قرارداد ساخته شده باشد، همین ساعت بسته می‌شود، و هر چیزی که روی «روز» ساخته می‌شود به همین ساعت بسته است: سقف و کف دیروز، نقطهٔ پیوت، ATR روزانه و میانگین متحرک روزانه.

اندیکاتور کلوز نیویورک این لحظه را روی نمودار نشان می‌دهد، یا سطح‌ها و کندل‌های روزانه را با آن می‌سازد. این راهنما می‌گوید کی به چنین اندیکاتوری نیاز دارید، ساعت سرور بروکرتان را چطور بسنجید، و اگر آن را سفارش می‌دهید چه بنویسید.

کلوز نیویورک ساعت چند است؟

ساعت ۱۷:۰۰ به وقت نیویورک. FXCM در راهنمای رول‌اوور خودش ساعت ۵ عصر نیویورک را «آغاز و پایان روز معاملاتی فارکس» می‌نامد. هر پوزیشنی که در آن لحظه باز باشد، سواپ می‌گیرد.

نیویورک در تابستان ساعت را یک ساعت جلو می‌کشد. برای همین، این لحظهٔ ثابت به وقت گرینویچ و به وقت تهران دو مقدار دارد:

بازه به وقت گرینویچ به وقت تهران
زمستان آمریکا: ۱۰ آبان ۱۴۰۵ تا ۲۳ اسفند ۱۴۰۵ (۱ نوامبر ۲۰۲۶ تا ۱۴ مارس ۲۰۲۷) ۲۲:۰۰ ۱:۳۰ بامداد
تابستان آمریکا: ۲۳ اسفند ۱۴۰۵ تا ۱۶ آبان ۱۴۰۶ (۱۴ مارس تا ۷ نوامبر ۲۰۲۷) ۲۱:۰۰ ۰:۳۰ بامداد

ساعت رسمی ایران از ۱۴۰۲ تابستانی و زمستانی ندارد. پس جابه‌جایی جدول بالا فقط از تغییر ساعت آمریکاست.

کندل روزانهٔ بروکر شما با کلوز نیویورک بسته می‌شود؟

کندل روزانهٔ متاتریدر با ساعت سرور بروکر بسته می‌شود، نه با ساعت نیویورک. بسیاری از بروکرها سرور را در زمستان آمریکا روی GMT+2 و در تابستانش روی GMT+3 می‌گذارند؛ با این تنظیم، نیمه‌شب سرور همان ۵ عصر نیویورک است. TitanFX همین را دربارهٔ بیشتر بروکرها نوشته است. ولی این یک قرارداد رایج است، نه قانون. تنها راه مطمئن این است که سرور خودتان را بسنجید:

  1. ساعتی که بالای پنجرهٔ Market Watch می‌بینید، ساعت سرور است. آن را با ساعت گرینویچ همان لحظه مقایسه کنید. ساعت گرینویچ همیشه سه ساعت و نیم از ساعت تهران عقب‌تر است.
  2. اگر اختلاف در زمستان آمریکا دو ساعت و در تابستانش سه ساعت است، کندل روزانهٔ شما همان کندل نیویورک است. اندیکاتور فقط برای کشیدن خط و سطح لازم است.
  3. اگر اختلاف عدد دیگری است، مثلاً صفر یا یک ساعت، کندل روزانهٔ شما ساعت دیگری بسته می‌شود و بقیهٔ این راهنما برای شماست.

نشانهٔ سریع‌تر هم هست: اگر در نمودار روزانه هر هفته یک کندل کوچک «یکشنبه» می‌بینید، سرور بروکر شما با کلوز نیویورک تنظیم نشده است. بازار عصر یکشنبه به وقت نیویورک باز می‌شود. با سروری که روی GMT است، همان دو سه ساعت آخر یکشنبه یک روز جدا می‌شود و هفته به جای پنج کندل، شش کندل دارد.

کندل یکشنبه چه چیزهایی را خراب می‌کند؟

  • میانگین متحرک روزانه: میانگین ۲۰ روزه با شش کندل در هفته، کمتر از چهار هفته را می‌پوشاند. یکی از هر شش کندلش هم فقط چند ساعت داده دارد.
  • ATR روزانه: دامنهٔ کوچک کندل یکشنبه میانگین را پایین می‌کشد. حد ضرر یا حجمی که با اندیکاتور ATR حساب شود، کوچک‌تر از واقع درمی‌آید.
  • سقف و کف دیروز و پیوت: «دیروزِ» دوشنبه همان کندل چندساعتهٔ یکشنبه است، نه روز کامل جمعه. سطح‌های پیوت دوشنبه از همان چند ساعت ساخته می‌شوند.
  • اکسپرت: رباتی که سقف دیروز یا اولین کندل روز را می‌خواند، روی دو بروکر با دو ساعت سرور، دو نتیجهٔ متفاوت می‌گیرد، حتی وقتی قیمت‌ها یکی است.

اندیکاتور کلوز نیویورک چه کاری انجام می‌دهد؟

بسته به نیاز، یکی از این سه کار یا ترکیبی از آن‌ها را:

۱. خط بسته شدن

یک خط عمودی در هر کلوز نیویورک، با برچسب روز. ساده‌ترین نسخه است و در تایم‌فریم‌های پایین‌تر از روزانه، مرز واقعی روزها را نشان می‌دهد. مثلاً روی نمودار یک‌ساعته می‌بینید کندل‌های عصر جمعه کجا تمام می‌شوند و کندل‌های عصر یکشنبه از کجا شروع.

۲. سطح‌های روز نیویورکی

سقف، کف و قیمت بسته شدن روز قبل، نقطه‌های پیوت و کادر دامنهٔ روز، همه از روزی که از کلوز تا کلوز نیویورک حساب شده است. محدودهٔ پیوت روش ACD هم از همین روز ساخته می‌شود؛ توضیحش در اندیکاتور ACD آمده است. اگر بروکر شما کندل یکشنبه دارد، همین نسخه است که سطح‌ها را درست می‌کند، بی‌آنکه نمودار عوض شود.

۳. کندل روزانهٔ نیویورکی (فقط متاتریدر ۵)

متاتریدر ۵ نماد سفارشی دارد. می‌شود نمادی ساخت که تاریخچهٔ یک‌دقیقه‌ای همان جفت‌ارز را با ساعت جابه‌جاشده داشته باشد؛ تابع CustomRatesUpdate در MQL5 همین کندل‌های یک‌دقیقه‌ای را در نماد سفارشی می‌نویسد. آن وقت نمودار روزانهٔ آن نماد و هر اندیکاتوری که رویش بگذارید، با کلوز نیویورک ساخته می‌شود.

دو محدودیت را از راهنمای رسمی متاتریدر ۵ بدانید. روی نماد سفارشی معاملهٔ واقعی انجام نمی‌شود؛ نمودارش برای دیدن، تحلیل و آزمون در تستر است و معامله روی نماد اصلی بروکر باز می‌شود. پنجرهٔ ورود داده هم گزینهٔ Shift دارد که ساعت را به اندازهٔ چند ساعت ثابت جابه‌جا می‌کند. ولی جابه‌جایی ثابت فقط بخشی از سال درست است، چون اختلاف سرور با نیویورک دو بار در سال عوض می‌شود. نسخه‌ای که سال را کامل درست نگه می‌دارد، قاعدهٔ تغییر ساعت را در کد خودش دارد.

متاتریدر ۴ نماد سفارشی به این شکل ندارد. آنجا اندیکاتور سطح‌ها و کادرها را روی همان نمودار بروکر می‌کشد.

ساعت نیویورک را در کد چطور حساب کنیم؟

اشتباه رایج این است که اندیکاتور یک اختلاف ثابت بگیرد، مثلاً «ساعت سرور منهای هفت». این عدد سالی دو بار غلط می‌شود و چیزی هم خبر نمی‌دهد. راه درست سه قدم دارد:

  1. ساعت گرینویچ را بگیرد، نه ساعت کامپیوتر را.
  2. قاعدهٔ تابستانی آمریکا را خودش اعمال کند. طبق قانون Energy Policy Act سال ۲۰۰۵، که مؤسسهٔ ملی استاندارد و فناوری آمریکا (NIST) نقل کرده، ساعت تابستانی از ۲ بامداد دومین یکشنبهٔ مارس تا ۲ بامداد اولین یکشنبهٔ نوامبر است. در ۲۰۲۶ از ۸ مارس تا ۱ نوامبر بود.
  3. برای کندل‌های گذشته، ساعت هر کندل را با قاعدهٔ همان تاریخ تبدیل کند، نه با اختلاف امروز.

این دو تابع MQL5 همین قاعده را پیاده می‌کنند و ساعت کلوز نیویورک هر روز را به وقت گرینویچ برمی‌گردانند:

// US daylight saving time (rule since 2007): from the second Sunday of March, 02:00 local (07:00 GMT),
// to the first Sunday of November, 02:00 local daylight time (06:00 GMT).
bool IsUsDst(const datetime gmt)
  {
   MqlDateTime t;
   TimeToStruct(gmt, t);
   if(t.mon < 3 || t.mon > 11)
      return(false);
   if(t.mon > 3 && t.mon < 11)
      return(true);
   MqlDateTime f = t;
   f.day = 1;
   f.hour = 0;
   f.min = 0;
   f.sec = 0;
   datetime first = StructToTime(f);
   MqlDateTime fs;
   TimeToStruct(first, fs);
   int first_sunday = 1 + (7 - fs.day_of_week) % 7;
   if(t.mon == 3)
      return(gmt >= first + (first_sunday + 6) * 86400 + 7 * 3600);
   return(gmt < first + (first_sunday - 1) * 86400 + 6 * 3600);
  }

// New York close (17:00 New York) of the GMT day that contains the given time, as GMT.
datetime NewYorkCloseGmt(const datetime gmt)
  {
   MqlDateTime t;
   TimeToStruct(gmt, t);
   t.hour = 0;
   t.min = 0;
   t.sec = 0;
   datetime close = StructToTime(t) + 21 * 3600;   // 21:00 GMT in summer
   if(!IsUsDst(close))
      close += 3600;                                 // 22:00 GMT in winter
   return(close);
  }

برای کشیدن خط روی نمودار، این ساعت را با اختلاف سرور بروکر با گرینویچ جمع کنید. روی حساب زنده، این اختلاف از تفاوت TimeTradeServer() و TimeGMT() به دست می‌آید.

در تستر این راه کار نمی‌کند. طبق مستندات MQL5، در تستر TimeGMT() همان ساعت شبیه‌سازی‌شدهٔ سرور را برمی‌گرداند. پس اندیکاتوری که روی تاریخچه یا در تستر کار می‌کند، اختلاف سرور و قاعدهٔ تابستانی همان بروکر را باید از ورودی خودش بگیرد. این تله را با جزئیاتش در اکسپرت سشن در متاتریدر نوشته‌ایم.

یک هفتهٔ پرخطا را هم بدانید. اگر سرور بروکر شما ساعت را همراه اروپا عوض می‌کند، نه آمریکا، در فاصلهٔ دو تغییر ساعت کندل روزانه یک ساعت از کلوز نیویورک فاصله می‌گیرد. امسال اروپا ۳ آبان ساعت را برگرداند و آمریکا ۱۰ آبان؛ روی چنین سروری، کندل‌های روزانهٔ آن هفته یک ساعت دیرتر از کلوز نیویورک بسته شدند. ساعت سشن‌ها در همین هفته‌ها را در اندیکاتور سشن‌های معاملاتی آورده‌ایم.

طلا و شاخص‌ها

برای نمادهایی جز جفت‌ارزها، ساعت‌های معامله را در پنجرهٔ مشخصات همان نماد (Specification) ببینید. بعضی نمادها نزدیک کلوز نیویورک وقفهٔ روزانه دارند. اندیکاتور خوب این وقفه را کندل یا روز جدا حساب نمی‌کند و اولین قیمت بعد از وقفه را آغاز روز تازه می‌گیرد.

در سفارش اندیکاتور کلوز نیویورک چه بنویسیم؟

  • متاتریدر ۴ یا ۵، و نام بروکر و سرور. حساب دمو همان بروکر هم کافی است.
  • اختلاف ساعت سرور با گرینویچ در زمستان و تابستان، اگر می‌دانید. اگر نمی‌دانید، نام سرور را بنویسید؛ این عدد از روی خود سرور سنجیدنی است.
  • چه چیزی کشیده شود: خط بسته شدن، سطح‌های روز قبل، نوع پیوت، کادر دامنهٔ روز، یا کندل روزانهٔ نیویورکی در متاتریدر ۵.
  • چند روز به عقب. صد روز روی نمودار با پنج روز فرق دارد، هم در سرعت و هم در شلوغی نمودار.
  • هشدار، اگر لازم است؛ مثلاً وقتی قیمت سقف روز نیویورکی قبل را می‌شکند، با پیام در متاتریدر یا اعلان روی گوشی.
  • اگر بعداً قرار است اکسپرتی روی همین سطح‌ها معامله کند، همین حالا بگویید. اکسپرت فقط عددهایی را می‌خواند که اندیکاتور در بافرهایش بنویسد، نه خط‌هایی را که روی نمودار کشیده است. نسخه‌ای که از اول برای این کار نوشته شود، بعداً راحت به اکسپرت و ربات معامله‌گر تبدیل می‌شود.

سفارش را از صفحهٔ سفارش اندیکاتور و اکسپرت متاتریدر ۴ یا متاتریدر ۵ ثبت کنید.

پرسش‌های رایج

کلوز نیویورک به وقت ایران ساعت چند است؟

در زمستان آمریکا ۱:۳۰ بامداد و در تابستان آمریکا ۰:۳۰ بامداد به وقت تهران. از ۱۰ آبان ۱۴۰۵ تا ۲۳ اسفند ۱۴۰۵، ساعت ۱:۳۰ است.

چرا کندل روزانهٔ من با کندل دوستم که بروکر دیگری دارد فرق دارد؟

چون کندل روزانه با ساعت سرور هر بروکر بسته می‌شود. دو بروکر با دو منطقهٔ زمانی، دو کندل روزانهٔ متفاوت می‌سازند، حتی اگر قیمت‌هایشان یکی باشد.

اندیکاتور کلوز نیویورک روی متاتریدر موبایل کار می‌کند؟

نه. نسخهٔ موبایل متاتریدر اندیکاتور سفارشی اجرا نمی‌کند. ولی اندیکاتوری که روی کامپیوتر یا سرور مجازی باز است، می‌تواند هشدارش را به گوشی بفرستد. توضیح کامل در اندیکاتور و اکسپرت روی متاتریدر موبایل آمده است.

کلوز نیویورک برای ارز دیجیتال هم معنا دارد؟

بازار ارز دیجیتال تعطیل نمی‌شود و پایان روزش قراردادی است؛ هر صرافی کندل روزانه را با ساعت مرجع خودش می‌بندد. اگر ارز دیجیتال را در متاتریدرِ یک بروکر فارکس معامله می‌کنید، کندل روزانه باز هم با ساعت سرور همان بروکر ساخته می‌شود.

منابع: FXCM، زمان رول‌اوور؛ TitanFX، کندل روزانه و ساعت سرور؛ NIST، ساعت تابستانی آمریکا؛ مستندات MQL5 دربارهٔ TimeGMT و CustomRatesUpdate؛ راهنمای متاتریدر ۵ دربارهٔ نمادهای سفارشی.

دیدگاه خود را بنویسید

ارسال دیدگاه

ایمیل شما منتشر نمی‌شود. دیدگاه‌های فینگلیش و نامرتبط تأیید نمی‌شوند.

استراتژی معاملاتی داری؟ ربات خودش را بساز

قوانین ورود و خروج، مدیریت سرمایه و تایم‌فریم را بفرست؛ برآورد زمان و هزینه را می‌گیری و ربات با MQL4 یا MQL5 برایت نوشته می‌شود.

پشتیبانی