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

UltraCCI - ตัวชี้วัดเพื่อการเทรดใน MetaTrader 5

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

ผู้เขียนจริง:

dm34@mail.ru

วันนี้เราจะมาทำความรู้จักกับ UltraCCI ซึ่งเป็นตัวชี้วัดที่อิงจาก CCI (Commodity Channel Index) และการวิเคราะห์ทิศทางของแนวโน้มจากสัญญาณหลายๆ เส้น โดยอัลกอริธึมในการคำนวณสัญญาณจะมีรายละเอียดดังนี้:

  • StartLength - ค่าตั้งต้นขั้นต่ำของเส้นสัญญาณแรก;
  • Step - ระยะเวลาที่เปลี่ยนแปลง;
  • StepsTotal - จำนวนของการเปลี่ยนแปลงระยะเวลา.

ค่าระยะเวลาใดๆ จากกลุ่มเส้นสัญญาณจะถูกคำนวณโดยใช้ความก้าวหน้าเชิงเลข:

SignalPeriod(Number)  =  StartLength + Number * Step

โดยที่ค่าของตัวแปร Number จะมีช่วงตั้งแต่ศูนย์ถึง StepsTotal ค่าที่ได้จะถูกเพิ่มเข้าไปในอาเรย์ของตัวแปรและนำไปใช้ที่แต่ละจุดของตัวชี้วัดเพื่อให้ได้อาเรย์ของค่า RSI ที่ถูกทำให้เรียบเสร็จ การคำนวณทิศทางของแนวโน้มปัจจุบันสำหรับการทำให้เรียบแต่ละครั้งจะถูกคำนวณและยังมีการกำหนดจำนวนของแนวโน้มเชิงบวกและเชิงลบสำหรับอาเรย์ทั้งหมดของ CCI ที่ถูกทำให้เรียบในที่สุด จำนวนของแนวโน้มเชิงบวกและเชิงลบจะถูกทำให้เรียบอีกครั้งและใช้เป็นเส้นตัวชี้วัดที่สร้างเป็นเมฆสีซึ่งแสดงด้วยคลาส DRAW_FILLING.

ทิศทางของแนวโน้มในตัวชี้วัดนี้จะถูกกำหนดโดยสีของเมฆ ขณะที่ความแข็งแกร่งจะถูกกำหนดโดยความกว้างของเมฆ คุณสามารถใช้ระดับที่มีการซื้อเกิน (UpLevel) และมีการขายเกิน (DnLevel) ที่ตั้งค่าเป็นเปอร์เซ็นต์จากความแอมพลิจูดสูงสุดของตัวชี้วัด.

นอกจากนี้ ตัวชี้วัดยังสามารถกำหนดทิศทางของความเร็วการเปลี่ยนแปลงพลังของแนวโน้มที่แสดงเป็นจุดสีอีกด้วย ถ้าความแข็งแกร่งของแนวโน้มเพิ่มขึ้น สีของจุดเหล่านี้จะตรงกับสีของเมฆ ถ้าไม่เช่นนั้นจุดจะมีสีตรงข้าม.

คุณสามารถเลือกอัลกอริธึมการทำให้เรียบจากสิบเวอร์ชันที่แตกต่างกัน:

  1. SMA - ค่าเฉลี่ยเคลื่อนที่แบบธรรมดา;
  2. EMA - ค่าเฉลี่ยเคลื่อนที่แบบเอกซ์โพเนนเชียล;
  3. SMMA - ค่าเฉลี่ยเคลื่อนที่แบบทำให้เรียบ;
  4. LWMA - ค่าเฉลี่ยเคลื่อนที่แบบน้ำหนักเชิงเส้น;
  5. JJMA - ค่าเฉลี่ยแบบปรับตัว;
  6. JurX - การทำให้เรียบแบบอัลตร้าเชิงเส้น;
  7. ParMA - การทำให้เรียบแบบพาราโบลิก;
  8. T3 - การทำให้เรียบแบบเอกซ์โพเนนเชียลหลายเท่า;
  9. VIDYA - การทำให้เรียบโดยใช้วิธีของ Tushar Chande;
  10. AMA - การทำให้เรียบโดยใช้วิธีของ Perry Kaufman.

ต้องบอกว่า Phase parameters สำหรับอัลกอริธึมการทำให้เรียบต่างๆ มีความหมายที่แตกต่างกันโดยสิ้นเชิง สำหรับ JMA จะเป็นตัวแปร Phase ภายนอกที่เปลี่ยนแปลงจาก -100 ถึง +100 สำหรับ T3 จะเป็นการทำให้เรียบที่ถูกคูณด้วย 100 เพื่อการแสดงผลที่ดียิ่งขึ้น สำหรับ VIDYA จะเป็นระยะเวลา CMO oscillator และสำหรับ AMA จะเป็นระยะเวลา EMA ช้า ในอัลกอริธึมอื่นๆ ตัวแปรเหล่านี้จะไม่ส่งผลต่อการทำให้เรียบ สำหรับ AMA ระยะเวลา EMA เร็วจะมีค่าเป็นค่าคงที่และเท่ากับ 2 ตามค่าเริ่มต้น สัดส่วนของการเพิ่มพลังก็เท่ากับ 2 สำหรับ AMA.

ตัวชี้วัดนี้ใช้คลาสจาก SmoothAlgorithms.mqh (ต้องคัดลอกไปยัง terminal_data_folder\MQL5\Include) การใช้คลาสเหล่านี้ได้ถูกอธิบายอย่างละเอียดในบทความ "การคำนวณค่าเฉลี่ยของชุดราคาเพื่อการคำนวณกลางโดยไม่ต้องใช้บัฟเฟอร์เพิ่มเติม".

พารามิเตอร์นำเข้าของตัวชี้วัด:

//+----------------------------------------------+
//| พารามิเตอร์นำเข้าของตัวชี้วัด                   |
//+----------------------------------------------+
input int CCI_Period=13;                           // ระยะเวลา CCI
input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // ราคาที่ใช้
//----
input Smooth_Method W_Method=MODE_JJMA;           // วิธีการทำให้เรียบ
input int StartLength=3;                          // ระยะเวลาเริ่มต้นในการทำให้เรียบ                    
input int WPhase=100;                             // พารามิเตอร์การทำให้เรียบ
//----  
input uint Step=5;                                // ระยะเวลาที่เปลี่ยนแปลง
input uint StepsTotal=10;                         // จำนวนการเปลี่ยนแปลงระยะเวลา
//----
input Smooth_Method SmoothMethod=MODE_JJMA;      // วิธีการทำให้เรียบ
input int SmoothLength=3;                        // ความลึกในการทำให้เรียบ
input int SmoothPhase=100;                       // พารามิเตอร์การทำให้เรียบ
//----                          
input uint UpLevel=80;                            // ระดับที่มีการซื้อเกิน, %%
input uint DnLevel=20;                            // ระดับที่มีการขายเกิน, %%
input color UpLevelsColor=DarkViolet;             // สีระดับที่มีการซื้อเกิน
input color DnLevelsColor=DarkViolet;             // สีระดับที่มีการขายเกิน
input STYLE Levelstyle=DASHDOTDOT_;              // สไตล์ระดับ
input WIDTH LevelsWidth=Width_1;                 // ความกว้างระดับ                       
//+----------------------------------------------+

UltraCCI

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

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