วันนี้เรามีวิธีง่ายๆ ในการเชื่อมต่อคำสั่งจากมือสำหรับการใช้งานใน Strategy Tester ที่หลายคนอาจจะยังไม่รู้กัน โดยปกติแล้วเรารู้กันดีว่า ChartEvent ไม่สามารถใช้งานได้กับ Strategy Tester และออบเจ็กต์ที่สามารถวางได้ใน Strategy Tester ในขณะนี้ (โดยใช้ MQL5 เบื้องต้น) จะมีเพียง label และ button เท่านั้น สำหรับ label นั้นไม่มีปัญหาในการใช้งาน แต่สำหรับ button ถึงแม้เราจะสามารถวางมันลงใน tester ได้ แต่เราจะไม่สามารถตรวจสอบสถานะของมันได้หากมีการคลิกหรือลบออกโดยไม่ใช้การเขียนโปรแกรมขั้นสูงและการเชื่อมโยงกับระบบอื่นๆ
กลยุทธ์ที่ผมใช้ในการทำให้มันทำงานได้คือการใช้กระบวนการตรวจสอบไฟล์แบบง่ายๆ ลองนึกถึง EA นี้ว่าเป็นตัวรับสัญญาณแบบสแตนด์อโลน ในทุกๆ การเคลื่อนไหวของราคาจะมีการตรวจสอบโฟลเดอร์สำหรับไฟล์ที่ใช้ในการเปิดคำสั่ง หากพบว่าไฟล์ข้อความที่ต้องการอยู่ในตำแหน่งที่กำหนด EA จะทำการประมวลผลคำสั่งและลบไฟล์นั้นออกไป ดังนั้น การมีไฟล์เฉพาะในโฟลเดอร์จึงเป็นคำสั่งหลักที่จะทำการเปิดการซื้อขาย
ตอนนี้คุณสามารถใช้วิธีไหนก็ได้ในการสั่งให้ EA ทำการเปิดคำสั่งโดยการวางไฟล์ในตำแหน่งโฟลเดอร์ที่กำหนด
ใน EA นี้ ไฟล์ชื่อ buy.txt, sell.txt หรือ close.txt ในโฟลเดอร์ ..\Commoniles ext ของ MetaTrader 5 จะทำการกระตุ้นคำสั่งในการเปิดคำสั่งตามชื่อไฟล์ ไฟล์ข้อความจะว่างเปล่า แต่ชื่อไฟล์และการมีอยู่ในโฟลเดอร์นั้นคือสิ่งที่สำคัญ ไฟล์เหล่านี้จะต้องปรากฏในโฟลเดอร์ <common_data_folder>iles (โฟลเดอร์ของผมคือ C:\Users\Rmd user\AppData\Roaming\MetaQuotes\Terminal\Common\Files\) โดยไฟล์ใดไฟล์หนึ่งในสามนี้ต้องปรากฏในโฟลเดอร์ในเวลาเดียวกัน หากไม่เช่นนั้น EA จะอ่านไฟล์แรกที่พบแล้วทำการเปิดคำสั่งและลบไฟล์ทุกไฟล์ที่มีชื่อนั้นออก
แอปพลิเคชันภายนอกที่คุณจะต้องมีคือแอปที่สร้างหรือให้ไฟล์ข้อความที่ต้องการในโฟลเดอร์ที่กล่าวถึง หรือคุณสามารถหาวิธีในการโอนชื่อไฟล์ที่กล่าวถึงไปยังตำแหน่งโฟลเดอร์ที่ต้องการได้ ผมได้สร้างแอปนี้ใน Visual Basic อยากจะแบ่งปันแต่ไม่แน่ใจว่าเว็บไซต์นี้จะอนุญาตให้ผมอัปโหลดไฟล์ executable ได้ ดังนั้นดีที่สุดคือให้คุณสร้างหรือหาวิธีดังกล่าวด้วยตัวเอง เพียงแค่ใส่ไฟล์คำสั่งในโฟลเดอร์ที่ถูกต้อง ตรวจสอบพื้นที่พูดคุยด้านล่าง ผมจะโพสต์วิธีที่ผมสร้างแผงควบคุมของผม

คำแนะนำ:
- หากคุณต้องการใช้ตัวชี้วัดที่คุณเลือกสำหรับ tester ให้บันทึกหรือเปลี่ยนชื่อเทมเพลตตัวชี้วัดเป็น StrategyTesterPracticeTrade.tpl ซึ่งเป็นชื่อเดียวกับ EA ที่คุณจะใช้ใน Strategy Tester
- โปรดทราบตำแหน่งโฟลเดอร์ที่ถูกต้องสำหรับไฟล์คำสั่งให้ปรากฏ (...\MetaQuotes\Terminal\Common\Files\)
- คุณสามารถนำแนวคิดนี้ไปใช้ไม่เพียงแค่สำหรับ Strategy Tester แต่ยังเป็นวิธีเชื่อมโยงอิทธิพลภายนอกกับโค้ด EA อื่นๆ ของคุณ เช่น แทนที่จะใช้แค่การมีอยู่ของชื่อไฟล์ คุณสามารถใช้ FileOpen และอ่านเนื้อหาของไฟล์ที่อาจใช้ในการตั้งค่า Take Profit, Stop Loss และขนาดล็อตต่างๆ ซึ่งแอปพลิเคชันภายนอกของคุณสามารถรองรับความเป็นไปได้อื่นๆ ที่คุณต้องการให้ EA ของคุณตอบสนองได้
โพสต์ที่เกี่ยวข้อง
- การจัดการคำสั่งด้วยซอฟต์แวร์ EA สำหรับ MetaTrader 4
- สร้างสัญญาณการซื้อขายด้วย MQL5 Wizard: การใช้ EMA และกรองเวลาภายใน
- ทำความรู้จักกับ Fundamental Trader EA บน MetaTrader 4 สำหรับการเทรดข่าว
- สร้าง Expert Advisor ด้วย MQL5 Wizard: สัญญาณซื้อขายจาก Morning/Evening Stars + MFI
- สร้าง EA บน MQL5 Wizard ด้วยสัญญาณการซื้อขายจากแท่งเทียน 3 Black Crows/3 White Soldiers + Stochastic