MT4/MT5外部指標(biāo)去哪下載?如何判斷外部指標(biāo)能不能編寫全自動EA?
內(nèi)容目錄
什麼是外部指標(biāo)?
1. 直接google指標(biāo)名稱
2. MQL5官網(wǎng)-論壇
3. MQL5官網(wǎng)-市場
4. FOREX FACTORY論壇
5. ChatGPT等語言機器人
哪裡可以下載到外部指標(biāo)?
MT4/MT5的數(shù)據(jù)窗口
如何開啟數(shù)據(jù)窗口?
如何判定外部指標(biāo)能不能寫成EA?
艾比常常會遇到代寫客戶或是學(xué)員問說:
他有一個從某個地方得到或買到的技術(shù)指標(biāo),他用起來覺得很順手(會賺錢),
能否把這個指標(biāo)寫進全自動EA(Expert Advisors (EA)),實現(xiàn)進一步躺賺?
那我們今天就來看看,這種由外部開發(fā)的技術(shù)指標(biāo),是否能寫成EA?
?
什麼是外部指標(biāo)?
MT4與MT5交易軟體內(nèi)建的技術(shù)指標(biāo)本身就非常豐富,
這些在軟體中安裝預(yù)設(shè)好的指標(biāo),又稱為「內(nèi)建指標(biāo)」,
在MT4與MT5的程式交易EA中,
都可以用簡單的語法,輕易地去抓取這些技術(shù)指標(biāo)的數(shù)值,來設(shè)定你的交易策略。
但因為MT4/MT5也有著強大的程式交易系統(tǒng),
不只可以讓使用者利用程式碼編寫自動交易程式EA,
也可以編寫客製化的自定義指標(biāo),又稱為「外部指標(biāo)」,也就是非內(nèi)建的技術(shù)指標(biāo)。
外部指標(biāo)因為完全可以依照使用者的要求來編寫出指標(biāo),
所以也是非常多資深交易者喜歡使用的工具。
除此之外,許多交易者也非常迷戀外部指標(biāo),
因為這些由世界各地交易者自行開發(fā)的技術(shù)指標(biāo),多少帶著神秘色彩,
而在交易界有種說法是,跟別人用不一樣的方法去看市場,勝率比較高。
?
這些外部指標(biāo)是否也能在MT4與MT5的程式交易中,去抓取值來編寫進EA呢?
基本上是可以的,但不是所有指標(biāo)都可以,
我們要先去判斷此外部指標(biāo)是否有「回傳值」,
這個部分我們會在本文的最後一段來做講解。
?
會編寫MQL4與MQL5的程式交易者,可以透過編寫程式碼寫出自己的外部指標(biāo),
那不會編寫的交易者也不用太擔(dān)心,
因為現(xiàn)在網(wǎng)路資源非常發(fā)達,
許多網(wǎng)站都能夠下載到來自世界各地交易者編寫開發(fā)的外部指標(biāo),
其中很多也提供開源程式碼,
讓下載的人能夠在依照自己的喜好去修改。
接下來我們就來看看,在網(wǎng)路上幾個常見可以下載到外部指標(biāo)的方法:
?
哪裡可以下載到外部指標(biāo)?
1. 直接google指標(biāo)名稱
如果你已經(jīng)有想好你想找什麼指標(biāo),那最快速的方式就是直接google它。
你可以使用「指標(biāo)名稱+MT4」、「指標(biāo)名稱+MT5」、
「指標(biāo)名稱+MQL4」、「指標(biāo)名稱+MQL5」的方式來搜尋你想找的指標(biāo)。
當(dāng)然指標(biāo)名稱使用英文,你搜尋到的資源會多很多。
雖然搜尋結(jié)果很有可能是下面會介紹到的三個網(wǎng)站,
但因為MT4/MT5的編程系統(tǒng)很發(fā)達,所以在國外有非常多開發(fā)者,
可能會放在自己的網(wǎng)站讓給人去下載或購買。
例如下圖就是艾比直接google「market profile MT4」:

