indicator-dashboard について
indicator-dashboardは、対話型のテクニカル分析ダッシュボードを作成するスキルです。Plotly Dashを標準とし、明示的な要望があればStreamlitを使い、銘柄や時間足、指標、スキャン結果を見たいユーザーに適しています。
主な機能
- 01Dashまたは指定されたStreamlitアプリの作成
- 02単一・複数銘柄の表示
- 03時間足ごとの指標比較
- 04スキャナーダッシュボードと結果表
- 05対話型チャートと主要統計
- 06自動更新に対応
活用シーン
- 01単一銘柄の指標確認
- 02ウォッチリストをチャート一覧で比較
- 03同一銘柄の複数時間足を分析
- 04スキャン結果の監視とCSV出力
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ marketcalls/ openalgo-indicator-skills --skill indicator-dashboardインストール後、Claude Code で/indicator-dashboardを入力して読み込まれたか確認します。
詳細
Plotly Dash または Streamlit を使用して、インタラクティブなテクニカル分析用のウェブダッシュボードを作成します。
引数
$ARGUMENTS を次のように解析します:type symbol
$0= ダッシュボードの種類。デフォルト:single- Dash の種類:
single、multi-symbol、multi-timeframe、scanner-dashboard - Streamlit の種類:
streamlit-single、streamlit-multi、streamlit-scanner
- Dash の種類:
$1= シンボル(例:SBIN、RELIANCE)。デフォルト:SBIN
引数がない場合は、どの種類のダッシュボードを希望するか、Dash と Streamlit のどちらを使いたいかをユーザーに尋ねます。
フレームワークの選択:Plotly Dash がデフォルトです。Streamlit アプリを作成するのは、ユーザーが Streamlit を明示的に希望した場合(「streamlit」と言った場合、または streamlit-* の種類を選択した場合)に限ります。フレームワークを黙って切り替えてはいけません。
指示
- indicator-expert のルールを読みます。特に次のファイルを確認します。
rules/dashboard-patterns.md— Dash アプリのパターンrules/streamlit-patterns.md— Streamlit アプリのパターンrules/plotting.md— チャートのパターンrules/data-fetching.md— データの読み込み
dashboards/{dashboard_name}/ディレクトリを作成します(必要に応じて)dashboards/{dashboard_name}/にapp.pyを作成しますrules/assets/の該当するテンプレートを使用します
ダッシュボードの要件
すべてのダッシュボードに、次の項目を含める必要があります。
- ダークテーマ:Dash では
dbc.themes.DARKLYを使用します。Streamlit では[theme] base = "dark"または CSS の挿入を使用します - シンボル入力:シンボル選択用のテキスト入力またはドロップダウン
- 取引所セレクター:NSE、BSE、NFO、NSE_INDEX
- インターバルセレクター:1m、5m、15m、1h、D
- インジケーターセレクター:オーバーレイおよびサブプロットのインジケーターを選択するチェックボックスまたは複数選択
- インタラクティブチャート:
template="plotly_dark"、xaxis_type="category"を指定した Plotly チャート - 統計情報の表示:主要指標(LTP、変化率、出来高、インジケーター値)
- 自動更新:Dash では
dcc.Intervalを使用します。Streamlit ではtime.sleep()と併せてst.rerun()を使用します .envの読み込み:find_dotenv()を使用してプロジェクトルートから読み込みます
Dash ダッシュボードの種類
single — 単一シンボルダッシュボード(Dash)
- インジケーターを設定できる単一シンボル
- オーバーレイ:EMA、SMA、Bollinger、Supertrend、Ichimoku(チェックボックス)
- サブプロット:RSI、MACD、Stochastic、Volume、ADX、OBV(チェックボックス)
- 統計パネル:LTP、日次変化率、出来高、選択したインジケーターの値
- テンプレート:
rules/assets/dashboard_basic/app.py
multi-symbol — 複数シンボルのウォッチリスト(Dash)
- グリッドレイアウトに4〜6個のシンボルを表示
- 各セルにローソク足と1つのオーバーレイインジケーターを表示
- 下段:すべてのシンボルの RSI を比較
- 入力でシンボルリストを編集可能
multi-timeframe — MTF 分析(Dash)
- 同じシンボルについて、5m、15m、1h、D の4パネルグリッド
- 各時間枠で同じインジケーターを計算
- コンフルエンスの概要:「4つの時間枠のうち3つが強気」
- テンプレート:
rules/assets/dashboard_multi/app.py
scanner-dashboard — ライブスキャナー(Dash)
- 10個以上のシンボルを含むウォッチリスト
- 次の項目を表示するテーブル:シンボル、LTP、RSI、EMA トレンド、シグナル
- 行を色分け(緑=強気、赤=弱気)
- シンボルをクリックすると詳細チャートを表示
- 30秒ごとに自動更新
Streamlit ダッシュボードの種類
streamlit-single — 単一シンボルダッシュボード(Streamlit)
- サイドバー:シンボル、取引所、インターバル、オーバーレイ/サブプロットの複数選択
- インタラクティブチャートに
st.plotly_chart()を使用 - LTP、変化率、RSI、EMA の統計情報に
st.metric()を使用 - チェックボックスと
st.rerun()で自動更新 - テンプレート:
rules/assets/streamlit_basic/app.py
streamlit-multi — MTF 分析(Streamlit)
st.columns(2)を使用した、4つの時間枠の2x2グリッド- 各時間枠にローソク足と EMA オーバーレイを表示
st.success()/st.error()/st.warning()を使ったコンフルエンスの概要- 各時間枠のトレンドを
st.metric()カードで表示 - テンプレート:
rules/assets/streamlit_multi/app.py
streamlit-scanner — スキャナーダッシュボード(Streamlit)
- サイドバー:スキャン種別セレクター、実行ボタン
- スキャン中に
st.progress()を表示 - 結果テーブルに
st.dataframe()を使用 - CSV エクスポートに
st.download_button()を使用
ダッシュボードの実行
アプリを作成したら、次の手順を案内します。
Dash:
cd dashboards/{dashboard_name}
python app.py
# Open http://127.0.0.1:8050 in browser
Streamlit:
cd dashboards/{dashboard_name}
streamlit run app.py
# Open http://localhost:8501 in browser
Example Usage
/indicator-dashboard single SBIN
/indicator-dashboard multi-timeframe RELIANCE
/indicator-dashboard scanner-dashboard
/indicator-dashboard streamlit-single SBIN
/indicator-dashboard streamlit-multi RELIANCE
/indicator-dashboard streamlit-scanner