MQL4常用的宣告與函數定義類型,與外部參數

有基本程式語言概念的人都知道,在程式碼裡面使用的每一種參數或函數,都需要宣告或定義一種數據類型,如果參數沒有事前做宣告,在編譯的時候就會出現錯誤喔!

而忘記宣告也是程式新手常犯的一個錯誤,還好它很容易被發現。

12017580_069074

 

在MQL4編輯當中,我們常會用到的數據類型大概有幾種:
1. int (整數)
2. double (小數)
3. string (字串)
4. bool (對與錯)

還有一種是函數在使用的:
5. void

前三種類型應該都還滿好懂的,顧名思義來看
int就是一個整數,就是1、2、3、….99999等等
例如 int X=5;  5就是一個整數,它不能等於5.0或5.1這樣的小數。

而double就是一個小數,如果你的這個參數會等於一個有小數點的數值
就需要把這個參數定義為double喔。
例如 double Z=1.234;
那如果一個參數表達的是整數數值,其實也是可以用double定義的,因為整數(5)也是等於小數的(5.0)

string就是用來定義一個字串,也就是文字,一個文字或是好幾個文字的組合
例如 string Y=”我是艾比”; 或是  string Y=”123456″;
字串需要用雙引號括起來,括起來之後他就會在編輯器裡面變成藍綠色唷,如下面這張圖
那在雙引號裡面不管你放的是字母、數字、符號,他都是算在同一個字串裡喔。

1505217865222

那bool就是這個參數他只能等於true或等於false,二則一的意思,不能等於其他的值
例如 bool XYZ=true; 或 bool XYZ=false;
因為程式碼裡面常常有如果等於ture就幹嘛幹嘛;如果等於false就不幹嘛幹嘛這樣的命令式
所以這個是很常用的功能

 

額外在幫大家講解外部宣告與內部宣告

外部宣告就是可以讓使用者在MT4介面輸入參數去調整的參數
內部宣告就是MT4使用者看不到的參數,無法藉由調參數去調整的

那把內部宣告變成外部宣告的話,就只要在類型前面加一個”input”就可以了
如下圖,他就會一照順序變成你在MT4載入EA時可以去調整的外部參數了。

1505217889614

 

那最後一種void的類型是只需要這個函數幫你執行一個動作
例如下單(OrderSend)、結單(OrderClose)等等…
那void通常是用在外部函數,也就是寫在主程式以外的、要用時在呼叫的函數
例如我需要一個函數幫我結單
我可能會把它取名為 void 平倉() {………}
一定要在函數的名稱後面加兩個小括號(),這就是函數的標準寫法
那大括號中間那些點點點就是你要執行的內容的程式碼。

如同上面講的外部函數需要小括號一樣
如果是回傳整數、小數、二選一類型的函數,就要去更改類型定義喔

例如要回傳多單的單子張數
int 多單張數() {………}

例如要回傳訂單開倉價格
double 訂單開倉價格() {…………..}

例如要回傳是否達到買進多單的條件
bool 多單條件() {………….}

尤其是新手在編輯外部函數的時候,常常會不知道怎麼開頭,記得就用這個函數會回傳一個什麼樣的值來做去定義就好囉!

 

以上是MQL4常見類型定義介紹與用法,有不懂的地方歡迎留言給艾比喔!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *