Technical Analyst

株式、株価指数、暗号資産、FXペアの週足チャートを分析するスキルです。ユーザーがチャート画像を提供し、テクニカル分析、トレンド特定、サポート/レジスタンスレベル、シナリオプランニング、確率評価を純粋にチャートデータのみに基づいて行いたい場合に使用します(ニュースやファンダメンタル要因は考慮しません)。

API不要

スキルパッケージをダウンロード (.skill) GitHubでソースを見る

目次

1. 概要

週足チャートの包括的なテクニカル分析を行うスキルです。チャート画像を分析してトレンド、サポート/レジスタンスレベル、移動平均の関係、出来高パターンを特定し、将来の値動きに対する確率的シナリオを策定します。すべての分析はチャートデータのみを使用して客観的に行い、ニュース、ファンダメンタルズ、市場センチメントの影響を受けません。


2. 使用タイミング

以下の場合にこのスキルを使用してください:

  • ユーザーが週足チャート画像を提供し、テクニカル分析を求める場合
  • トレンドの方向性と強度の特定が必要な場合
  • サポート/レジスタンスレベルの分析が必要な場合
  • 移動平均の関係とクロスオーバーの評価が必要な場合
  • 確率付きシナリオ分析が必要な場合
  • チャートパターンとプライスアクションの分析が必要な場合

3. 前提条件

  • 画像ベースのチャート分析機能
  • Python 3.9+ 推奨

4. クイックスタート

Read: references/technical_analysis_framework.md

5. ワークフロー

ステップ1: チャート画像の受信

ユーザーが1枚以上の週足チャート画像を提供した場合:

  1. すべてのチャート画像の受信を確認
  2. 分析するチャートの枚数を確認
  3. ユーザーが特定のフォーカスエリアを指定しているか確認
  4. チャートを1枚ずつ順番に分析

ステップ2: テクニカル分析フレームワークの読み込み

分析を開始する前に、包括的なテクニカル分析方法論を読み込み:

Read: references/technical_analysis_framework.md

このリファレンスには以下の詳細なガイダンスが含まれます:

  • トレンド分析と分類
  • サポートとレジスタンスの特定
  • 移動平均の解釈
  • 出来高分析
  • チャートパターンとローソク足分析
  • シナリオ策定と確率割り当て
  • 分析の規律と客観性

ステップ3: 各チャートの体系的分析

各チャート画像について、以下の順序で体系的な分析を実施:

3.1 トレンド分析

  • トレンドの方向を特定(上昇トレンド、下降トレンド、レンジ)
  • トレンドの強度を評価(強い、中程度、弱い)
  • トレンドの持続期間と潜在的な疲弊シグナルを記録
  • 高値・安値の切り上げ/切り下げパターンを確認

3.2 サポートとレジスタンスの分析

  • 重要な水平サポートレベルを特定
  • 重要な水平レジスタンスレベルを特定
  • トレンドラインのサポート/レジスタンスを特定
  • サポートとレジスタンスの役割転換を記録
  • 複数のS/Rレベルが集中するコンフルエンスゾーンを評価

3.3 移動平均分析

  • 20週、50週、200週移動平均に対する価格の位置を確認
  • MA配列を評価(強気、弱気、中立)
  • MAの傾き(上昇、下降、フラット)を記録
  • 最近または今後のMAクロスオーバーを特定
  • 動的サポート/レジスタンスとして機能するMAを観察

3.4 出来高分析

  • 全体的な出来高トレンド(増加、減少、安定)を評価
  • 出来高スパイクとその文脈(サポート/レジスタンス付近、ブレイクアウト時)を特定
  • 出来高と価格の確認またはダイバージェンスを確認
  • 出来高のクライマックスまたは枯渇パターンを記録

3.5 チャートパターンとプライスアクション

  • 反転パターンを特定(ハンマー、シューティングスター、包み足など)
  • 継続パターンを特定(フラッグ、トライアングルなど)
  • 重要なローソク足のフォーメーションを記録
  • 最近のブレイクアウトまたはブレイクダウンを確認

