สวัสดีครับเพื่อนๆ เทรดเดอร์ทุกคน! วันนี้เรามาพูดถึงการสร้างกริดใน MetaTrader 4 กันดีกว่า การสร้างกริดนี้ทำให้ผมมีแรงบันดาลใจในการทำงานนี้ขึ้นมา
ขั้นแรกเราจะต้องดึงข้อมูล N+M แท่งจากประวัติศาสตร์ โดยให้เขียนสัญญาณของอินดิเคเตอร์ใน N แท่ง และผลลัพธ์ใน M แท่ง
ผลลัพธ์นี้จะถูกบันทึกลงในไฟล์ชื่อว่า [ลำดับของสัญญาณอินดิเคเตอร์จาก N แท่ง].csv
ในไฟล์นี้จะมีผลลัพธ์จากประวัติศาสตร์ตามลำดับ
ตัวอย่างเช่น ให้เขียนโค้ดดังนี้ในบล็อกเล็กๆ:
int history [1000]; for (int i=analiz_bars+poisk_fractals;i>poisk_fractals;i--) { history [i] = NormalizeDouble((tocnost*iMACD(NULL,0,Per_MACD/4,Per_MACD,9,PRICE_CLOSE,MODE_MAIN, i)/(100*Point)),0); }
จากนั้นเราจะได้อาร์เรย์ที่สามารถนำไปใช้ต่อไปได้ในโค้ด:
string posledovatelnost = shethik +"_"; for (i=analiz_bars+poisk_fractals;i>poisk_fractals;i--) { posledovatelnost =posledovatelnost+history [i]+"_"; } posledovatelnost = posledovatelnost +".csv";
แล้วบันทึกไฟล์ด้วยชื่อ [posledovatelnost].
ต่อไปให้เขียนจำนวนการเรียกใช้ (เพื่อกำหนดน้ำหนักทางสถิติ) และผลลัพธ์ของบล็อกถัดไปลงในไฟล์นั้น:
double MaxHighPik = High [poisk_fractals]; //เริ่มเปรียบเทียบแท่ง double MaxLowPik = Low [poisk_fractals]; for (i=poisk_fractals; i>=1; i--) { if (MaxHighPik < High [i]) { MaxHighPik = High [i]; } if (MaxLowPik > Low [i]) { MaxLowPik = Low [i]; } }
ทิศทางการเคลื่อนไหวของ N แท่งถัดไปและค่าที่สูงสุดที่ได้จะถูกกำหนดที่นี่ โดยผลลัพธ์จะถูกเฉลี่ยด้วยความสามารถในการกำหนดน้ำหนักทางสถิติที่มากขึ้นหรือน้อยลงโดยใช้ตัวแปร zabyvaemost ค่าอินดิเคเตอร์จะถูกเฉลี่ยโดยตัวแปร tocnost หากมีการเฉลี่ยน้อยที่สุด จะให้ทิศทางเพียง +1 หรือ -1 เท่านั้น
แต่ถึงแม้ว่าผลลัพธ์จะดูยอดเยี่ยม แต่ความสำเร็จนั้นยังไม่ค่อยดีนัก โดยมีตัวอย่างของระบบเทรดสองตัวที่ให้ผลกำไรไม่ค่อยเกิน 1.1
ตัวอย่างการใช้ MA:

หากใครสามารถสร้าง EA ที่ดีได้ รบกวนติดต่อผมด้วยนะครับ
ความคิดเห็น 0