mcpField
T
trader-alerts

trader-alerts

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

trader-alerts について

trader-alerts は、価格水準や時刻に基づく通知を監視するトレーディング用スキルです。ルールの発動を知らせますが、注文の発注・取消・変更は行いません。

主な機能

  1. 01損切り、目標価格、変動率の監視
  2. 02ニューヨーク時間による通知
  3. 03取引プランからの通知作成
  4. 04保存済み価格を使ったオフライン確認
  5. 05通知済みルールの状態記録

活用シーン

  1. 01計画中の取引に損切りと目標価格の通知を設定
  2. 02取引終了前に未決済ポジションを確認
  3. 03NYSE の取引状況と次の開始時刻を確認

インストール

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

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

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

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

詳細

trader-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" add --from-plan                # stop, target, flat by close from trader/plan.json
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --opening-bell
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol TSLA --stop 358.32
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol TSLA --target 370.04
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --at 15:55 --label "flat by close" --before-close
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol KO --pct 3
python3 "${CLAUDE_SKILL_DIR}/alerts.py" check                          # exit 0 = something rang
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote TSLA --write             # -> trader/prices.json
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote --holdings --write       # portfolio + plan tickers
python3 "${CLAUDE_SKILL_DIR}/alerts.py" list
python3 "${CLAUDE_SKILL_DIR}/alerts.py" reset tsla-plan-stop

--now "2026-10-19 15:55" は時刻(ニューヨーク時間)を固定します。--offline DIR はネットワークの代わりに保存済みの価格ファイルを読み込みます。

読み書きするファイル

ファイル内容
trader/plan.jsontrader-exit の取引内容。add --from-plan で使用
trader/alerts.jsonルール(このフォルダー内の alerts.example.json)
trader/state/alerts.json発動したルールとその時刻。各ルールが一度だけ鳴るように記録
trader/prices.json最新の価格。統合され、trader-budget と trader-risk で使用
trader/portfolio.json保有銘柄。quote --holdings で使用

ルールの種類

種類発動条件再発動するタイミング
above / target価格が price 以上reset の後、または "rearm": true で価格がいったん下落した場合は自動的に再発動
below / stop価格が price 以下同上
pct_move前日終値(または ref)から pct パーセント変動し、任意の direction(上または下)に一致1日に最大1回
time取引日のニューヨーク時間が at(「15:55」)を過ぎた取引日ごとに1回
opening_bellNYSE が開場している取引日ごとに1回

"date" を指定したルールは、そのニューヨークの日付のみ監視されます。--from-plan のルールにはプランの日付が設定されるため、昨日のストップが今日鳴ることはありません。"before_close": true を指定した time ルールは、午後1時に早引けする日に3時間前倒しされます。そのため、15:55 の「引けまでにポジションを解消」というアラートは、そのような日には12:55に鳴ります。

価格情報

  • yahoo(デフォルト):query2.finance.yahoo.com/v8/finance/chart/<TICKER>。非公式の無料 JSON エンドポイントで、銘柄ごとに0.5秒間隔で1回リクエストします。 429 が返された場合は待機してもう一度試します。その後も429または5xxが返された場合は、query1 を試します。ユーザーエージェントは day-trader-skill/2.0 です。
  • stooq:stooq.com/q/l/?s=tsla.us&f=sd2t2ohlcv&h&e=csv。Stooq の無料 CSV です。 2026-10-13 に404が返されたため、復旧に備えてパーサーは残しています。
  • 無料の価格情報は非公式で、遅延があり、最新の値と異なる場合があります。アラートや注文数量の確認には適していますが、注文を出すタイミングの判断には使わないでください。約定に使われるのはブローカーの価格です。trader/prices.json の各価格には価格情報の時刻が保持され、trader-risk は15分未満のものだけを使用します。
  • 両方とも利用できない場合は、ブローカーコネクター(Alpaca の get_stock_snapshot、IBKR の get_price_snapshot)から価格を読み取り、trader/prices.json に {"as_of": "...Z", "prices": {"TSLA": 366.48}} として書き込みます。

NYSE の取引時間

通常取引時間はニューヨーク時間の午前9:30から午後4:00までです。週末と、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日(ジューンティーンスの振替休日)、7月5日(独立記念日の振替休日)、9月6日、11月25日、12月24日(クリスマスの振替休日)。11月26日は午後1時に早引けします。

夏時間はツール内で計算するため、タイムゾーンファイルは不要で、コンピューター自体のタイムゾーンも無視されます。それ以外の年については、祝日一覧が不明であると表示されます。

手順

  1. trader-exit がプランを書き込んだら、すぐに add --from-plan を実行します。 3つのアラート、つまりストップ、ターゲット、フラットにする時刻をユーザーに確認します。
  2. 取引がオープンの間は check を実行します。Claude のスケジュール済みタスクまたは /loop から数分おきに実行してください。各実行では、今日のルールにあるティッカーだけを取得し、各アラートを1回ずつ鳴らします。チェックで読み取るのは最新の遅延クォートです。ライブフィードではないため、2回のチェックの間に価格がレベルを通過することがあります。
  3. 鳴ったアラートを1行ずつユーザーに伝えます。ストップまたはターゲットのアラートは、ブラケット注文が約定した可能性が高いことを意味します。get_open_position を確認し、trader-broker で約定を記録してください。「クローズまでにフラット」は、まだオープンのものをすべてクローズするという意味です。trader-broker の flatten、次に trader-risk、そしてユーザーの「はい」の順に進めます。決してユーザーに代わって行動してはいけません。

例:リール

2026-10-19(月)の TSLA:エントリーは午前10:15に364.18、ストップは358.32、ターゲットは370.04、フラットにする時刻は15:55です。add --from-plan は、その日の tsla-plan-stop、tsla-plan-target、tsla-flat-by を書き込みます。10:53の check では、ストップとターゲットの間にある実際の10:52のクォート、366.48を読み取ります。

NYSE OPEN (2026-10-19 10:53 New York, regular session).
Nothing hit. 3 rule(s) watched today, TSLA $366.48.

午後3:55:

ALERT Flat by close: it is 15:55 New York (set for 15:55), the market closes at 16:00. If TSLA is still
open, close it: trader-broker flatten --symbol TSLA builds the sell ticket, then trader-risk and your yes.

アラートは1回鳴ります。翌朝には、プランの3つのアラートは監視されなくなっています。add --opening-bell を使うと、ベルが9:30に鳴ります。

ルール

  • アラートは価格または時刻に関する事実です。事実として伝えてください。
  • クォートをライブのものとして提示してはいけません。無料のクォートは遅延しており、公式ではありません。
  • 新しいルールはすべて、ティッカー、種類、レベル、日付をユーザーに確認してください。

決して行わないこと

注文の発注、キャンセル、変更は決して行いません。クォートがライブだと主張することも、価格の今後の動きを予測することもありません。

安全性

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

コメント