หน้าแรก ตัวชี้วัดทางเทคนิค โพสต์

iSpread: ตัวชี้วัดการกระจายสำหรับการเทรดคู่ใน MetaTrader 5

ไฟล์แนบ
2197.zip (3.72 KB, ดาวน์โหลด 0 ครั้ง)

iSpread เป็นตัวชี้วัดที่ช่วยให้คุณสร้างสัญลักษณ์สังเคราะห์จากคู่สกุลเงินที่เลือกได้อย่างง่ายดาย

อัลกอริธึมของตัวชี้วัดนี้มีดังนี้:

Selecting initial data

  1. วันเริ่มต้น - เลือกวันเริ่มต้นในการสร้างสัญลักษณ์สังเคราะห์ เพื่อหลีกเลี่ยงการใช้ข้อมูลประวัติที่เกินความจำเป็น
  2. สัญลักษณ์ 1/2 - เลือกคู่สกุลเงินสองคู่ที่ต้องการใช้
ขั้นตอนถัดไปคือการเตรียมข้อมูลที่จำเป็นสำหรับการคำนวณ

Data Conversion

  1. การดำเนินการ - เลือกการดำเนินการทางคณิตศาสตร์เพื่อรวมสองชุดข้อมูลเข้าด้วยกัน มี 4 การดำเนินการ ได้แก่ - + / * โดยส่วนตัวผมใช้การหาค่าความแตกต่างและอัตราส่วน อาจจะมีการใช้ผลรวมและผลคูณด้วย แต่ยังไม่เคยลองเลย ถ้ามีใครมีประสบการณ์ก็ยินดีรับฟัง
  2. สัญลักษณ์กลับ 1/2 - ทำการกลับค่าชุดข้อมูลที่เลือกถ้าความสัมพันธ์เป็นลบ
  3. สัญลักษณ์ดีกรี 1/2 - การยกกำลังของชุดข้อมูลที่เลือก แม้ว่าผมจะรู้ว่าจำเป็น แต่ไม่เคยใช้ตัวเลือกนี้เพราะไม่เข้าใจว่าทำไมต้องยกกำลัง อาจจะใช้เพื่อปรับขนาดให้เท่ากัน แต่โดยส่วนตัวใช้การคูณแทน
  4. สัญลักษณ์ตัวคูณ 1/2 - การคูณชุดข้อมูลด้วยจำนวนที่กำหนด เพื่อปรับขนาดให้เท่ากัน
  5. ลอการิธึม - การแปลงชุดข้อมูลที่ได้ให้เป็นสเกลลอการิธึม ถ้าใช้ลอการิธึม จะเตรียมชุดข้อมูลสุดท้ายโดยการหาค่าความแตกต่างระหว่างสองชุดข้อมูลต้นฉบับ ถ้าไม่ใช้ ให้เลือกอัตราส่วนเป็นการดำเนินการ โดยทั่วไปการแปลงสเกลนี้ช่วยหลีกเลี่ยงอิทธิพลจากแนวโน้มที่เป็นกำลังสอง แต่ในช่วงเวลาสั้นๆ ผมไม่เห็นความแตกต่าง จึงมักไม่ใช้และเลือกอัตราส่วนแทน
  6. การทำให้เรียบ Period - หลังจากดำเนินการทั้งหมด ก่อนที่จะรวมสองชุดข้อมูลเข้าด้วยกัน จะมีการทำให้เรียบเบาๆ ของข้อมูลที่ได้ โดยการใช้ค่าเฉลี่ยเคลื่อนที่ (MA) ในช่วงเวลาที่กำหนด ไม่ทำให้ข้อมูลเสียหาย แต่ทำให้ลดสัญญาณรบกวนลง

เพียงแค่นี้เราก็เตรียมข้อมูลและสร้างสัญลักษณ์สังเคราะห์ได้แล้ว มาดูกันว่าที่ผ่านมาเราทำอะไรบ้าง:

เราใช้ EURUSD:

eurusd

เราใช้ GBPUSD:

gbpusd

นี่คือสัญลักษณ์สังเคราะห์:

synthetic symbol


ขั้นตอนสุดท้ายคือการกำหนดค่าความเบี่ยงเบนเพื่อหาจุดเข้า:

