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

ปรับแต่ง Cross Moving Average - อินดิเคเตอร์สำหรับ MetaTrader 4

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

เวอร์ชันอัปเดต

ดูรายละเอียดด้านล่าง



หลายคนยังเชื่อใน Cross Moving Average และในฐานะที่เป็นโปรแกรมเมอร์ ฉันมักจะมองหาวิธีการที่ง่ายที่สุด ฉันเจอประโยคหนึ่งที่ว่า "ไม่มีการตั้งค่ามหัศจรรย์สำหรับ Cross MA" อินดิเคเตอร์นี้จะลองตั้งค่าหลายๆ ค่าในแต่ละครั้งที่มีการเปลี่ยนกรอบเวลา หรือสัญลักษณ์ หรือแม้กระทั่งในแต่ละแท่งเทียนใหม่ มันทำงานโดยการ "เทรด" แท่งเทียนล่าสุดประมาณ 100 แท่ง และเลือกค่าที่ประสบความสำเร็จดีที่สุด มันวัดระยะห่างระหว่างสัญญาณสั้นและยาว เหมือนกับว่าใครก็ตามที่เทรดนี้โดยไม่มี Stop Loss มันจะคำนึงถึง Spread ด้วย

หน้าต่างด้านล่างจะแสดงระยะห่างระหว่าง Short และ Long Moving Average ค่าบวกสำหรับการเทรด Long และค่าลบสำหรับการเทรด Short โดยวัดเป็น Pips โดยใช้ "Profit Oscillator" คุณสามารถปิดการเทรดในกำไรได้โดยการตรวจสอบว่าการเทรด Short/Long มีความแตกต่างสูงสุดและปิดก่อนถึงจุดสูงสุด

เส้นด้านบนบอกว่า "กำไรวันนี้ด้วย MA 5/19 คือ 60 Pips" โดยอินดิเคเตอร์หรือผู้ใช้งานได้เลือก 5 สำหรับ MA ที่เร็วและ 19 สำหรับ MA ที่ช้า จากนั้นช่องข้อความถัดไปจะแสดงผลลัพธ์จากเมื่อวานนี้ ตามด้วยสัญญาณ Long หรือ Short เทรดเดอร์อาจสนใจที่จะเพิ่ม Moving Average สองตัวลงในกราฟและตั้งค่าตามค่าที่กำหนด

ฉันกำลังมองหาคำแนะนำเกี่ยวกับ MA ที่แตกต่างกันมากขึ้นในวรรณกรรม

พารามิเตอร์

  • PeriodShort=6;
    ระยะเวลาสำหรับ MA ที่เร็ว หาก Optimize เป็นจริงให้ข้ามไป
  • PeriodLong=40;
    ระยะเวลาสำหรับ MA ที่ช้า หาก Optimize เป็นจริงให้ข้ามไป
  • Method=0;
    วิธีการสำหรับ iMA
  • Optimize=true;
    อินดิเคเตอร์จะเลือกค่าสำหรับ MA ที่เร็วและช้าโดยอัตโนมัติ
  • DrawTriangles=true;
    วาดสามเหลี่ยมลงในกราฟ
  • MinShortMA=2;
    MaxShortMA=20;
    MaxLongMA=100;
    ค่าต่ำสุดและสูงสุดสำหรับการปรับแต่ง จะลองค่าระหว่าง 2 ถึง 20 สำหรับ MA ที่เร็วและ 7 ถึง 100 สำหรับ MA ที่ช้า
  • StepLongMA=5;
    StepShortMA=5;
    เพื่อเร่งการค้นหา จะลองค่าทุกๆ ค่าที่สาม
  • CountOptimize=200;
    จะวิเคราะห์ 200 แท่งเทียนจากอดีต ยิ่งวิเคราะห์มากเวลาจะช้าลง ตัวเลขที่สูงอาจส่งผลให้ผลลัพธ์ไม่ดี
  • OptimizeOnNewCandle=false;
    เริ่มการปรับแต่งในแต่ละแท่งเทียนใหม่ หมายเหตุ: การปรับแต่งอาจใช้เวลานานและชะลอเทอร์มินัลของคุณ
  • Alarm=true;
    ส่งสัญญาณเสียงหากมีสัญญาณใหม่เกิดขึ้น

