jpskill.com
🛠️ 開発・MCP コミュニティ 🔴 エンジニア向け 👤 エンジニア・AI開発者

🛠️ Financial Intel

financial-intel

株や仮想通貨の銘柄をAIが

⏱ ボイラープレート実装 半日 → 30分

📺 まず動画で見る(YouTube)

▶ 【衝撃】最強のAIエージェント「Claude Code」の最新機能・使い方・プログラミングをAIで効率化する超実践術を解説! ↗

※ jpskill.com 編集部が参考用に選んだ動画です。動画の内容と Skill の挙動は厳密には一致しないことがあります。

📜 元の英語説明(参考)

Stock momentum scanner and portfolio intelligence. Look up any ticker for momentum scores, RSI, coil breakout patterns, and AI analysis. Scan top signals across 6,500+ stocks and crypto. Track portfolio holdings with real-time alerts. Market pulse, sector trends, win/loss proof data, and risk assessment — all through natural conversation. Powered by 730 days of backtested data with an 80% 5-day win rate.

🇯🇵 日本人クリエイター向け解説

一言でいうと

株や仮想通貨の銘柄をAIが

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o financial-intel.zip https://jpskill.com/download/4424.zip && unzip -o financial-intel.zip && rm financial-intel.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/4424.zip -OutFile "$d\financial-intel.zip"; Expand-Archive "$d\financial-intel.zip" -DestinationPath $d -Force; ri "$d\financial-intel.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して financial-intel.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → financial-intel フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-17
取得日時
2026-05-18
同梱ファイル
8

💬 こう話しかけるだけ — サンプルプロンプト

  • Financial Intel を使って、最小構成のサンプルコードを示して
  • Financial Intel の主な使い方と注意点を教えて
  • Financial Intel を既存プロジェクトに組み込む方法を教えて

これをClaude Code に貼るだけで、このSkillが自動発動します。

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Financial Intelligence Skill

6,500以上の株式および暗号資産に対するリアルタイムのモメンタムスコアリングと市場インテリジェンスを提供します。Banana Farmerを搭載しています。これは、テクニカル分析、価格モメンタム、ソーシャルセンチメントを単一の0-100の「Ripeness Score」に組み合わせたAIモメンタムスキャナーです。

12,450以上のシグナルを730日間追跡したデータに裏打ちされており、5日間の勝率は80%と検証されています。

クイックスタート

オプションA — 無料キーを即座に自己プロビジョニング(アカウント不要):

curl -s -X POST "https://bananafarmer.app/api/bot/v1/keys/trial" \
  -H "Content-Type: application/json" \
  -d '{"name": "My Agent", "email": "you@example.com"}'

応答からkeyを保存してください。メールアドレスごとに1つのキー、即時発行、クレジットカード不要です。

オプションB — フルアカウントにサインアップ: bananafarmer.app/developers

次に:

  1. キーを設定します: export BF_API_KEY=bf_bot_your_key_here(またはOpenClaw設定に追加)
  2. 試してみます: python3 scripts/bf-lookup.py AAPL — スコア、バッジ、RSI、コイル、プライスアクション、強気/弱気ケース、および注目すべき点が得られます。

これで完了です。6,500以上の資産のモメンタムシグナルをスキャンできるようになりました。


プロンプト例

単一ティッカー分析

任意の株式または暗号シンボルを検索して、完全なモメンタムプロファイル(スコア、バッジ、RSI、コイルパターン、EMAアライメント、プライスアクション、ボラティリティ、スコアリングの内訳、AIサマリー、強気/弱気ケース)を取得します。

プロンプト例:

  • "AAPLのモメンタムはどうですか?"
  • "TSLAを調べてください"
  • "ビットコインの状況はどうですか?"
  • "NVDAのスコアとテクニカルをチェックしてください"
  • "CRWVは熟していますか?"
  • "AMDのコイルスコアはどうですか?"
  • "SMCIの完全な分析を引っ張り出してください"
  • "PLTRは今、買われすぎていますか?"

実行方法:

python3 scripts/bf-lookup.py AAPL
python3 scripts/bf-lookup.py TSLA NVDA AMD   # 複数のティッカーを一度に
python3 scripts/bf-lookup.py BTC              # 暗号も機能します

