トレードに入りたいまさにその瞬間に発火するアラートをTradingViewで組み上げたとします。問題は、アラートが単なる通知だということです。あなたがそれを見て注文を出す頃には価格は動いてしまっているか、寝ている間に発火してすっかり逃してしまっている、ということが起こります。
TradingView Webhookボットはそのギャップを埋めます。アラートはあなたに通知する代わりに、Webhook URL、つまりあなたのボットが持つプライベートなウェブアドレスに通知します。Freyaのシグナルボットはそのアドレスで待ち受けており、アラートが発火した瞬間に取引所で自動的に取引を発注します。チャートのロジックはTradingViewに置いたまま、Freyaが執行を担います。
このガイドでは、概念、ステップバイステップの設定、そして肝心なときに接続を機能させ続けるための信頼性・セキュリティ・トラブルシューティングの知識を扱います。
要点
- Webhookを設定したTradingViewアラートは、チャート条件がトリガーされた瞬間にURLへ自動メッセージを送信します。Freyaのシグナルボットはそのメッセージを取引所での実際の取引に変えます。
- カスタムシグナルモードではボットにオープンWebhook URLと別個のクローズWebhook URLがあります。リスク比率モードでは単一のWebhook URLがあり、アラートメッセージが利益確定と損切りを運びます。
- Webhook通知はすべてのTradingViewプランに含まれているわけではありません。アラートを中心にセットアップを組む前に、ご利用のプランが対応しているか確認してください。
- Webhook URLは秘密情報です。URLを持っている人は誰でもボットでそのアクションをトリガーできるため、決して共有せず、露出した場合はただちに再生成してください。
- 外部シグナルは遅延したり中断したりする可能性があります。Freyaは届いたものを執行しますが、シグナル自体のタイミングと正確性はあなたのソースに依存します。
本ガイドのドル金額やパーセンテージは計算例であり、推奨ではありません。暗号資産取引では損失が生じる可能性があります。各ボットには失っても差し支えのない資金だけを割り当て、本番運用の前にリスク開示の全文をお読みください。
TradingViewアラートとWebhookの仕組み
このパイプラインは3つの要素で構成されています。
アラートはTradingViewチャート上で定義する条件です:価格があるレベルを超える、インジケーターが反転する、カスタムスクリプトが発火する、といったものです。それ単体では画面にポップアップしたり、メールを送ったり、スマートフォンにプッシュ通知したりできますが、いずれも結局あなたが行動する必要があります。
Webhookは自動化のオプションです。有効にすると、アラートがトリガーされた瞬間に、TradingViewが選んだURLへインターネット経由で小さなメッセージを送信します。アラートがメモを残す代わりに電話をかけてくれる、というイメージです。
ボットは受け手側です。FreyaのシグナルボットはプライベートなWebhook URLを公開しており、メッセージが届くと、接続された取引所アカウントで設定されたアクションを実行します。
全体の流れは次のとおりです:
- TradingViewでチャート条件が真になる
- アラートが発火し、TradingViewがボットのWebhook URLを呼び出す
- Freyaがシグナルを受信し、ボットが取引所で注文を発注する
- その後、ボットは設定に従ってポジションを管理する
重要な考え方はこうです:戦略はTradingView上にあり、Freyaは執行レイヤーです。タイミングのロジックは完全にあなたのアラートの中にあります。
Freyaのwebhookトリガーの役割
Freyaでは、Webhook執行はシグナルボットが担当します。ボット作成フローで「webhookシグナルに基づいて取引を実行」と説明されているボットタイプです。インジケーターベースのトリガー(RSI、EMAなど)とは異なり、WebhookトリガーにはFreya内部で設定する時間足も条件もありません。いつ発火するかの判断は、完全にあなたのTradingViewアラートに属します。Freyaの役割はその次に何が起こるかです。
Webhookモードは2つあり、ボットはどちらか一方を使います。両者を組み合わせることはできません。
-
TradingView Webhook(カスタムシグナルモード)。 ボットには2つのURLが与えられます:オープンWebhook URLとクローズWebhook URLです。オープンURLへのメッセージは、Freyaで設定した注文設定(取引額、利益確定、損切り)を使ってポジションを開きます。クローズURLへのメッセージはそれを閉じます。
-
リスク比率モード。 ボットには1つのURLが与えられます。アラートメッセージは利益確定と損切りの価格を運ぶ小さなJSONペイロードで、シグナルが届くとエントリーは成行で行われます。取引額の代わりに固定リスク額(損切りに紐づけ、オプションで利益確定に紐づけることも可能)を設定し、Freyaはエントリーから損切りまでの距離からポジションサイズを自動で算出します。イグジットが自動で処理されるため、クローズURLはありません:利益確定はシグナルで指定した正確な価格に指値注文として発注され、損切りはトリガーされると成行注文として執行されます。
| カスタムシグナル | リスク比率 | |
|---|---|---|
| Webhook URL | 2つ:オープン + クローズ | 1つ |
| エントリー | オープンシグナル時、注文設定に従う | シグナル到着時に成行 |
| 利益確定 / 損切り | Freyaで設定 | Webhookメッセージで運ばれる |
| ポジションサイズ | 取引額を自分で設定 | 固定リスク額から自動計算 |
| イグジット | クローズシグナル(設定したTP/SLを含む) | TP指値注文 + SL成行注文を自動発注 |
| 最適な用途 | エントリーとイグジットの両方を制御するアラート | 取引ごとにTP/SLレベルを持ち、一貫したリスクを取る戦略 |
ステップバイステップ:TradingViewをボットに接続する
ステップ1:シグナルボットを作成する
Freyaのボット作成フローでシグナルボットタイプを選び、他のボットと同じように取引所アカウント、取引ペア、方向を選択します。Freya Financeでシグナルボットを作成する方法の完全なウォークスルーが、すべての画面を詳しく説明しています。
ステップ2:シグナルモードを選ぶ
取引額、利益確定、損切りをFreya内で設定し、アラートには単に「今すぐ開く」「今すぐ閉じる」とだけ言わせたい場合はカスタムシグナルを選びます。戦略が取引ごとに利益確定と損切りを生成し、固定リスク額からサイズ調整を自動で処理してほしい場合はリスク比率を選びます。
ステップ3:Webhook URLをコピーする
戦略ステップで、FreyaがWebhook URLを生成します。コピーボタンを使ってください。1文字でも欠けるとURLは使い物になりません。URLは後でいつでも再生成でき、新しいものが作られると同時に古いものはただちに無効になります。
ステップ4:TradingViewアラートを作成する
TradingViewチャート上で、エントリーを表す条件のアラートを作成します。アラートの通知設定でWebhook URLオプションを有効にし、ボットのURLを貼り付けます:カスタムシグナルモードではオープンURL、リスク比率モードでは単一のURLです。カスタムシグナルモードでアラート駆動のイグジットを行うには、イグジット条件用の2つ目のアラートを作成し、クローズURLを指定します。
ステップ5:アラートメッセージを設定する
アラートメッセージは、TradingViewがボットに届けるペイロードです。ボットの設定画面が提供する形式を正確に使ってください。リスク比率モードでは、Freyaがワンクリックのコピーボタン付きでJSONボディテンプレートを表示します。アラートはその構造に利益確定と損切りの値を埋めて送信する必要があります。自己流でアレンジしないでください:メッセージがボットの期待するものと一致しない場合、シグナルは推測されるのではなく無視されます。
ステップ6:本番前にテストする
Webhookを接続してそのまま放置してはいけません。少額で少なくとも1回の完全な往復を実行してください:
- すぐにトリガーされるとわかっているアラート条件を設定する(価格がまさに触れようとしているレベルを超えるなど)
- 発火させ、ボットのアクティビティログで受信シグナルイベントを確認する
- 取引所でポジションが期待したサイズで開いたことを確認する
- クローズをトリガーし(クローズURLシグナル、またはリスク比率モードでは利益確定/損切り)、ポジションが実際に閉じたことを確認する
クリーンな往復ができて初めて、実際の戦略と実際のサイズを接続すべきです。
計算例:リスク比率のサイジング
取引ごとの固定リスクを損切りに紐づけて**$20に設定したとします。TradingViewアラートがBTC $100,000で発火し、メッセージには損切り$98,000と利益確定$104,000**が含まれています。
- エントリー:成行、$100,000で約定
- 損切りまでの距離:BTCあたり$2,000(2%)
- ポジションサイズ:$20のリスク ÷ BTCあたり$2,000 = 0.01 BTC(約$1,000のエクスポージャー)
- 利益確定:$104,000の指値注文。約定すれば利益は0.01 × $4,000 = $40で、リスクした$20に対して2:1のリワードです。
- 損切り:$98,000がトリガーされれば成行注文。選んだ$20に手数料を加えたおおよその額で、トリガーされたストップは成行で執行されるため、急な値動きでは少し多くなる可能性があります。
ストップが1%離れていても5%離れていても、サイズが調整されるためリスクにさらされるドル額は$20のままです。その一貫性こそがリスク比率モードの狙いのすべてです。
信頼性:頼れるものと頼れないもの
自動化は最も弱い環と同じだけしか信頼できません。Webhookボットの場合、その環はたいていFreyaの外側にあります。
TradingViewプランの要件。 Webhook通知はすべてのTradingViewプランに含まれているわけではなく、アラートの上限や有効期限もプランによって異なります。Webhookを送信できないアラートは、ボットから見ると静かに失敗します。セットアップをアラート中心に組む前に、プランのアラートオプションを確認してください。
遅延や障害は起こります。 Freyaのマーケットプレイスは、Webhook駆動の戦略に外部シグナルの警告を表示します:取引はTradingViewまたはwebhookシグナルによってトリガーされ、ソース側での遅延や障害が発生する可能性があります。TradingViewに障害が起きると、アラートは発火せず、ボットは(正しく)何もしません。Freyaは届いたものを執行します。決して届かないものは執行できません。
取りこぼしたクローズシグナルが最も鋭い落とし穴です。 カスタムシグナルモードでは、オープンシグナルが届いてもクローズシグナルが決して届かなければ、ポジションは開いたままになります。ボットの注文設定で構成した損切りは、2つ目のWebhookの到着に依存しないバックストップです。ほとんどのセットアップで用意しておく価値があります。
ワンショットのアラートは発火を止めます。 「Only Once」(一度だけ)でトリガーするよう設定されたTradingViewアラートは、1回のシグナルの後、再作成するまで終了します。繰り返しの戦略には、繰り返しトリガーのオプションを選び、アラートの有効期限を確認してください。
セキュリティ:Webhook URLは秘密情報です
Webhook URLはボットをトリガーするための鍵です。その上にパスワードはありません。URLを所持していること自体が認証情報です:
- Webhook URLを決して共有・投稿しないでください。 アラート設定のスクリーンショット、共有チャートレイアウト、助けを求めるチャットメッセージのいずれにも載せないでください。まずぼかすか切り取ってください。
- 自分が管理するツールにのみ貼り付けてください。 自分のTradingViewアラートなどです。
- 露出が疑われる場合はただちに再生成してください。 古いURLはすぐに動作を停止します。その後、新しいURLでアラートを更新してください。
Webhook URLを持っている人は誰でも、あなたのボットでそのアクションをトリガーできます。URLは非公開に保ち、もし漏洩したら、まず再生成し、調査は後にしてください。
トラブルシューティング:アラートは発火したのに取引されない
原因はほぼ必ず短いリストのどれかです。順番に確認していきましょう:
- ボットは稼働していますか? 一時停止または停止したボットは受信シグナルを無視します。最も頻繁な原因です。
- URLとスロットは正しいですか? クローズURLを指したエントリーアラートは決してポジションを開きません。オープンとクローズを確認し、URLが完全に貼り付けられているか確認してください。
- 最近再生成しましたか? 再生成すると古いURLは即座に無効になります。アラートがまだ古いものを保持している場合、そのメッセージはどこにも届きません。
- メッセージ形式は一致していますか? 特にリスク比率モードでは、メッセージはボットの設定画面のJSON構造と一致していなければなりません。形式が不正なメッセージは無視されます。
- そもそもTradingViewプランはWebhookを送信できますか? できない場合、アラートは画面上ではトリガーされますがメッセージは送信されません。アラートが期限切れになっていないか、「Only Once」(一度だけ)に設定されていないかも確認してください。
- 取引所の最低額。 設定した金額、または自動計算されたリスク比率のサイズがペアの最低注文サイズを下回ると、取引所は注文を拒否します。
ボットのアクティビティログにシグナルが表示されているのに取引が続かない場合、問題は執行側にあります(ボットのステータス、注文設定、取引所の最低額)。何も表示されない場合、問題は上流にあります:アラート、メッセージ、URL、またはTradingViewプランです。
Webhook以外のボットステータスの問題については、ボットが取引しないのはなぜ?を参照してください。
よくある質問
Webhookボットを使うには有料のTradingViewプランが必要ですか?
TradingViewがシグナルソースなら、プランのグレードは重要です:Webhook通知はすべてのプランに含まれているわけではなく、無料グレードのアラートは上限や有効期限のルールがより厳しくなっています。アラートを中心に自動化を組む前に、TradingViewのプラン比較を開き、ご利用のプランにWebhook通知が含まれているか確認してください。複数のペアを運用する場合はアラートの割り当ても確認しましょう。とはいえ、ボット側は誰がメッセージを送るかを気にしません。Freyaのシグナルボットは、どのソースからのWebhook呼び出しにも応答します:別のチャートプラットフォーム、自作のスクリプト、あるいはWebhookを送信できるあらゆるツールです。したがって、有料のTradingViewプランはTradingViewのWebhook機能の要件であって、Freyaの要件ではありません。プランにWebhookが含まれていない場合の選択肢は、アップグレードする、シグナルソースを切り替える、または外部シグナルの代わりにインジケーターベースのトリガーを使ってFreya内でロジックを組む、のいずれかです。
オープンWebhook URLとクローズWebhook URLの違いは何ですか?
カスタムシグナルモードでは、ボットは2つの異なる役割を持つ2つの別個のURLを公開します。オープンWebhook URLへのメッセージは、Freyaで設定した注文設定(取引額に加え、設定した利益確定と損切り)を使ってポジションを開きます。クローズWebhook URLへのメッセージは、ボットが開いているポジションを閉じます。両者は交換可能ではありません:クローズURLを指したエントリーアラートは決して取引を開きません。リスク比率モードは動作が異なります:URLは1つだけでエントリーシグナルに使われ、イグジットはWebhookメッセージで運ばれる利益確定と損切りによって自動で処理されるため、クローズURLは存在しません。両方のURLは独立してコピー・再生成できます。再生成すると新しいURLが作られ、古いものは即座に無効になるため、その後に対応するTradingViewアラートを更新してください。
TradingViewアラートで利益確定と損切りを設定できますか?
はい。それこそがリスク比率モードの目的です。このモードでは、アラートメッセージは利益確定と損切りの価格を運ぶ小さなJSONペイロードで、Freyaの設定画面がアラートにコピーするためのJSONボディテンプレートを提供します。シグナルが届くと、エントリーは成行価格で行われ、イグジットはシグナルの値から発注されます:利益確定は送信した正確な価格の指値注文として、損切りはトリガー価格に達したときの成行注文として発注されます。ストップは成行で執行されるため、他のストップ注文と同様に、急な値動きではスリッページが発生する可能性があります。カスタムシグナルモードでは、Webhookはイグジットレベルを設定できません。利益確定と損切りはFreya内で構成する注文設定から来るもので、アラートはいつ開いていつ閉じるかを伝えることに限られます。
Webhook URLをTradingViewに貼り付けても安全ですか?
URLを自分のTradingViewアラートに貼り付けることは意図された使い方であり、統合が設計どおりに機能している状態です。本当のリスクは貼り付けそのものではなく、露出です。Webhook URLの上にはパスワードがありません:URLを持っている人は誰でも、あなたのボットでそのアクションをトリガーできます。よくある漏洩経路はありふれたものです:チャットで共有されたアラート設定のスクリーンショット、助けを求める公開投稿、共有されたチャートレイアウトなどです。すべてのURLをパスワードのように扱ってください:スクリーンショットに写さない、誰とも共有しない、自分が個人的に管理するツールにのみ貼り付ける、ということです。URLが誰かに見られたと疑われる場合は、ただちに再生成してください。新しいものが作られた瞬間に古いURLは動作を停止します。それから、次のシグナルが発火する前に、代わりのURLでアラートを更新してください。
アラートは発火したのに取引が起きなかったのはなぜですか?
まずボット自体から始めましょう:一時停止または停止したボットはシグナルを完全に無視します。最も一般的な原因です。次に配管を確認します:アラートは正しく完全なURL(エントリーにはクローズではなくオープン)を保持していなければならず、最近再生成した場合、アラートはまだ無効になったものを指しているかもしれません。それからメッセージを確認します:特にリスク比率モードでは、ペイロードはボットの設定画面のJSONテンプレートと一致していなければならず、そうでなければシグナルは無視されます。TradingView側では、プランが実際にWebhookを送信すること、そしてアラートが期限切れになっていないか「Only Once」(一度だけ)の1回を撃ち尽くしていないかを確認してください。最後に、金額、または自動計算されたリスク比率のサイズがそのペアの取引所の最低額を下回っている場合、注文は拒否されます。ボットのアクティビティログがどちら側で失敗したかを教えてくれます:ログに記録されたシグナルは執行の問題を意味し、ログエントリがなければシグナルは決して届かなかったことを意味します。
シグナルはTradingViewから来る必要がありますか?
いいえ。TradingViewはアラートシステムが柔軟でチャート駆動であるため最も人気のあるソースですが、Freyaのシグナルボットは発信元を問わずWebhook呼び出しに応答します。Webhookを送信できるツールであれば何でも動作します:別のチャートプラットフォーム、カスタムスクリプト、Webhook通知付きのスクリーナー、社内のシグナルシステムなどです。契約はどの場合でも同じです:カスタムシグナルモードではオープンまたはクローズURLを呼び出し、リスク比率モードでは利益確定と損切りの値を含む期待されたJSONペイロードを単一のURLに送信します。どのソースにも2つの注意点が当てはまります。1つ目に、信頼性の問題はなくなりません:ボットは実際に届いたシグナルしか執行できないため、ソースの稼働時間があなたの戦略の稼働時間になります。2つ目に、セキュリティのルールは普遍的です:どのツールを使うにせよ、Webhook URLはあなたが管理し信頼するシステムにのみ入れてください。
次に読むべきもの
Webhookボットは、それに供給する戦略と同じだけの価値しかありません。仮想通貨取引戦略のバックテスト方法でシグナルロジックを過去のデータに対してストレステストし、セットアップの詳細を飛ばした場合はFreya Financeでシグナルボットを作成する方法の完全なウォークスルーを読んでください。エントリーロジックをFreya内で組み立てたい場合は、DCAボット戦略ガイドがそのアプローチを詳しく扱っています。カストディとAPIキーの権限に関する質問については、Freya Financeで私の資金は安全ですか?を参照してください。
