MQL 変数とiMA関数
変数とは
次に、今回のFX自動売買に必要な移動平均線の4つの値を「変数」に格納します。「変数」というのは、値を入れておくボックスのようなものです。変数を4つ作成して、移動平均線の4つの値を入れていきます。
一番初めに外部変数というものが出てきましたが、「変数」を使う場合は、そのことをまず「宣言」しなくてはなりません。
記述する場所は、「int start() {」の次からです。
それぞれ、
「short1」(@1つ前の短期移動平均線)
「short2」(A2つ前の短期移動平均線)
「long1」(B1つ前の長期移動平均線)
「long2」(C2つ前の長期移動平均線)
としました。外部変数の時は、整数を入れるための変数だったのでタイプ(type)を「int」にしましたが、この変数は指標や価格など小数が付くものを表せる「double」として宣言しました。
関数とは
次に、これら4つの変数に各移動平均線の値を格納していきます。本来ですと、移動平均線の値を出すために足し算や割り算で計算しなければいけません。しかし、MQLには「関数」と呼ばれるものが準備されていて、例えば「iMA関数」という組み込み指標関数を使えば、煩わしい計算をしなくても自動的に移動平均線の値が算出されます。
関数というのは、「いくつかの命令文の集まり」のことで、ここで利用する「iMA関数」というのは、設定値(パラメーター)を与えると移動平均線を自動的に算出してくれる命令文です。
iMA関数
変数に「iMA関数」を代入していくには、「=」を使って「変数=代入する内容」とします。プロブラミング言語の「=」は、「代入」の意味になります。もし一般的な「=」(等しい)という意味を表したければ「==」とするのがプログラミング言語のルールです。「iMA関数」は以下の7個のパラメーターを取ります。
iMA(@string symbol,Aint timeframe,Bint period,Cint ma_shift,Dint ma_methid,Eint applied_price,Fint shift)
iMA(@通貨ペア,A時間軸,B期間,Cシフト数,D移動平均線算出方法,E適用価格,Fいくつ前の移動平均線の値を使うか)
例えば、変数「Short1」の入力は、次のようになります。

同じ要領で、残りの変数に「iMA関数」を代入していきましょう。
