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

RSI วัดอะไร
ดัชนีความแข็งแกร่งสัมพัทธ์เปรียบเทียบขนาดเฉลี่ยของการเคลื่อนไหวขึ้นล่าสุดกับขนาดเฉลี่ยของการเคลื่อนไหวลงล่าสุด แล้วปรับผลลัพธ์ให้อยู่ระหว่าง 0 ถึง 100 ตามคู่มือ MT5 นั้น Wilder แนะนำ 14 คาบเมื่อเปิดตัวดัชนี และต่อมารุ่น 9 คาบกับ 25 คาบก็ได้รับความนิยม คู่มือเดียวกันระบุว่า RSI มักทำยอดเหนือ 70 และทำฐานต่ำกว่า 30 คู่มือ MT5: RSI
ไฟล์ดาวน์โหลดนี้วาดเส้น 30 และ 70 เพื่อใช้อ้างอิงเท่านั้น ไม่ได้ใช้เส้นเหล่านี้กรองไดเวอร์เจนซ์ใด ๆ โค้ด
ไดเวอร์เจนซ์เปรียบเทียบอะไร
ไดเวอร์เจนซ์เปรียบเทียบการแกว่งของราคาสองครั้งกับค่า RSI บนแท่งสองแท่งเดียวกัน คู่มือ MT5 อธิบายว่าเป็นจุดสูงหรือต่ำใหม่ของราคาที่ RSI ไม่ยืนยันด้วยจุดสูงหรือต่ำใหม่ของตัวเอง ไฟล์ดาวน์โหลดนี้เปลี่ยนคำอธิบายนั้นให้เป็นรูปแบบที่ชัดเจน: คู่มือ MT5: RSI
- ขาลงปกติ: จุดสูงของการแกว่งของราคาที่สูงขึ้น โดย RSI ที่จุดสูงครั้งที่สองต่ำลง
- ขาขึ้นปกติ: จุดต่ำของการแกว่งของราคาที่ต่ำลง โดย RSI ที่จุดต่ำครั้งที่สองสูงขึ้น
- ขาลงแฝง (ปิดไว้โดยค่าเริ่มต้น): จุดสูงของการแกว่งที่ต่ำลง โดย RSI ที่จุดสูงครั้งที่สองสูงขึ้น
- ขาขึ้นแฝง (ปิดไว้โดยค่าเริ่มต้น): จุดต่ำของการแกว่งที่สูงขึ้น โดย RSI ที่จุดต่ำครั้งที่สองต่ำลง
หน้านี้ไม่ได้ทดสอบว่าราคากลับทิศหลังเกิดไดเวอร์เจนซ์หรือไม่ แต่แสดงว่ากฎทำเครื่องหมายอะไร ทำได้เมื่อใด และกรณีจริงที่ราคายังคงเคลื่อนเลยจุดแกว่งครั้งที่สอง ข้อมูลกราฟ
ไฟล์ดาวน์โหลดนี้คำนวณ RSI อย่างไร
อินดิเคเตอร์ใช้ราคาปิดและการปรับเรียบแบบ Wilder การเปลี่ยนแปลงราคาของแต่ละแท่งถูกแยกเป็นส่วนเพิ่มและส่วนลด โดยส่วนใดส่วนหนึ่งเป็นศูนย์เสมอ และทั้งสองส่วนจะถูกปรับเรียบ นับแท่งจากแท่งเก่าสุดที่โหลดมา โดยเริ่มที่ศูนย์:
change[t] = Close[t] − Close[t−1] gain[t] = max(change[t], 0) loss[t] = max(−change[t], 0) ค่าตั้งต้นที่แท่ง N: AvgGain[N] = (gain[1] + … + gain[N]) / N AvgLoss[N] = (loss[1] + … + loss[N]) / N แท่งถัดไป: AvgGain[t] = (AvgGain[t−1] × (N − 1) + gain[t]) / N AvgLoss[t] = (AvgLoss[t−1] × (N − 1) + loss[t]) / N RSI[t] = 100 − 100 / (1 + AvgGain[t] / AvgLoss[t])
N คือคาบ ซึ่งมีค่าเริ่มต้นเป็น 14 ขั้นตอนการปรับเรียบคือค่าเฉลี่ยเคลื่อนที่แบบปรับเรียบจากคู่มือ MT5: ค่าเฉลี่ยก่อนหน้าคูณ N − 1 บวกค่าใหม่ แล้วหารด้วย N คู่มือ RSI ของ MT5 ให้สูตรสุดท้ายแต่ไม่ได้ระบุว่าต้องใช้ค่าเฉลี่ยแบบใด หน้านี้จึงระบุค่าเฉลี่ยที่โค้ดใช้ คู่มือ MT5: ค่าเฉลี่ยเคลื่อนที่แบบปรับเรียบ คู่มือ MT5: RSI โค้ด
ค่าตั้งต้นและช่วงเตรียมการคำนวณ
ค่าเฉลี่ยส่วนเพิ่มและส่วนลดครั้งแรกเป็นค่าเฉลี่ยอย่างง่ายของการเปลี่ยนแปลง 14 ครั้งแรก ดังนั้นค่า RSI แรกจึงต้องใช้ราคาปิด 15 ค่า ในข้อมูลที่ส่งออกนี้ ค่าดังกล่าวอยู่บนแท่ง 2025-12-04 22:00 และเท่ากับ 42.78 แท่งก่อนหน้านั้นยังคงว่าง และหากมี 14 แท่งหรือน้อยกว่า อินดิเคเตอร์จะไม่วาดอะไรเลย โค้ด ค่าที่ใช้ในหน้านี้
อิทธิพลของค่าตั้งต้นลดลงแต่ไม่เคยหายไปทั้งหมด แต่ละขั้นตอนเก็บค่าเฉลี่ยก่อนหน้าไว้ (N − 1) / N ดังนั้นเมื่อผ่านไป 100 แท่ง ค่าตั้งต้นยังมีน้ำหนักประมาณ 0.06% ในค่าเฉลี่ยแต่ละค่า RSI ที่เริ่มจากแท่งแรกต่างกันหรือกำหนดค่าตั้งต้นต่างกันจึงแสดงค่าต่างกันในช่วงแรก เมื่อใช้ราคาปิดและการปรับเรียบเหมือนกัน ช่องว่างระหว่างค่าเฉลี่ยจะลดลงด้วยตัวคูณดังกล่าวในทุกแท่ง ค่าที่ใช้ในหน้านี้
เมื่อราคาไม่เคลื่อนไหว
หากค่าเฉลี่ยส่วนลดเป็นศูนย์ สูตรจะต้องหารด้วยศูนย์ โค้ดคืนค่า 100 เมื่อค่าเฉลี่ยส่วนเพิ่มเป็นบวก และคืนค่า 50 เมื่อค่าเฉลี่ยทั้งสองเป็นศูนย์ ซึ่งหมายถึงราคาไม่ได้เคลื่อนไหวเลย เมื่อค่าเฉลี่ยส่วนเพิ่มเป็นศูนย์และค่าเฉลี่ยส่วนลดเป็นบวก ตัวสูตรเองจะให้ค่า 0 โค้ด
ข้อมูลจริงไม่เคยเกิดกรณีเหล่านี้: ไม่มีค่าใดในค่า RSI ทั้ง 4,986 ค่าที่เท่ากับ 0, 50 หรือ 100 พอดี จึงใช้ชุดราคาสังเคราะห์แบบคงที่และแบบเคลื่อนทางเดียวในการทดสอบให้ครอบคลุมกรณีเหล่านี้แทน การตรวจสอบเทียบกัน
เปรียบเทียบสิ่งที่มีเงื่อนไขตรงกัน เส้น RSI สองเส้นจะตรงกันก็ต่อเมื่อราคาปิด คาบ การปรับเรียบ ค่าตั้งต้น และแท่งแรกตรงกัน รายการไดเวอร์เจนซ์สองรายการยังต้องใช้กฎพิวอตและการจับคู่เหมือนกันด้วย
อินดิเคเตอร์ค้นหาไดเวอร์เจนซ์อย่างไร
จุดพิวอตของการแกว่ง
แท่งหนึ่งเป็นพิวอตสูงเมื่อราคาสูงของมันสูงกว่าราคาสูงของ 5 แท่งก่อนหน้าอย่างเคร่งครัด และไม่มีราคาสูงของ 5 แท่งถัดไปเกินมัน พิวอตต่ำใช้กฎกลับด้านกับราคาต่ำ:
พิวอตสูงที่แท่ง p: High[p] > High[j] สำหรับ j = p − L … p − 1
High[p] ≥ High[j] สำหรับ j = p + 1 … p + R
พิวอตต่ำที่แท่ง p: Low[p] < Low[j] สำหรับ j = p − L … p − 1
Low[p] ≤ Low[j] สำหรับ j = p + 1 … p + R
L คือ PivotLeftBars และ R คือ PivotRightBars ความไม่สมมาตรนี้ใช้ตัดสินเมื่อค่าเท่ากัน: ราคาสูงที่เท่ากันทางขวาไม่ยกเลิกพิวอต แต่ราคาสูงที่เท่ากันทางซ้ายยกเลิก ดังนั้นเมื่อมีราคาสูงเท่ากันสองจุดอยู่ในระยะถึงกัน แท่งที่มาก่อนจะเป็นพิวอต ค่าเท่ากันเกิดขึ้นจริงในข้อมูล ในข้อมูลที่ส่งออกนี้ พิวอตสูง 10 จุดและพิวอตต่ำ 4 จุดมีค่าสุดขั้วเท่ากันทางขวา ส่วนจุดสูง 14 จุดและจุดต่ำ 4 จุดถูกตัดออกเพียงเพราะมีค่าสุดขั้วเท่ากันทางซ้าย โดยรวมข้อมูลที่ส่งออกมีพิวอตสูง 313 จุดและพิวอตต่ำ 311 จุด โค้ด จำนวน
คู่พิวอตและการทดสอบไดเวอร์เจนซ์
เมื่อพิวอตใหม่ได้รับการยืนยัน โค้ดจะเปรียบเทียบกับพิวอตก่อนหน้าประเภทเดียวกันเท่านั้น คู่ดังกล่าวจะถูกทดสอบเมื่อพิวอตทั้งสองห่างกันระหว่าง 5 ถึง 60 แท่ง และมีค่า RSI ที่พิวอตแรกแล้ว พิวอตที่ใกล้กว่าจะปิดกั้นการเปรียบเทียบกับพิวอตที่เก่ากว่าเสมอ โค้ด
ขาลงปกติ: High[p2] > High[p1] และ RSI[p2] < RSI[p1] ขาขึ้นปกติ: Low[p2] < Low[p1] และ RSI[p2] > RSI[p1] ขาลงแฝง: High[p2] < High[p1] และ RSI[p2] > RSI[p1] ขาขึ้นแฝง: Low[p2] > Low[p1] และ RSI[p2] < RSI[p1] รายงานที่แท่ง: c = p2 + R
การเปรียบเทียบทั้งหมดเป็นแบบเคร่งครัด ดังนั้นราคาหรือค่า RSI ที่เท่ากันจะไม่ทำให้เกิดไดเวอร์เจนซ์ เมื่อมี 5 แท่งทางซ้ายและ 5 แท่งทางขวา พิวอตประเภทเดียวกันสองจุดจะห่างกันอย่างน้อย 6 แท่งเสมอ ระยะขั้นต่ำจึงไม่เป็นข้อจำกัดเมื่อใช้ค่าเริ่มต้น กฎ
การตั้งค่า
ต่อไปนี้คือพารามิเตอร์ของไฟล์ดาวน์โหลด ทุกรูปในหน้านี้ใช้ค่าเริ่มต้น ซึ่งเป็นจุดเริ่มต้นเพื่อประกอบการอธิบาย ไม่ใช่ค่าที่ผ่านการปรับให้เหมาะสมที่สุด
| พารามิเตอร์ | ค่าเริ่มต้น | สิ่งที่ควบคุม |
|---|---|---|
RsiPeriod |
14 | คาบ RSI ของราคาปิดพร้อมการปรับเรียบแบบ Wilder |
PivotLeftBars |
5 | แท่งก่อนพิวอตที่พิวอตต้องเกินอย่างเคร่งครัด |
PivotRightBars |
5 | แท่งที่ปิดแล้วหลังพิวอตซึ่งต้องไม่เกินพิวอต นี่คือระยะรอการยืนยันด้วย |
MinPivotDistance |
5 | จำนวนแท่งขั้นต่ำที่อนุญาตระหว่างพิวอตสองจุดในคู่เดียวกัน |
MaxPivotDistance |
60 | จำนวนแท่งสูงสุดที่อนุญาตระหว่างพิวอตสองจุด การค้นหาพิวอตก่อนหน้าหยุดที่ระยะนี้ |
ShowHidden |
false | เพิ่มไดเวอร์เจนซ์แฝงเป็นเส้นจุดพร้อมลูกศรของตัวเอง |
คาบกำหนดน้ำหนักของการเปลี่ยนแปลงใหม่แต่ละครั้ง การปรับเรียบแบบ Wilder ให้น้ำหนัก 1/14 เมื่อใช้ค่าเริ่มต้น และ 1/9 หรือ 1/25 เมื่อใช้คาบทางเลือกที่คู่มือ MT5 กล่าวถึง คาบที่สั้นกว่าจึงตอบสนองต่อแต่ละแท่งมากกว่า PivotRightBars แลกความเร็วกับการยืนยัน: ค่าที่มากขึ้นจะไม่เพิ่มพิวอต และทำให้การตรวจพบแต่ละรายการช้าลงตามจำนวนแท่งที่เพิ่มขึ้น คู่มือ MT5: RSI ค่าที่ใช้ในหน้านี้
การตีความตัวอย่างจริง
รูปที่ 2 ถึง 4 มาจากข้อมูลที่ส่งออก โดยใช้กฎคัดเลือกตายตัว กฎสำหรับรูปที่ 2 และ 3 จัดอันดับการตรวจพบตามส่วนต่าง RSI ระหว่างพิวอต และไม่สนใจว่าราคาทำอะไรภายหลัง รูปที่ 4 จงใจเลือกกรณีล้มเหลว กฎการคัดเลือก

