2016/09/28

2016/09/28 (三) EA程式設計之價格波動控制 !

(:本站文案除原創外,其餘訊息来自互联网收集和整理,请自行参酌。)
2016/09/28 ()

EA程式設計之價格波動讀取過濾 !


>>><<< $ ¥£€ >>><<<

一、價格波動控制

根據技術指標我們發現了入市信號,根據帳戶餘額我們選定了下單量,就可以開倉了,此時止損止盈價格的設置是必須的,特別當你啟動了EA後離開匯市,就顯得更加重要。

考慮到匯市變化多端,風險難以控制,以M30為最小時間週期來考慮操作策略的,目的就是為了排除小週期(M1、M5、M15)市場出現的干擾信號。當然這只是經驗資料,如果你的帳戶是Mini型的,杠杆又大於100,那麼就要因地制宜考慮參數的設置。

縱觀外匯資料圖表不難發現盤整行情多於單邊行情,那麼我們就需要利用趨勢類指標確定單邊行情的到來,同時利用震盪類指標過濾掉窄幅震盪行情。

控制價格波動沒有絕對的區間,這是個見仁見智的資料讀取與過濾機制運行的設置。

二、邏輯分析

談及邏輯執行,這可是電腦程式的強項,一個制定好的邏輯程式交給電腦要比人工的執行力強得多。

隨著外匯EA化程度越來越高,許多人開始研究人工智慧的計算模型,試圖讓電腦具備學習能力,來對付千變萬化的匯市。最近類似網格、雲計算等等人工智慧專業術語充斥了整個EA世界。我們不是專家,我們的目的是充分利用電腦的邏輯執行能力來輔助我們的決策,這就簡單了。

上一篇針對外匯交易流程及風險控制的論述可以得到這麼一個結論:外匯交易行為中有99%是邏輯行為,剩下的1%是突發性事件因素,而對付突發性事件的解決方案就是設置合理的能夠承受的止損空間,這仍然可以歸類到邏輯行為。

本文著重針對交易行為和交易策略進行邏輯化的程式化的分析,旨在為下一篇的編制代碼擬定一個準確詳細的流程。

因為,學會流程分析是程式設計的必要條件。

三、邏輯框架

MQL4語言為EA制定了一個固定的框架,見下圖:

參數定義模組 放置當前EA的屬性,包括 EA運行前需要人工定義的一些市場必須的參數(如止損點、止盈點等),還可以包括一些外部函式程式庫的調用和圖表基本屬性(如線型、顏色等)的定義。

初始化定義模組在EA運行時會先執行一次,一般用於進行和圖表有關的一些屬性的設置,也可以對後續程式中需要調用的變數給出初始值。

預定義函數模組在策略參數被修改後會執行一次,緊接著再執行初始化定義模組,策略首次導入圖表時不執行該模組代碼。操盤控制模組是EA主模組,當市場出現每一次價格變動時都會執行一次。

操盤控制模組流程圖







細心的人會發現,上面這個流程圖中居然沒有平倉的動作?這是個有趣的話題,另外找時間慢慢思考吧。

…待續…

>>><<< $ ¥£€ >>><<<

(:本站文案除原創外,其餘訊息来自互联网收集和整理,请自行参酌。)