ขั้นตอนถัดไป ฉันต้องการสร้าง Expert Advisor ของมัน อย่างไรก็ตาม ฉันยังสงสัยว่าจะตรวจจับแนวโน้มข้างๆ ที่ไม่ควรเทรดด้วย Cross MA ได้อย่างไร จนถึงตอนนี้ EA ของฉันที่มีพื้นฐานจาก Cross MA ที่ปรับแต่งแล้วบางครั้งทำกำไรได้ดีและทำให้ขาดทุนในวันถัดไป

เวอร์ชันอัปเดต

ฟีเจอร์ใหม่:



- อินดิเคเตอร์วาด Moving Averages ภายในกราฟ "Profit Oscillator" จะอยู่ในอินดิเคเตอร์ที่แตกต่าง (MAProfit2) ทั้งสองสามารถสื่อสารผ่านตัวแปร global


- สนับสนุน MA Channels (ดูอีบุ๊กที่ www.vnchanger.org) MA ที่ช้าจะแบ่งออกเป็นสองเส้น หนึ่งสำหรับค่าต่ำและอีกหนึ่งสำหรับค่าสูง ซึ่งจะช่วยหลีกเลี่ยงการขาดทุนในตลาดข้างเคียง


- แทนที่จะทดสอบการรวมกันทั้งหมด สามารถทดสอบช่วง MA ที่เฉพาะเจาะจงที่พบในวรรณกรรมได้ เพื่อทำเช่นนี้ให้ตั้งค่า OptimizeAll เป็น false และ OptimizeSystems เป็น true


คุณสามารถเพิ่มหรือแก้ไขตารางระบบได้ อย่าลืมที่จะจบด้วย 0,0,0,0,0,0



extern bool OptimizeAll=false;
extern bool OptimizeSystems=true;

int Systems[] = {PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,200,
PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,100,// Death Cross
PRICE_MEDIAN,MODE_SMA,10, PRICE_MEDIAN,MODE_SMA,40,
PRICE_MEDIAN,MODE_SMA,13, PRICE_MEDIAN,MODE_SMA,26,
PRICE_MEDIAN,MODE_SMA,5, PRICE_MEDIAN,MODE_SMA,10,
PRICE_CLOSE, MODE_EMA,5, PRICE_OPEN, MODE_EMA,6,
PRICE_MEDIAN,MODE_SMA,3, PRICE_MEDIAN,MODE_SMA,8,

0,0,0,0,0,0};


- การแจ้งเตือนใหม่สามารถให้เสียงได้ เพื่อสนับสนุนสิ่งนี้ คุณต้องดาวน์โหลด gspeak เช่น จาก https://www.mql5.com/en/code/8621



หากคุณไม่ต้องการให้มีเสียง คุณต้องแก้ไขโค้ด ลบบรรทัดจาก #import "speak.dll" จนถึง #import และยกเลิกการคอมเมนต์ฟังก์ชัน gSpeak ขอบคุณผู้เขียนสำหรับ DLL ที่ยอดเยี่ยมนี้



#import "speak.dll"
void gRate(int rate);
void gVolume(int rate);
void gPitch(int rate);
void gSpeak(string text);
#import

// หากคุณไม่มี (หรือไม่ต้องการ) speak.dll ให้ยกเลิกความคิดเห็นนี้
/*
void gSpeak(string x)
{
}
*/

ถ้าคุณไม่ลบเสียง หลังจากทำกำไรได้สักระยะ คุณอาจเริ่มชอบเสียงของ "Oncle Sam" ที่พูด



- ในการเริ่มต้นครั้งแรกหรือเมื่อเปลี่ยนพารามิเตอร์ มันจะจดจำแท่งเทียนในการเทรดครั้งแรก นี่จะช่วยหลีกเลี่ยงการวาดแท่งเทียนเก่าด้วยแท่งเทียนใหม่



- สามเหลี่ยมตอนนี้มีสามสี: สีเขียวสำหรับการเทรด Long, สีแดงสำหรับการเทรด Short และสีม่วงสำหรับการเทรดที่ขาดทุน (Long หรือ Short) สีสามารถแก้ไขในโค้ดต้นฉบับ:

int ColorLongTrade = MediumSpringGreen;
int ColorShortTrade = Red;
int ColorBadTrade = Violet;

- ขั้นตอนใน MA Optimization ถูกตั้งค่าเป็น 5

- ชื่อภายในของอินดิเคเตอร์นี้ถูกเปลี่ยนเป็น SMA (Smart Ass ... มันแสดงให้เห็นว่าคุณควรจะเทรดอย่างไรหลังจากนั้น)


MA Optimizer


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

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