All posts

ประเภทคำสั่ง Market, Limit และ Stop ต่างกันอย่างไร

คำสั่งในแพลตฟอร์มเทรดมีหลายประเภท และแต่ละประเภทตอบคำถามคนละข้อ คำสั่งตลาดตอบว่าเอาเดี๋ยวนี้ที่ราคาไหนก็ได้ ส่วนคำสั่งรอตอบว่าเอาที่ราคานี้เท่านั้น ถ้าไม่ถึงก็ไม่เอา ความเข้าใจผิดที่พบบ่อยคือสับสนระหว่าง Limit กับ Stop

ตัวเลขเป็นตัวอย่างเพื่อประกอบบทความ · ตรวจเงื่อนไขของโบรกเกอร์ก่อนเทรดจริง

สรุปสาระสำคัญ

  • Market — ได้แน่แต่ไม่รู้ราคาแน่ เพราะราคาอาจขยับก่อนคำสั่งไปถึง
  • Limit — ตั้งไว้ที่ราคาที่ดีกว่าปัจจุบัน รอให้ราคาวิ่งมาหา
  • Stop — ตั้งไว้ที่ราคาที่แย่กว่าปัจจุบัน ใช้เมื่อต้องการเข้าตามทิศที่ราคาไปแล้ว
  • Stop Limit — เมื่อถูกกระตุ้นจะกลายเป็นคำสั่ง Limit ไม่ใช่ Market
  • คำสั่งรอทุกชนิดไม่รับประกันว่าจะได้ราคาตามที่ตั้งไว้เสมอไป

ตำแหน่งของแต่ละคำสั่งเทียบกับราคาปัจจุบัน

วิธีจำที่ง่ายที่สุดคือดูว่าคำสั่งนั้นวางไว้ฝั่งไหนของราคาปัจจุบัน Limit อยู่ฝั่งที่ให้ราคาดีกว่า ส่วน Stop อยู่ฝั่งที่ให้ราคาแย่กว่า และเปลี่ยนข้างไปมาตามว่าเป็นคำสั่งซื้อหรือขาย

แผนภาพแสดงตำแหน่งของคำสั่ง Buy Limit, Buy Stop, Sell Limit และ Sell Stop เทียบกับราคาปัจจุบัน

เมื่อเห็นเป็นภาพแล้ว จะสังเกตได้ว่า Buy Limit กับ Sell Stop อยู่ใต้ราคาปัจจุบันทั้งคู่ และ Sell Limit กับ Buy Stop อยู่เหนือราคาปัจจุบันทั้งคู่ นี่คือจุดที่คนตั้งคำสั่งผิดประเภทบ่อยที่สุด

Market ได้แน่ แต่ไม่รู้ราคาแน่

คำสั่งตลาดสั่งว่าให้จับคู่ทันทีที่ราคาที่มีอยู่ ข้อดีคือได้เข้าแน่นอน ข้อเสียคือราคาที่ได้อาจต่างจากที่เห็นบนหน้าจอ เพราะระหว่างที่คำสั่งเดินทางไปถึงเซิร์ฟเวอร์ ราคาอาจเปลี่ยนไปแล้ว

ส่วนต่างนี้เรียกว่า Slippage และจะกว้างที่สุดในช่วงที่ตลาดเคลื่อนเร็ว ซึ่งมักเป็นช่วงเดียวกับที่ระบบต้องการเข้ามากที่สุดพอดี เรื่องเวลาเดินทางของคำสั่งอธิบายไว้ในบทความ VPS สำหรับรัน MT5

คำสั่งรอไม่ได้รับประกันราคา

คนจำนวนมากคิดว่าตั้ง Limit ไว้แล้วจะได้ราคานั้นแน่นอน ความจริงคือ Buy Limit รับประกันว่าจะไม่ได้ราคาที่แย่กว่าที่ตั้งไว้ แต่ถ้าราคากระโดดข้ามไป ก็อาจไม่ได้เข้าเลย ส่วน Buy Stop เมื่อถูกกระตุ้นจะกลายเป็นคำสั่งตลาด จึงเจอ Slippage ได้เต็มที่