Finding Deviations

  1. การเลือกอัลกอริธึม - ทำให้ไม่มีแนวโน้มด้วยค่าเฉลี่ยเคลื่อนที่หรือค่าแรกแตกต่าง (First Difference) เพื่อเอาแนวโน้มออกจากชุดข้อมูลที่ได้ มีสองวิธีที่รู้จัก (ผมชอบวิธีที่สอง) วิธีแรกคือการเอาค่า MA ในช่วงเวลาที่กำหนดออกจากชุดข้อมูลที่ได้ วิธีที่สองคือการใช้ความแตกต่างครั้งแรกสองครั้ง โดยครั้งแรกสำหรับแต่ละคู่ แล้วหาค่าความแตกต่างระหว่างผลลัพธ์ การเปรียบเทียบผลลัพธ์ของทั้งสองวิธีจะคล้ายกันเมื่อไม่มีการเคลื่อนไหวที่รุนแรงในชุดข้อมูลหนึ่ง แต่เมื่อมีการเคลื่อนไหวที่รุนแรง วิธีแรกจะทำให้ผลลัพธ์กลับไปสู่อัตรา 0 ได้เร็วขึ้น ซึ่งอาจเป็นการบ่งบอกที่ผิด
  2. ระยะเวลาสำหรับอัลกอริธึม - การเลื่อน หากตั้งค่าเป็น 0 สัญลักษณ์สังเคราะห์จะไม่ถูกปรับเปลี่ยน
  3. แสดงระดับ - แสดงหรือซ่อนระดับความเบี่ยงเบนที่ข้ามเพื่อแสดงการตัดสินใจเข้าตลาด ผมใช้สามระดับในทั้งสองทิศทาง: แดง, เหลือง, เขียว
  4. วิธีการคำนวณระดับ - มีสามวิธีในการกำหนดระดับเหล่านี้ วิธีที่ 1 (เรียกว่าการทำให้เป็นมาตรฐานใน 0..1 พร้อมการเลื่อน) - สัญลักษณ์สังเคราะห์ที่ไม่มีแนวโน้มจะถูกทำให้เป็นมาตรฐานในช่วงหนึ่งหน่วย และตามด้วยการเลื่อนที่ -0.5 เพื่อให้การเปลี่ยนแปลงอยู่รอบๆ 0

normalization


หลังจากมีการเบี่ยงเบนที่ดีสองหรือสามครั้งจากชุดข้อมูลเริ่มต้น คุณสามารถเริ่มไว้วางใจในระดับนี้ได้

วิธีที่ 2 (เรียกว่าระดับของค่าติดขัด) - ติดตามค่าการเบี่ยงเบนสูงสุดที่แท้จริงและแบ่งเป็น 3 ระดับเพื่อเข้าตลาด

ลักษณะจะเหมือนกับการทำให้เป็นมาตรฐาน - ไม่แนะนำให้เชื่อระดับเหล่านี้จนกว่าจะได้รับค่าติดขัดที่เสถียร

เมื่อใช้วิธีนี้เราจะเห็นภาพดังต่อไปนี้:

Deviations on extrema

มีข้อดีอย่างมากในการใช้วิธีการเหล่านี้ในการวาดระดับ - ระดับเหล่านี้จะไม่แคบลง แต่ก็มีข้อเสียคือถ้ามีการกระโดด ระดับการคำนวณในภายหลังจะอิงตามมัน ซึ่งอาจจะต้องมีการปรับค่าตัวคูณระดับ (Levels Coefficient) เพื่อปรับระดับนั้นด้วยตนเอง

วิธีที่ 3 ในการวาดระดับ - การคำนวณส่วนเบี่ยงเบนมาตรฐาน วิธีนี้ไม่ได้ถูกนำไปใช้ในตัวชี้วัด เนื่องจากมันทำให้ระดับแคบลง ซึ่งไม่เป็นที่ยอมรับในความคิดของผม

P.S. ตัวชี้วัดนี้ได้ย้ายจาก MetaTrader 4 เพื่อทดสอบไอเดียบางอย่างใน Multitester แต่มีข้อสังเกตดังนี้:

  1. ตัวชี้วัดสร้างเสียงรบกวนถ้าไม่สามารถเข้าถึงข้อมูลทั้งหมดได้
  2. ตัวชี้วัดสามารถใช้ข้อมูลก่อนหน้าเมื่อมีการขาดข้อมูลในประวัติ แต่เนื่องจากข้อ 1 ทำให้ข้อมูลว่างเปล่า
  3. ถ้ามีสิ่งแปลกปลอมวาดอยู่ ให้รีเฟรชกราฟ เปลี่ยนช่วงเวลา คู่สกุลเงิน ฯลฯ
  4. ผมพยายามใช้ตัวจับเวลาเมื่อไม่มีข้อมูล - ผลลัพธ์ไม่เป็นที่น่าพอใจจึงลบตัวจับเวลาออกไป
  5. ผมสงสัยว่าข้อ 1-4 เกิดจากความรู้ MQL5 ของผมที่ยังไม่เพียงพอ

โพสต์ที่เกี่ยวข้อง

ความคิดเห็น (0)