[If Then] ブロックは [Boolean] 入力値に基づいて、 2 つの値のうち 1 つを出力します。入力値が [TRUE] の場合、ブロックはブロックの [ThenValue] 条件に基づいて値を出力します。入力値が [FALSE] の場合、ブロックはブロックの [ElseValue] 条件に基づいて値を出力します。
例 [If Then] ブロックは [if] ポートを通じて [Boolean] 値を受信し、値が [TRUE] の場合 5 を出力し、値が [FALSE] の場合は 10 を出力します。
Equal ブロックと同様に、ブロックは黄色の変数入力ポートを使用し、これで異なった種類のデータを指定することができます (数値、[Boolean] 値、または限月) 。両方の入力データが同じ種類である必要があるので、ブロックは、他のポートを接続するとすぐに、自動的に 2 番目の入力ポートのデータ タイプを設定します。また出力ポートは、入力ポートのデータ タイプに合わせて動的に調整を行います。
例 以下の例は、[If Then] ブロックを使って、注文を発注する際に使用する枚数を決定します。[If Then] ブロックが銘柄の現在の買値を確認します。買枚数が 50 枚以上の場合、[If Then] ブロックは [Order] ブロックの [Quantity] ポートに 10 枚を出力します。それ以外の場合は、5 枚を出力します。
複数の [If Then] ブロックを接続し、以下の例に示すように、ネストされた If-Then ステートメントを定義できます。ネストされた [If Then] ブロックの正しい出力を検出するには、常に一番右の [If Then] ブロックで開始し、出力に到着するまで、論理通路を左にたどります。
例 ネストされた If Then ブロックの使用
ブロックをカスタマイズするには、[Block Properties] を更新します。
プロパティ | 説明 |
---|---|
Name (名前) | ADL キャンバスのブロックの下に表示される名前。 |