การใช้งาน EA_OBJPROP_CHART_ID ใน MetaTrader 5 สำหรับเทรดเดอร์

Mike 2011.06.14 21:41 13 0 0
ไฟล์แนบ

คุณอยากจะเพิ่มวัตถุกราฟ (OBJ_CHART) ลงในกราฟและใช้งานมันเหมือนกราฟธรรมดาหรือไม่? ทำได้เลย!

สิ่งที่คุณต้องการเพียงอย่างเดียวคือ Handle ของวัตถุ OBJ_CHART นั้น โดยใช้ Chart Operations คุณสามารถเพิ่มและลบอินดิเคเตอร์ (ChartIndicatorAdd() และ ChartIndicatorDelete()) ตั้งค่า Period, Symbol ของกราฟได้ตามต้องการ

EA_OBJPROP_CHART_ID

EA_OBJPROP_CHART_ID เป็น Expert Advisor ที่ทำงานดังนี้:

  • เพิ่มอินดิเคเตอร์ PriceChannel ซึ่งรวมอยู่ในแพ็คเกจมาตรฐานของเทอร์มินัลลูกค้า (อยู่ใน terminal_data_folder\MQL5\Indicators\Examples);
  • สร้าง Subwindow โดยใช้อินดิเคเตอร์ Subwindow (คัดลอกไฟล์ Subwindow.mq5 ไปที่ terminal_data_folder\MQL5\Indicators);
  • สร้างวัตถุประเภท OBJ_CHART ใน Subwindow โดยใช้สัญลักษณ์กราฟ แต่เลือก Timeframes D1 และ H4 timeframes;
  • สำหรับวัตถุประเภท OBJ_CHART แต่ละอันจะเพิ่มอินดิเคเตอร์ Price_Channel ด้วยพารามิเตอร์เริ่มต้นและเปลี่ยนสีพื้นหลัง.

เมื่อคุณลบจากกราฟ มันจะลบอินดิเคเตอร์ทั้งหมดที่สร้างขึ้น:

//+------------------------------------------------------------------+
//| ฟังก์ชันการยกเลิกการทำงานของ Expert                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//--- ลบวัตถุ
//  ObjectDelete(0,D1);
//  ObjectDelete(0,H4);
//--- ลบ Subwindow
   ChartIndicatorDelete(0,subwindow_ID,"Subwindow");
//--- ลบอินดิเคเตอร์ PriceChannel จากหน้าหลัก
//--- ชื่อสั้นๆ ของมันคือ "Price Channel(22)"
   ChartIndicatorDelete(0,0,"Price Channel(22)");
  } 
รายการ
ความคิดเห็น 0