第一個網(wǎng)站點進去,它就有已經(jīng)製作好的market profile(市場輪廓)指標(biāo),
(https://www.earnforex.com/metatrader-indicators/MarketProfile/)
還有講解跟教學(xué)參數(shù),與MT4、MT5雙版本的指標(biāo)檔案,而且還有提供原始程式碼!
在網(wǎng)路上MT4與MT5的資源是相當(dāng)豐富的。
?
2. MQL5官網(wǎng)-論壇
那google的搜尋結(jié)果最常出現(xiàn)的,應(yīng)該就是MT4/MT5的官網(wǎng)了,
官網(wǎng)聚集著全世界各地的程式交易者,
各種EA、函數(shù)、技術(shù)指標(biāo)等,在官網(wǎng)多到不行,而且大部分有開源程式碼。
今天我們想找一個可以在MT5畫出區(qū)間高低點的指標(biāo),
在google輸入「price channel mql5」,第一個就會是MT的官網(wǎng)程式碼資料庫。
(https://www.mql5.com/en/code/44)
點選紅色框圈起的mq5檔案就可以下載指標(biāo)的程式碼檔案,
使用MT5編輯器編譯過後就可以直接使用。
如果是安裝國內(nèi)券商的MT5而無法連入MT官網(wǎng)的同學(xué),
可以使用以下方式來解除限制。
延伸閱讀:
國內(nèi)交易商MT5更新後無法連上mql5官網(wǎng)的解決方法
?
3. MQL5官網(wǎng)-市場
說到MT官網(wǎng),除了有海量的免費資源之外,
也有非常多已經(jīng)開發(fā)好並打包成商品販?zhǔn)鄣慕灰坠ぞ撸夹g(shù)指標(biāo)。
在官網(wǎng)上方找到市場(Market),點選進去之後,
就可以選擇你要MT5還是MT4的EA(Experts)、指標(biāo)(Indicators)、腳本、工具。
那這些商品底下有它的購買費用,或是點選上面的free也有免費的,
只不過免費版很多是功能不那麼完整的試用版,作者還是希望你去購買他的完整版。
那對於一個不了解的EA或指標(biāo),一般人當(dāng)然是不會去購買的,
所以官方市場提供了很方便的回測試用功能,
你點進去任何一個商品裡面,在左側(cè)下方可以找到「Free Demo」,
點選一下後會自動連結(jié)到你的MT4或MT5,
你可以打開你的回測介面,用回測的方式,來試用這個技術(shù)指標(biāo)。
覺得好用之後再去購買。

官網(wǎng)的這個市場是非常有趣的一個地方,
對程式交易或指標(biāo)有興趣的同學(xué),有空真的可以多來這邊掏寶看看,
看看外國人現(xiàn)在都流行玩什麼XD
?
4. FOREX FACTORY論壇
如果你google一些關(guān)於MT4/MT5的EA或指標(biāo),常常也會出現(xiàn)一個網(wǎng)站,
就是「Forex Factory」,那它是一個論壇,也是程式交易者挖寶的好地方,
也會有很多國外網(wǎng)友分享的EA、技術(shù)指標(biāo)、工具等等,也大部分都有原始碼。
例如艾比有在用的:「畫出歷史下單軌跡的腳本」
(https://www.forexfactory.com/thread/46668-improved-orderhistory-mq4-script-to-display-trade-history)
就是在這篇帖子上下載的,作者非常用心,還一直有在更新版本,
點選帖子最下方的附檔即可下載mq4的原始碼檔案。
到你的MT4交易帳戶中,把歷史紀(jì)錄調(diào)整到全部打開,
在開啟你有交易的商品圖表,
把這個腳本載入圖表,它就會畫出你歷史交易的軌跡,
buy單sell單的顏色不一樣、獲利出場還是虧損出場會用實線虛線區(qū)分、TPSL的價位也會幫你標(biāo)記出來。
這個小工具拿來檢討交易紀(jì)錄真的很好用,免費給大家下載使用,而且還有原始碼檔案真的很佛心。
MT4與MT5因為編程系統(tǒng)成熟,國外發(fā)展歷史悠久,
在網(wǎng)路真的非常多好用又免費的資源。
?
5. ChatGPT等語言機器人
AI都可以自動生成EA的程式碼了,生個指標(biāo)應(yīng)該也沒問題。
那艾比使用ChatGPT測試了一下,它產(chǎn)生的指標(biāo)程式碼看起來有模有樣,
但放入編輯器之後編譯還是有滿多bug的,
所以目前要請ChatGPT來寫技術(shù)指標(biāo),還不如直接google現(xiàn)成的比較快速。
延伸閱讀:
用ChatGPT自動來寫MT4/MT5的程式交易? EA工程師即將失業(yè)?!【ChatGPT第一集】
那當(dāng)然因為現(xiàn)在AI文字生成處於剛發(fā)展階段,未來幾年後想必請AI寫出什麼都不是問題。
接下來艾比有時間也會陸續(xù)來測試ChatGPT寫不同難度的指標(biāo)看看。
?
好,那這麼多的外部指標(biāo)能不能在MT4與MT5的程式交易中,寫進EA裡面呢?
回答這個問題之前,我們要先來了解一下,
在MT4/MT5軟體介面中的一個功能,「數(shù)據(jù)窗口」。
?
MT4/MT5的數(shù)據(jù)窗口
如何開啟數(shù)據(jù)窗口?
打開MT4軟體之後,在上方檢視與插入的中間下面一點,
可以看到一個像狙擊槍的圖示,
點一下這個圖示就可以開啟MT4的數(shù)據(jù)視窗。

?
MT5則是要從上方工具列當(dāng)中的「查看」點一下打開,
在展開的工具列中可以找到數(shù)據(jù)窗口,點一下即可開啟。
或是使用快捷鍵 Ctrl+D 也可以快速開啟。
?
開啟數(shù)據(jù)窗口之後,
接下來我們只要把滑鼠的游標(biāo)移到任何一根K棒上面,
就可以從數(shù)據(jù)窗口看到這一根K棒的資訊,
包含時間、「開、高、低、收」四個價格、還有成交量。
你在圖表中載入的內(nèi)建技術(shù)指標(biāo),也都能夠在數(shù)據(jù)窗口中看到,
可以看到技術(shù)指標(biāo)在該根K棒的數(shù)值是多少。
如果該技術(shù)指標(biāo)有多個值,也可以看得到。
例如上圖的MACD有柱狀體(主線)的值與信號線(Signal)的值。
那在編寫程式交易EA時,就要稍微注意一下取的是哪一個數(shù)值,
否則取錯數(shù)值那策略就會跟你想的不一樣了。
?
如何判定外部指標(biāo)能不能寫成EA?
在取內(nèi)建指標(biāo)時,MT4與MT5都有固定函數(shù)可以直接取用;
那如果是外部指標(biāo),我們則統(tǒng)一都使用「iCustom」這個函數(shù)來取數(shù)值。
但不是所有的外部指標(biāo)都可以寫進EA,
主要是要從數(shù)據(jù)窗口去看,該外部指標(biāo)是否有「回傳值」。
下圖我們在圖表中加入了MQL5官網(wǎng)下載的Price channel(價格通道)的的外部指標(biāo),
我們將滑鼠移動到隨便一根K棒時,
可以在左邊數(shù)據(jù)窗口看到多了兩個數(shù)值(TOPBAND與BOTBAND),
分別就是Price channel的上通道與下通道。

在這邊,我們就可以透過看是否數(shù)據(jù)窗口有數(shù)值,來確認外部指標(biāo)能不能被寫進EA使用。
如果指標(biāo)載入圖表,在數(shù)據(jù)視窗有出現(xiàn)對應(yīng)的數(shù)值,
那就是可以被寫進EA,
因為我們可以在程式碼中抓取到這個數(shù)值。
而使用iCustom函數(shù)來抓外部指標(biāo)的數(shù)值時,要注意具體要抓哪一個數(shù)值,
就會是按照顯示的順序,從上開始的第一個是0、第二個是1、以此類推…
?
相反的如果你的指標(biāo)在入圖表後,卻沒有顯示數(shù)值在數(shù)據(jù)窗口,
那很抱歉,你的指標(biāo)沒有回傳值,
所以無法被程式碼讀取到、沒有辦法寫進EA當(dāng)中。
那為什麼有些外部指標(biāo)會沒有回傳值?
因為它的作者在開發(fā)時就設(shè)定只會畫出圖案、但沒有回傳值這樣。
如果你又沒有該指標(biāo)的程式碼檔案,那就完全沒辦法了,
如果你有程式碼檔案,那還可以有機會寫入回傳值的顯示;
不然就是要了解指標(biāo)是透過什麼邏輯計算出來的,
直接把這個邏輯寫在EA裡面的方式,就是不透過讀取外部指標(biāo)數(shù)值了。
?
數(shù)據(jù)窗口這個工具,不只使用在看外部指標(biāo)時,
對EA工程師來說,數(shù)據(jù)窗口非常的重要,也常常使用到,
在檢視EA的交易策略是否正確時,就需要叫出數(shù)據(jù)窗口,來比對詳細的數(shù)值。
因為很多時候用肉眼看指標(biāo)跟價格可能很接近,
但數(shù)值叫出來就是沒有超過,所以EA會執(zhí)行、或沒執(zhí)行一些動作。
有在使用EA程式交易的同學(xué),
一定要學(xué)會去使用數(shù)據(jù)窗口,來幫助你核對交易策略是否正確喔。