文章來源:123财經導航
作者:William
MQL4(全稱:MetaQuotes Language 4)是由MetaQuotes Software(邁達克)開發的專門用于編寫交易策略的編程語言。專門爲MetaTrader 4(MT4)交易平台設計,是一種廣泛使用在外彙交易中的程序語言,MetaEditor爲MQL4的專用編輯器。
在MT4終端按F4,進入編輯器,點擊“文件”-“新建”,或者Ctrl+N新建一個.mq4文件,填寫EA名稱後其他保持默認,點擊下一頁。勾選所有能勾選的事件處理函數,此時我們就得到了一個簡單的EA模闆。
其中包含了5個必備的預定義的特殊事件處理函數,
1、 OnInit() :EA被加載到圖表上時被調用。它通常用于執行初始化操作,例如設置全局變量、加載外部數據等,OnInit() 函數隻會在初始化時被調用一次。
2、OnDeinit() :EA從圖表上卸載時被調用。通常用于執行反初始化操作,例如釋放内存資源,删除圖表信息等。同樣OnDeinit() 函數隻會在卸載時被調用一次。
3、 OnTick() :每次報價更新時被調用。它是最常用的函數之一,用于實時響應市場行情變化。在 OnTick() 函數中,您可以編寫代碼來根據最新的市場報價執行交易決策等操作。顧名思義,該函數隻會在正常報價刷新(K線跳動)時執行,K跳動一次執行該函數内的代碼一遍。
4、OnTimer():定時器事件被觸發時被調用。可以使用定時器來設置特定的時間間隔,在每個時間間隔到達時執行自定義操作。例如,您可以使用 OnTimer() 函數來定期檢查某個條件,執行特定的任務。(需要注意的是:在一個EA程序中,隻能同時加載一個計時器,但可以通過特殊邏輯運算表達編寫多個虛拟計時器以滿足不同場景的使用),計時器通常在初始化時設置。
5、OnChartEvent():在與圖表交互的事件發生時被調用。這些事件可以是鼠标點擊、鍵盤按鍵或其他與圖表交互的操作。通過編寫 OnChartEvent() 函數,可以實現與圖表交互的自定義邏輯,例如根據鼠标點擊位置執行特定操作或捕捉鍵盤事件等。
案例:點擊圖表的買入按鈕時,根據設定的參數下一個buy單,這就是圖表事件的功能應用。
删除后无法恢复
删除后无法恢复