คำอธิบาย
🚀 TradeCopierBot — การคัดลอกการเทรดที่รวดเร็ว สะอาด และป้องกันโบรกเกอร์ (Local/VPS) 🔁✨
คัดลอกการเทรดของคุณจากบัญชี MASTER ไปยังบัญชี SLAVE หนึ่งบัญชีหรือมากกว่านั้น ด้วยโปรแกรมคัดลอกน้ำหนักเบาที่ขับเคลื่อนด้วยเหตุการณ์ ออกแบบมาสำหรับสภาพการเทรดจริง: โบรกเกอร์ต่างกัน ชื่อสัญลักษณ์ต่างกัน กฎล็อตต่างกัน.
เหมาะสำหรับ การดำเนินการหลายบัญชี, การปรับขนาดความเสี่ยง, และ การแจกจ่ายกลยุทธ์—พร้อมบันทึกดีบักอย่างละเอียดเพื่อให้คุณทราบเสมอว่าเกิดอะไรขึ้น 🧠📈
✅ ปรับแต่งสำหรับ Local / VPS (เครื่องเดียวกัน)
❌ ไม่ได้ออกแบบมาสำหรับ cTrader Cloud (อินสแตนซ์แยกกัน จึงไม่สามารถแชร์สัญญาณได้) ☁️🚫
โปรดทราบ: หากคุณมีบัญชี cTrader สองบัญชีที่แตกต่างกัน คุณต้องซื้อ cBots สองตัว มิฉะนั้นคุณจะไม่สามารถคัดลอกได้ เรายินดีให้ข้อมูลเพิ่มเติมทุกเมื่อ
🧠 วิธีการทำงาน (MASTER → SLAVE) 🧩
🔁 1) การส่งสัญญาณ (วิธีที่การเทรด “เดินทาง”)
โปรแกรมคัดลอกนี้ใช้ cTrader LocalStorage (ขอบเขตอุปกรณ์) เป็น “บัสข้อความ” ร่วมกัน
✅ MASTER
- ฟังเหตุการณ์ตำแหน่ง: เปิด / แก้ไข / ปิด
- สร้าง
TradeSignal(เปิด / แก้ไข / ปิด) - แนบไปยัง รายการสัญญาณ ใน LocalStorageScope .Device
- เรียกใช้ Flush() เพื่อให้ SLAVE อ่านได้ทันที
✅ SLAVE
- รัน Timer ทุก Poll Interval วินาที
- เรียกใช้ Reload()
- อ่านรายการสัญญาณ
- ประมวลผลเฉพาะ สัญญาณใหม่ (โดยใช้
_lastSignalIndexProcessed)
🧷 2) การจับคู่ตำแหน่ง (เพื่อให้ CLOSE ทำงานได้)
เมื่อ SLAVE เปิดการเทรด จะเก็บ:
🧩 MasterPositionId → SlavePositionId
การจับคู่นี้ยังถูกบันทึกใน LocalStorage เพื่อให้ยังคงอยู่หลังรีสตาร์ท:
- ✅ CLOSE ยังทำงานได้หลังรีบูต
- ✅ MODIFY ยังหาตำแหน่งที่ถูกต้องได้
🧭 3) การแปลสัญลักษณ์ (สัญลักษณ์ MASTER → สัญลักษณ์ SLAVE)
🗺️ แผนที่สัญลักษณ์ (MASTER=SLAVE;...)
ใช้เมื่อชื่อสัญลักษณ์แตกต่างกันระหว่างโบรกเกอร์/บัญชี
รูปแบบ:
MASTER=SLAVE;MASTER2=SLAVE2;...
ตัวอย่าง (กรณีของคุณ):
- MASTER เปิด
USTEC - SLAVE ต้องเทรด
US100
➡️ USTEC=US100
✅ ด้านซ้าย = สัญลักษณ์ที่มาจาก MASTER
✅ ด้านขวา = สัญลักษณ์บนโบรกเกอร์ SLAVE
📏 4) ตรรกะปริมาณ (ส่วนสำคัญ) 🔥
✅ ทำงานในล็อต/จำนวน (รองรับทศนิยม)
เพื่อจัดการทศนิยม (0.10, 0.01, ฯลฯ) SLAVE:
- คำนวณ ล็อตที่ต้องการ
- ใช้ ตัวคูณ / ขั้นต่ำ / ขั้นตอน
- แปลง ล็อต → ปริมาณ โดยใช้
QuantityToVolumeInUnits(lots) - ส่งคำสั่งโดยใช้โอเวอร์โหลดที่รับ ปริมาณแบบ double ✅
นี่คือสิ่งที่ทำให้มันแข็งแกร่งแม้เมื่อโบรกเกอร์บังคับใช้กฎความแม่นยำล็อตที่แตกต่างกัน
⚙️ อธิบายพารามิเตอร์ (พร้อมไอคอน)
🧩 แกนหลัก
- 🧭 โหมด
-
Master= เผยแพร่สัญญาณSlave= อ่านสัญญาณและคัดลอกการเทรด
- 🧷 รหัสกลุ่มคัดลอก
-
- ช่องทางการสื่อสาร MASTER และ SLAVE ต้องตรงกัน (เช่น
DEFAULT)
- ช่องทางการสื่อสาร MASTER และ SLAVE ต้องตรงกัน (เช่น
- ⏱️ ช่วงเวลาการตรวจสอบ (วินาที)
-
- SLAVE ตรวจสอบสัญญาณใหม่ทุก N วินาที
- 🐞 โหมดดีบัก
-
- พิมพ์บันทึกรายละเอียด (แนะนำในช่วงตั้งค่า)
🗺️ การแปลสัญลักษณ์
- 🧾 แผนที่สัญลักษณ์ (MASTER=SLAVE;...)
-
- ตัวอย่าง:
USTEC=US100;XAUUSD=GOLD;NAS100=USTEC
- ตัวอย่าง:
🎚️ การปรับขนาดปริมาณ (สำคัญที่สุด) ✅
🔢 ตัวคูณทั่วโลก
- ➗ ตัวคูณปริมาณ
-
- ปรับขนาดล็อตที่คัดลอกทั้งหมด:
desiredLots = masterLots * VolumeMultiplier
🎛️ ตัวคูณต่อสัญลักษณ์ (เครื่องมือหลักของคุณ)
- 🧷 แผนที่ตัวคูณปริมาณ (SYM=mult;...)
-
- แทนที่ตัวคูณต่อสัญลักษณ์ (สัญลักษณ์ฝั่ง SLAVE)
- ตัวอย่าง:
-
US100= 0. 10- รูปแบบอิตาเลียนก็ใช้ได้:
US100=0,10
✅ นี่คือวิธีที่คุณทำให้ได้: 1.00 บน MASTER → 0.10 บน SLAVE
🧱 ข้อจำกัดล็อตโบรกเกอร์ (ขั้นต่ำและขั้นตอน)
- 🧱 ค่าต่ำสุดเริ่มต้น (0=ปิด)
-
- ล็อตขั้นต่ำทั่วโลกถ้าเปิดใช้งาน
- 🧱 แผนที่ค่าต่ำสุด (SYM=val;...)
-
- ล็อตขั้นต่ำต่อสัญลักษณ์
- ตัวอย่าง:
US100=0. 10
- 🪜 ค่าขั้นตอนเริ่มต้น (0=ปิด)
-
- ขั้นตอนทั่วโลกถ้าเปิดใช้งาน
- 🪜 แผนที่ค่าขั้นตอน (SYM=val;...)
-
- ขั้นตอนต่อสัญลักษณ์
- ตัวอย่าง:
US100=0. 10→ ค่าที่อนุญาต: 0.10, 0.20, 0.30…
🧯 พฤติกรรมความปลอดภัย
- 🧷 ใช้ Min Qty เป็นล็อตคงที่
-
- ถ้า
true: SLAVE จะไม่สนใจขนาดของ master และใช้ MinQty เสมอ (ขนาดคงที่)
- ถ้า
- ⚠️ พฤติกรรม BelowMin
-
UseMin= ถ้าต่ำกว่าขั้นต่ำ → ปรับเป็นขั้นต่ำSkip= ถ้าต่ำกว่าขั้นต่ำ → ไม่เปิด
- 🔁 ความพยายาม BadVolume
-
- ถ้าโบรกเกอร์ส่งคืน BadVolume จะพยายามปรับเล็กน้อยสูงสุด N ครั้ง
🎯 ตรรกะการคัดลอก SL/TP
- 🛡️ คัดลอก SL/TP เป็นระยะทางเมื่อสัญลักษณ์ต่างกัน
-
- ถ้าสัญลักษณ์ MASTER และ SLAVE ต่างกัน:
- SL/TP ถูกคัดลอกเป็น ระยะทางจากจุดเข้า ไม่ใช่ราคาสัมบูรณ์
- สิ่งนี้ช่วยให้การควบคุมความเสี่ยงสอดคล้องกันในเครื่องมือทั้งหมด
✅ การตั้งค่าที่แนะนำ (USTEC → US100, ล็อต SLAVE = 0.10)
บน SLAVE:
🗺️ การแปลสัญลักษณ์:
Symbol Map=USTEC=US100
🎛️ การปรับขนาดปริมาณ:
Volume Multiplier Map=US100=0,10
🧱 ข้อจำกัดโบรกเกอร์:
Min Qty Map=US100=0,10Qty Step Map=US100=0,10
ผลลัพธ์:
- ✅ MASTER 1.00 → SLAVE 0.10 บน US100
☁️ สำคัญ: ใช้ได้เฉพาะ Local/VPS เท่านั้น (ไม่รองรับ Cloud) ❌
🖥️ Local/VPS ✅
ทำงานได้เพราะ MASTER และ SLAVE ใช้ LocalStorageScope .Device เดียวกัน (เครื่อง/สภาพแวดล้อมเดียวกัน)
☁️ cTrader Cloud ❌
ไม่ทำงานเพราะอินสแตนซ์ Cloud ถูก แยกออก จึงไม่แชร์ LocalStorage และ SLAVE ไม่สามารถเห็นสัญญาณ MASTER ได้
✅ สรุป:
- ✔️ ใช้บนพีซีเดียวกันหรือ VPS ที่รันอินสแตนซ์ทั้งสองพร้อมกัน
- ❌ สำหรับ Cloud ต้องใช้รีเลย์ภายนอก (เซิร์ฟเวอร์ HTTP/WebSocket)
สรุป
Key features include:
- Position mapping to maintain correct trade management across restarts.
- Symbol translation via customizable symbol maps to handle differing broker symbol names.
- Volume scaling with global and per-symbol multipliers, supporting decimal lot sizes and broker-specific minimum quantity and step constraints.
- Safety behaviors such as fixed lot sizing and handling of trades below minimum lot sizes.
- Stop loss and take profit copying as distance from entry price when symbols differ, preserving consistent risk control.
Parameters include mode selection (MASTER or SLAVE), communication group ID, polling interval, debug mode, symbol maps, volume multipliers, and broker lot constraints. The bot is not compatible with cTrader Cloud due to isolated instances but functions reliably on local or VPS setups where MASTER and SLAVE share the same environment.
รีวิวจากลูกค้า
5 | 67 % | |
4 | 0 % | |
3 | 33 % | |
2 | 0 % | |
1 | 0 % |