3.6 観察の統合

  • すべてのテクニカル要素を一貫した現状評価に統合
  • チャートに影響を与える最も重要な要因を特定
  • 矛盾するシグナルや曖昧さを記録
  • 今後の方向性を決定する重要なレベルを確定

ステップ4: 確率的シナリオの策定

分析した各チャートについて、将来の値動きに対する2-4の異なるシナリオを作成:

シナリオ構造

各シナリオに必須の要素:

  1. シナリオ名: 明確で説明的なタイトル(例:「強気シナリオ: レジスタンス上抜けブレイクアウト」)
  2. 確率推定: テクニカル要因に基づく発生確率(全シナリオの合計100%)
  3. 説明: シナリオの内容と展開の仕方
  4. 裏付け要因: このシナリオを支持するテクニカルエビデンス(最低2-3要因)
  5. ターゲットレベル: シナリオが実現した場合の予想価格レベル
  6. 無効化レベル: このシナリオを否定する具体的な価格レベル

典型的なシナリオフレームワーク

  • ベースケース(40-60%): 現在の構造に基づく最も可能性の高い展開
  • ブルケース(20-40%): 上方ブレイクアウトを必要とする楽観シナリオ
  • ベアケース(20-40%): 下方ブレイクダウンを必要とする悲観シナリオ
  • オルタナティブ(5-15%): 確率は低いがテクニカル的に妥当なシナリオ

裏付けとなるテクニカル要因の強度に基づいて確率を調整。確率は現実的で合計100%になるようにします。

ステップ5: 分析レポートの生成

分析した各チャートについて、テンプレート構造を使用した包括的なMarkdownレポートを作成:

Read and use as template: assets/analysis_template.md

レポートに含む全セクション:

  1. チャート概要
  2. トレンド分析
  3. サポートとレジスタンスレベル
  4. 移動平均分析
  5. 出来高分析
  6. チャートパターンとプライスアクション
  7. 現在の市場評価
  8. シナリオ分析(確率付き2-4シナリオ)
  9. サマリー
  10. 免責事項

ファイル命名規則: [SYMBOL]_technical_analysis_[YYYY-MM-DD].md

例: SPY_technical_analysis_2025-11-02.md

ステップ6: 複数チャートの処理

複数のチャートが提供された場合:

  1. 最初のチャートの完全な分析ワークフロー(ステップ3-5)を完了
  2. 分析レポートを保存
  3. 次のチャートに進む
  4. すべてのチャートの分析とドキュメント化が完了するまで繰り返し

分析をバッチ処理しないでください。各レポートを完成・保存してから次のチャートに移ってください。


6. 逆張り確認モード(Shapiroステップ3)

このモードは既存の純粋チャート分析ワークフローに追加された機能です。逆張り確認を明示的に依頼された場合にのみ有効になります。通常はステップ1のcot-contrarian-detectorが市場の偏りを検出し、ステップ2のnews-reaction-failure-analyzerが好材料への無反応を確認した後に使用します。単に「このチャートを分析して」と依頼された場合は、上記のステップ1から6までの既存ワークフローがそのまま実行されます。

目的

週足チャートに、偏った市場が反転しつつある証拠が現れているかを確認します。具体的には週足キーリバーサル、週中のフェイルドエクストリーム、そして一度は成立したブレイクアウトが否定されるフェイルドブレイクアウトの3パターンを検出し、継続性による否定判定でチェックします。継続性による否定判定とは、検出された最新のシグナルよりも新しい週に、偏りの方向へ新たな終値エクストリームが記録された場合に確認を取り消す仕組みです。詳細な方法論はチャートモードとスクリプトモードの両方で一字一句共通です。references/contrarian-confirmation-checklist.mdを参照してください。

