วิเคราะห์ EA Basket Manager: ตัวช่วยจัดการพอร์ตแบบ "ยกตะกร้า"
EA (Expert Advisor) ที่ให้มานี้มีชื่อว่า Basket Manager ซึ่งบ่งบอกหน้าที่ของมันอย่างชัดเจน มันไม่ใช่ EA ที่เปิดออเดอร์ซื้อขายด้วยตัวเอง แต่ทำหน้าที่เป็น "ผู้จัดการ" คอยดูแล Position ที่เปิดอยู่ในพอร์ตทั้งหมด และทำการปิดออเดอร์ตามเงื่อนไขที่กำหนดไว้ เหมาะสำหรับเทรดเดอร์ที่เทรดหลายคู่เงินหรือหลายสินค้าพร้อมกัน และต้องการปิดออเดอร์แบบรวบยอดเมื่อพอร์ตโดยรวมเป็นบวก
📈 Concept การทำงาน
หลักการทำงานของ EA ตัวนี้คือการจัดการออเดอร์แบบ "ตะกร้า" (Basket Trading) โดยจะเริ่มทำงานเมื่อจำนวนออเดอร์ในพอร์ตถึงระดับที่กำหนด และจะตัดสินใจปิดออเดอร์โดยดูจาก กำไรโดยรวมของทุก Position ไม่ได้สนใจกำไรของแต่ละตัว
การทำงานหลักๆ แบ่งได้เป็น 2 สถานการณ์ครับ
-
ปิดกำไรรวบยอด (Basket Take Profit)
-
เงื่อนไข: เมื่อจำนวน Position ที่เปิดอยู่ มีจำนวนมากกว่าหรือเท่ากับ ค่า
n
ที่เราตั้งไว้ และ Equity ของพอร์ตสูงกว่า Balance (หมายความว่าพอร์ตโดยรวมกำลังเป็นบวก) -
การทำงาน: EA จะทำการ ปิดทุก Position ที่มีอยู่ในพอร์ตทันที เพื่อเก็บกำไรรวมเข้า Balance นี่คือฟังก์ชันหลักในการทำกำไรแบบยกตะกร้านั่นเอง
-
-
เก็บตัวใหม่-ปิดตัวเก่า (Keep Newest, Close Old)
-
เงื่อนไข: เกิดขึ้นทันทีเมื่อมีการเปิด Position ใหม่ จนทำให้จำนวน Position ทั้งหมดเท่ากับ
n
พอดี และในขณะนั้น Equity ของพอร์ตต้องสูงกว่าหรือเท่ากับ Balance -
การทำงาน: EA จะทำการ ปิดทุก Position ที่เปิดอยู่ก่อนหน้าทั้งหมด ยกเว้น Position ล่าสุดที่เพิ่งเปิดเข้ามาเพียงตัวเดียว วิธีนี้เหมือนเป็นการ "รีเซ็ต" ตะกร้า โดยเก็บกำไรจากตัวเก่าๆ และปล่อยให้ตัวใหม่วิ่งต่อไป
-
⚠️ ข้อควรระวังสำคัญ: โค้ดต้นฉบับที่ให้มามี บั๊ก (Bug) ที่อันตราย ในส่วนของการวนลูปเพื่อปิดออเดอร์ ซึ่งอาจทำให้ EA ทำงานผิดพลาดหรือค้างได้ ควรได้รับการแก้ไขโดยโปรแกรมเมอร์ก่อนนำไปใช้งานจริง
⚙️ วิธีการตั้งค่าพารามิเตอร์
EA ตัวนี้มีพารามิเตอร์ให้ตั้งค่าเพียงตัวเดียวเท่านั้น ทำให้ใช้งานง่ายมาก
-
input int n = 3;
n คือ จำนวน Position ขั้นต่ำที่ EA จะเริ่มตรวจสอบเงื่อนไข เพื่อปิดออเดอร์
ตัวอย่างการตั้งค่า:
-
หากคุณตั้งค่า
n = 5
EA จะยังไม่ทำอะไรเลยถ้าในพอร์ตมี 1, 2, 3, หรือ 4 Positions -
เมื่อมี Position ที่ 5 เปิดขึ้นมา (หรือมี 5 Positions ขึ้นไป) EA จะเริ่มตรวจสอบเงื่อนไขทันทีว่าพอร์ตโดยรวมเป็นบวกหรือไม่ ถ้าใช่ ก็จะดำเนินการปิดออเดอร์ตาม Concept ที่อธิบายไว้ข้างต้น
🌍 สามารถเทรดกับสินค้าอะไรได้บ้าง?
EA ตัวนี้ทำงานโดยการดึงข้อมูลภาพรวมของบัญชี เช่น PositionsTotal()
, AccountEquity()
, และ AccountBalance()
ซึ่งเป็นข้อมูลที่ไม่ขึ้นอยู่กับสัญลักษณ์ (Symbol) หรือกราฟที่ EA ติดตั้งอยู่
ดังนั้น EA ตัวนี้สามารถทำงานได้กับทุกสินค้า ที่โบรกเกอร์ของคุณมีให้เทรด ไม่ว่าจะเป็น:
-
Forex: EURUSD, GBPJPY, USDCHF ฯลฯ
-
โลหะมีค่า: XAUUSD (ทองคำ), XAGUSD (เงิน)
-
ดัชนี: US30, NAS100
-
น้ำมัน: WTI, BRENT
-
คริปโตเคอร์เรนซี: BTCUSD, ETHUSD
คุณสามารถเปิด EA นี้ไว้บนกราฟใดก็ได้เพียง กราฟเดียว (เช่น เปิดบน EURUSD M5) แล้วมันจะคอยบริหารจัดการ Position ทั้งหมดในบัญชีของคุณ ไม่ว่าคุณจะเทรดกี่สินค้าก็ตาม
⏰ Time Frame ที่เหมาะสม
เนื่องจาก Logic การทำงานของ EA ใช้คำสั่ง OnTick()
(ทำงานทุกครั้งที่ราคาขยับ) และ OnTradeTransaction()
(ทำงานทุกครั้งที่มีการทำธุรกรรมในบัญชี) ซึ่งไม่เกี่ยวข้องกับแท่งเทียนบนกราฟ
ดังนั้น Time Frame ไม่มีผลต่อการทำงานของ EA ตัวนี้ ✅
คุณสามารถวาง EA ไว้บน Time Frame ใดก็ได้ ตั้งแต่ M1 ไปจนถึง MN โดยที่ประสิทธิภาพการทำงานของมันจะไม่เปลี่ยนแปลง
สรุป
สามารถ Download EA MQL5 File ได้ที่ :
https://www.mql5.com/en/code/download/59651/basket_manager_ea.mq5
ทิ้งคำตอบไว้
- 44 ฟอรัม
- 3,148 หัวข้อ
- 9,484 กระทู้
- 74 ออนไลน์
- 4,165 สมาชิก