Skip to content

Latest commit

 

History

History
156 lines (116 loc) · 9 KB

File metadata and controls

156 lines (116 loc) · 9 KB

راهنمای تایم‌فریم و بک‌تست

📊 نحوه کار با تایم‌فریم‌ها در سیستم

سیستم به صورت هوشمند تایم‌فریم استراتژی شما را تشخیص داده و بر اساس نوع آن (استاندارد یا غیرمتداول) روش مناسب دریافت داده را انتخاب می‌کند.

🔍 استخراج تایم‌فریم از استراتژی

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

  • فرمت‌های استاندارد: M1, M5, M15, M30, H1, H4, D1
  • فرمت‌های عددی: 77 دقیقه, 77 minute, 77m, 15 دقیقه, 1 ساعت
  • فرمت‌های متنی: تایم فریم 77 دقیقه, timeframe: 77m

✅ تایم‌فریم‌های استاندارد MetaTrader 5

تایم‌فریم‌های استاندارد MT5 عبارتند از:

  • M1: 1 دقیقه
  • M5: 5 دقیقه
  • M15: 15 دقیقه
  • M30: 30 دقیقه
  • H1: 1 ساعت
  • H4: 4 ساعت
  • D1: 1 روز

نحوه استفاده: برای تایم‌فریم‌های استاندارد، سیستم مستقیماً از MetaTrader 5 کندل‌های مربوطه را دریافت می‌کند. این روش سریع‌تر و کارآمدتر است.

مثال:

استراتژی شما: "تایم فریم M15"
→ سیستم مستقیماً کندل‌های M15 را از MT5 دریافت می‌کند

🔄 تایم‌فریم‌های غیرمتداول (Custom Timeframes)

تایم‌فریم‌های غیرمتداول تایم‌فریم‌هایی هستند که در MetaTrader 5 به صورت پیش‌فرض وجود ندارند، مانند:

  • 77 دقیقه
  • 45 دقیقه
  • 90 دقیقه
  • 120 دقیقه
  • و هر تایم‌فریم دیگری که استاندارد نباشد

نحوه استفاده: برای تایم‌فریم‌های غیرمتداول، سیستم به صورت خودکار:

  1. کندل‌های 1 دقیقه‌ای (M1) را از MetaTrader 5 دریافت می‌کند
  2. آن‌ها را به تایم‌فریم موردنظر شما تجمیع می‌کند
  3. داده‌های تجمیع شده را برای بک‌تست استفاده می‌کند

مثال:

استراتژی شما: "تایم فریم 77 دقیقه"
→ سیستم کندل‌های M1 را دریافت می‌کند
→ کندل‌های M1 را به کندل‌های 77 دقیقه‌ای تجمیع می‌کند
→ از کندل‌های تجمیع شده برای بک‌تست استفاده می‌کند

🎯 چرا این روش مهم است؟

  1. دقت بالا: تجمیع از M1 دقت بک‌تست را برای تایم‌فریم‌های غیرمتداول تضمین می‌کند
  2. انعطاف‌پذیری: می‌توانید هر تایم‌فریم دلخواهی را استفاده کنید
  3. سازگاری: سیستم به صورت خودکار نوع تایم‌فریم را تشخیص می‌دهد

📋 نحوه مشاهده اطلاعات تایم‌فریم در نتایج بک‌تست

پس از اجرای بک‌تست، در بخش "منابع داده استفاده شده" می‌توانید اطلاعات زیر را مشاهده کنید:

برای تایم‌فریم‌های استاندارد:

• تایم‌فریم استراتژی: M15 (15 دقیقه)
  ✅ تایم‌فریم استاندارد MT5 - استفاده مستقیم از M15

برای تایم‌فریم‌های غیرمتداول:

• تایم‌فریم استراتژی: 77m (77 دقیقه)
  🔄 تایم‌فریم غیرمتداول - از کندل‌های M1 تجمیع شده است
  ℹ️ توضیح: برای تایم‌فریم‌های غیرمتداول (مثل 77m)، سیستم از کندل‌های 
    1 دقیقه‌ای (M1) استفاده می‌کند و آن‌ها را به تایم‌فریم موردنظر تجمیع 
    می‌کند. این روش دقت بک‌تست را برای تایم‌فریم‌های غیراستاندارد تضمین می‌کند.

🔧 جزئیات فنی

تشخیص نوع تایم‌فریم

