if / else if / else

条件に応じて処理を分岐する構文です。

処理を分岐する書き方と、変数に格納する内容を分岐する書き方の2種類があります。

※ if 構文、else 構文は、バージョン2以降で利用可能
※ else if 構文は、バージョン4以降で利用可能

定義

【処理を分岐】
※ else if、else は省略可

if 条件A
処理A
else if 条件B
処理B
else
処理C


【変数格納値を分岐】
※ else if、else は省略可
x = if 条件A
値A
else if 条件B
値B
else
値C

引数

(無し)

戻り値

変数格納値を分岐する書き方の場合、条件を満たした方の値

サンプルコード

【処理を分岐】

当日終値が前日終値より大きい時に買いエントリーを注文する

if close  > close[1]
strategy.entry("Buy", strategy.long)


当日終値が前日終値より大きい時に買いエントリーを、当日終値が前日終値より小さい時に売りエントリーを、それぞれ注文する

if close  > close[1]
strategy.entry("Long", strategy.long)
else if close < close[1]
strategy.entry("Short", strategy.short)


【変数格納値を分岐】

当日始値と当日終値のうち、大きい方を変数 max_price に格納する

max_price =  if close > open
close
else
open