ดูอันดับนักแข่งea
เว็บบอร์ดลงโพสฟรี
การแจ้งเตือน
ลบทั้งหมด

MQL4 สร้างสัญญาณ Entry Order จากแนวคิดสภาพคล่อง

1 กระทู้
1 ผู้ใช้
1 Reactions
108 เข้าชม
James Albert
(@james-albert)
สมาชิก
Rank F
เข้าร่วม: 8 เดือน ที่ผ่านมา
กระทู้: 177
หัวข้อเริ่มต้น  

วิดีโอสอนแนวคิดเรื่องสภาพคล่อง (Liquidity) ในตลาดการเงิน และวิธีที่เทรดเดอร์สถาบันขนาดใหญ่ (Smart Money) ใช้ประโยชน์จากสภาพคล่องนี้เพื่อทำกำไร โดยมีประเด็นสำคัญดังนี้:

  • คำจำกัดความของสภาพคล่อง: สภาพคล่องคือปริมาณของคำสั่งซื้อขายที่พร้อมจะจับคู่กันในตลาด [00:27] ตลาดที่มีสภาพคล่องสูงจะช่วยให้สถาบันการเงินขนาดใหญ่สามารถเข้าและออกจากสถานะได้โดยไม่ส่งผลกระทบต่อราคามากนัก
  • Smart Money และสภาพคล่อง: สถาบันการเงินขนาดใหญ่ต้องการสภาพคล่องจำนวนมากในการวางคำสั่งซื้อขายขนาดใหญ่ [01:17] พวกเขามักจะ "ล่า" สภาพคล่องที่อยู่ในรูปแบบของ Stop Loss ของเทรดเดอร์รายย่อย และคำสั่ง Buy/Sell ที่รอการเปิดใช้งาน (Pending Order) ที่ระดับราคาสำคัญต่างๆ
  • รูปแบบการเกิดสภาพคล่อง: สภาพคล่องมักจะสะสมตัวในบริเวณต่อไปนี้:
  • Equal Highs/Lows: ราคาสูงสุด/ต่ำสุดที่เท่ากัน ซึ่งมักจะเกิดจากรูปแบบ Double Top/Bottom [05:41]
  • Swing Highs/Lows: ราคาสูงสุด/ต่ำสุดในแต่ละรอบการเคลื่อนที่ของราคา [07:14]
  • Trend Lines: เส้นแนวโน้มที่เชื่อมจุดสูงสุด/ต่ำสุดของราคา [09:19]
  • Support and Resistance Levels: แนวรับแนวต้านที่เทรดเดอร์ส่วนใหญ่ใช้ในการตัดสินใจซื้อขาย [10:13]
  • Liquidity Sweep: การที่ราคาเคลื่อนที่ผ่านระดับที่มีสภาพคล่องสูงอย่างรวดเร็ว เพื่อกระตุ้นคำสั่งซื้อขายที่รออยู่ ก่อนที่จะกลับตัวในทิศทางเดิม [03:53]
  • การระบุสภาพคล่อง: การฝึกฝนสายตาเพื่อระบุบริเวณที่มีสภาพคล่องสูงเป็นสิ่งสำคัญ เพื่อหลีกเลี่ยงการถูก "ล่า Stop Loss" และเพื่อหาโอกาสในการเข้าเทรดตามรอย Smart Money [03:12]
  • การใช้สภาพคล่องในการเทรด:
  • รอให้เกิด Liquidity Sweep ก่อนที่จะเข้าเทรด [15:41]
  • ใช้สภาพคล่องเป็น Confluence (ปัจจัยสนับสนุน) เพิ่มเติมในการตัดสินใจเทรด โดยพิจารณาร่วมกับ Market Structure และ Supply/Demand Zones [24:42]

โค้ด MQL4 ตัวอย่าง (สำหรับการสร้างสัญญาณ Entry Order):

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

// ตัวแปรสำหรับกำหนดค่า
extern int TakeProfit = 50; // ระยะ Take Profit (จุด)
extern int StopLoss = 25; // ระยะ Stop Loss (จุด)
extern double Risk = 0.01; // ความเสี่ยงต่อการเทรด (เป็นเปอร์เซ็นต์ของ Balance)