سیستم از تابع is_standard_mt5_timeframe() استفاده می‌کند تا تشخیص دهد آیا تایم‌فریم استاندارد است یا نه:

# تایم‌فریم‌های استاندارد
STANDARD_MT5_TIMEFRAMES = {'M1', 'M5', 'M15', 'M30', 'H1', 'H4', 'D1'}

تجمیع کندل‌ها

برای تایم‌فریم‌های غیرمتداول، سیستم از تابع fetch_mt5_candles_aggregated() استفاده می‌کند:

  1. تعداد کندل‌های M1 موردنیاز را محاسبه می‌کند
  2. کندل‌های M1 را از MT5 دریافت می‌کند
  3. با استفاده از aggregate_m1_candles_to_timeframe() آن‌ها را تجمیع می‌کند
  4. کندل‌های تجمیع شده را برای بک‌تست برمی‌گرداند

📝 نکات مهم

  1. همیشه تایم‌فریم را در استراتژی مشخص کنید: اگر تایم‌فریم را در استراتژی مشخص نکنید، سیستم از تایم‌فریم پیش‌فرض استفاده می‌کند.

  2. فرمت‌های پشتیبانی شده: سیستم می‌تواند تایم‌فریم را در فرمت‌های مختلف تشخیص دهد:

    • 77 دقیقه
    • 77 minute
    • 77m
    • تایم فریم 77 دقیقه
    • timeframe: 77m
  3. دقت بک‌تست: برای تایم‌فریم‌های غیرمتداول، سیستم همیشه از کندل‌های M1 استفاده می‌کند تا دقت بک‌تست را تضمین کند.

  4. کارایی: برای تایم‌فریم‌های استاندارد، سیستم مستقیماً از MT5 استفاده می‌کند که سریع‌تر است.

🎓 مثال‌های کاربردی

مثال 1: تایم‌فریم استاندارد

متن استراتژی: "استراتژی معاملاتی بر روی تایم فریم M15"
→ سیستم: کندل‌های M15 را مستقیماً از MT5 دریافت می‌کند
→ نتیجه: بک‌تست سریع و دقیق

مثال 2: تایم‌فریم غیرمتداول

متن استراتژی: "استراتژی معاملاتی بر روی تایم فریم 77 دقیقه"
→ سیستم: کندل‌های M1 را از MT5 دریافت می‌کند
→ سیستم: کندل‌های M1 را به کندل‌های 77 دقیقه‌ای تجمیع می‌کند
→ نتیجه: بک‌تست دقیق با تایم‌فریم دلخواه

مثال 3: تایم‌فریم در فرمت مختلف

متن استراتژی: "timeframe: 45m"
→ سیستم: تشخیص می‌دهد که 45 دقیقه غیرمتداول است
→ سیستم: از M1 استفاده می‌کند و تجمیع می‌کند
→ نتیجه: بک‌تست با تایم‌فریم 45 دقیقه

❓ سوالات متداول

سوال: آیا می‌توانم تایم‌فریم‌های غیرمتداول استفاده کنم؟ پاسخ: بله! سیستم به صورت خودکار تایم‌فریم‌های غیرمتداول را از کندل‌های M1 تجمیع می‌کند.

سوال: آیا استفاده از تایم‌فریم‌های غیرمتداول بر دقت بک‌تست تأثیر می‌گذارد؟ پاسخ: خیر! سیستم همیشه از کندل‌های M1 استفاده می‌کند و آن‌ها را به تایم‌فریم موردنظر تجمیع می‌کند، بنابراین دقت بک‌تست حفظ می‌شود.

سوال: چگونه می‌توانم بفهمم تایم‌فریم من استاندارد است یا غیرمتداول؟ پاسخ: پس از اجرای بک‌تست، در بخش "منابع داده استفاده شده" می‌توانید نوع تایم‌فریم را مشاهده کنید.

سوال: آیا می‌توانم تایم‌فریم را بعد از آپلود استراتژی تغییر دهم؟ پاسخ: خیر، تایم‌فریم از متن استراتژی استخراج می‌شود. اگر می‌خواهید تایم‌فریم را تغییر دهید، باید استراتژی را دوباره آپلود کنید.

📚 منابع بیشتر

  • برای اطلاعات بیشتر درباره MetaTrader 5، به مستندات MT5 مراجعه کنید.
  • برای اطلاعات بیشتر درباره بک‌تست، به راهنمای بک‌تست مراجعه کنید.