返される内容: スコア(0-100)、バッジ(ripe/ripening/overripe/too-late/neutral)、現在価格、1日および5日間の変化、買われすぎ/売られすぎのラベル付きRSI、ブレイクアウトフラグ付きコイルスコア、EMA 20/50アライメント、52週高値からの近接度、ボラティリティ指標、スコアリングの内訳(テクニカル/モメンタム/ソーシャル)、主要なドライバー、AIサマリーの箇条書き、強気ケース、弱気ケース、および注目すべき点。


トップシグナル / バッチ分析

現在、最もスコアの高いモメンタムシグナル、つまりテクニカル、プライスアクション、ソーシャル指標全体で最も強いアライメントを示しているティッカーを確認します。

プロンプト例:

  • "今、トップシグナルは何ですか?"
  • "最もホットなモメンタム設定を見せてください"
  • "今日、熟したシグナルはありますか?"
  • "モメンタムスコアによるトップ5の株"
  • "注目すべき熟しつつあるものは何ですか?"
  • "トップ20のシグナルを見せてください"
  • "熟した暗号シグナルはありますか?"

実行方法:

python3 scripts/bf-market.py top                        # デフォルトはトップ10、すべてのバッジ
python3 scripts/bf-market.py top --limit 20             # トップ20
python3 scripts/bf-market.py top --badge ripe           # 熟したシグナルのみ
python3 scripts/bf-market.py top --badge ripening       # 熟しつつあるもののみ(ウォッチリスト候補)
python3 scripts/bf-market.py top --limit 5 --badge ripe # トップ5の熟したシグナルのみ

返される内容: シンボル、スコア、バッジ、1日間の変化、5日間の変化、および各シグナルの主要なドライバーを含むランキングテーブル。結果はシンボルによって自動的に重複排除されます。


ポートフォリオトラッキング

複数のアカウントにわたる保有資産を追跡します。RSIの買われすぎ/売られすぎ、大きな日次変動、熟した/熟しすぎたシグナル、リスクフラグ、P&L計算に関するアラートを含む、モーニングブリーフ形式のインテリジェンスレポートを取得します。

プロンプト例:

  • "私のポートフォリオをチェックしてください"
  • "私の保有資産の状況はどうですか?"
  • "ポートフォリオブリーフを実行してください"
  • "私のポジションに何かアラートはありますか?"
  • "私の積極的なアカウントの状況はどうですか?"
  • "私のテクノロジー保有資産のP&Lはどうですか?"
  • "私の保有資産のどれかが買われすぎていますか?"
  • "今、私の株の中で熟しているものはどれですか?"

実行方法:

python3 scripts/bf-portfolio.py portfolios.json                 # 完全なブリーフ、すべてのアカウント
python3 scripts/bf-portfolio.py portfolios.json --account aaron  # 特定のアカウントにフィルタリング
python3 scripts/bf-portfolio.py portfolios.json --json           # パイプ処理用のJSON出力

ポートフォリオファイル形式 (portfolios.json):

{
  "accounts": [
    {
      "id": "personal",
      "name": "My Portfolio",
      "risk_profile": "aggressive",
      "holdings": [
        {"symbol": "AAPL", "shares": 50, "cost_basis": 185.00},
        {"symbol": "NVDA", "shares": 20, "cost_basis": 450.00},
        {"symbol": "TSLA", "shares": 10, "cost_basis": 210.00}
      ]
    },
    {
      "id": "retirement",
      "name": "IRA Account",
      "risk_profile": "conservative",
      "holdings": [
        {"symbol": "VOO", "shares": 100, "cost_basis": 430.00},
        {"symbol": "ABBV", "shares": 40, "cost_basis": 155.00}
      ]
    }
  ]
}

返される内容: 市場状況、データ鮮度、アカウントごとのセクション(アラート:買われすぎ、売られすぎ、大きな変動、熟した/熟しすぎたシグナル、手遅れ警告、リスクプロファイル不一致)、および価格、スコア、バッジ、変化、RSI、株数、取得原価、およびパーセンテージ付きの未実現P&Lを示す詳細な保有ライン。

生成されるアラートタイプ:

  • SIGNAL: 保有資産が熟しているか、熟しすぎている
  • CAUTION: 保有資産が手遅れ(モメンタムが枯渇)
  • OVERBOUGHT: RSIが70以上(または強い警告の場合は80)
  • OVERSOLD: RSIが30未満(潜在的な反発ゾーン)
  • BIG MOVE: 5%を超える日次変化
  • WEEKLY: 10%を超える5日間の変化
  • NOTE: 保守的なアカウントにおける高いモメンタム