ในสถานการณ์ที่ราคากระโดด เช่นตอนเปิดตลาดหลังวันหยุด คำสั่ง Stop อาจถูกจับคู่ที่ราคาที่ห่างจากจุดที่ตั้งไว้มาก ซึ่งเป็นเหตุผลที่การคำนวณความเสี่ยงควรเผื่อกรณีนี้ไว้ด้วย

Stop Loss และ Take Profit

ทั้งสองอย่างเป็นคำสั่งที่ผูกกับสถานะที่เปิดอยู่ Stop Loss ทำงานเหมือนคำสั่ง Stop คือเมื่อถูกกระตุ้นจะกลายเป็นคำสั่งตลาด ส่วน Take Profit ทำงานเหมือน Limit คือรอให้ราคามาถึงเท่านั้น

ความต่างนี้มีผลจริงในทางปฏิบัติ คือ Stop Loss อาจถูกปิดที่ราคาแย่กว่าที่ตั้งไว้ได้ ในขณะที่ Take Profit จะไม่ถูกปิดที่ราคาแย่กว่า แต่มีโอกาสไม่ถูกจับคู่เลยถ้าราคาแตะแล้วเด้งกลับทันที

ถ้าจะสั่งจากระบบอัตโนมัติ

  • กำหนด Slippage ที่ยอมรับได้ — และตัดสินใจล่วงหน้าว่าถ้าเกินแล้วจะทำอย่างไร
  • จัดการกรณีคำสั่งถูกปฏิเสธ — ลองใหม่ หยุด หรือแจ้งเตือน ต้องเลือกไว้ก่อน
  • รองรับการเติมเพียงบางส่วน — ขนาดที่ได้จริงอาจน้อยกว่าที่สั่ง
  • ตรวจว่าคำสั่งรอยังอยู่จริง — คำสั่งอาจถูกยกเลิกโดยเงื่อนไขของโบรกเกอร์

อายุของคำสั่งรอ

คำสั่งรอไม่ได้อยู่ตลอดไปเสมอ แพลตฟอร์มให้กำหนดได้ว่าจะให้คำสั่งมีอายุถึงเมื่อไร ซึ่งเป็นรายละเอียดที่มีผลจริงกับระบบอัตโนมัติที่วางคำสั่งไว้ล่วงหน้าหลายระดับ

  • จนกว่าจะยกเลิก — อยู่จนกว่าจะถูกจับคู่หรือถูกลบ เหมาะกับระดับที่วางไว้ระยะยาว
  • หมดอายุสิ้นวัน — ถูกลบอัตโนมัติเมื่อจบวันเทรด ต้องมีตรรกะวางใหม่
  • กำหนดเวลาหมดอายุเอง — ใช้เมื่อสัญญาณมีอายุจำกัดตามเงื่อนไขของระบบ

สิ่งที่ระบบต้องทำคือตรวจสถานะของคำสั่งที่วางไว้เป็นระยะ ไม่ใช่สมมติว่ามันยังอยู่ เพราะคำสั่งอาจหายไปจากการหมดอายุ จากการที่โบรกเกอร์ลบ หรือจากการที่การเชื่อมต่อขาดตอนวาง ซึ่งทั้งสามกรณีทำให้ระบบเข้าใจสถานะจริงผิดไป

สรุป

การเลือกประเภทคำสั่งคือการเลือกว่าจะยอมแลกอะไร ระหว่างความแน่นอนที่จะได้เข้า กับความแน่นอนของราคาที่จะได้ ไม่มีประเภทไหนให้ทั้งสองอย่างพร้อมกัน สิ่งที่ทำได้คือรู้ว่าแต่ละแบบให้อะไรและไม่ให้อะไร แล้วเลือกให้ตรงกับสิ่งที่ระบบต้องการจริง

Discussion