เครื่องมือ MQL5 สำหรับการคำนวณราคากลางของบัญชี Hedge

แนะนำ
โค้ดนี้สร้างขึ้นโดย ChatGPT แต่เราทำการปรับแต่งเล็กน้อยและลงคลิปวิดีโอบน YouTube:
ในการเทรด บัญชี Hedge เป็นที่นิยมมาก โดยสามารถถือสถานะซื้อ (Long) และขาย (Short) ในสินทรัพย์เดียวกันได้พร้อมกัน ปัญหาที่พบได้บ่อยคือการหาค่าราคาเฉลี่ยของสถานะที่เปิดอยู่
บทความนี้นำเสนอ อินดิเคเตอร์ MQL5 ที่จะช่วยคำนวณราคากลางของสถานะที่เปิดอยู่สำหรับ สัญลักษณ์ และ Magic Number ที่กำหนด และแสดงผลลัพธ์บนกราฟ
วิธีการทำงานของอินดิเคเตอร์
อินดิเคเตอร์จะทำตามขั้นตอนดังนี้:
- กรองสถานะทั้งหมด ที่เปิดอยู่ใน MetaTrader 5 โดยเช็ค สินทรัพย์ (symbol) และ Magic Number ที่ผู้ใช้กำหนด
- แยกการซื้อและขาย คำนวณปริมาณและต้นทุนรวมของแต่ละประเภท
- คำนวณราคากลาง แบบถ่วงน้ำหนัก โดยพิจารณาจากปริมาณที่ซื้อและขายทั้งหมด
- แสดงเส้น บนกราฟที่สอดคล้องกับราคากลางของสถานะสุทธิ
คำอธิบายโค้ด
1. การคำนวณราคากลาง
ฟังก์ชัน CalculateHedgeAveragePrice() จะวนลูปผ่านสถานะที่เปิดอยู่ทั้งหมดและ:
- แยก การซื้อ และ การขาย
- คำนวณ ราคากลางแบบถ่วงน้ำหนัก สำหรับแต่ละทิศทาง
- ตรวจสอบว่าสถานะสุทธิเป็น Long หรือ Short
- ส่งกลับราคากลางที่เกี่ยวข้อง
2. การเริ่มต้นอินดิเคเตอร์
ในฟังก์ชัน OnInit() เราจะสร้าง buffer ที่จะใช้เก็บราคากลางเพื่อแสดงบนกราฟ
3. การเติมข้อมูลใน Buffer
ฟังก์ชัน OnCalculate() จะอัปเดต buffer ของอินดิเคเตอร์โดยใช้ ArrayFill() ทำให้โค้ดทำงานได้มีประสิทธิภาพมากขึ้น
วิธีการใช้งานใน MetaTrader 5
- คัดลอกและวางโค้ด ลงในไฟล์ .mq5 ใหม่ภายในโฟลเดอร์ Indicators
- คอมไพล์ ใน MetaEditor
- เพิ่มอินดิเคเตอร์ ลงในกราฟใน MetaTrader 5
- ตั้ง Magic Number ของการเทรดที่ต้องการติดตาม
สรุป
อินดิเคเตอร์ MQL5 นี้เหมาะสำหรับเทรดเดอร์ที่ใช้ บัญชี Hedge ช่วยในการติดตามราคากลางของสถานะที่เปิดอยู่ สามารถปรับแต่งได้สำหรับสินทรัพย์และกลยุทธ์ที่แตกต่างกัน
โพสต์ที่เกี่ยวข้อง
- เครื่องมือ Open Range Breakout สำหรับ MetaTrader 5
- Volume Profile + Range v6.0: เครื่องมือวิเคราะห์การซื้อขายใน MetaTrader 5
- ID Lite Info MA – ตัวช่วยวิเคราะห์ Moving Average สำหรับ MetaTrader 5
- การวิเคราะห์สเปกตรัมเดี่ยว: ตัวชี้วัดแนวโน้มสำหรับ MetaTrader 5
- ตัวชี้วัด DailyHighLow สำหรับ MQL5: เครื่องมือวิเคราะห์ราคาใน MetaTrader 5