市場概要

市場の全体像を把握します。バッジごとのシグナル数、トレンド、新しい熟したシグナル、およびナラティブサマリーを提供します。

プロンプト例:

  • "今日の市場はどうなっていますか?"
  • "市場の脈拍を教えてください"
  • "全体的なモメンタムの状況はどうですか?"
  • "今、熟したシグナルはいくつありますか?"
  • "市場でトレンドになっているものは何ですか?"
  • "今日、新しい熟したシグナルはありますか?"

実行方法:

python3 scripts/bf-market.py pulse

返される内容: ナラティブサマリー、シグナルカウントの内訳(原文がここで切り詰められています)

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Financial Intelligence Skill

Real-time momentum scoring and market intelligence for 6,500+ stocks and crypto assets. Powered by Banana Farmer — an AI momentum scanner that combines technical analysis, price momentum, and social sentiment into a single 0-100 Ripeness Score.

Backed by 730 days of tracked data across 12,450+ signals with a verified 80% five-day win rate.

Quick Start

Option A — Self-provision a free key instantly (no account needed):

curl -s -X POST "https://bananafarmer.app/api/bot/v1/keys/trial" \
  -H "Content-Type: application/json" \
  -d '{"name": "My Agent", "email": "you@example.com"}'

Save the key from the response. One key per email, instant, no credit card.

Option B — Sign up for a full account: bananafarmer.app/developers

Then:

  1. Set your key: export BF_API_KEY=bf_bot_your_key_here (or add to OpenClaw config)
  2. Try it: python3 scripts/bf-lookup.py AAPL — you get score, badge, RSI, coil, price action, bull/bear case, and what to watch for

That is it. You are now scanning 6,500+ assets for momentum signals.


Prompt Examples

Single Ticker Analysis

Look up any stock or crypto symbol for a full momentum profile: score, badge, RSI, coil pattern, EMA alignment, price action, volatility, scoring breakdown, AI summary, and bull/bear cases.

Example prompts:

  • "What's the momentum on AAPL?"
  • "Look up TSLA for me"
  • "How's Bitcoin looking?"
  • "Check NVDA's score and technicals"
  • "Is CRWV ripe?"
  • "What's the coil score on AMD?"
  • "Pull up the full analysis on SMCI"
  • "Is PLTR overbought right now?"

How to run:

python3 scripts/bf-lookup.py AAPL
python3 scripts/bf-lookup.py TSLA NVDA AMD   # Multiple tickers at once
python3 scripts/bf-lookup.py BTC              # Crypto works too

What you get back: Score (0-100), badge (ripe/ripening/overripe/too-late/neutral), current price, 1d and 5d change, RSI with overbought/oversold labels, coil score with breakout flag, EMA 20/50 alignment, 52-week high proximity, volatility metrics, scoring breakdown (technical/momentum/social), key drivers, AI summary bullets, bull case, bear case, and what to watch for.


Top Signals / Batch Analysis

See the highest-scoring momentum signals right now — the tickers showing the strongest alignment across technical, price action, and social indicators.

Example prompts:

  • "What are the top signals right now?"
  • "Show me the hottest momentum setups"
  • "Any ripe signals today?"
  • "Top 5 stocks by momentum score"
  • "What's ripening that I should watch?"
  • "Show me the top 20 signals"
  • "Any ripe crypto signals?"

How to run:

python3 scripts/bf-market.py top                        # Default top 10, all badges
python3 scripts/bf-market.py top --limit 20             # Top 20
python3 scripts/bf-market.py top --badge ripe           # Only ripe signals
python3 scripts/bf-market.py top --badge ripening       # Only ripening (watchlist candidates)
python3 scripts/bf-market.py top --limit 5 --badge ripe # Top 5 ripe only

What you get back: Ranked table with symbol, score, badge, 1-day change, 5-day change, and key drivers for each signal. Results are deduplicated by symbol automatically.


Portfolio Tracking

Track multiple holdings across accounts. Get a morning-brief-style intelligence report with alerts for RSI overbought/oversold, big daily moves, ripe/overripe signals, risk flags, and P&L calculations.

Example prompts:

  • "Check my portfolio"
  • "How are my holdings doing?"
  • "Run a portfolio brief"
  • "Any alerts on my positions?"
  • "How's my aggressive account looking?"
  • "What's the P&L on my tech holdings?"
  • "Any of my holdings overbought?"
  • "Which of my stocks are ripe right now?"