ในรูปที่ 2 จุดสูงครั้งที่สองสูงกว่าครั้งแรก 0.00039 ขณะที่ RSI ต่ำกว่า 18.99 จุด ทั้งสองชุดสร้างจากราคาคนละแบบ: พิวอตใช้ราคาสูงและต่ำ ส่วน RSI ใช้ราคาปิด แท่งที่ทำจุดสูงครั้งที่สองปิดที่ 1.16168 ซึ่งต่ำกว่าราคาสูงของตัวเอง 0.00420 และต่ำกว่าราคาปิดก่อนหน้า 0.00212 ดังนั้น RSI จึงบันทึกส่วนลดบนแท่งเดียวกับที่ทำจุดสูงใหม่ ค่าที่ใช้ในหน้านี้

จุดต่ำครั้งที่สองในรูปที่ 3 ต่ำกว่าครั้งแรกเพียง 0.00009 หรือ 9 จุดตามขั้นราคาของสัญลักษณ์นี้ที่ 0.00001 ขณะที่ RSI สูงกว่า 26.22 จุด กฎไม่ได้กำหนดขนาดขั้นต่ำ ดังนั้นส่วนต่างที่เล็กเพียงนี้ก็นับเหมือนส่วนต่างอื่น ๆ กรณีนี้แท่งพิวอตก็ปิดห่างจากค่าสุดขั้วเช่นกัน โดยปิดที่ 1.16176 ซึ่งสูงกว่าราคาต่ำของตัวเอง 0.00355 และสูงกว่าราคาปิดก่อนหน้า 0.00272 ค่าที่ใช้ในหน้านี้
ไม่ได้เลือกตัวอย่างใดจากผลลัพธ์ของมัน หลังการยืนยันในรูปที่ 2 ไม่มีราคาสูงใน 24 แท่งถัดไปเกินพิวอต 2 หลังการยืนยันในรูปที่ 3 ราคาลงต่ำกว่าพิวอต 2 เมื่อ 2026-05-21 16:00 โดยมีราคาต่ำ 1.15757 หลังแท่งยืนยันไป 18 แท่ง บันทึกกราฟ

