EasyLanguage 予約語および関数

関数について

関数呼び出し (紫色で表示)は、関数内の基本的な EasyLanguage ステートメントを評価した後で値 (単一の値または複数の値) を返す EasyLanguage の単語です。関数のステートメントを使用して、数式を計算したり、その他の EasyLanguage アクションを行ったりできます。

一般的な使用

関数は、代入文内の変数に割り当てられるか、式に含まれます。他に指定がない限り、ほとんどの関数は単関数です。

たとえば、次の例の関数は 10 のバーの平均終値を計算して、事前宣言済みの変数に戻り値を代入します。

Value1 = Average(Close, 10);

シリーズ関数

シリーズ関数は (条件付きステートメント内で使用された場合でも)、前の値を自動的に保存して、各バーで実行します。詳細については、シリーズ関数を参照してください。

多出力論理関数

一部の組み込み関数は、パラメーターリスト内の 1 つ以上の出力パラメーターを使用して、複数の値を返す必要があります。組み込み多出力論理関数では、通常、値を返すのに使用される出力パラメーターであることを示す「o」で始まるパラメーター名を使用します。これらは、関数内で「ref」型の入力 (NumericRef、TrueFalseRef など) として宣言され、関数を呼び出した EasyLanguage コード内の変数に参照によって値を出力できるため、「入出力」パラメーターとも呼ばれます。

たとえば、次の組み込み関数は、過去 30 バーから 2 番目に高いCloseを探します。最初の 4 つのパラメーターは、1) どんな価格を探すか、2) いくつのバーで探すか、3) どの発生か (1 番目、2 番目など)、4) 最高または最低を探すかを指定するのに使用される入力パラメーターです。5 番目と 6 番目のパラメーターは出力パラメーターです。この関数は、1 つの出力パラメーターを使用して、2 番目に高い CloseValue2 に返し、2 つ目の出力パラメーターを使用して、発生したバーの数を Value3 に返します。関数自体は、検索のステータス (成功した場合は 1、エラーが発生した場合は -1) を Value1 に返します。

Var: oExtremeVal(0), oExtremeBar(0);

Value1 = NthExtreme(Close, 30, 2, 1, oExtremeVal, oExtremeBar);

Value2 = oExtremeVal;

Value3 = oExtremeBar;

ラッパー関数

組み込み関数の EasyLanguage コードを見ると、「ラッパー関数」という用語が見つかります。これは、戻り値を取得するために多出力関数を参照する単一リターン関数を指します。単一リターン「ラッパー」関数を呼び出すと、出力パラメーターを設定したり、多出力関数を理解したりする必要がなく、EasyLanguage コードを単純化できます。たとえば、ADX 関数は、DirMovement 関数の複数の出力パラメーターの 1 つである平均方向性指数値を返します。