How to run:

python3 scripts/bf-portfolio.py portfolios.json                 # Full brief, all accounts
python3 scripts/bf-portfolio.py portfolios.json --account aaron  # Filter to one account
python3 scripts/bf-portfolio.py portfolios.json --json           # JSON output for piping

Portfolio file format (portfolios.json):

{
  "accounts": [
    {
      "id": "personal",
      "name": "My Portfolio",
      "risk_profile": "aggressive",
      "holdings": [
        {"symbol": "AAPL", "shares": 50, "cost_basis": 185.00},
        {"symbol": "NVDA", "shares": 20, "cost_basis": 450.00},
        {"symbol": "TSLA", "shares": 10, "cost_basis": 210.00}
      ]
    },
    {
      "id": "retirement",
      "name": "IRA Account",
      "risk_profile": "conservative",
      "holdings": [
        {"symbol": "VOO", "shares": 100, "cost_basis": 430.00},
        {"symbol": "ABBV", "shares": 40, "cost_basis": 155.00}
      ]
    }
  ]
}

What you get back: Market status, data freshness, per-account sections with alerts (overbought, oversold, big moves, ripe/overripe signals, too-late warnings, risk-profile mismatches), and detailed holding lines showing price, score, badge, changes, RSI, shares, cost basis, and unrealized P&L with percentages.

Alert types generated:

  • SIGNAL: holding is ripe or overripe
  • CAUTION: holding is too-late (momentum exhausted)
  • OVERBOUGHT: RSI above 70 (or 80 for strong warning)
  • OVERSOLD: RSI below 30 (potential bounce zone)
  • BIG MOVE: more than 5% daily change
  • WEEKLY: more than 10% five-day change
  • NOTE: high momentum in conservative account

Market Overview

Get a bird's-eye view of the market: how many signals are firing by badge, what is trending, new ripe signals, and a narrative summary.

Example prompts:

  • "What's the market doing today?"
  • "Give me a market pulse"
  • "How's the overall momentum landscape?"
  • "How many ripe signals are there right now?"
  • "What's trending in the market?"
  • "Any new ripe signals today?"

How to run:

python3 scripts/bf-market.py pulse

What you get back: Narrative summary, signal counts broken down by badge (ripe, ripening, overripe, too-late, neutral), trending symbols, and newly ripe signals that just crossed the threshold.


Performance Tracking / Proof Data

See which signals actually played out: winners and losers with real entry prices, current prices, percentage moves, and milestone returns over multiple time horizons.

Example prompts:

  • "Which signals worked this week?"
  • "Show me recent winners"
  • "What's the track record look like?"
  • "Any big movers from recent signals?"
  • "Show me winners from the last 30 days"
  • "What percentage of signals won this week?"
  • "What were the biggest losers recently?"

How to run:

python3 scripts/bf-movers.py                       # Default: last 7 days, top 5
python3 scripts/bf-movers.py --days 30 --limit 10  # Last 30 days, top 10
python3 scripts/bf-movers.py --days 1 --limit 3    # Today's movers

What you get back: Winners and losers sections, each showing symbol, percentage change, entry price, current price, and milestone returns (1d, 3d, 5d, 10d). Summary line with calculated win rate for the period.


Risk Assessment

Evaluate whether a stock is extended, overbought, or showing risk flags. Combine RSI, badge, coil, and volatility data into a risk picture.

Example prompts:

  • "Is TSLA overbought?"
  • "What's the risk on NVDA right now?"
  • "Is AMD overripe?"
  • "Should I be worried about my SMCI position?"
  • "What's the max drawdown on CRWV?"
  • "Is this too late to buy PLTR?"
  • "Any of the top signals looking overextended?"

How to run:

python3 scripts/bf-lookup.py TSLA   # Check RSI, badge, volatility, and bear case

What to look for in the output:

  • RSI above 70: overbought warning, watch for pullback
  • RSI above 80: strongly overbought
  • Badge "overripe": already extended, pullback likely
  • Badge "too-late": chasing at this level carries elevated risk
  • Max drawdown percentage: historical worst case from entry
  • Average daily range: how volatile it trades
  • Bear case: the AI-generated downside scenario

Comparison Queries

Compare multiple tickers side by side for momentum scores, technicals, and risk profiles.