การตรวจพบในรูปที่ 4 ถูกต้องตามกฎ: จุดสูงที่สูงขึ้นพร้อม RSI ที่ต่ำลง 17.88 จุด สิ่งที่ล้มเหลวคือความคาดหวังว่าราคาจะกลับทิศ หลังจากลงไปทำราคาต่ำ 1.15237 ที่ 2026-04-07 05:00 ราคาก็ขึ้นไปทำจุดสูงที่สูงกว่า บันทึกกราฟ ค่าที่ใช้ในหน้านี้
สิ่งที่ตัวอย่างแสดง
เมื่อใช้ค่าเริ่มต้น ข้อมูลที่ส่งออกมีการตรวจพบปกติ 73 รายการ แบ่งเป็นขาลง 29 รายการและขาขึ้น 44 รายการ เมื่อเปิด ShowHidden จะเพิ่มขาลงแฝง 43 รายการและขาขึ้นแฝง 29 รายการ รวมเป็น 145 รายการ จำนวนเหล่านี้อธิบายตัวอย่างนี้ภายใต้กฎเหล่านี้ ไม่ใช่อัตราความแม่นยำ และไม่ได้ทดสอบผลการเทรด จำนวน
ไดเวอร์เจนซ์อธิบายการแกว่งสองครั้งที่เกิดขึ้นแล้ว ส่วนราคาจะทำอะไรต่อไปเป็นอีกคำถามหนึ่ง
เมื่อใดจึงรู้ว่าเกิดไดเวอร์เจนซ์
ระยะรอการยืนยัน
พิวอตต้องมีแท่งที่ปิดแล้ว 5 แท่งทางขวา ดังนั้นตัวตรวจจับจะไม่รู้ว่ามีพิวอต 2 จนกว่าแท่งสุดท้ายในกลุ่มนั้นจะปิด โค้ดวางลูกศรบนแท่งยืนยันนั้น ไม่ใช่บนพิวอต 2 และเส้นระหว่างค่า RSI สองค่าจะปรากฏพร้อมกัน แท่งล่าสุดบนกราฟถือว่ายังก่อตัวอยู่ จึงไม่เคยใช้ยืนยันพิวอต โค้ด

