คุณสร้าง Expert Advisor แบบ RSI บน MT5 โดยไม่ต้องเขียนโค้ด ด้วยการวางบล็อกสี่ชนิดลงบนผืนผ้าใบ คือโหนด Start อินดิเคเตอร์ RSI เงื่อนไขที่เทียบค่า RSI กับระดับหนึ่ง และบล็อกส่งคำสั่ง จากนั้นเซิร์ฟเวอร์จะสร้างและคอมไพล์ MQL5 ให้คุณเอง ใช้เวลาราวสิบห้านาที และไม่ต้องแตะไวยากรณ์ของ MQL5 เลยสักจุด
คำถามที่ยากกว่าคือ เมื่อทำเสร็จแล้วคุณได้อะไรมาถือไว้ คู่มือนี้จะสร้าง EA ตัวนั้นขึ้นมา แล้วอ่านบันทึกของ Builder เองที่มีต่อดีไซน์เดียวกัน ซึ่งฟังไม่รื่นหูเท่าที่บทสอนไหน ๆ จะบอกคุณ
สิ่งที่คุณจะได้สร้าง
EA ที่ถือโพซิชันเดียวบนคู่เงินเดียว ซึ่งจะซื้อเมื่อ RSI ตกลงต่ำกว่าระดับขายมากเกินไป และขายเมื่อมันขึ้นเหนือระดับซื้อมากเกินไป พร้อมจุดตัดขาดทุนและเป้าหมายแบบคงที่ คอมไพล์ออกมาเป็นไฟล์ .ex5 จริงที่คุณหย่อนเข้า MetaTrader 5 ได้เลย แปดบล็อก ไม่มีโค้ด
นั่นคือครึ่งที่เป็นงานช่าง และมันง่ายจริง ๆ ส่วนที่เหลือของหน้านี้คืออีกครึ่งหนึ่งที่เป็นตัวชี้ขาดว่าไฟล์นั้นคุ้มค่าจะรันหรือเปล่า
ก่อนเริ่ม: RSI วัดอะไร และไม่ได้วัดอะไร
คุณต้องมีบัญชีฟรีที่ยืนยันอีเมลแล้ว (การออกแบบใช้ฟรีและไม่ต้องล็อกอิน ส่วนการคอมไพล์เป็น .ex5 ต้องล็อกอิน) เวลาราวสิบห้านาที และเทอร์มินัล MetaTrader 5 ไว้ทดสอบผลที่ได้
RSI รายงานว่าราคาปิด n แท่งล่าสุดวางตัวอยู่ตรงไหนระหว่างกำไรและขาดทุนของตัวมันเองในช่วงที่ผ่านมา บนสเกล 0–100 ในสูตรนี้มันทำงานอยู่หน้าที่เดียวเท่านั้น คือบอกว่าราคาเคลื่อนไปไกลและเร็วในทางเดียวเมื่อเทียบกับพฤติกรรมของตัวมันเองในช่วงหลัง สิ่งที่มัน ไม่ได้ บอกคือการเคลื่อนไหวนั้นจบแล้ว ความต่างข้อนี้คือความเสี่ยงทั้งหมดของกลยุทธ์ ค่าที่อ่านได้ว่าขายมากเกินไปในตลาดขาลง คือคำบรรยายของขาลงนั้น ไม่ใช่สัญญาณให้สวนมัน
บล็อก RSI ของ Builder เปิดค่าเหล่านี้ให้ตั้ง และค่าเริ่มต้นก็คือค่าตามธรรมเนียม
| ค่าของบล็อก | ค่าเริ่มต้น | มันควบคุมอะไร |
|---|---|---|
period | 14 | การคำนวณย้อนดูกี่แท่ง ช่วงที่ตั้งได้คือ 1–999 |
applied_price | PRICE_CLOSE | ราคาไหนของแต่ละแท่งที่ป้อนเข้าสู่การคำนวณ |
shift | 0 | อ่านแท่งไหน — 0 คือแท่งที่กำลังก่อตัว 1 คือแท่งที่ปิดไปล่าสุด |
timeframe | กราฟปัจจุบัน | ตั้งได้ตั้งแต่ M1 ถึง MN1 อ่านแยกจากกราฟที่เปิดอยู่ |
symbol | กราฟปัจจุบัน | เว้นว่างไว้แปลว่าใช้สัญลักษณ์ของกราฟนั้นเอง |
แถว timeframe คือแถวที่ควรสังเกตไว้ตั้งแต่เนิ่น ๆ บล็อกนี้อ่านค่า RSI จากไทม์เฟรมที่สูงกว่ากราฟที่มันเทรดอยู่ได้ นั่นคือวิธีสร้างฟิลเตอร์หลายไทม์เฟรมโดยไม่ต้องเขียนโค้ด
ทีละขั้น: สร้าง EA แบบ RSI ใน Builder
- เปิด EA Builder แล้วโหลดเทมเพลต
rsi_reversalจากแกลเลอรี หรือจะเริ่มจากผืนผ้าใบเปล่าก็ได้ การโหลดเทมเพลตเร็วกว่า ส่วนการต่อเองคือวิธีที่ทำให้คุณรู้ว่าสายไหนทำอะไร - วางโหนด Start จากพาเลต Utility โฟลว์ที่ไม่มีโหนดนี้จะไม่ผ่านการตรวจสอบ โดยขึ้นรหัส
EAB-E202ก่อนที่มันจะสร้างอะไรออกมาให้ - เพิ่มบล็อกอินดิเคเตอร์ RSI แล้วตั้งค่า
periodปล่อยไว้ที่ 14 สำหรับการสร้างรอบแรก ผลของคุณจะได้เทียบกับค่าตั้งต้นด้านล่างได้ และตั้งshiftเป็น 1 ถ้าต้องการให้กฎถูกประเมินบนแท่งที่ปิดแล้วเท่านั้น - เพิ่มเงื่อนไข Compare แล้วต่อสายจากบล็อก RSI เข้าไป ขั้นนี้ไม่ใช่แค่งานเดินท่อที่ข้ามได้ การต่ออินดิเคเตอร์เข้าบล็อกส่งคำสั่งตรง ๆ จะถูกปฏิเสธด้วยรหัส
EAB-E205— “insert a condition node (Compare/Cross) in between” — ก็เพราะค่าดิบของอินดิเคเตอร์ไม่ใช่การตัดสินใจ - ตั้งการเปรียบเทียบ ฝั่งซื้อ RSI น้อยกว่า 30 ฝั่งขาย RSI มากกว่า 70 ตัวดำเนินการเริ่มต้นของบล็อก Compare คือ
>กิ่งฝั่งซื้อจึงเป็นกิ่งที่คุณต้องจำให้ได้ว่าต้องพลิก - ต่อแต่ละเงื่อนไขเข้าบล็อกแอ็กชัน Open Buy / Open Sell ของตัวเอง
- ตั้งความเสี่ยงในแท็บ Settings คือ Money Management กับ Exit Strategy ค่าเริ่มต้นที่ใช้ร่วมกันคือจุดตัดขาดทุน 50 pip เป้าหมาย 100 pip และล็อตคงที่
0.01โฟลว์ที่ไม่มีจุดตัดขาดทุนที่ใช้ได้จะทำให้การตรวจก่อนสร้างขึ้นระดับCRITICALและบังคับให้คุณยืนยันก่อนจึงจะสร้างให้ - กด Measure เพื่อรันแบ็คเทสต์แบบประมาณค่าที่มีอยู่ในตัว แล้วอ่านผลเทียบกับเกณฑ์ที่แผงพิมพ์ออกมา คือ profit factor อย่างน้อย 1.2 จำนวนเทรดอย่างน้อย 60 และดรอว์ดาวน์ไม่แย่กว่า 20%
- กด Compile .ex5 ย้ายไฟล์ที่ดาวน์โหลดมาเข้า
MQL5/Expertsผ่าน File > Open Data Folder แล้วรีเฟรช Navigator จากนั้นทดสอบมันให้ถูกวิธีใน Strategy Tester ก่อนที่มันจะเข้าใกล้บัญชีจริงสักบัญชี
- โหนด Start
- อินดิเคเตอร์ RSI คาบ 14
- Compare — RSI ต่ำกว่าระดับขายมากเกินไป
- Compare — RSI สูงกว่าระดับซื้อมากเกินไป
- Open Buy
- Open Sell
- จุดตัดขาดทุนและจุดทำกำไร
- คอมไพล์เป็น .ex5
มีสองบล็อกที่มือใหม่มักเอื้อมไปหยิบ และยังไม่ควรหยิบ
Cross ถามว่าเส้นหนึ่งตัดอีกเส้น บนแท่งนี้ หรือไม่ ซึ่งเป็นคำถามที่เข้มกว่าและต่างจาก “อยู่ต่ำกว่าหรือไม่” ถ้าเอามาใช้ตรงนี้ มันจะยิงเฉพาะบนแท่งที่ RSI มุดผ่าน 30 ลงไปเท่านั้น ไม่ใช่ทุกแท่งที่มันค้างอยู่ข้างล่าง
ในพาเลตยังมีบล็อกเงื่อนไข RSI Divergence ด้วย มันตรวจจับจังหวะที่ราคาทำจุดสุดขั้วใหม่แต่ RSI ไม่ทำตาม และตั้งค่าเริ่มต้นไว้ที่ level 30, pivot_bars 70 และ near_band 10 มันต้องการบล็อก RSI ที่ตั้ง shift เป็น 1 ต่อสายเข้ามา นั่นคือกลยุทธ์คนละตัวจริง ๆ ไม่ใช่การจูนกลยุทธ์ตัวนี้
การตั้งค่าจุดเข้า จุดออก และพารามิเตอร์ของ RSI
นี่คือทุกค่าที่สูตรนี้เปิดให้ตั้ง และการขยับมันทำอะไรจริง ๆ
| การตั้งค่า | ค่าของเทมเพลต | การขยับมันทำอะไร |
|---|---|---|
period ของ RSI | 14 | สั้นลงจะตอบสนองไวขึ้นและยิงบ่อยขึ้นมาก ยาวขึ้นจะเรียบขึ้นและยิงนาน ๆ ครั้ง มันเปลี่ยนจำนวนเทรดมากกว่าเปลี่ยนอัตราชนะ |
| ระดับขายมากเกินไป | 30 | ต่ำลงคือเข้มขึ้น เข้าน้อยครั้งลงแต่ลึกขึ้น ตัวตนของเทมเพลตอยู่ตรงนี้ |
| ระดับซื้อมากเกินไป | 70 | ภาพสะท้อนของข้างบนบนฝั่งขาย |
shift | 0 | ตั้งเป็น 1 เพื่อตัดสินบนแท่งที่ปิดแล้วเท่านั้น บน M5 นี่คือความต่างระหว่างการตัดสินใจไม่กี่ครั้งต่อชั่วโมง กับหลายร้อยครั้ง |
| จุดตัดขาดทุน | 50 pip (ค่าเริ่มต้นที่ใช้ร่วมกัน) | ช่วงที่ถูกค้นหาคือ 20–50 |
| จุดทำกำไร | 100 pip (ค่าเริ่มต้นที่ใช้ร่วมกัน) | ช่วงที่ถูกค้นหาคือ 20–100 |
| ขนาดล็อต | 0.01 คงที่ | ไม่ใช่ค่าของกลยุทธ์ มันขยายทุกอย่างที่กลยุทธ์ทำ รวมถึงการขาดทุนด้วย |
คำถามเรื่องความอ่อนไหวที่ทุกคนถาม พร้อมคำตอบแบบตรงไปตรงมา “ควรถ่าง 30/70 ออกเป็น 20/80 ไหม” คือสิ่งแรกที่บทสอน RSI ทุกอันเสนอ และหน้านี้บอกคุณไม่ได้ เพราะการค้นหาที่บันทึกไว้บนเทมเพลตนี้ไม่เคยเปลี่ยนระดับเลย สิ่งที่มันเปลี่ยนคือจุดตัดขาดทุนกับเป้าหมาย — SL20-50 × TP20-100 รวม 12 ชุดค่าบนสามหน้าต่างเวลาของ H1 — และคำตัดสินที่ได้คือ no_robust_edge โดยมี profit factor ในกลุ่มตัวอย่างที่ดีที่สุดอยู่ที่ 0.91 ระดับต่าง ๆ จึงยังเป็นสมมติฐานที่ไม่ถูกทดสอบอยู่ที่นี่ และค่าที่ถูกทดสอบก็ยกดีไซน์นี้ขึ้นถึงจุดคุ้มทุนไม่ได้จากทิศทางไหนเลย ใครก็ตามที่ยกระดับ RSI “ที่ดีที่สุด” มาบอกคุณ กำลังยกความเชื่อมาบอก
แบ็คเทสต์ EA แบบ RSI
นี่คือบันทึกที่ Builder วัดไว้เองสำหรับเทมเพลตนี้ ไม่ใช่การรันซ้ำใหม่ ทุกเทมเพลตในการเปรียบเทียบด้านล่างใช้ชุดเงื่อนไขชุดเดียวกันในตารางที่ตามมา ส่วนวิธีที่เราทดสอบระบุมาตรฐานที่บันทึกเหล่านั้นถูกยึดไว้
ค่าตั้งต้นของ rsi_reversal | ค่า |
|---|---|
| profit factor | 0.94 |
| จำนวนเทรด | 682 |
| ดรอว์ดาวน์สูงสุด | -0.97% |
| กำไรสุทธิ | -51.37 |
| ถูกแมนิเฟสต์ติดธงว่าอ่อนแอ | ใช่ |
| ขึ้นป้าย recommended ในแกลเลอรี | ใช่ |
| ผ่านเกณฑ์ของแผง Measure เอง | ไม่ |
| เงื่อนไขการทดสอบ | |
|---|---|
| รหัสการทดลอง | EXP-RSI-RECIPE-BASELINE-001 |
| การทดลองหลัก | EXP-BUILDER-TEMPLATE-BASELINE-001 |
| สัญลักษณ์ / ไทม์เฟรม | USDJPYm M5 |
| ช่วงเวลา | 2025-06-01 – 2026-06-09 |
| โมเดล | M1 OHLC (Model=1) |
| เงินฝาก | 10,000 |
| สภาพแวดล้อม | Exness MT5 |
| วัดค่าตั้งต้นเมื่อ | 2026-06-18 |
| ยืนยันล่าสุด | 2026-08-25 |
อ่านตารางนั้นโดยเอาสองแถวสุดท้ายมาวางคู่กัน แกลเลอรีติดป้ายเทมเพลตนี้ว่า recommended ส่วนแมนิเฟสต์ติดธงว่า อ่อนแอ และทั้งสองธงถูกต้องกันคนละเรื่อง คือมันเป็นตัวอย่างของแพตเทิร์นที่สะอาดและประกอบมาดี และมันขาดทุน จากเทมเพลต 53 ตัวที่มีค่าตั้งต้นซึ่งวัดไว้แล้ว มี 40 ตัวขึ้นป้าย recommended และทั้ง 53 ตัวถูกติดธงว่าอ่อนแอ คำว่า “recommended” เป็นคำกล่าวถึงการต่อสาย ไม่เคยเป็นคำกล่าวถึงความได้เปรียบ
RSI ยืนอยู่ตรงไหนในหมู่เพื่อนบ้าน แปดดีไซน์นี้ถูกวัดภายใต้บล็อกเงื่อนไขชุดเดียวข้างบนทั้งหมด ซึ่งเป็นเหตุผลเดียวที่ทำให้การเอามาเรียงเทียบกันเป็นธรรม
| เทมเพลต | บล็อก | profit factor | ดรอว์ดาวน์ | จำนวนเทรด |
|---|---|---|---|---|
ma_distance_pullback | 6 | 1.10 | -0.26% | 159 |
envelope_reversal | 10 | 0.95 | -1.16% | 989 |
cci_level | 7 | 0.95 | -0.94% | 789 |
rsi_reversal | 8 | 0.94 | -0.97% | 682 |
bb_bounce | 9 | 0.92 | -0.98% | 616 |
stoch_bb | 14 | 0.90 | -1.41% | 888 |
hl_range_reversal | 8 | 0.90 | -1.33% | 573 |
mfi_stddev_revert | 12 | 0.80 | -1.66% | 362 |
มีตัวเดียวเป๊ะที่ผ่าน 1.0 และมันคือตัวที่ไม่สู้กับเทรนด์ ma_distance_pullback ซื้อจังหวะย่อขณะที่เทรนด์ยังไม่เสีย นั่นคือการกลับสู่ค่าเฉลี่ย ภายใน ทิศทางหนึ่ง แทนที่จะสวนทิศทางนั้น มันยังเป็นดีไซน์ที่เล็กที่สุดในกลุ่มด้วย คือหกบล็อก ส่วนเทมเพลตแบบ “ราคาไปไกลเกินแล้ว งั้นกลับตัว” ล้วน ๆ ทุกตัว รวมทั้ง RSI ปิดต่ำกว่าจุดคุ้มทุน
นั่นคือข้อโต้แย้งที่หนักแน่นที่สุดบนหน้านี้ ที่สนับสนุนการวางฟิลเตอร์เทรนด์ไว้หน้าจุดเข้าของ RSI แต่ข้อจำกัดของมันก็ควรพูดกันตรง ๆ มันเทรดไป 159 ครั้ง เทียบกับ 682 ครั้งของ RSI มันจึงซื้อผลลัพธ์นั้นมาด้วยความเลือกเฟ้น และกลุ่มตัวอย่างขนาดหนึ่งในสี่คือคำกล่าวอ้างที่อ่อนกว่า ไม่ใช่แข็งกว่า
ข้อผิดพลาดที่ควรเลี่ยง
อ่านคำว่า “ขายมากเกินไป” เป็น “กำลังจะกลับตัว” นี่คือรูปแบบความล้มเหลวเฉพาะตัวของอินดิเคเตอร์นี้ และเป็นเหตุผลที่เทมเพลตกลับตัวล้วน ๆ ไปกระจุกกันอยู่ใต้ 1.0 ในการเคลื่อนไหวที่ยืดยาว RSI จะนั่งตรึงอยู่ที่จุดสุดขั้วเป็นเวลานาน และกฎก็ยิงซ้ำแล้วซ้ำอีกเข้าไปในเทรนด์ที่ยังไม่จบ จุดตัดขาดทุนคือสิ่งที่จบเทรดเหล่านั้นทีละตัว ซึ่งเป็นเหตุผลว่าทำไมการถ่างมันออกจึงทำให้ดีไซน์ตัวนี้แย่ลง แทนที่จะปลอดภัยขึ้น
คอมไพล์เทมเพลตแล้วถือว่าจบ มันพกป้าย recommended กับสถิติที่ขาดทุนมาพร้อมกัน ป้ายนั้นพูดถึงการต่อสาย
จูนไปเรื่อย ๆ จนกว่าแบ็คเทสต์จะดูสวย การค้นหาที่บันทึกไว้ที่นี่ทำแบบนั้นไปแล้วอย่างซื่อสัตย์ คือ 12 ชุดค่า สามหน้าต่างเวลา และรายงานกลับมาว่า no_robust_edge ถ้าการจูนของคุณเองผลิตผู้ชนะขึ้นมาในที่ที่การค้นหาอย่างเป็นระบบทำไม่ได้ ให้สงสัยการจูนก่อนที่จะเชื่อผู้ชนะ นั่นคือหน้าตาของการโอเวอร์ฟิตเมื่อมองจากข้างใน
เพิ่มคู่เงินเพื่อให้เส้นทุนเรียบขึ้น ตะกร้าสองคู่เงินอยู่ในตารางข้างบนแล้ว คือดรอว์ดาวน์ 37 เท่าของเวอร์ชันคู่เงินเดียว
เชื่อผลบน M5 ที่สร้างจากแท่งซึ่งประมาณค่าขึ้นมา ค่าตั้งต้นใช้โมเดล M1 OHLC การเคลื่อนไหวภายในแท่งจึงเป็นการจำลอง ไม่ใช่ของจริง สำหรับกฎที่เทรดจบภายในวัน นั่นคือปลายที่หยาบที่สุดของคำว่าเชื่อถือได้ ให้เอาอะไรที่ดูมีแวว ไปรันซ้ำบนข้อมูลติกจริงในเทสเตอร์ของ MT5 เอง
รันมันข้าง ๆ EA ตัวอื่นโดยไม่แยกมันออกจากกัน EA แต่ละตัวบนบัญชีเดียวต้องมีเมจิกนัมเบอร์ของตัวเอง ไม่อย่างนั้นตรรกะปิดออร์เดอร์ของ EA ตัวหนึ่งจะไปปิดโพซิชันของอีกตัว
ขั้นตอนถัดไปและตัวแปรอื่น ๆ
เมื่อไหร่ที่ไม่ควรใช้ RSI เลย ในตลาดที่เป็นเทรนด์แรง การกลับตัวด้วย RSI แบบไม่มีฟิลเตอร์คือเครื่องจักรสำหรับขายความแข็งแกร่งและซื้อความอ่อนแอ ถ้าคุณระบุเงื่อนไขที่จะปิดสวิตช์กฎนี้ระหว่างเทรนด์ไม่ได้ ทางเลือกที่ซื่อสัตย์คือใช้ฟิลเตอร์เทรนด์ หรือไม่ก็ใช้ไอเดียอื่นไปเลย — การกลับสู่ค่าเฉลี่ยอธิบายว่ากลยุทธ์ตระกูลนี้ต้องการสภาวะตลาดแบบไหน และมันต้องจ่ายอะไรเมื่อสภาวะนั้นไม่อยู่
ตัวแปรที่ควรลอง เรียงตามน้ำหนักหลักฐาน ให้ใส่ฟิลเตอร์ทิศทางจากไทม์เฟรมที่สูงกว่าก่อนเป็นอย่างแรก เพราะดีไซน์เดียวในย่านนี้ที่ผ่าน 1.0 คือตัวที่ต้องการให้เทรนด์ยังไม่เสีย — ค่า timeframe ของบล็อก RSI เองทำเรื่องนี้ได้โดยไม่ต้องเขียนโค้ดเลย จากนั้นค่อยลองบล็อกเงื่อนไข RSI Divergence ซึ่งถามคำถามที่ต่างออกไปและเข้มกว่าการตัดผ่านระดับ แล้วค่อยไปแตะระดับต่าง ๆ หลังจากนั้น และเปลี่ยนทีละค่า
แล้วค่อยทดสอบมันให้ถูกวิธี แผง Measure คือฟิลเตอร์ ไม่ใช่คำตัดสิน มันทำงานระดับแท่งและเป็นการประมาณค่า วิธีแบ็คเทสต์ EA บน MT5พาเดินการรันจริงตั้งแต่ต้นจนจบ รวมถึงว่าควรเชื่อดรอว์ดาวน์บรรทัดไหนในสองบรรทัดของรายงาน ส่วนที่เหลือในคู่มือการแบ็คเทสต์ครอบคลุมขั้นการปรับให้เหมาะสมและขั้น walk-forward ที่ตามมาทีหลัง ส่วนวิธีสร้าง EA แบบ MACD บน MT5 โดยไม่ต้องเขียนโค้ดคือสูตรพี่น้องที่มีโหมดพังแบบตรงกันข้าม — การค้นหาของมัน เจอ ค่าที่ชนะนอกกลุ่มตัวอย่างเข้าจริง ๆ ซึ่งเป็นผลลัพธ์ที่อันตรายกว่าการไม่เจออะไรเลยเสียอีก และวิธีสร้าง EA บน MT5 โดยไม่ต้องเขียนโค้ดคือทัวร์ที่กว้างกว่าของคลังบล็อกทั้งหมด ถ้าสูตรนี้เป็นโฟลว์แรกของคุณ
และถ้าอยากเห็นว่าบันทึกที่ทำไว้ครบหน้าตาเป็นอย่างไร EA ที่เผยแพร่แล้วแต่ละตัวพกรายการเทรดที่ปิดแล้วครบถ้วนและ run manifest มาด้วย การเอาสักตัวไปเทียบกับตารางข้างบนคือวิธีที่เร็วที่สุดในการปรับเทียบว่าคำว่า “วัดมาแล้ว” ควรหมายถึงอะไร ก่อนที่คุณจะเชื่อกลยุทธ์ใด ๆ รวมถึงของตัวคุณเองด้วย