Example prompts:

  • "Compare AAPL vs MSFT momentum"
  • "Which has better momentum: NVDA or AMD?"
  • "Look up TSLA, RIVN, and LCID"
  • "Compare the big tech names — AAPL, GOOGL, MSFT, META"
  • "Which mega cap has the highest coil score?"

How to run:

python3 scripts/bf-compare.py AAPL MSFT          # Side-by-side table comparison
python3 scripts/bf-compare.py NVDA AMD INTC AVGO # Compare semiconductor names
python3 scripts/bf-compare.py TSLA RIVN LCID     # EV sector comparison
python3 scripts/bf-lookup.py AAPL MSFT           # Full deep-dive for each (more detail)

What you get back: A formatted comparison table showing score, badge, price, RSI, coil score, EMA alignment, 52-week proximity, scoring breakdown, and volatility side by side. Includes a verdict (strongest/weakest momentum) and risk flags (overbought, coiled for breakout).


Watchlist Management

Use the top signals and portfolio tools together to build and track watchlists. Filter by badge to focus on ripening setups that are worth monitoring.

Example prompts:

  • "Add NVDA to my watchlist" (add to your portfolios.json)
  • "What's ripening that I should watch?"
  • "Build me a watchlist of ripening signals"
  • "Update my watchlist with today's top ripening stocks"
  • "Track these for me: AAPL, NVDA, AMD, TSLA"

How to run:

# Today's curated watchlist picks (pre-selected by the system)
python3 scripts/bf-watchlist.py picks

# Find watchlist candidates from top signals
python3 scripts/bf-market.py top --badge ripening --limit 10

# Track specific symbols (add to portfolios.json with 0 shares)
python3 scripts/bf-portfolio.py portfolios.json

Tip: Use bf-watchlist.py picks for the system's daily curated picks, or create a "watchlist" account in your portfolios.json with shares: 0 and cost_basis: 0 for each symbol. The portfolio brief will show scores, badges, RSI, and alerts without P&L calculations.

{
  "id": "watchlist",
  "name": "Watchlist",
  "risk_profile": "moderate",
  "holdings": [
    {"symbol": "NVDA", "shares": 0, "cost_basis": 0},
    {"symbol": "AMD", "shares": 0, "cost_basis": 0}
  ]
}

Sector and Theme Analysis

Analyze momentum across entire sectors, or drill into specific industry groups.

Example prompts:

  • "Which sectors have the most momentum?"
  • "What's the hottest sector right now?"
  • "How are the semiconductor stocks doing?"
  • "Check the EV sector — TSLA, RIVN, LCID, NIO"
  • "Run the FAANG names for me"
  • "What's happening in biotech?"
  • "Check the momentum on airline stocks"

How to run:

# Full sector momentum breakdown (auto-classifies top 50 signals)
python3 scripts/bf-sectors.py

# Sector data as JSON for processing
python3 scripts/bf-sectors.py --json

# Deep-dive a specific sector group
python3 scripts/bf-compare.py NVDA AMD INTC AVGO  # Semiconductors
python3 scripts/bf-compare.py AAPL MSFT GOOGL META # Big tech
python3 scripts/bf-lookup.py TSLA RIVN LCID NIO    # Full detail per ticker

What you get back: The sectors script groups all top signals by sector (Technology, Healthcare, Financials, Energy, Consumer, Industrials, Real Estate, etc.), shows signal count, average score, heat rating (HOT/WARM/COOL/COLD), ripe signal count, and sector leaders. Use bf-compare.py for side-by-side comparison within a sector group.


Historical Context and Win Rates

Query the system's track record and statistical performance data.

Example prompts:

  • "What's the 5-day win rate for ripe signals?"
  • "How does 1-day performance compare to 5-day?"
  • "What's the average return on signals above 90?"
  • "How many signals have been tracked total?"
  • "What's the historical data span?"
  • "Does patience actually improve win rate?"

How to run:

python3 scripts/bf-watchlist.py scorecard  # System win rates by holding period and score threshold
python3 scripts/bf-watchlist.py horizons   # Time horizon analysis (how long to hold)
python3 scripts/bf-market.py health        # System stats and data freshness
python3 scripts/bf-movers.py --days 30     # Recent track record with win rate

Track record reference (from 12,450 signals over 730 days):

