以前のTrading ViewではStrategyからはアラートを設定できずアラート用のインジケータスクリプト(study)と分けて制作しなければならなかった。
次の記事にて公開と思われるので2020/06/03~
使用ができることになっていると思われる。
Strategy Alerts Are Live Now – TradingView Blog
予め覚えておきたいのはストラテジーアラートはアラートを発射するタイミングをコントロールできない。
study
によるスクリプトであればalertcondition
という関数を利用して第一引数にtrue
を入れたタイミングでアラートをしかけることができた。
Strategy Alerts
ではストラテジ内で約定があったタイミングで発射される。
不便そうではあるが、もともとストラテジにアラートを仕掛けたいということはエントリーのタイミングを知りたい目的なので十分だろう。
alertcondition
のような特別な関数を追加する必要はない。
まずはチャートにストラテジが追加されていることを確認したら
これでアラートを作成するウィンドウが現れるので
条件のプルダウンメニューを開くと追加していたストラテジの名前が入っているので選択する。
あとはアラートアクションからメールを送るなり、Webhookに送るなり送信先を設定し
実際に送信するメッセージを書いていくだけだ。
「ポップアップに表示」はTradingView
を表示している画面にポップアップするだけなのでTVを閉じてしまうと無効。
「アプリに通知」はケータイアプリに送信する機能だそう。
Webhook
は少し難しいのでここでは省略。
{{ }}
はなに?メッセージの中に{{ }}
で囲まれている文字はどういう意味があるのだろうか。
実はここに予め予約されている変数を入れる事ができる。
これをプレースホルダー
と呼ぶそう。
より詳しい情報ははてなマークをクリックすれば良い。
{{strategy.~~~}}
頭にstrategy
がついているものはStrategy Alert
でのみ使用可能。
次によく使いそうなものを列挙する。
{{strategy.position_size}}
エントリー後に自分が保持しているトータルのポジションサイズ。
ロング中ならプラス、ショート中ならマイナスになるので注意。
例えば、現在1ロットロング中でストラテジ内でショートが2約定した場合
1 - 2
で position_size
は -1
となる。
{{strategy.order.contracts}}
注文されたサイズ。
上のposition_size
との混乱に注意。
position_size
が自分が現在保持しているサイズであるのに対して
order.contracts
は発注されたサイズである。
例えば上の例:現在1ロング保持中にストラテジ内でショートが2約定した場合
order.contracts
には2
、position_size
には-1
が入る。
-2
ではないので注意。
ショートが2ロット
約定したよという意味。
{{strategy.order.action}}
これは対象のオーダーがbuy
かsell
だけ。わかりやすい。
{{strategy.market_position}}
現在のポジション。
こちらはlong
, short
, flat
(つまりノーポジ)の3種類が入る。
こちらはオーダーが通った後のトータルポジションがロングなのかショートなのかノーポジなのかを表示する。
order.action
は約定したオーダー単体がロングなのかショートなのかなので、混同しないように。
これを使わなくてもposition_size
からも判断できるので好きな方を使えば良い(数字がプラスならロング、マイナスならショート、0ならノーポジ)
{{strategy.order.price}}
こちらもシンプル。
約定した価格が入る。
ストラテジの設定から手数料やスリッページを設定したら送らてくるデータが変化するかとテストしたが、どうやら設定に関わらず約定したポイントの価格が送られてくる模様。
他にも色々あるがマニアックで使わなそうなので省略。
より複雑なストラテジアラートを作ってみたい場合はアラートを仕掛ける画面のはてなマークから詳細を読むと良い。
ちなみに日本語で読める。
Security
関数に注意?バグかどうか定かではないがSecurity
関数を使ったストラテジは相変わらずアラートに不具合が発生する傾向があるようだ。
送られてこなかったり、二重になったり...?
まだ確実に再現できるわけではないが一応頭の片隅に入れておいたほうが良いかと思う。
Security
関数を使っているものに関しては相変わらずstudy
へ変換するのが今の所ベターかもしれない。
ストラテジから直接アラートが発射できるようになったため手動でもBOTでもトレードがやりやすくなったはずだ。
今回紹介しなかった{{ stratesy. ~~ }}
系のコードに関しても有用な使い方を発見したらまた記事にしたい。