คู่มือเพื่อการแปลงวิธี FX discretionary (裁量) เป็น EA อย่างรวดเร็วที่สุด
สวัสดีครับ ผมชื่อ wai-zo- (โปรไฟล์ GogoJungle) นะครับ
ผมพัฒนาและเผยแพร่โปรแกรมซื้อขายอัตโนมัติ FX (EA) มา 5 ปีแล้ว
บทความนี้ ผมอยากสรุปและเผยแพร่สาระสำคัญในการพัฒนา EA ที่ได้เรียนรู้ไว้
การเรียนรู้ที่ต้องใช้ความรู้และเวลา เช่น การจัดการข้อผิดพลาด จะขอใส่ตัวอย่างโค้ดของผมไว้เป็นแบบอย่าง
ขอให้ใช้งานเป็นคู่มือที่สามารถคัดลอกวางได้เลย
【บุคคลเป้าหมาย】
・ผู้ที่เคยใช้ MT4 และ EA มาก่อน
・ผู้ที่สามารถทำ backtest บน MT4 ได้
・ผู้เริ่มต้น/ไม่มีประสบการณ์ด้านการพัฒนา EA
【สิ่งที่คุณสามารถทำในบทความนี้】
・การได้มาซึ่งความรู้โปรแกรมพื้นฐานที่จำเป็นในการพัฒนา EA
・ความเข้าใจขั้นตอนการทำ EA จากวิธีการซื้อขาย FX แบบ discretionary
・การสร้าง EA แบบง่ายๆ ด้วยตนเองและการประเมินด้วย backtest
・การได้มาซึ่งซอร์สโค้ดที่เป็นแม่แบบของ EA
■บทนำ
“เมื่อได้ยินคำว่าโปรแกรม ก็รู้สึกว่าไม่ไหวสำหรับฉัน….”
“ต้องเป็นผู้เชี่ยวชาญเท่านั้นถึงจะทำได้ใช่ไหม?”
ข้อความนี้เป็นวลีที่มักพบเวลาได้รับคำสั่งพัฒนา EA
(แม้ผมจะทราบว่ามันเป็นคำพูดที่ทำให้ผู้พัฒนา EA รู้สึกสบายใจ...)
แต่ไม่ใช่เรื่องจริงเลย
ถ้าเป็น EA อย่างเดียวก็ใช้เวลาไม่ถึงหกเดือนก็สามารถพัฒนาได้ด้วยตัวเองจะเป็นอย่างนั้นได้
เพราะว่า
การพัฒนา EA ใช้ภาษา MQL ซึ่งเป็นภาษาที่บริษัท MetaQuotes ตัวผู้พัฒนาแพลตฟอร์มการเทรด FX อย่าง MT4 ได้กำหนดไว้
ในภาษา MQL นี้มีคำสั่งที่เกี่ยวข้องกับการเทรด FX มากมายฟังก์ชันที่เกี่ยวกับการซื้อขาย และกระบวนการต่างๆ เช่น การดึงค่าค่าเงินที่แสดงเป็นราคาสี่ส่วนและค่าอินดicator มาตรฐานที่มีการกำหนดไว้ล่วงหน้าอย่างมากแล้วจึงเป็นไปได้อย่างมากที่จะสร้าง EA โดยการผสมผสานฟังก์ชันเหล่านี้อย่างชาญฉลาด
เมื่อได้จดจำกฎพื้นฐานเล็กๆ ก็เหมือนกับการเล่นก่อสร้างด้วยบล็อกเลโก้
เมื่อสามารถสร้าง EA ด้วยโปรแกรมของตัวเองได้ ก็จะสามารถสร้าง EA ด้วยวิธีที่ยืดหยุ่นและตรงใจมากกว่าซอฟต์แวร์สร้าง EA ที่ใช้เงื่อนไขแบบง่ายๆจึงสามารถนำเสนอวิธีการเทรดที่ยืดหยุ่นตามที่ต้องการได้
・จับคู่เพื่อพิจารณาตัวชี้วัดใหม่ๆ
・ดึงข้อมูลเศรษฐกิจจากเว็บไซต์มาประมวลผล
ด้วยเพียงความคิดสร้างสรรค์เล็กๆจะพบวิธีการเทรดที่ได้เปรียบ (ดูเหมือนจะได้เปรียบ) ด้วยวิธีเฉพาะของตนเอง
การวิเคราะห์เชิงเทคนิคต้องมีการทดสอบสมมติฐานเป็นระยะเวลานาน
เพื่อให้ได้ผลลัพธ์ที่เชื่อถือได้ กลยุทธ์จึงควรถูกนำไปลงในโปรแกรมในอนาคตจะยังคงมีคุณค่า
【ข้อควรระวัง】
・บทความนี้ถูกออกแบบเพื่อความเข้าใจขั้นพื้นฐานที่สุดและ ToDo สำหรับการสร้าง EA ด้วยตัวเองเท่านั้น รายละเอียดเพิ่มเติม เช่นการทำเฟลเซฟลความผิดพลาด ยังไม่ได้รวมไว้
・บทความนี้ไม่รับประกันความเสียหายใดๆ ที่เกิดขึ้นจากการใช้งาน โปรดใช้งานด้วยความรับผิดชอบของตนเอง
・ห้ามคัดลอก ทำสำเนา แพร่หลาย หรือส่งต่อโดยไม่ได้รับอนุญาต
แล้วเรามาเริ่มกันเลย
ต่อไปนี้จะเป็นส่วนที่มีค่าใช้จ่ายสำหรับผู้ที่ต้องการพัฒนา EA แต่ผมตั้งใจจะช่วยให้มีคุณค่าสูงสุด โครงสร้างวิทยานิพนธ์ถูกปรับปรุงให้มีประสิทธิภาพมากที่สุด
สำหรับ EA ที่ยังไม่เคยถูกกล่าวถึงมาก่อน หรือเป็นเรื่องง่ายกว่าที่คิด ผมเผยโค้ดทั้งหมดให้เห็นอย่างไม่มีกั๊ก
เพื่อให้ผู้เริ่มต้นเข้าใจง่าย ผมใช้ภาพประกอบมากขึ้น
การเรียนรู้โปรแกรมที่ดีที่สุดคือการลงมือทำด้วยตัวอย่างจริง
สื่อบนเว็บที่สามารถคัดลอกวางเพื่ออ่านและลองทำได้เช่นนี้กว่าหนังสือ"ประสบการณ์"ที่ผู้อ่านจะได้รับ
ขอให้ใช้ประสบการณ์ 5 ปีของฉันเป็นแรงผลักดัน เรามุ่งหน้าไปสู่ระบบเทรดล้ำสมัยด้วยกัน
หากมีการแก้ไขหรือสงสัย กรุณาติดต่อได้ตลอดเวลา
[รุ่นแรก]
13 มีนาคม 2019
【ภาพรวมเนื้อหา】
โจทย์โลจิกของหัวข้อนี้คือ...
เดิมทีคำกล่าวจากแม่ (ประสบการณ์ FX 10 ปี) ว่าจะลองทำ EA ให้เป็น discretionary
และตรวจสอบจำนวนตำแหน่งปัจจุบันเป็นขั้นต้นก่อน
เมื่อมีจำนวนตำแหน่งสูงกว่าขีดจำกัดจะไม่มีความจำเป็นในการเข้าสถานะใช่ไหมใช่ครับ
ตรงนี้การอธิบายอาจสับสนเล็กน้อย กรุณาคัดลอกวางไปใช้งานได้เลย
รายละเอียดการทำงานถูกระบุไว้ในคอมเมนต์
_pos จะเก็บจำนวนตำแหน่งที่ EA นี้มีอยู่


โอ้! เจ๋งมาก!
ตรรกะเรียบง่ายแบบไม่ผ่านการแก้ไขนี้ ส่วนที่ขึ้นลงขวาเป็นเรื่องยากจริงๆ
・〇〇
・〇〇
หากทำอะไรบ้าง อาจจะได้สิ่งดีๆ ออกมา
【บทวิจารณ์จากผู้ทรงคุณวุฒิ (คัดสรร)】
■การสร้างสภาพแวดล้อมการพัฒนา
สำหรับผู้ที่สามารถ backtest บน MT4 ได้อยู่แล้ว สภาพแวดล้อมก็พร้อมใช้งาน
まずเปิด MT4 ขึ้นมาก่อน
คลิกไอคอนสีน้ำตาลที่คล้ายกระดาษ หรือกดปุ่ม F4
จะเปิดหน้าต่างใดขึ้นหรือไม่

“MetaEditor” เปิดขึ้นแล้วใช่ไหม

นี่คือเครื่องมือแก้ไขโปรแกรม
ต่อไปเราจะไปยังการสร้าง EA แบบใหม่กันเลย