Holding Period Win Rate Avg Return Avg Win Avg Loss
1 day 76.5% +1.35% +2.07% -0.97%
3 days 78.4% +2.69% +3.87% -1.62%
5 days 79.9% +4.51% +6.24% -2.37%
10 days 79.4% +5.40% +7.54% -2.86%
1 month 80.1% +8.16% +11.26% -4.33%
2 months 79.1% +9.90% +13.96% -5.51%

Key insight: Win rate starts at 76.5% on day one and climbs to 80.1% by one month. The edge is patience.


Alert-Style Queries

Check for actionable conditions across your holdings or the broader market.

Example prompts:

  • "Alert me if any holding goes ripe"
  • "Any of my stocks overbought?"
  • "Which holdings have RSI below 30?"
  • "Are any top signals showing a coil above 70?"
  • "What in my portfolio has the biggest move today?"
  • "Any too-late warnings on my positions?"

How to run:

# Portfolio alerts (automatically flags ripe, overbought, oversold, big moves)
python3 scripts/bf-portfolio.py portfolios.json

# Market-wide scan for ripe signals
python3 scripts/bf-market.py top --badge ripe --limit 20

# Check specific names for risk
python3 scripts/bf-lookup.py AAPL TSLA NVDA

The portfolio brief automatically generates alerts. Look for the ALERTS section, which flags: SIGNAL (ripe/overripe), CAUTION (too-late), OVERBOUGHT (RSI > 70), OVERSOLD (RSI < 30), BIG MOVE (> 5% daily), WEEKLY (> 10% five-day), and risk-profile mismatches.


System Health Check

Verify data freshness and market status before making decisions.

Example prompts:

  • "Is the data fresh?"
  • "Is the market open?"
  • "Check system health"
  • "Any data issues right now?"

How to run:

python3 scripts/bf-market.py health

What you get back: Market status (open, closed, pre-market, after-hours), data freshness (live, recent, stale), and any safety advisory. Always check health before acting on signals — stale data during market hours means something is wrong.


Understanding the Data

Ripeness Score (0-100)

The score is a composite of four pillars weighted by their predictive power:

Pillar Weight What It Measures
Technical Analysis 35-55% Chart patterns, RSI, moving averages, coil/spring patterns
Momentum 25-30% Price velocity in the 1-3% early sweet spot, volume confirmation
Social Sentiment 20-45% Reddit and X mentions, early buzz detection (1.2-2.0x normal activity)
Crowd Intelligence 0-10% Crypto only: futures positioning, funding rates

Higher score means stronger alignment across all pillars. A score of 80 with Technical at 45% and Social at 35% tells a different story than 80 with Technical at 55% and Social at 20% — check the scoring breakdown.

Badge System

Badge Score Range What It Means Action
Ripe 75-89 High conviction setup, strong momentum with favorable entry Best risk/reward window
Ripening 60-74 Momentum building but not fully formed Watch, not act — add to watchlist
Overripe 90-100 Extended, may be due for consolidation or pullback Caution, tighten stops
Too-Late N/A Already made significant move, chasing carries elevated risk Do not chase
Neutral Below 60 No significant momentum signal No edge, stay patient

Score thresholds for significance: 95+ is rare and highest conviction, 85-94 is strong, 80-84 is actionable.

RSI (Relative Strength Index)

RSI measures momentum on a 0-100 scale:

  • Below 30: Oversold. Price has been beaten down; potential bounce zone. Does not mean "buy" — it means selling pressure may be exhausting.
  • 30-70: Normal range. No extreme reading.
  • Above 70: Overbought. Price has been running hard; watch for pullback. Does not mean "sell" — strong trends stay overbought for weeks.
  • Above 80: Strongly overbought. Higher probability of mean reversion.

Coil Score (0-100)

The coil score measures price compression — how tightly a stock's price is consolidating. Think of it as a spring being compressed:

  • Below 40: Loose. Price is moving freely, no compression buildup.
  • 40-69: Moderate compression. Some consolidation, but not yet significant.
  • 70+: Coiled. Price is compressed into a tight range. This often precedes a sharp directional move (breakout or breakdown). This is the single most predictive indicator in the system.

A stock with a high coil score AND a ripe badge is the strongest setup: momentum is aligned, and price compression suggests the next move could be significant.

EMA 20 and EMA 50

Exponential Moving Averages smooth price data over 20 and 50 days:

  • Price above both EMAs: Bullish trend — short and medium term aligned upward
  • Price above EMA 20, below EMA 50: Short-term bounce in a longer downtrend — proceed with caution
  • Price below both EMAs: Bearish trend — momentum is against you
  • EMA 20 crossing above EMA 50: Golden cross — potential trend change

