LearnForexHub
อินดิเคเตอร์

Accumulation/Distribution (A/D): Volume ที่ถ่วงน้ำหนักด้วยความแข็งแกร่งของราคาปิด

เขียนโดย , ผู้ก่อตั้งและบรรณาธิการอัปเดตล่าสุด วิธีที่เราเขียนและตรวจทานบทเรียน

Accumulation/Distribution (A/D) เป็นอินดิเคเตอร์วัดกระแส volume แบบสะสม (cumulative) อยู่ในตระกูลเดียวกับ On-Balance Volume — มันเก็บผลรวมค่าเดียวที่เพิ่มขึ้นหรือลดลงไปเรื่อยๆ ทีละแท่งเทียน แทนที่จะรีเซ็ตกลับเข้าช่วงที่มีขอบเขตแบบ oscillator ทั่วไป จุดที่ OBV ตัดสินว่าแท่งเทียนหนึ่งจะมีส่วนร่วมอย่างไรนั้นดูแค่ว่าราคาปิดสูงหรือต่ำกว่าราคาปิดของแท่งก่อนหน้า แต่ A/D จะมองว่า ราคาปิดอยู่ตรงไหนภายใน range ของแท่งเทียนนั้นเอง แล้วถ่วงน้ำหนักด้วย volume ของแท่งนั้น ข้อมูลเพิ่มเติมชิ้นนี้ — ราคาปิดแข็งแกร่งแค่ไหนเมื่อเทียบกับ high-low ของแท่งเทียนตัวมันเอง ไม่ใช่แค่เทียบกับราคาปิดของแท่งก่อนหน้า — คือสิ่งที่แยก A/D ออกจาก OBV และเป็นรายละเอียดที่เนื้อหาส่วนที่เหลือของบทเรียนนี้ต่อยอดขึ้นไป

วิธีคำนวณ A/D

A/D อัปเดตทีละ 2 ขั้นตอนในทุกแท่งเทียน ขั้นแรกคำนวณ Close Location Value (CLV) ซึ่งเป็นค่าระหว่าง -1 ถึง +1 ที่วัดว่าราคาปิดอยู่ตรงไหนภายใน range สูง-ต่ำของแท่งเทียนนั้น:

CLV = ((Close - Low) - (High - Close)) / (High - Low)

ราคาปิดที่อยู่บนสุดของ range จะได้ CLV = +1 ราคาปิดที่อยู่ล่างสุดของ range จะได้ CLV = -1 ราคาปิดที่อยู่ตรงกลางพอดีจะได้ CLV = 0 ขั้นที่สองคือนำ CLV นั้นไปคูณกับ volume ของแท่งเทียนแล้วบวกเข้ากับผลรวมสะสม:

A/D = A/D ก่อนหน้า + (CLV × Volume)

แท่งเทียนที่ปิดใกล้จุดสูงสุดของ range ด้วย volume หนาแน่นจะบวกจำนวนมากเข้าไปในผลรวม แท่งเทียนที่ปิดใกล้จุดต่ำสุดของ range ด้วย volume หนาแน่นจะลบจำนวนมากออกไป ส่วนแท่งเทียนที่ปิดใกล้กึ่งกลาง range แทบไม่มีผลต่อผลรวมเลยไม่ว่า volume จะมากแค่ไหน เพราะ CLV ใกล้ศูนย์ นี่คือความต่างเชิงกลไกจาก OBV: OBV ปฏิบัติกับทุกแท่งเทียนที่ปิดสูงขึ้นเหมือนกันหมด โดยไม่สนว่าราคาปิดแข็งแกร่งแค่ไหนภายใน range ของมัน แต่ A/D จะปรับส่วนร่วมตามความแข็งแกร่งนั้นโดยตรง แท่งเทียนที่ปิดสูงขึ้นแบบอ่อนแรงใกล้จุดต่ำสุดของ range ที่กว้าง แทบไม่ขยับ A/D เลย ทั้งที่ OBV จะบวก volume เต็มจำนวนของแท่งนั้นเข้าไป

