まくまくトレードステーションノート
EasyLanguage: 定義済み変数を使用する (Value0, Condition0)
2017-10-08
ユーザ定義の変数は Vars による初期化が必要ですが、初期化処理を行わずに使用可能な定義済み変数というものが用意されています。

2種類の定義済み変数

通常の変数は、使用する前に VariablesVars キーワードを使用した変数定義が必要です。 EasyLanguage には、そのようなユーザ定義変数の他に、定義済み変数 (Pre-Declared Variables) が用意されています。 定義済み変数には、数値型と真偽値型 (true or false) 用のものが 100 個ずつ用意されています。

  • Value0Value99: 数値型の定義済み変数。初期値は 0。
  • Condition0Condition99: 真偽値型の定義済み変数。初期値は false。

下記のサンプルコードでは、Value1Condition1 を使用しています。

Value1 = Average(Price, Length);
Condition1 = Close crosses above Value1;

一般的には、Value1Condition1 といった名前は意図が伝わりにくいので、これらの定義済み変数を使用するのは、開発段階での一時的な用途に限るのがよいでしょう。 最終的には、Vars: キーワードを使用して、適切な名前の変数を明示的に定義するようにしてください。

ただ、For ループなどのカウンタ用変数になら使用してもいいかもしれません。

For Value1 = 0 to 5 Begin
    //...
End;

定義済み変数の値は次のバーへ引き継がれる

ユーザ定義の変数と同様に、定義済み変数の値も次のバーの計算処理に引き継がれます。 例えば、下記のように Value1 の値を毎バーの計算で加算していくと、どんどん数値が大きくなっていきます。

Value1 += 1;
Plot1(Value1);

Value1[1] とすると、1本前の足の Value1 の値を参照できるのもユーザ定義変数と同様です。

2017-10-08