Proximity to 52-Week High

A decimal from 0 to 1 representing how close the current price is to its 52-week high:

  • 0.95+ (95%+): Near highs — strong relative strength, but resistance ahead
  • 0.80-0.95: Healthy uptrend territory
  • Below 0.70: Significantly off highs — check if recovery or further decline

Track Record

The system is not new. It has been tracking signals for over two years:

  • 12,450+ signals analyzed across 730 days
  • 6,563 unique stocks tracked
  • 80% five-day win rate with +4.51% average return
  • 76.5% one-day win rate climbing to 80.1% by one month
  • Win rate is consistent across score thresholds: 80+ scores all perform between 79-81%

Win Rate by Score Threshold (5-day horizon)

Score Range Win Rate Avg Return Sample Size
80-85 80.2% +4.60% 3,096
85-90 79.2% +4.45% 3,115
90-95 79.4% +4.42% 3,124
95+ 80.7% +4.56% 3,115

The Patience Edge

The data shows holding longer improves outcomes. Day-one win rate is 76.5%. By day five, it is 79.9%. By one month, 80.1%. Average returns scale from +1.35% (1 day) to +8.16% (1 month). The optimal risk/reward window is the 5-to-10-day holding period.

This is not a day-trading system. It catches momentum at 2% instead of 15%, then lets the move develop over days.


Error Handling

BF_API_KEY not set

ERROR: BF_API_KEY not set. Get your key at https://bananafarmer.app

Fix: Export your API key: export BF_API_KEY=bf_bot_your_key_here. Or add it to your OpenClaw config or .env file.

No signal data available

$XYZ: No signal data available

Cause: The symbol is not tracked, was delisted, or is a very low-volume OTC stock. Banana Farmer tracks 6,500+ stocks from NYSE and NASDAQ plus popular crypto. Penny stocks and OTC issues may not have enough data for a signal.

Fix: Verify the ticker symbol is correct. Try the exchange-standard format (no special characters). Crypto tickers use their standard symbols (BTC, ETH, SOL).

API timeout or connection error

$AAPL: Error — <urlopen error timed out>

Cause: The Banana Farmer API did not respond within 15 seconds. This can happen during high-traffic market opens or if the service is temporarily down.

Fix: Wait 30 seconds and retry. If repeated, check system health with python3 scripts/bf-market.py health. If health also times out, the API may be experiencing downtime.

Rate limiting

The API rate limits depend on your tier: Free (10/min, 50/day), Pro (60/min, 10K/day), Max (120/min, 50K/day). Under normal usage you will not hit these limits. If you do:

Fix: Space out requests. The portfolio script fetches one symbol at a time, so a portfolio of 20 holdings makes 21 API calls (20 lookups + 1 health check). This is well within limits.

Stale data warning

If bf-market.py health reports data freshness as "stale" during market hours, the data pipeline may be delayed. Signals and scores are based on data that refreshes every 15 minutes. Stale data (> 30 minutes old) during open market hours means scores may not reflect current conditions.

Fix: Note the staleness in your analysis. Prices move, but momentum signals are directional and usually remain valid for the session unless there is a major intraday reversal.

403 Forbidden

HTTP Error 403: Forbidden

Cause: Missing or malformed User-Agent header. The API requires a User-Agent: BananaFarmerBot/1.0 header.

Fix: The scripts set this automatically. If you are calling the API directly, make sure to include the header.


Advanced Usage

JSON Output Mode

For programmatic processing, the portfolio script supports JSON output:

python3 scripts/bf-portfolio.py portfolios.json --json

This returns a JSON object with a brief field (the formatted text) and a signals field (score and badge for each looked-up symbol). Use this for piping into other tools, dashboards, or automated workflows.

Multi-Account Portfolios

The portfolio file supports multiple accounts with different risk profiles. Each account gets its own section in the brief with account-specific alerts. A conservative account holding a high-momentum stock will get a NOTE alert that an aggressive account would not.

Supported risk profiles: conservative, moderate, aggressive. The --account filter accepts partial matches on both the account id and name fields.

python3 scripts/bf-portfolio.py portfolios.json --account ira
python3 scripts/bf-portfolio.py portfolios.json --account retirement

Combining Scripts

