Grid cBot¶
ภาพรวมกลยุทธ์ ¶
Grid cBot ดำเนินกลยุทธ์การเทรดแบบ Grid โดยการวางคำสั่งซื้อหรือขายหลายรายการสำหรับสัญลักษณ์หนึ่งๆ ที่ช่วงราคาปกติหรือ "ขั้นตอน" เพื่อสร้าง "กริด" ของโพสิชัน เมื่อราคาของสัญลักษณ์เปลี่ยนแปลง โพสิชันใหม่จะถูกเปิดอย่างต่อเนื่องเพื่อใช้ประโยชน์จากการเปลี่ยนแปลงของราคา
Grid cBot ใช้การคำนวณทางคณิตศาสตร์พื้นฐานและการตรวจสอบเชิงตรรกะเพื่อเปิดโพสิชัน คำนวณกำไรและจัดการการดำเนินการเทรด กลยุทธ์นี้มีประสิทธิภาพสูงสุดในตลาดที่เคลื่อนไหวในกรอบหรือตลาดที่เคลื่อนไหวด้านข้าง นอกจากนี้ยังทำงานได้ดีในสภาวะที่มีความผันผวนต่ำและตลาดที่มีระดับแนวรับและแนวต้านที่รู้จัก
การสร้าง cBot ¶
เรียนรู้วิธี สร้าง cBot โดยใช้ C# หรือ Python ใน คู่มือ ขั้นตอนต่อขั้นตอนของเรา
โค้ด Grid cBot มีอยู่ในที่เก็บสาธารณะของเราใน C# และ Python โค้ดเดียวกันนี้ถูกจัดเตรียมเป็นเทมเพลตใน วิซาร์ดการสร้างอัลกอริทึม ใน cTrader Windows หรือ Mac หรือคุณสามารถคัดลอกและใช้ตัวอย่างโค้ดด้านล่างได้:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | |
การรวมอินดิเคเตอร์ ¶
Grid cBot ไม่ได้พึ่งพา Indicator ใดๆ เพื่อกำหนดกลยุทธ์ Grid ของมัน มันไม่ได้พยายามทำนายว่าคราคาของสัญลักษณ์จะขึ้นหรือลง แต่กลับมุ่งเป้าไปที่การเทรดที่ทำกำไรจากการเคลื่อนไหวของราคาในทุกทิศทาง
cBot จะดำเนินการเทรดตามกฎง่ายๆ ดังนี้: หากราคาของสัญลักษณ์เคลื่อนไหวเกินจำนวน pips ที่กำหนด (กำหนดโดยพารามิเตอร์ StepPips) cBot จะเปิดโพสิชันใหม่
การคำนวณและตรรกะ ¶
การดำเนินการคำสั่งซื้อขายเริ่มต้น ¶
เมื่อ cBot เริ่มต้น มันจะตรวจสอบว่ามีโพสิชันที่เปิดอยู่ใน Grid หรือไม่ หากไม่มีโพสิชันที่เปิดอยู่ cBot จะเปิดโพสิชันแรกทันทีผ่านเมธอด OpenPosition() ขั้นตอนแรกนี้ทำให้มั่นใจว่า Grid จะเริ่มต้นด้วยการเทรดเริ่มต้นตามด้านการเทรดที่ระบุ (TradeType)
การติดตามกำไร ¶
ในแต่ละ Tick (เช่น การอัปเดตราคาแต่ละครั้ง) cBot จะตรวจสอบว่ากำไรสุทธิสะสมของโพสิชัน Grid ที่เปิดอยู่ทั้งหมดตรงหรือเกินกำไรเป้าหมายที่กำหนด (TargetProfit) หรือไม่ หากกำไรเป้าหมายถูกบรรลุถึง โพสิชันที่เปิดอยู่ทั้งหมดจะถูกปิด และ cBot จะหยุดทำงาน
กำไรเป้าหมายคือผลรวมของกำไรสุทธิจากแต่ละโพสิชันใน Grid
\(n\) – จำนวนโพสิชันที่เปิดอยู่ใน Grid
\(\text{NetProfit}(p_i)\) – กำไรสุทธิของโพสิชัน \(i\)
การเปิดโพสิชัน ¶
หากยังไม่ถึงเป้าหมายกำไรและมีโพสิชันที่เปิดอยู่ cBot จะคำนวณระยะทาง (เป็น pip) ระหว่างโพสิชันกริดที่เปิดล่าสุดและราคาตลาดปัจจุบัน
สำหรับโพสิชัน Long:
สำหรับโพสิชัน Short:
\(D_b\) – ระยะทางเป็น pip ระหว่างราคาเข้าและราคา Ask ปัจจุบัน
\(D_s\) – ระยะทางเป็น pip ระหว่างราคา Bid ปัจจุบันและราคาเข้า
\(P_e\) – ราคาที่โพสิชัน Long ล่าสุดสำหรับสัญลักษณ์ถูกเปิด
\(P_a\) – ราคา Ask ปัจจุบันสำหรับสัญลักษณ์
\(P_b\) – ราคา Bid ปัจจุบันสำหรับสัญลักษณ์
\(S\) – มูลค่าของหนึ่ง pip สำหรับสัญลักษณ์
หากระยะทางที่คำนวณได้มากกว่าหรือเท่ากับขนาดขั้นที่กำหนด (StepPips) โพสิชันใหม่จะถูกเปิดโดยใช้เมธอด OpenPosition()
ทุกครั้งก่อนที่จะเปิดโพสิชันใหม่ cBot จะตรวจสอบและยืนยันว่ามีเงินทุนเพียงพอสำหรับการดำเนินการ หากเงินทุนไม่เพียงพอ cBot จะหยุดการพยายามเปิดโพสิชันใหม่และบันทึกข้อความ "Not enough money to open additional positions"
การปิดโพสิชัน ¶
เมื่อถึง TargetProfit แล้ว cBot จะบันทึกข้อความ "Target profit is reached. Closing all grid positions"
จากนั้นเมธอด CloseGridPositions() จะวนลูปผ่านโพสิชันทั้งหมดที่เปิดอยู่ในกริด ปิดโพสิชันเหล่านั้น และ cBot จะบันทึกข้อความ "All grid positions are closed. Stopping cBot" จากนั้น cBot จะถูกหยุด
พารามิเตอร์ ¶
| พารามิเตอร์ | หน่วย | คำจำกัดความ | เคล็ดลับ |
|---|---|---|---|
| ปริมาณ | ล็อต | ปริมาณการเทรดแต่ละครั้ง | เทรดเดอร์ที่ระมัดระวังอาจระบุขนาดล็อตเล็กเพื่อลดการเปิดเผยและจัดการความเสี่ยงอย่างรอบคอบ โดยเฉพาะในตลาดที่มีความผันผวน วิธีนี้จะช่วยลดความสูญเสียที่อาจเกิดขึ้นหากตลาดเคลื่อนไหวในทิศทางตรงข้ามกับกริด เทรดเดอร์ที่กล้าเสี่ยงอาจระบุขนาดล็อตใหญ่เพื่อเพิ่มกำไรสูงสุดเมื่อมั่นใจในตลาด แม้ว่าวิธีนี้จะมีความเสี่ยงมากกว่า แต่ก็ให้ผลตอบแทนที่สูงขึ้นเมื่อกริดจับการเคลื่อนไหวของราคาที่ใหญ่ได้อย่างมีประสิทธิภาพ |
| ฝั่งการเทรด | — | ทิศทางของการเทรด (ซื้อหรือขาย) | ในตลาดที่กำลังขึ้น นักเทรดอาจเลือกซื้อ เมื่อสัญลักษณ์ปรับตัวลงชั่วคราว cBot จะซื้อในระดับที่ต่ำกว่า เมื่อตลาดเคลื่อนตัวกลับขึ้น แต่ละตำแหน่งซื้อจะสร้างกำไร ในตลาดที่กำลังตก นักเทรดอาจเลือกขาย เมื่อราคาสัญลักษณ์ปรับตัวขึ้นชั่วคราว cBot จะขายในระดับที่สูงกว่า เมื่อตลาดเคลื่อนตัวกลับลง แต่ละตำแหน่งขายจะสร้างกำไร |
| ขั้นตอน | Pip | ระยะห่างระหว่างตำแหน่งกริดสองตำแหน่งที่ต่อเนื่องกัน ยิ่งขั้นตอนเล็กเท่าไหร่ การเปิดเทรดใหม่ก็จะเกิดขึ้นบ่อยขึ้น ในขณะที่ขั้นตอนที่ใหญ่กว่าจะทำให้มีการเปิดเทรดน้อยลง | ในตลาดที่เคลื่อนตัวไปด้านข้างหรือมีความผันผวนต่ำ นักเทรดอาจตั้งค่าที่เล็ก การตั้งค่านี้ทำให้ cBot เปิดตำแหน่งบ่อยขึ้นและจับการเคลื่อนไหวของราคาเล็กๆ โดยเฉพาะเมื่อราคาเคลื่อนที่ภายในแถบแคบ ในตลาดที่มีแนวโน้มหรือมีความผันผวนมากขึ้น นักเทรดอาจตั้งค่าที่ใหญ่ การตั้งค่านี้ลดจำนวนเทรดที่เปิดลง ทำให้ cBot จับการเคลื่อนไหวที่ใหญ่ขึ้นและช่วยหลีกเลี่ยงการเทรดเกินในช่วงที่มีแนวโน้มแข็งแกร่ง |
| เป้าหมายกำไร | — | กำไรสะสมในสกุลเงินของบัญชีที่ต้องถึงก่อนที่ cBot จะปิดตำแหน่งที่เปิดทั้งหมดและหยุดเทรด | นักเทรดที่มองหากำไรเล็กๆ อย่างรวดเร็วอาจตั้งค่าที่ต่ำ การตั้งค่านี้ทำให้กริดปิดทันทีที่ทำกำไรเล็กน้อย ลดความเสี่ยงของการถือตำแหน่งไว้นานเกินไปในตลาดที่มีความผันผวน นักเทรดที่ชอบรอให้ได้กำไรใหญ่สามารถตั้งค่าที่สูง การตั้งค่านี้ทำให้กริดเปิดไว้นานขึ้น ทำให้ cBot สะสมกำไรจากการเคลื่อนไหวของตลาดที่ใหญ่ขึ้นก่อนที่ตำแหน่งทั้งหมดจะถูกปิด |
การประยุกต์ ¶
ตลาดที่เคลื่อนไหวในกรอบหรือตลาดด้านข้าง ¶
Grid cBot มีประสิทธิภาพสูงสุดในตลาดที่เคลื่อนไหวในกรอบ โดยที่ราคาแกว่งตัวระหว่างระดับ Support และ Resistance ในตลาดดังกล่าว เนื่องจากราคามักเคลื่อนที่ขึ้นและลงภายในกรอบที่กำหนด cBot จะเปิดโพสิชันเป็นประจำและใช้ประโยชน์จากความผันผวน
กรณีการใช้งาน
พิจารณาสถานการณ์ที่ EURUSD อยู่ในกรอบระหว่าง 1.1000 และ 1.1100 cBot จะเปิดโพสิชันซื้อเมื่อราคาลดลงใกล้กับ 1.1000 และเปิดโพสิชันขายใกล้กับ 1.1100 ในขณะที่ราคาแกว่งตัวระหว่างระดับเหล่านี้ cBot จะทำกำไรจากการแกว่งตัวแต่ละครั้ง
แนวปฏิบัติที่ดีที่สุด
- กำหนดขนาด Step ขนาดเล็กเพื่อจับความผันผวนของราคาที่เกิดขึ้นบ่อยครั้ง
- กำหนดเป้าหมายกำไรที่พอเหมาะเพื่อให้ Grid ปิดบ่อยครั้ง ช่วยให้คุณรักษากำไรเล็กน้อยที่สม่ำเสมอ
- ติดตามข่าวสารตลาดหรือเหตุการณ์ที่กำลังจะเกิดขึ้นซึ่งอาจนำไปสู่ Breakout จากกรอบและทำให้เกิด Drawdown ขนาดใหญ่
ตลาดที่มีความผันผวนต่ำ ¶
ในตลาดที่มีความผันผวนต่ำ การเคลื่อนไหวของราคามักจะช้าและไม่รุนแรง เมื่อราคาเคลื่อนที่อย่างค่อยเป็นค่อยไป Grid cBot จะมีเวลามากพอที่จะเปิดหลายโพสิชันโดยไม่ต้องเผชิญกับความเสี่ยงของการเคลื่อนไหวของตลาดที่ใหญ่และรวดเร็ว
กรณีการใช้งาน
พิจารณาสถานการณ์ที่ USDJPY แสดงความผันผวนต่ำตามที่มักเกิดขึ้นในช่วงเวลาเทรดของเอเชีย Grid cBot สามารถเปิดโพสิชันด้วยขนาด Step ที่เล็กและจับการเคลื่อนไหวของราคาที่ค่อยเป็นค่อยไปซึ่งเกิดขึ้นในช่วงเวลาที่เงียบสงบเหล่านั้น
แนวปฏิบัติที่ดีที่สุด
- ใช้ขนาด Step ที่แน่นเพื่อใช้ประโยชน์จากการเคลื่อนไหวของราคาที่เล็กน้อยซึ่งเป็นลักษณะของตลาดที่มีความผันผวนต่ำ
- กำหนดปริมาณเทรดที่ต่ำเพื่อลดความเสี่ยงในกรณีที่ความผันผวนเพิ่มขึ้นอย่างไม่คาดคิด
- ติดตามสภาวะตลาด ข่าวสารหรือเหตุการณ์ที่ไม่คาดคิด และเตรียมพร้อมที่จะหยุด cBot ได้อย่างรวดเร็ว
ตลาดที่มีระดับที่ทราบ ¶
Grid cBot สามารถทำงานได้ดีในตลาดที่มีระดับแนวรับและแนวต้านที่แข็งแกร่งและชัดเจน ระดับเหล่านั้นทำหน้าที่เป็นกำแพงราคาและทำให้ตลาดมักจะเด้งกลับ ส่งผลให้เกิดช่วงราคาที่ cBot สามารถใช้ประโยชน์ได้
กรณีการใช้งาน
พิจารณาสถานการณ์ที่ราคาทองคำ (XAUUSD) ผันผวนระหว่างระดับแนวรับที่แข็งแกร่งที่ USD 2,000 และระดับแนวต้านที่ USD 2,050 Grid cBot จะเปิดคำสั่งซื้อใกล้กับ USD 2,000 และคำสั่งขายใกล้กับ USD 2,050 เพื่อทำกำไรจากราคาที่เคลื่อนไหวระหว่างระดับเหล่านี้
แนวปฏิบัติที่ดีที่สุด
- กำหนดขนาดขั้นบันไดตามความผันผวนของตลาด ตลาดที่มีความผันผวนสูงอาจต้องการขนาดขั้นบันไดที่ใหญ่ ในขณะที่ตลาดที่มีความผันผวนต่ำสามารถใช้ขั้นบันไดที่เล็กกว่าได้
- ใช้ Grid cBot รอบตลาดที่มีระดับแนวรับและแนวต้านที่ชัดเจนเพื่อหลีกเลี่ยงการติดอยู่ใน Breakout
- ระมัดระวังเหตุการณ์หรือข่าวสารที่อาจทำให้เกิด Breakout เพื่อหลีกเลี่ยงการสูญเสียครั้งใหญ่ cBot ไม่ได้เตรียมพร้อมที่จะรับมือกับตลาดที่ทะลุผ่านระดับแนวรับหรือแนวต้าน
ตลาดที่ไม่มีการเคลื่อนไหวในทิศทางที่ชัดเจน ¶
คู่สกุลเงินบางคู่แสดงการเคลื่อนไหวที่ไม่มีการเคลื่อนไหวในทิศทางที่ชัดเจน โดยมีการผันผวนของราคาบ่อยครั้ง แต่ราคาของมันไม่แสดงแนวโน้มระยะยาวที่แข็งแกร่ง Grid cBot ทำงานได้ดีในตลาดดังกล่าวเพราะสามารถจับการผันผวนบ่อยครั้งได้โดยไม่มีความเสี่ยงที่จะติดอยู่ในแนวโน้มระยะยาว
กรณีการใช้งาน
พิจารณาสถานการณ์ที่ EURCHF เคลื่อนไหวในลักษณะที่ไม่มีการเคลื่อนไหวในทิศทางที่ชัดเจน ซึ่งเป็นเรื่องปกติเนื่องจากความมั่นคงของเศรษฐกิจในยูโรโซนและสวิตเซอร์แลนด์ Grid cBot สามารถเปิดตำแหน่งด้วยขนาดขั้นบันไดเล็ก เพื่อทำกำไรจากการผันผวนบ่อยครั้งโดยไม่ต้องกังวลเกี่ยวกับแนวโน้มระยะยาวที่ใหญ่
แนวปฏิบัติที่ดีที่สุด
- ใช้ขนาดขั้นบันไดเล็กเพื่อจับการเคลื่อนไหวของราคาที่บ่อยครั้ง
- พิจารณาการตั้งปริมาณการเทรดที่ต่ำเพื่อจัดการความเสี่ยงในกรณีที่ตลาดเกิด Breakout เข้าสู่แนวโน้ม
สรุป ¶
Grid cBot ดำเนินการบนสมมติฐานที่ว่าในช่วงตลาดขาขึ้นและขาลง จะมีการถดถอยหรือดึงกลับ มันจะซื้อต่ำและขายสูงในตลาดขาขึ้น และขายสูงและซื้อต่ำในตลาดขาลง; Grid cBot จะจับกำไรเมื่อตลาดกลับสู่แนวโน้มหลักหลังจากถดถอย
เนื่องจาก Grid cBot ไม่ใช้อินดิเคเตอร์ มันจึงไม่สามารถประเมินได้ว่าตลาดกำลังอยู่ในแนวโน้มหรืออยู่ในช่วง มันเพียงแค่เปิดตำแหน่งตามการเคลื่อนไหวของราคาเท่านั้น โดยไม่สนใจความรู้สึกของตลาดหรือความแข็งแกร่งของแนวโน้ม
การไม่มีอินดิเคเตอร์ทำให้กระบวนการเทรดเป็นไปอย่างกลไกล้วนๆ; Grid cBot พึ่งพาเพียงกฎที่กำหนดไว้ล่วงหน้าในการเปิดตำแหน่งเป็นระยะ แม้ว่าวิธีการนี้จะสามารถทำกำไรได้ในตลาดที่อยู่ในช่วง แต่ก็มักจะประสบปัญหาในตลาดที่มีแนวโน้ม, มีความผันผวนสูง หรือเปลี่ยนแปลงอย่างรวดเร็ว
นอกจากการกำหนดค่า Grid cBot เพื่อใช้กลยุทธ์ส่วนตัวแล้ว นักเทรดอาจพิจารณาใช้อินดิเคเตอร์เพื่อกรองการเทรดตามสภาพตลาด:
- Moving Averages (MA) สามารถช่วยระบุแนวโน้มของตลาดได้ ทำให้ cBot สามารถเทรดได้เฉพาะในทิศทางของแนวโน้ม
- Relative Strength Index (RSI) สามารถส่งสัญญาณภาวะซื้อมากเกินไปหรือขายมากเกินไป ช่วยให้ cBot หลีกเลี่ยงการเปิดโพสิชันใหม่เมื่อตลาดถูกยืดในทิศทางเดียว
- Bollinger Bands สามารถให้ข้อมูลเกี่ยวกับความผันผวนของราคา ทำให้ cBot สามารถปรับระยะห่างของกริดหรือหยุดเทรดในช่วงที่มีความผันผวนสูง