มีการวาดใหม่ย้อนหลังหรือไม่
เมื่อบันทึกแล้ว การตรวจพบจะคงอยู่ที่เดิมตราบใดที่ประวัติแท่งที่ปิดแล้วไม่เปลี่ยน การทดสอบโดยตรงเล่นซ้ำครบ 5,000 แท่งทีละแท่ง โดยเริ่มจากทิกระหว่างทางที่เปลี่ยนไปบนแท่งล่าสุด แล้วจึงใช้ค่าสุดท้ายของแท่งนั้น และตรวจสอบทุกขั้นว่าการตรวจพบปรากฏเฉพาะบนแท่งยืนยันและไม่เปลี่ยนภายหลัง ค่า RSI ของแท่งล่าสุดยังเปลี่ยนทุกทิกเหมือน RSI ทั่วไป หากประวัติราคาเองเปลี่ยน เช่น เมื่อดาวน์โหลดประวัติย้อนหลังลึกขึ้น เทอร์มินัลจะส่งศูนย์เป็นค่า prev_calculated และอินดิเคเตอร์จะคำนวณทุกอย่างใหม่จากข้อมูลใหม่ การทดสอบโดยตรง เอกสารอ้างอิง MQL5: OnCalculate
ไม่สามารถยืนยันการแกว่งได้ก่อนที่แท่งซึ่งนิยามการแกว่งนั้นจะปิด
การใช้ร่วมกับเครื่องมืออื่น
ตัวตรวจจับเปรียบเทียบการแกว่งสองครั้งกับค่า RSI สองค่าเท่านั้น สิ่งที่เพิ่มเติมเป็นกฎแยกต่างหากที่คุณต้องกำหนดและทดสอบเอง คู่มือนี้ไม่ได้ทดสอบส่วนเพิ่มเติมใดต่อไปนี้:
- ระดับราคา เส้นจุดในรูปที่ 2 ถึง 5 ยืดระดับของพิวอต 2 คุณเห็นได้จากกราฟว่าต่อมาราคาเคลื่อนเลยระดับนั้นหรือไม่ และในรูปที่ 3 ถึง 5 ราคาเคลื่อนเลยจริง
- ระดับ RSI ตัวกรอง เช่น ตรวจพบขาขึ้นเฉพาะต่ำกว่า 30 จะเป็นพารามิเตอร์ใหม่ ไฟล์ดาวน์โหลดนี้วาดเส้น 30 และ 70 แต่ไม่ได้ใช้กรอง
- การอ่าน RSI แบบอื่น คู่มือ MT5 ยังอธิบายยอดและฐาน รูปแบบกราฟ การแกว่งล้มเหลว และแนวรับหรือแนวต้านบนเส้น RSI เอง ตัวตรวจจับไม่ได้ค้นหาสิ่งเหล่านี้
- ตัวกรองแนวโน้มและกรอบเวลาที่สูงขึ้น ตัวกรองแนวโน้ม เช่น ค่าเฉลี่ยเคลื่อนที่ หรือกฎเดียวกันบนกรอบเวลาที่สูงขึ้น จะเปลี่ยนว่าการตรวจพบใดยังคงอยู่ หน้านี้ไม่ได้วัดทั้งสองแนวทาง
ข้อจำกัด
- ตัวตรวจจับอธิบายแท่งในอดีต ไม่ได้พยากรณ์ และไม่ได้รายงานอัตราความแม่นยำหรือผลการเทรด
- การตรวจพบแต่ละรายการมาถึงหลังพิวอต 2 ไป 5 แท่งที่ปิดแล้ว ตามโครงสร้างของระบบ
- ส่วนต่างเล็กน้อยก็นับ จากคู่ที่ประเมิน 621 คู่ ส่วนต่างราคาที่เล็กที่สุดคือ 0.00001 ซึ่งเป็นขั้นราคาต่ำสุดของสัญลักษณ์ และส่วนต่าง RSI ที่เล็กที่สุดคือ 0.05 จุด มีราคาพิวอตเท่ากันพอดีใน 1 คู่ ซึ่งตามกฎไม่ใช่ไดเวอร์เจนซ์
- พิวอตใช้ราคาสูงและต่ำ แต่ RSI ใช้ราคาปิด แท่งที่มีไส้ยาวอาจทำค่าสุดขั้วใหม่และยังปิดห่างจากค่านั้นได้ ดังรูปที่ 2 และ 3
- เปรียบเทียบเฉพาะพิวอตที่อยู่ติดกัน โดยห่างกันไม่เกิน 60 แท่ง ไม่รายงานไดเวอร์เจนซ์ระหว่างการแกว่งที่ไม่ได้อยู่ติดกัน
- ค่าใกล้จุดเริ่มต้นของประวัติที่โหลดขึ้นอยู่กับค่าตั้งต้น และอาจแตกต่างจากการใช้งาน RSI แบบอื่น
- เวลาเป็นนาฬิกาของเซิร์ฟเวอร์การซื้อขาย ซึ่งเป็น UTC+3 ขณะเก็บข้อมูล ไม่ได้จำลองการเปลี่ยนเวลาออมแสงในอดีต กราฟบีบช่วงสุดสัปดาห์และช่องว่างอื่น ๆ ให้สั้นลง
- ไฟล์ MQL4 ยังไม่ได้คอมไพล์หรือรันใน MT4
การใช้อินดิเคเตอร์
ขั้นตอนด้านล่างใช้กับ MT5 ไฟล์ .mq4 มีไว้สำหรับ MT4 และยังไม่ได้ทดสอบที่นั่น
- ดาวน์โหลดซอร์สโค้ด .mq5 หรือไฟล์ .ex5 ที่คอมไพล์แล้วด้านล่าง
- เปิดโฟลเดอร์ข้อมูล (ไฟล์ › เปิดโฟลเดอร์ข้อมูล ใน MetaEditor) แล้วคัดลอกไฟล์ไปไว้ในโฟลเดอร์ MQL5\Indicators
- หากคุณใช้ซอร์สโค้ด ให้เปิดใน MetaEditor แล้วกด F7 เพื่อคอมไพล์ ซึ่งจะสร้างไฟล์ .ex5
- ในหน้าต่าง Navigator ของ MT5 ให้ลากอินดิเคเตอร์ไปวางบนกราฟ อินดิเคเตอร์จะเปิดในหน้าต่างแยกพร้อมสเกลของตัวเองที่ตรึงไว้ตั้งแต่ 0 ถึง 100
- คงค่าเริ่มต้นไว้เพื่อให้ตรงกับหน้านี้ หรือเปลี่ยนพารามิเตอร์จากตารางการตั้งค่าเมื่อติดตั้งอินดิเคเตอร์
โฟลเดอร์ข้อมูล โฟลเดอร์อินดิเคเตอร์และการคอมไพล์ การติดตั้งอินดิเคเตอร์
ซอร์สโค้ด MQL5
โค้ด MQL5 โดยตรงที่แก้ไขได้: RSI พร้อมเส้นและลูกศรไดเวอร์เจนซ์ในหน้าต่างแยก ไม่มีคำสั่งซื้อขาย การแจ้งเตือน การนำเข้า DLL หรือคำขอเว็บ
MQL5 ที่คอมไพล์แล้ว
สร้างจากซอร์สโค้ดนี้ด้วย MetaEditor: 0 ข้อผิดพลาด, 0 คำเตือน ยังไม่ได้ทดสอบการติดตั้งบนกราฟที่ทำงานจริง
ซอร์สโค้ด MQL4
ส่วนคำนวณเดียวกันพร้อมการตั้งค่าบัฟเฟอร์แบบ MT4 ตรวจทานแบบสถิตเท่านั้น ยังไม่ได้คอมไพล์หรือรันใน MT4
สิ่งที่ตรวจสอบแล้ว
ส่วนคำนวณของไฟล์ MQL5 ถูกคอมไพล์เป็นโปรแกรมทดสอบ โดยเปลี่ยนชื่อเฉพาะฟังก์ชันเริ่มต้น แล้วรันในตัวทดสอบคณิตศาสตร์ MT5 บนแท่งชุดเดียวกัน 5,000 แท่ง การใช้งานอ้างอิงอิสระของกฎเดียวกันประมวลผลแถวเดียวกัน ค่าเฉลี่ยแบบ Wilder ของการใช้งานนั้นใช้ค่าเฉลี่ยถ่วงน้ำหนักแบบเอ็กซ์โพเนนเชียล ซึ่งเป็นรูปแบบทางคณิตศาสตร์อีกแบบของการคำนวณเวียนเกิดเดียวกัน ขอบเขตโปรแกรมทดสอบ เอกสารอ้างอิง MQL5: การทดสอบ ค่าเฉลี่ยถ่วงน้ำหนักแบบเอ็กซ์โพเนนเชียล
ค่า RSI ทั้ง 4,986 ค่าตรงกันภายใน 4.97e-14 จุด และ 2,139 ค่าเหมือนกันทุกบิต ค่าความคลาดเคลื่อนที่ยอมให้ผ่านคือ 1e-9 จุด ซึ่งสูงกว่าสัญญาณรบกวนจากเลขทศนิยมลอยตัวที่คาดไว้ประมาณ 1e-13 จุดมาก และละเอียดกว่าทศนิยม 2 ตำแหน่งที่อินดิเคเตอร์แสดงมาก การตรวจพบทั้ง 145 รายการเมื่อเปิด ShowHidden ตรงกันพอดีทั้งประเภท แท่งยืนยัน และแท่งพิวอตทั้งสอง ไม่มีการตัดสินใจใดใกล้ค่าความคลาดเคลื่อนที่ยอมรับ: ส่วนต่าง RSI ที่เล็กที่สุดของคู่ที่ประเมินทั้งหมดคือ 0.05 จุด การตรวจสอบเทียบกัน บันทึกการสร้าง
โปรแกรมที่รันโดยตรงผ่าน 41 จาก 41 การตรวจสอบ ครอบคลุมช่วงเตรียมการคำนวณและค่าตั้งต้น ราคาคงที่และเคลื่อนทางเดียว จุดสูงและต่ำที่เท่ากัน ไดเวอร์เจนซ์ที่ทราบคำตอบ ประวัติไม่เพียงพอ ทิกซ้ำ แท่งที่กำลังก่อตัวซึ่งเปลี่ยนไป แท่งที่เพิ่มเข้ามา การเล่นซ้ำทีละแท่ง และค่าเริ่มต้นของ ShowHidden สคริปต์ตรวจสอบเทียบกันผ่าน 24 จาก 24 การเปรียบเทียบ การทดสอบโดยตรง การตรวจสอบเทียบกัน
การตรวจสอบเหล่านี้ครอบคลุมการคำนวณและตรรกะการอัปเดต ไม่ครอบคลุมการวาดบนกราฟที่ทำงานจริง MT4 หรือผลการเทรด ขอบเขตโปรแกรมทดสอบ
คำเตือนความเสี่ยง การซื้อขายมีความเสี่ยง และคุณอาจสูญเสียเงิน อินดิเคเตอร์นี้ทำเครื่องหมายรูปแบบราคาและ RSI ในอดีตเท่านั้น ไม่ได้คาดการณ์ราคา ส่งหรือปกป้องคำสั่งซื้อขาย หรือจัดการความเสี่ยง ตัวอย่างใช้แสดงกฎ ไม่ใช่สัญญาณซื้อขาย และไม่มีสิ่งใดในหน้านี้รับประกันผลลัพธ์
คำถามที่พบบ่อย
ไดเวอร์เจนซ์ RSI คืออะไร
คือความไม่สอดคล้องกันระหว่างการแกว่งของราคาสองครั้งกับค่า RSI บนแท่งสองแท่งเดียวกัน ในไดเวอร์เจนซ์ขาลงปกติ ราคาทำจุดสูงของการแกว่งที่สูงขึ้น ขณะที่ RSI ที่จุดสูงครั้งที่สองต่ำลง ในไดเวอร์เจนซ์ขาขึ้นปกติ ราคาทำจุดต่ำของการแกว่งที่ต่ำลง ขณะที่ RSI ที่จุดต่ำครั้งที่สองสูงขึ้น
ไฟล์ดาวน์โหลดนี้คำนวณ RSI อย่างไร
ใช้ราคาปิดและการปรับเรียบแบบ Wilder ด้วยคาบ 14 ค่าเฉลี่ยส่วนเพิ่มและส่วนลดครั้งแรกเป็นค่าเฉลี่ยอย่างง่ายของการเปลี่ยนแปลงราคา 14 ครั้งแรก จากนั้นการเปลี่ยนแปลงใหม่แต่ละครั้งเข้ามาด้วยน้ำหนัก 1/14 RSI ที่ใช้การปรับเรียบต่างกันจะให้ค่าต่างกันตลอดทั้งชุด เมื่อใช้การปรับเรียบเหมือนกันแต่ค่าตั้งต้นหรือแท่งแรกต่างกัน ความแตกต่างจะมากที่สุดใกล้ต้นประวัติและลดลงภายหลัง
ทำไมไดเวอร์เจนซ์จึงปรากฏหลังการแกว่ง 5 แท่ง
การแกว่งจะเป็นพิวอตก็ต่อเมื่อ 5 แท่งทางขวาปิดแล้วโดยไม่เกินจุดนั้น อินดิเคเตอร์รายงานไดเวอร์เจนซ์บนแท่งสุดท้ายในกลุ่มนั้น และไม่ย้ายกลับไปที่แท่งพิวอต กราฟจึงแสดงสิ่งที่อินดิเคเตอร์รู้ได้ ณ ขณะนั้น
อินดิเคเตอร์วาดใหม่ย้อนหลังหรือไม่
ไม่วาดใหม่หลังการยืนยัน ตราบใดที่ประวัติแท่งที่ปิดแล้วยังเหมือนเดิม การเล่นซ้ำโดยตรงครบ 5,000 แท่ง พร้อมทิกระหว่างทางในทุกแท่งใหม่ ไม่พบการตรวจพบที่ปรากฏก่อนเวลา ย้ายตำแหน่ง หรือเปลี่ยนภายหลัง ค่า RSI ของแท่งที่กำลังก่อตัวยังเปลี่ยนทุกทิก และการเปลี่ยนประวัติที่โหลด เช่น การดาวน์โหลดประวัติย้อนหลังลึกขึ้น ทำให้อินดิเคเตอร์คำนวณทุกอย่างใหม่
ไดเวอร์เจนซ์แฝงคืออะไร
ไดเวอร์เจนซ์ขาลงแฝงคือจุดสูงของการแกว่งที่ต่ำลงพร้อม RSI ที่สูงขึ้น ส่วนไดเวอร์เจนซ์ขาขึ้นแฝงคือจุดต่ำของการแกว่งที่สูงขึ้นพร้อม RSI ที่ต่ำลง โดยปิดไว้ในค่าเริ่มต้น การตั้ง ShowHidden เป็น true จะวาดเป็นเส้นจุดพร้อมลูกศรของตัวเอง การตรวจสอบเทียบกันเปรียบเทียบรายการเหล่านี้เมื่อเปิดการตั้งค่า และการทดสอบโดยตรงยืนยันว่าค่าเริ่มต้นไม่วาดไดเวอร์เจนซ์แฝงและคงไดเวอร์เจนซ์ปกติไว้เหมือนเดิม
ไดเวอร์เจนซ์หมายความว่าราคาจะกลับทิศหรือไม่
หน้านี้ไม่ได้แสดงเช่นนั้น แต่บรรยายตัวอย่างหนึ่งภายใต้กฎตายตัว และรูปที่ 3, 4 และ 5 ต่างแสดงว่าราคาเคลื่อนเลยจุดแกว่งครั้งที่สองหลังการยืนยัน ไม่ได้ทดสอบอัตราความแม่นยำหรือผลการเทรด
ฉันใช้ไฟล์ MQL4 ใน MT4 ได้หรือไม่
ไฟล์ .mq4 มีส่วนคำนวณเดียวกับไฟล์ MQL5 ที่ทดสอบแล้ว พร้อมการตั้งค่าบัฟเฟอร์แบบ MT4 ไฟล์นี้ผ่านการตรวจทานแบบสถิตเท่านั้น ไม่ได้คอมไพล์หรือรันใน MT4 ให้คอมไพล์ใน MetaEditor ที่มาพร้อม MT4 และตรวจสอบบันทึกของคอมไพเลอร์ว่ามีข้อผิดพลาดหรือคำเตือนหรือไม่ก่อนใช้งาน
แหล่งที่มาและการทำซ้ำ
คู่มือ MT5: ดัชนีความแข็งแกร่งสัมพัทธ์: ช่วงค่า คาบของ Wilder และทางเลือกที่นิยม ยอดและฐานตามปกติ ไดเวอร์เจนซ์ และสูตร
คู่มือ MT5: ค่าเฉลี่ยเคลื่อนที่: สูตรค่าเฉลี่ยเคลื่อนที่แบบปรับเรียบ
เอกสารอ้างอิง MQL5: OnCalculate: ค่า prev_calculated และการคำนวณใหม่ทั้งหมดหลังข้อมูลราคาเปลี่ยน
เอกสารอ้างอิง MQL5: copy_rates_from_pos: ตำแหน่งแท่งสำหรับการส่งออก ตำแหน่งศูนย์คือแท่งปัจจุบันซึ่งการส่งออกข้ามไป
เอกสารอ้างอิง MQL5: การทดสอบ: โหมดคำนวณทางคณิตศาสตร์ที่ใช้ในการทดสอบโดยตรง
เอกสารไลบรารีอ้างอิง: ค่าเฉลี่ยถ่วงน้ำหนักแบบเอ็กซ์โพเนนเชียล: การคำนวณเวียนเกิด adjust=False ที่ใช้ในการตรวจสอบอิสระ
คู่มือ MetaEditor: โครงสร้างแพลตฟอร์ม: โฟลเดอร์ข้อมูลและโฟลเดอร์อินดิเคเตอร์
คู่มือ MT5: การซื้อขายด้วยอัลกอริทึม: โฟลเดอร์ MQL5\Indicators และการคอมไพล์ด้วย F7
คู่มือ MT5: อินดิเคเตอร์ทางเทคนิค: การติดตั้งอินดิเคเตอร์จาก Navigator และหน้าต่างอินดิเคเตอร์แยก
ค่าที่ใช้ในหน้านี้และในกราฟ · แท่งที่ส่งออก · ที่มาของการส่งออก · RSI อ้างอิงและพิวอต · การตรวจพบอ้างอิง · บัฟเฟอร์ MQL5 โดยตรง · การตรวจพบ MQL5 โดยตรง · การตรวจสอบเทียบกัน · การรันทดสอบโดยตรง · บันทึกการสร้าง · บันทึกคอมไพเลอร์ · ข้อกำหนด
กราฟบีบช่วงสุดสัปดาห์และช่องว่างอื่นระหว่างแท่งให้สั้นลง เวลาเป็นนาฬิกาของเซิร์ฟเวอร์การซื้อขายของเทอร์มินัลตามที่ส่งออก ตัวอย่างถูกตรึงไว้เพื่อให้ทำซ้ำได้ และไม่ใช่บทวิเคราะห์ตลาดแบบสด
ผลิตภัณฑ์เลเวอเรจอาจขาดทุนเร็ว ในไทยการซื้อขาย forex อยู่ภายใต้ข้อจำกัด




