【MQL4学習】関数とはなにか?MT4でEAやインジケーター作成したい初心者必見!

ザフナーラボブログ

MT4でEAやインジケーター作成したい初心者の方は必見の知識である関数について解説いたします。

1.関数とは

関数とは、一定の処理を実行する流れをひとまとめにしたものです。

例えば、「注文を出す」とか「損切り(利益確定)価格を算定する」といった一定の処理を実行させるプログラムをあらかじめ定義付けておいたものなどです。

2.定義の仕方

関数を使用するためには、その関数がどのような処理を実行させるものなのかを、あらかじめ明らかにしておく(=定義付ける)ことが必要となります。

関数は、以下のように記述して定義付けます。

サンプルコード

戻り値の型 関数名(引数の型 引数名, 引数の型 引数名, ……)
{
  処理内容  return(戻り値);
}

⑴ 戻り値の型とは

戻り値とは、関数による処理(計算)の結果、算出される値をいい、戻り値の型とは、戻り値が整数なのか、実数なのかといった、戻り値の種類を指定するものをいいます。

型の種類については「こちら」を参照してください。

なお、戻り値を必要としない場合は、「void」と記述します。

⑵ 関数名とは

関数名とは、関数の名前をいいます。

関数名は、変数名の付け方のルールに準じたうえで、自由に付けることができます。

変数名の付け方のルールについては「こちら」を参照してください。

⑶ 引数の型、引数名とは

ア 引数名とは

引数名とは、引数の名前をいいます。

引数とは、関数が実際に実行される際に渡される値を一般化したものをいいます。

例えば、整数の足し算を行う関数として、

サンプルコード

int Add(int a,int b)
{
 int c = a + b;
 
 return(c);
}

とAdd()関数を定義付けした場合、Add(2,3)と記述すると「c」には「5」が代入され、Add(4,5)と記述すると「c」には「9」が代入されます。

つまり、Add()関数の定義にある「a」や「b」は、「2」や「3」といった具体的な数値を一般化したものであるということができ、これが引数となります。

なお、引数を必要としない関数の場合には、()内には何も記述する必要はありません。

イ 引数の型とは

引数の型とは、引数の種類(整数、実数など)を指定するものです。

型の種類については「こちら」を参照してください。