อ่านค่า A/D: ยืนยัน ไม่ใช่ zone

PriceNew highAccumulation/Distribution (cumulative, unbounded)A/D flattens
Price prints a new high while A/D stalls instead of confirming it — a bearish divergence warning that the rally lacks real buying pressure behind it

เหมือนกับ OBV, A/D ไม่มี zone overbought หรือ oversold และไม่มี threshold ตายตัว — ไม่มีอะไรให้เอาค่าดิบของมันไปเทียบ เพราะค่า 500,000 หรือ -3 ล้าน ไม่มีความหมายอะไรในตัวมันเอง สิ่งที่สำคัญคือรูปทรงของเส้นเทียบกับรูปทรงของราคา แท่งต่อแท่ง ไดอะแกรมด้านบนแสดงรูปแบบที่ควรฝึกสายตาให้จับได้: ราคาไต่ขึ้นเป็นชุดของ higher high ในขณะที่ A/D ตามไม่ทัน แบนราบหรือกลับตัวลง แทนที่จะยืนยันแต่ละ high ใหม่ นี่คือนิสัยการอ่านหลัก — อย่ามองแค่ A/D เดี่ยวๆ ต้องเทียบกับสิ่งที่ราคากำลังทำในช่วงแท่งเทียนเดียวกันเสมอ

เมื่อ A/D ไต่ขึ้นสอดคล้องกับราคา แต่ละ high ใหม่มีราคาปิดที่แข็งแกร่งภายใน range ของมันหนุนหลังอยู่ด้วย volume จริง ซึ่งคือลักษณะของการมีส่วนร่วมที่แท้จริงเบื้องหลัง trend เมื่อ A/D ตามหลัง หยุดนิ่ง หรือ diverge จากราคา แสดงว่าการเคลื่อนไหวนั้นเกิดขึ้นบนราคาปิดที่อ่อนแอกว่าที่กราฟราคาเพียงอย่างเดียวบอกไว้ ซึ่งเป็นหัวข้อของหัวข้อถัดไป

Divergence: จุดที่ A/D แสดงคุณค่า

คุณค่าที่แท้จริงของ A/D เหมือนกับ OBV คือไม่ใช่การเป็นสัญญาณเข้าเทรดเดี่ยวๆ แต่เป็นตัวตรวจสอบว่าการเคลื่อนไหวของราคามีความแข็งแกร่งจริงหนุนหลังอยู่หรือไม่ Bearish divergence เกิดขึ้นเมื่อราคาพิมพ์ high ใหม่ แต่ A/D ไม่พิมพ์ high ใหม่ตามไปด้วย กลับแบนราบหรือขยับลงในขณะที่ราคายังไต่ขึ้นต่อไป — ราคาปิดที่ขับเคลื่อนการปรับขึ้นนั้นไม่ได้ลงจอดใกล้จุดสูงสุดของ range ของแท่งเทียนอีกต่อไป แม้ราคาจะยังคงปรับขึ้นในทางนามธรรมก็ตาม นี่คือสัญญาณเตือนว่าการเคลื่อนไหวอาจกำลังจะหมดแรง ไม่ใช่หลักฐานว่าการกลับตัวใกล้เข้ามาแล้ว — divergence สามารถคงอยู่ได้ระยะหนึ่งก่อนที่จะคลี่คลาย ดังนั้นมันคือสัญญาณให้เข้มงวดกับการบริหารความเสี่ยงมากขึ้นหรือมองหาการยืนยันจากที่อื่น มากกว่าจะเป็นสัญญาณออกอัตโนมัติ

Bullish divergence คือภาพสะท้อนกลับกันที่จุดต่ำ: ราคาทำ low ใหม่ แต่ A/D ยืนอยู่เหนือจุดต่ำสุดก่อนหน้าแทนที่จะยืนยันตาม แสดงว่าราคาปิดขาลงไม่ได้ลงจอดใกล้จุดต่ำสุดของ range แข็งแกร่งเท่าที่ low ของราคาบ่งบอก ซึ่งมักปรากฏขึ้นก่อนที่แรงขายจะหมดแรงและผู้ซื้อกลับเข้ามา

เพราะ A/D ถ่วงน้ำหนักตามตำแหน่งราคาปิดภายในแท่งเทียน ไม่ใช่แค่ทิศทางปิดต่อปิด บางครั้งมันจึงจับความแข็งแกร่งหรืออ่อนแรงที่ OBV พลาดไปได้ — แท่งเทียนที่ปิดสูงกว่าแท่งก่อนหน้าแต่ปิดอ่อนแรงใกล้จุดต่ำสุดของตัวเอง ยังคงถูกนับเป็นแท่ง "ขึ้น" เต็มรูปแบบสำหรับ OBV ในขณะที่ A/D บันทึกไว้อย่างถูกต้องว่าเป็นแท่งเทียนธรรมดาๆ ในทางปฏิบัติ ให้ปฏิบัติต่อ divergence ของ A/D เหมือนกับที่ปฏิบัติต่อ divergence ของ OBV คือเป็นสัญญาณเตือนให้จับตาโครงสร้างราคาให้ใกล้ชิดขึ้น ไม่ใช่สัญญาณให้ลงมือทำตามลำพัง

เงื่อนไขการเข้าเทรด: การตัดกันของเส้น signal average

A/D ไม่มี centerline ตามธรรมชาติให้แจ้งเตือนเหมือนกับที่ OBV ไม่มี ดังนั้นอินดิเคเตอร์ที่แนบมาให้จึงสร้างขึ้นมาเองด้วยวิธีเดียวกัน: มันคำนวณ simple moving average ของ A/D เองตลอดช่วง SignalPeriod ที่ตั้งค่าได้ (ค่าเริ่มต้น 20 แท่งเทียน) แล้วจับตาดูการตัดกันของ A/D กับเส้นค่าเฉลี่ยนั้น

  • สัญญาณ BUY — A/D ตัดขึ้นเหนือเส้น signal average ของตัวเอง บ่งชี้ว่าดุลของราคาปิดที่ถ่วงน้ำหนักด้วย volume เพิ่งพลิกเป็นบวกเมื่อเทียบกับ trend ล่าสุด
  • สัญญาณ SELL — A/D ตัดลงต่ำกว่าเส้น signal average ของตัวเอง บ่งชี้ว่าดุลนั้นเพิ่งพลิกเป็นลบเมื่อเทียบกับ trend ล่าสุด

เส้น signal average นี้คำนวณขึ้นเองภายในโค้ด alert เพราะตัว A/D เองไม่มีอะไรในตัวให้ตัดกัน ควรปฏิบัติต่อการตัดกันนี้เหมือนเครื่องมือจับจังหวะสำหรับการเปลี่ยนแปลง momentum ของเส้นด้านล่าง ควรใช้ร่วมกับการอ่าน divergence ข้างต้นและโครงสร้างราคาจริง ไม่ใช่ใช้เป็นสัญญาณโดดๆ แบบสุ่มยิง

Parameters

  • AppliedVolume (เฉพาะ MT5, ค่าเริ่มต้น VOLUME_TICK) — volume series ไหนที่ป้อนเข้าสู่การคำนวณ A/D iAD() ของ MQL4 ใช้ tick volume โดยตรงเสมอ ไม่มี input ให้เลือก
  • SignalPeriod (ค่าเริ่มต้น 20) — ช่วงย้อนหลังของเส้นค่าเฉลี่ย signal ที่ A/D ใช้ตัดกันเพื่อแจ้งเตือน period ที่สั้นกว่าตอบสนองไวกว่าแต่มีการตัดกันแบบ whipsaw มากกว่า ส่วน period ที่ยาวกว่าจะทำให้เส้น signal เรียบขึ้นและแจ้งเตือนน้อยลง
  • EnableAlert (ค่าเริ่มต้น true) — เด้งแจ้งเตือนบน terminal ทันทีที่ A/D ตัดกับเส้น signal average ของมัน
  • EnablePush (ค่าเริ่มต้น false) — ส่ง push notification ไปที่มือถือผ่านแอป MetaTrader ด้วย