3つのチェックとスイングレベル

  1. 週足キーリバーサル — 直近スイングルックバック期間(デフォルト13週)の新高値・新安値をつけた週の終値が、前週の反対側のレベルを突破して引けるパターン
  2. フェイルドエクストリーム — 直前のエクストリームルックバック期間(デフォルト52週)のレベルを週中に突破したものの、同じ週のうちに終値がそのレベルを割り込んで引けるパターン
  3. フェイルドブレイクアウト — 直前のエクストリームルックバック期間のレベルを終値で明確にブレイクした後、3週以内に終値がそのレベルを再び割り込んで引けるパターン。この場合のweek_ofはブレイクアウトが否定された週を指し、ブレイクアウトが成立した週そのものではありません
  4. 継続性による否定判定 — 検出された最新シグナルよりも新しい週に、偏りの方向へ新たな終値エクストリームが記録された場合、それがどのシグナルであっても確認は取り消されます
  5. スイングレベル — 前後2週ずつを含む5週フラクタルとしてスイング高値・安値を検出し、stop_referenceを算出します。フラクタルが見つからない場合はフォールバック値を使用します

すべての比較は厳密な不等号で判定され、ウィンドウの切り詰めは実行単位ではなく評価対象週ごとに行われます。

チャート優先・スクリプトはフォールバック

チャート画像が引き続き主要な入力です。チャート画像が提供されない場合、または監査可能で決定論的な結果が求められる場合は、チャート読み取りの代わりに、あるいはそれと併用してスクリプトを実行します。

python3 skills/technical-analyst/scripts/check_weekly_price_action.py \
  --symbol BT --direction CROWDED_LONG --as-of 2026-07-15 \
  --output-dir reports/

cot-contrarian-detectorのレポートから直接方向を解決することもできます。

python3 skills/technical-analyst/scripts/check_weekly_price_action.py \
  --symbol BT --detector-json reports/cot_crowding_2026-07-12.json \
  --as-of 2026-07-15 --output-dir reports/

スクリプトは先物からETFへのフォールバックチェーンで週次リサンプル済みのOHLCを取得し、リサンプル前に日足データを--as-ofで切り詰めることでルックアヘッドを防ぎます。--detector-jsonが欠落・失効・不正な形式の場合、価格履歴が--min-weeks(デフォルト30週)に満たない場合、または有効な価格ソースが存在しない場合は、クラッシュせずINSUFFICIENT_DATAとしてフェイルクローズします。

出力

  • JSON/Markdown: ta_confirmation_<SYMBOL>_<as-of>.jsonおよび.mdreports/に保存します
  • verdict: CONFIRMEDNOT_CONFIRMEDINSUFFICIENT_DATAのいずれかで、confidenceHIGHまたはMEDIUM)とverdict_reasonを伴います
  • handoff: verdictconfidencestop_referencereport_pathを含むprice_actionブロックを出力します。Issue #241でまだ実装されていないcontrarian-setup-gateが、このhandoffブロックを消費する想定です

ガードレール

  • 判定のみを提供し、それ単体をトレード推奨として扱いません。エントリー・エグジット計画とポジションサイジングは下流のスキルの役割です
  • INSUFFICIENT_DATAはパイプラインを先に進めません。入力が劣化したすべてのケースでフェイルクローズします
  • 週足のみを対象とします
  • 上記の既存チャート分析ワークフローは変更されません。このモードは逆張り確認が明示的に依頼された場合にのみ有効になります
  • シグナルが1つだけのMEDIUM判定は意図的に弱いエビデンスとして扱われます。詳細はreferences/contrarian-confirmation-checklist.mdの確信度セクションを参照してください

7. リソース

リファレンス:

  • skills/technical-analyst/references/technical_analysis_framework.md
  • skills/technical-analyst/references/contrarian-confirmation-checklist.md

スクリプト:

  • skills/technical-analyst/scripts/check_weekly_price_action.py