mcpField
T
trader-alerts

trader-alerts

github.com/jakeschincariolその他90750 回インストール2 週間前に更新
リポジトリ

trader-alerts について

trader-alertsは、株価やNYSEの取引開始時刻をユーザー設定のルールで監視するPythonスキルです。アラートを通知するだけで注文は行わず、通知と取引判断を分けます。

主な機能

  1. 01価格しきい値とストップアラート
  2. 02変動率アラート
  3. 03NYSEの寄り付きアラート
  4. 04価格の取得とファイル更新
  5. 05通知済みルールの記録

活用シーン

  1. 01指定価格への到達を監視
  2. 02基準価格からの日次変動を追跡
  3. 03NYSEの取引開始を確認
  4. 04関連するtraderスキル向けに価格を更新

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jakeschincariol/trader-skill --skill trader-alerts

インストール後、Claude Code で/trader-alertsを入力して読み込まれたか確認します。

同梱ファイルalerts.example.jsonalerts.py

詳細

trader-alerts

Price Alerts は価格を見守るので、ユーザーが確認し続ける必要はありません。アラートは情報であり、注文ではありません。ストップが鳴っても、何も売却されません。ユーザーが行動したい場合は、通常の手順(数量、リスク、本人の承認)に進みます。

以下の ${CLAUDE_SKILL_DIR} は、このスキルのフォルダー(このフォルダーに SKILL.md があります)です。

python3 "${CLAUDE_SKILL_DIR}/alerts.py" clock                         # NYSE open or closed, next open
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote AAPL KO --write         # -> trader/prices.json
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote --holdings --write      # portfolio + targets tickers
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol AAPL --above 350
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol BAC --stop 50 --note "my stop"
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol KO --pct 3
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --opening-bell
python3 "${CLAUDE_SKILL_DIR}/alerts.py" check                         # exit 0 = something rang
python3 "${CLAUDE_SKILL_DIR}/alerts.py" list
python3 "${CLAUDE_SKILL_DIR}/alerts.py" reset aapl-above-350

読み書きするファイル

ファイル内容
trader/alerts.jsonルール(このフォルダーにある alerts.example.json)
trader/state/alerts.jsonどのルールがいつ鳴ったかを記録し、それぞれのルールが一度だけ鳴るようにします
trader/prices.json最新の気配値を取り込み、trader-budget、trader-risk、trader-tax、trader-rebalance で使用します

ルールの種類

種類鳴る条件再び鳴る条件
above価格が price 以上reset の後、または "rearm": true で価格が再び下がった場合
below / stop価格が price 以下同上
pct_move前日終値(または ref)から pct パーセント変動し、任意の direction が上または下1日につき最大1回
opening_bellNYSE が開場取引日ごとに1回

気配値

  • yahoo(デフォルト):query1.finance.yahoo.com/v8/finance/chart/<TICKER>。非公式の無料 JSON エンドポイントで、ティッカーごとに1回、0.5秒間隔でリクエストします。
  • stooq:stooq.com/q/l/?s=aapl.us&f=sd2t2ohlcv&h&e=csv。Stooq の無料 CSV です。これを書いている時点(2026-10-13)では 404 が返されました。再び利用可能になった場合に備えて、パーサーは残しています。試すには --source stooq を使用します。
  • 無料の気配値には遅延があります。アラートや数量の確認には問題ありませんが、注文を出すタイミングを計る用途には適しません。約定価格はブローカーの価格です。
  • 両方とも利用できない場合は、ブローカーコネクター(Alpaca の get_stock_snapshot、IBKR の get_price_snapshot)から価格を取得し、{"as_of": "...", "prices": {"AAPL": 341.27}} の形式で trader/prices.json に書き込みます。

NYSE の取引時間

通常の取引時間はニューヨーク時間の午前9時30分から午後4時までです。週末と、nyse.com/markets/hours-calendars から取得した次の祝日は休場です(2026-10-13 時点)。

  • 2026年:1月1日、1月19日、2月16日、4月3日(聖金曜日)、5月25日、6月19日、7月3日(独立記念日の振替休日)、9月7日、11月26日、12月25日。11月27日と12月24日は午後1時に早じまいします。
  • 2027年:1月1日、1月18日、2月15日、3月26日(聖金曜日)、5月31日、6月18日(Juneteenth の振替休日)、7月5日(独立記念日の振替休日)、9月6日、11月25日、12月24日(クリスマスの振替休日)。11月26日は午後1時に早じまいします。

夏時間はツール内で処理するため、タイムゾーンファイルは不要です。それ以外の年については、祝日一覧が不明であることを通知します。

手順

  1. 何を監視するか、ユーザーの言葉で尋ね(「Apple が320ドルを下回ったら教えて」など)、ルールを追加します。ティッカー、種類、価格を確認して伝えます。
  2. 今すぐ check を実行し、ユーザーが希望する場合はスケジュールに従って実行します(Claude のスケジュール済みタスクまたは cron。取引時間中に15分ごとで十分です)。各実行ではルールにあるティッカーのみを取得し、各アラートを一度だけ鳴らします。
  3. 鳴った内容を1件につき1行でユーザーに伝えます。ユーザーが行動したい場合は、数量計算と /trader-risk に案内します。ユーザーに代わって行動してはいけません。

例:リールのポートフォリオ

コピーしたポートフォリオの購入後、add --opening-bell、add --symbol AAPL --above 350、add --symbol BAC --stop 50 を実行します。2026-10-13、AAPL は341.27ドル、BAC は53.96ドルで取引を終えたため、その晩に check を実行すると「Nothing hit」と表示され、終了コード1を返します。翌朝9時30分に寄り付きのアラートが一度鳴ります。

決して行わないこと

注文の発注、取消、変更は決して行いません。気配値がリアルタイムだと主張したり、価格の行方を予測したりすることもありません。

安全性

  • 教育およびツールの提供を目的としており、金融アドバイスではありません。アラートは価格に関する事実であり、取引のシグナルではありません。
  • デフォルトではペーパートレードです("paper": true)。実取引を開始するかどうかは、ユーザー自身が自身の設定で決定します。
  • trader-broker を除き、このパックのどの機能も注文を実行しません。また、次の3つすべてを満たす場合に限ります。trader-risk がその日のその注文を承認していること、ユーザーがチャットでその注文について明示的に「はい」と入力したこと、そして注文ツールが「承認が必要」に設定されているため、ユーザーが Claude 自身のカードで一度だけ「許可」をクリックしたこと(Customize > Connectors > tool permissions)。注文ツールを「常に許可」に設定しないでください。
  • 設定で許可され、ユーザーが確認しない限り、オプション取引、証拠金取引、空売り、レバレッジは行いません。
  • ブローカーのキーは環境変数または Claude Desktop の設定に保存し、チャットには記載しないでください。

コメント