改行

From TradingView Wiki
Jump to: navigation, search
Language: English  • 日本語 • Русский

Pineスクリプトで長すぎるステートメント(文)は、改行して複数行にすることができます。構文的に、ステートメントは行の先頭から始める必要があります。改行した時は、ステートメントの次の行は、行頭に1つまたは(4の倍数以外の)複数のスペースを入れなければいけません。例えば次の式は、

a = open + high + low + close

次のように改行することができます

a = open +
      high +
          low +
             close

長い plot の行は、この様に改行できます。

plot(correlation(src, ovr, length),
   color=purple,
   style=area,
   transp=40)

ユーザー関数内のステートメントも複数の行に折り返すことができます。しかし構文的にローカルステートメントは(4つのスペースまたは1つのタブの)インデントで始まらなければなりません。ですからその中で改行する時は、ステートメントの続きは、さらに(スペースの数が4の倍数以外の)インデントが必要です。

updown(s) =>
    isEqual = s == s[1]
    isGrowing = s > s[1]
    ud = isEqual ?
           0 :
           isGrowing ?
               (nz(ud[1]) <= 0 ?
                     1 :
                   nz(ud[1])+1) :
               (nz(ud[1]) >= 0 ?
                   -1 :
                   nz(ud[1])-1)

このルールはコメントにも適用されることに注意してください。また改行と一緒にコメントは使用しないでください。以下のコードはコンパイルされません。

//@version=2
study("My Script")
c = open > close ? red :
  high > high[1] ? lime : // a comment
  low < low[1] ? blue : black
bgcolor(c)

Compiler fails with error: Add to Chart operation failed, reason: line 3: no viable alternative at input '|E|'.

このスクリプトを機能させるには、単に「// a comment」の部分のコメントを削除します。この制限は不便であり将来のリリースで削除を検討しています。


前の項目: 関数宣言, 次の項目: コンテキストスイッチ、セキュリティ関数, メニューに戻る: Pineスクリプトチュートリアル