// ฟังก์ชันสำหรับตรวจสอบการเกิด Liquidity Sweep (ตัวอย่าง: พิจารณาจากแท่งเทียน)
bool IsLiquiditySweep() {
int i = 0;
double Highest;
double Lowest;

CopyHigh(NULL, 0, iBarShift(NULL, 0, Time[i+2]), 3, Highest);
CopyLow(NULL, 0, iBarShift(NULL, 0, Time[i+2]), 3, Lowest);

if(Highest > Highest && Highest > Highest && Close[i] < Open[i]) return true;
if(Lowest < Lowest && Lowest < Lowest && Close[i] > Open[i]) return true;

return false;
}

// ฟังก์ชัน OnTick() (ทำงานทุกครั้งที่มีการเปลี่ยนแปลงราคา)
void OnTick() {
// ตรวจสอบเงื่อนไขในการเปิดออเดอร์ Buy
if (IsLiquiditySweep() && Close > Open) { // ตัวอย่าง: Liquidity Sweep + แท่งเทียนขาขึ้น

// คำนวณ Lot Size ตามความเสี่ยง
double lotSize = NormalizeDouble(AccountBalance() * Risk / (StopLoss * Point()), 2);

// ส่งคำสั่ง Buy
int ticket = OrderSend(Symbol(), OP_BUY, lotSize, Ask, 3, Ask - StopLoss * Point(), Ask + TakeProfit * Point(), "Buy after Liquidity Sweep", 16384, 0, Green);

if (ticket > 0) {
Print("Buy order placed successfully! Ticket: ", ticket);
} else {
Print("Error placing Buy order: ", GetLastError());
}
}

// ตรวจสอบเงื่อนไขในการเปิดออเดอร์ Sell
if (IsLiquiditySweep() && Close < Open) { // ตัวอย่าง: Liquidity Sweep + แท่งเทียนขาลง

// คำนวณ Lot Size ตามความเสี่ยง
double lotSize = NormalizeDouble(AccountBalance() * Risk / (StopLoss * Point()), 2);

// ส่งคำสั่ง Sell
int ticket = OrderSend(Symbol(), OP_SELL, lotSize, Bid, 3, Bid + StopLoss * Point(), Bid - TakeProfit * Point(), "Sell after Liquidity Sweep", 16384, 0, Red);

if (ticket > 0) {
Print("Sell order placed successfully! Ticket: ", ticket);
} else {
Print("Error placing Sell order: ", GetLastError());
}
}
}

 

คำอธิบายโค้ด:

  • IsLiquiditySweep(): ฟังก์ชันนี้ (ในตัวอย่าง) จะตรวจสอบว่ามีการเกิด Liquidity Sweep หรือไม่ โดยพิจารณาจากรูปแบบแท่งเทียน (คุณสามารถปรับเปลี่ยนเงื่อนไขได้ตามต้องการ)
  • OnTick(): ฟังก์ชันนี้จะทำงานทุกครั้งที่มีการเปลี่ยนแปลงราคา
  • ตรวจสอบว่ามีการเกิด Liquidity Sweep และเงื่อนไขอื่นๆ (เช่น ทิศทางของแท่งเทียน) ตรงตามที่กำหนดหรือไม่
  • คำนวณ Lot Size ที่เหมาะสมตามความเสี่ยงที่กำหนด
  • ส่งคำสั่ง Buy หรือ Sell ไปยัง Server ของ Broker

ข้อควรจำ:

  • โค้ดนี้เป็นเพียงจุดเริ่มต้น คุณจะต้องปรับเปลี่ยนและทดสอบอย่างละเอียดเพื่อให้เหมาะกับกลยุทธ์การเทรดของคุณ
  • การระบุ Liquidity Sweep อาจซับซ้อนกว่าการพิจารณาจากแท่งเทียนเพียงอย่างเดียว คุณอาจต้องใช้ Indicator หรือเครื่องมืออื่นๆ เพิ่มเติม
  • การบริหารความเสี่ยงเป็นสิ่งสำคัญ อย่าเสี่ยงเงินทุนมากเกินไปในการเทรดแต่ละครั้ง

หวังว่าข้อมูลนี้จะเป็นประโยชน์นะครับ!

 


   
PleomXVSC reacted
อ้างอิง

ทิ้งคำตอบไว้

ชื่อผู้แต่ง

อีเมลผู้เขียน

ตำแหน่ง *

You are not allowed to attach files on this forum. It is possible that you have not reached the minimum required number of posts, or your user group does not have permission to attach files in this forum.
 
ดูตัวอย่าง แก้ไข 0 ครั้ง บันทึกแล้ว
แบ่งปัน: