PR

Pine Scriptのtableを下部パネルに表示する方法

TradingView

この記事でわかること

  • Pineスクリプトのtableをチャート下部パネルに移動する新機能の使い方
  • そのまま貼って動く、状態表示テーブルのPine Scriptコード
  • 複数のテーブル系インジケーターを同時に使うときの実践的な使い分け

RSIやMACDのダイバージェンス検出、勝率集計など、複数のインジケーターにtableを表示させていませんか。数が増えるとチャートの隅がテーブルだらけになり、肝心のローソク足が見えなくなります。かといって非表示にすると、数値を確認したいときにいちいち設定を開き直す必要があります。

2026年9月15日、TradingViewはこの悩みを解消する機能を公開しました。Pineスクリプトが作るtableを、チャート上から下部の独立したパネルへ移動できるようになりました。この記事では使い方と、実際に試すためのPine Scriptコードを紹介します。

📊 この記事はTradingViewユーザー向けです

TradingViewをまだ使っていない方は、まず無料アカウントを作成してみましょう。登録は30秒、クレジットカード不要です。

無料でTradingViewを始める →

何が変わったのか

公式ブログによると、対象はPineのtable機能を使うすべてのスクリプトです。テーブルを右クリックすると「テーブルを下部パネルに移動」という選択肢が出てきます。同じ操作は「その他」のメニューからも行えます。

移動すると、そのインジケーターが描画するテーブルはチャート上から消えます。代わりにチャート下部の独立したタブに表示されます。複数のスクリプトのテーブルを同時にパネルへ移動することもでき、タブを切り替えればそれぞれの内容を個別に確認できます。チャートに戻したい場合は、同じ操作を逆にたどるだけです。

実際に試す:状態表示テーブルのコード

手元にtableを描画するスクリプトがなければ、新機能を試しようがありません。ここでは、RSI・トレンド方向・直近シグナルからの経過バー数をまとめて表示する、そのまま貼って動くコードを用意しました。

//@version=6
indicator("インジケーター状態パネル", overlay=true)

rsiLen = input.int(14, "RSI期間", minval=2)
maLen  = input.int(50, "トレンド判定MA期間", minval=5)

r    = ta.rsi(close, rsiLen)
ma   = ta.sma(close, maLen)
trend = close > ma ? "上昇" : "下降"

sig = ta.crossover(r, 30) or ta.crossunder(r, 70)

var int lastSignalBar = na
if sig
    lastSignalBar := bar_index
barsSince = na(lastSignalBar) ? na : bar_index - lastSignalBar

var table panel = table.new(position.top_right, 2, 3,
     bgcolor = color.new(color.black, 80), border_width = 1)

if barstate.islast
    table.cell(panel, 0, 0, "RSI",        text_color = color.white)
    table.cell(panel, 1, 0, str.tostring(r, "#.#"), text_color = color.white)
    table.cell(panel, 0, 1, "トレンド",    text_color = color.white)
    table.cell(panel, 1, 1, trend, text_color = trend == "上昇" ? color.lime : color.red)
    table.cell(panel, 0, 2, "シグナルから", text_color = color.white)
    table.cell(panel, 1, 2, na(barsSince) ? "—" : str.tostring(barsSince) + "本", text_color = color.white)

plotshape(sig, title="シグナル", style=shape.triangledown,
     location=location.abovebar, color=color.orange, size=size.tiny)

コードのポイント

  • var table panel = table.new(...)のようにvarを付けて一度だけ生成し、if barstate.islastの中でtable.cell()を呼びます。毎バー再生成すると無駄な描画処理が走ります
  • lastSignalBarの更新には:=を使います。varで宣言した変数への再代入に=を使うと、値が引き継がれません

テーブルを下部パネルに移動する手順

  1. 上のコードをチャートに貼り付け、右上にテーブルが表示されるのを確認する
  2. テーブルを右クリックし、「テーブルを下部パネルに移動」を選ぶ
  3. チャート下部に開いたタブでテーブルの内容を確認する。チャートに戻すときは同じ操作を逆にたどる

本格的なstrategyの検証結果をテーブルで見たい場合はstrategy・バックテスト完全実装ガイドで紹介しています。検証中の記録をテーブルに残す方法はバーリプレイ検証の手順にまとめています。どちらも同じtable.cell()の書き方が使えるので、下部パネルへの移動もそのまま試せます。

TradingViewで実際に試してみよう

この記事の内容はTradingViewで今すぐ実践できます。無料プランでも十分対応できます。

▶ TradingViewを無料で開く

クレジットカード不要・いつでも解約OK

位置とスタイルの調整

table.new()の第1引数positionには、9種類の定数を指定できます。テーブルは指定した位置を基準に広がります。

配置 定数
四隅 position.top_left / top_right / bottom_left / bottom_right
辺の中点 position.top_center / bottom_center / middle_left / middle_right
中央 position.middle_center

bgcolor・frame_width・frame_color・border_widthで見た目を調整できます。上のコードではcolor.new(color.black, 80)を指定し、背景を80%透過の黒にしました。こうするとチャート上でもローソク足を隠しにくくなります。ただし下部パネルに移動したあとは、この位置指定は見た目に影響しません。パネル内では常に横幅いっぱいに表示されます。

下部パネルが便利な場面

1つのスクリプトに1つのテーブルなら、無理に移動する必要はありません。効果が出るのは、テーブル系インジケーターを複数同時に使うときです。

  • SMC(スマートマネーコンセプト)のFVG・Order Block検出と、RSI/MACDダイバージェンス検出を同時に表示したいとき。両方ともtableで状態を出すため、チャート上に置くと重なります
  • マルチタイムフレーム分析で複数の時間足の値をテーブルにまとめているとき。時間足を増やすほどテーブルが縦に伸び、チャートを圧迫します
  • 検証中だけテーブルを確認したい場合。バーリプレイでチャートに集中したいときは下部パネルに逃がし、数値を見たいときだけタブを開く、という使い方ができます

SMCの実装はPine Script v5でSMCを自動化するで紹介しています。RSI/MACDダイバージェンス検出はRSI/MACDダイバージェンスを自動検出するにまとめています。どちらもtableで状態を表示する作りなので、複数同時に使う場合はこの下部パネル機能が特に効きます。

こんな場合は向かない

  • テーブルが1つだけで、チャート上でも特に邪魔になっていない場合。わざわざ移動する手間の方が大きくなります
  • テーブルの数値を、ローソク足の値動きと同時に目で追いたい場合。下部パネルに移すと視線の移動が増えます
  • プランによる利用可否を事前に知りたい場合。料金ページの比較表にこの機能の項目自体がなく、公式の記載は確認できませんでした。tableを使うスクリプトが動く環境であれば使える可能性が高いですが、断定はできません

まとめ

  • Pineスクリプトのtableを、右クリック1つでチャート上から下部パネルへ移動・復帰できるようになった
  • 複数のテーブル系インジケーターを同時に使うときほど効果が大きい。SMC・ダイバージェンス・マルチタイムフレームなど、table()を使う記事群と組み合わせて活用できる
  • 1つのスクリプトのtableだけで困っていないなら、無理に使う必要はない機能

複数のインジケーターを同時に表示して比較したいなら、無料プランの1チャートあたり2個という上限はすぐに窮屈です。Essentialなら5個、Plusなら10個まで同時に表示でき、下部パネルとあわせてチャートを整理しながら使えます。プランの違いは有料プランの徹底比較で整理しています。

📊 TradingViewプラン比較

プラン 月額 主な特徴
Basic(無料) $0 1チャート・広告あり・インジケーター3つ
Essential $12.95〜 広告なし・インジケーター5つ・アラート20件
Plus ⭐人気 $24.95〜 インジケーター10個・アラート100件・同期チャート2つ
Premium $49.95〜 インジケーター25個・アラート無制限・同期チャート8つ
TradingViewを無料で始める

まずは無料プランで試して、必要なら有料プランへアップグレード

タイトルとURLをコピーしました