Chain scripts together for richer analysis:

# Morning routine: health check, then top signals, then portfolio
python3 scripts/bf-market.py health && python3 scripts/bf-market.py top --limit 5 && python3 scripts/bf-portfolio.py portfolios.json

# Find this week's winners, then deep-dive the top one
python3 scripts/bf-movers.py --days 7 --limit 1

# Scan for ripe signals and look up each one
python3 scripts/bf-market.py top --badge ripe --limit 5
python3 scripts/bf-lookup.py AAPL NVDA AMD  # use the symbols from top output

Filtering Top Signals

The top command supports badge and limit filters:

python3 scripts/bf-market.py top --badge ripe --limit 5     # Only highest conviction
python3 scripts/bf-market.py top --badge ripening --limit 10 # Watchlist candidates
python3 scripts/bf-market.py top --limit 50                  # Broad scan

Movers Time Range

Control the lookback window for performance tracking:

python3 scripts/bf-movers.py --days 1 --limit 3   # Today only
python3 scripts/bf-movers.py --days 7 --limit 10   # This week
python3 scripts/bf-movers.py --days 30 --limit 20  # This month

Scripts Reference

Script Purpose Key Arguments
bf-lookup.py Deep analysis of specific tickers SYMBOL [SYMBOL2 ...]
bf-market.py Market overview and signal scanning health, top [--limit N] [--badge X], pulse
bf-portfolio.py Portfolio intelligence with alerts FILE.json [--account NAME] [--json]
bf-movers.py Winners/losers proof data [--days N] [--limit N]
bf-compare.py Side-by-side ticker comparison table SYMBOL1 SYMBOL2 [SYMBOL3 ...] [--json]
bf-watchlist.py Curated picks, scorecard, horizons picks, scorecard, horizons [--json]
bf-sectors.py Sector momentum breakdown [--json]

All scripts are in the scripts/ directory. All require python3 and BF_API_KEY in the environment. No additional pip packages are needed — everything uses the Python standard library.


Pricing

Plan Price What You Get
Free $0 Health, discover, top 3 signals. 10 req/min, 50/day. Enough to verify it works.
Pro $49/month ($39/mo annual) Full 50+ leaderboard, all endpoints, proof images, portfolio, movers, watchlist, 30-day score history. 60 req/min, 10K/day.
Max $149/month ($119/mo annual) Everything in Pro + historical scores with exact prices at signal, calculated returns, full 730+ day backtesting, bulk export, webhooks. 120 req/min, 50K/day.

Get your key instantly at bananafarmer.app/developers. Free tier works immediately — no credit card needed.

For comparison: Danelfin Pro charges $79/mo for AI scores with historical data but no prices attached. Polygon.io charges $79-500/mo for raw price data with zero intelligence. Alpha Vantage is $50-250/mo for raw data. Banana Farmer Max at $149/mo gives you both — momentum intelligence AND exact prices at every signal — with 730+ days of backtesting proof. Still less than Polygon's mid-tier, with far more intelligence.


Security

This skill is designed with transparency and safety in mind:

  • Outbound HTTPS only: All scripts make only outbound HTTPS calls to bananafarmer.app. No other network connections, no inbound listeners, no file exfiltration.
  • Zero pip dependencies: Every script uses only the Python standard library (json, urllib, ssl, os, sys). No third-party packages to audit.
  • MIT licensed: Full source code is readable and auditable.
  • No secrets in code: API key is read from the BF_API_KEY environment variable only. Never hardcoded, never logged.
  • Read-only: The skill reads market data. It does not execute trades, manage accounts, or modify any files on your system.
  • Infrastructure security: Security practices — TLS 1.3, AES-256, Cloudflare WAF, Stripe PCI DSS Level 1.
  • Legal: Terms of Service · Privacy Policy · System Status

Disclaimer

This skill provides financial data, momentum scores, and analytical intelligence. It is not financial advice. All data is for informational and research purposes only.

  • This tool does not make buy or sell recommendations
  • Past performance does not guarantee future results
  • Users should do their own research and consult a licensed financial advisor before making investment decisions
  • Win rates and return figures are historical and based on backtested signal data
  • Stock data is delayed 15 minutes per exchange rules; crypto data is near real-time

By using this skill, you agree to the Banana Farmer API Terms.

Market data sourced by Tiingo.com. Momentum scoring, analysis, and the Ripeness Score methodology by Banana Farmer.

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。