A/D vs OBV: สองวิธีในการถ่วงน้ำหนัก volume

A/D และ OBV เป็นญาติใกล้ชิดกัน — ทั้งคู่เป็นเส้น volume flow แบบสะสม ไม่มีขอบเขต และไม่มี zone ให้จับตา — แต่ทั้งสองไม่เห็นตรงกันว่า volume ของแท่งเทียนควรถูกนับเท่าไหร่ OBV เป็นแบบ binary: volume ทั้งหมดของแท่งเทียนถูกบวกหรือลบตามว่าราคาปิดสูงหรือต่ำกว่าราคาปิดของแท่งก่อนหน้าเท่านั้น โดยไม่สนว่าปิดได้น่าเชื่อถือแค่ไหน A/D เป็นแบบสัดส่วน: มันปรับส่วนร่วมของแต่ละแท่งเทียนตามตำแหน่งที่ราคาปิดลงจอดภายใน range สูง-ต่ำของแท่งนั้นโดยตรง ดังนั้นราคาปิดที่แข็งแกร่งใกล้ปลายสุดของ range จะมีน้ำหนักมากกว่าราคาปิดที่อ่อนแอเพียงสูงขึ้นนิดหน่อยใกล้กึ่งกลาง

ในทางปฏิบัติสิ่งนี้ทำให้ A/D ไวต่อ คุณภาพ ของราคาปิดมากกว่า ในขณะที่ OBV เป็นการอ่านกระแส volume ตามทิศทางแบบตรงไปตรงมามากกว่า ไม่มีตัวไหนดีกว่าอีกตัวอย่างเด็ดขาด บางครั้งเทรดเดอร์ใช้ทั้งสองตัวคู่กันและถือว่าความสอดคล้องกันระหว่างสองเส้นเป็นสัญญาณยืนยันที่แข็งแกร่งกว่าตัวใดตัวหนึ่งเดี่ยวๆ เพราะ divergence ที่ปรากฏพร้อมกันทั้งบน A/D และ OBV ยากที่จะมองข้ามว่าเป็นแค่ noise จากจุดสังเกตเฉพาะของอินดิเคเตอร์ตัวใดตัวหนึ่ง

ข้อควรระวังเรื่อง Volume ในตลาด Forex

ข้อควรระวังเดียวกับที่ใช้กับ OBV ก็ใช้ได้กับที่นี่เช่นกัน และควรพูดซ้ำอีกครั้งเพราะ A/D อิง volume โดยตรงไม่ต่างกัน Forex ไม่มีตลาดกลาง (central exchange) จึงไม่มีบันทึก volume ที่เทรดจริงที่เป็นทางการเพียงแหล่งเดียว สิ่งที่ MetaTrader มีให้คือ tick volume ซึ่งเป็นจำนวนครั้งที่ราคาอัปเดตในแต่ละแท่งเทียน และนั่นคือสิ่งที่ป้อนเข้าสู่การคำนวณ A/D (เห็นได้ชัดจากค่าเริ่มต้น VOLUME_TICK ของ build MQL5 เพราะ VOLUME_REAL ที่แท้จริงมักไม่มีรายงานสำหรับคู่เงินเลย)

Tick volume มีความสัมพันธ์ที่ดีพอสมควรกับกิจกรรมการเทรดจริง แต่มันเป็นตัวแทน ไม่ใช่การนับโดยตรง และผูกติดกับกระแสราคาของ broker แต่ละราย ซึ่งหมายความว่ารูปทรงของเส้น A/D ของคุณอาจต่างกันได้บ้างระหว่าง broker สำหรับคู่เงินและ timeframe เดียวกัน สิ่งนี้ไม่ได้ทำให้ A/D ไร้ประโยชน์บน forex — รูปแบบการยืนยันและ divergence ยังคงใช้ได้ผลในทางปฏิบัติ — แต่ควรจำไว้ว่าคุณกำลังอ่านความหนาแน่นของการอัปเดตราคาที่ถ่วงน้ำหนักด้วยความแข็งแกร่งของราคาปิด ไม่ใช่ volume ที่เทรดจริงตามตัวอักษร โดยเฉพาะก่อนที่จะเชื่อ divergence ที่ไม่ชัดเจนมากนัก

ข้อควรระวัง

A/D มีข้อจำกัดหลักเหมือนกับ OBV คือไม่มีสเกลสัมบูรณ์ให้ตรวจสอบ ดังนั้นค่าของมันมีความหมายก็ต่อเมื่อเทียบกับตำแหน่งก่อนหน้าบนกราฟเดียวกันเท่านั้น ไม่ใช่เทียบข้ามคู่เงินหรือช่วงเวลาที่ต่างกัน แท่งเทียนที่มี range กว้างและ volume สูงผิดปกติเพียงไม่กี่แท่งสามารถครอบงำผลรวมสะสมไปได้อีกนาน ซึ่งอาจทำให้เส้นดูเหมือนกำลังมี trend ทั้งที่แท่งเทียนล่าสุดไม่มีอะไรโดดเด่นเลย ใช้ A/D เพื่อยืนยันหรือตั้งคำถามกับสิ่งที่ราคาและโครงสร้างตลาดกำลังบอกอยู่แล้ว (ดู เทรนด์กับตลาดไซด์เวย์ สำหรับการอ่านโครงสร้างนั้นก่อน) มากกว่าจะใช้เป็นสัญญาณโดดๆ และควรกำหนดขนาดโพซิชันพร้อม stop ที่ชัดเจนเสมอก่อนลงมือตามสัญญาณใดๆ — ดู พื้นฐานการบริหารความเสี่ยง สำหรับวิธีคำนวณขนาดโพซิชัน

ดาวน์โหลดอินดิเคเตอร์

อินดิเคเตอร์ custom ตัวนี้คำนวณ Accumulation/Distribution ในหน้าต่างแยก และแจ้งเตือนอัตโนมัติเมื่อ A/D ตัดกับเส้น signal average ของมันเอง มีให้ทั้ง MetaTrader 4 และ MetaTrader 5 ด้านล่าง

ดาวน์โหลด accumulation-distribution-alert.mq4

สำหรับ MetaTrader 4 — นี่คือ source code (.mq4) เปิดและตรวจสอบให้ครบถ้วนก่อนใช้งาน

ดาวน์โหลดไฟล์

ดาวน์โหลด accumulation-distribution-alert.mq5

สำหรับ MetaTrader 5 — นี่คือ source code (.mq5) เปิดและตรวจสอบให้ครบถ้วนก่อนใช้งาน

ดาวน์โหลดไฟล์

วิธีติดตั้ง

MetaTrader 4

  1. ดาวน์โหลดไฟล์ accumulation-distribution-alert.mq4 ด้านบน
  2. เปิด MetaTrader 4FileOpen Data Folder
  3. นำไฟล์ไปวางในโฟลเดอร์ MQL4/Indicators
  4. รีสตาร์ท MetaTrader 4 จากนั้นลากจากหน้าต่าง Navigator ไปวางบนกราฟ

MetaTrader 5

  1. ดาวน์โหลดไฟล์ accumulation-distribution-alert.mq5 ด้านบน
  2. เปิด MetaTrader 5FileOpen Data Folder
  3. นำไฟล์ไปวางในโฟลเดอร์ MQL5/Indicators
  4. รีสตาร์ท MetaTrader 5 จากนั้นลากจากหน้าต่าง Navigator ไปวางบนกราฟ

ทั้งสองไฟล์เป็นซอร์สโค้ด เปิดอ่านใน MetaEditor ก่อนนำไปรันกับบัญชีใด ๆ เสมอ