Pineスクリプト作成代行はこちら

TradingViewストラテジー作成代行|indicatorとstrategyの違いから

TradingViewストラテジー作成代行

インジケーターは作ったが、その手法が本当に機能するのかを数字で見たい。そう思ったときに必要になるのが、TradingViewのstrategyだ。

ただ、indicatorとstrategyは書き方も設計も別物で、「今あるインジケーターをそのままバックテストにかけて」という依頼は成立しない。この記事では、その違いと依頼のポイントを整理する。

PineScript Proのサービスを見る

indicatorとstrategyは何が違うか

Pine Scriptには、スクリプトの種類を宣言する行がある。indicator()で始めるか、strategy()で始めるかで、できることが変わる。

indicatorは、チャート上に線や矢印を描き、アラートを出すためのものだ。売買の記録は持たない。「ここでサインが出た」は表示できるが、「そのサインで入って、いくら勝ったか」は計算しない。

strategyは、仮想的にポジションを持つ。エントリーとエグジットを記録し、損益、勝率、最大ドローダウン、プロフィットファクターといった数字を自動で出す。TradingViewのストラテジーテスターに結果が表示されるのはこちらだ。

つまり、サインを見るだけならindicator、成績を測るならstrategy、という分担になる。

Pine Scriptで何ができるかの全体像は、こちらにまとめてある。

Pineスクリプトとは?できること・始め方を完全解説

「そのままバックテスト」ができない理由

既存のインジケーターをstrategyに書き換えるとき、追加で決めないといけないことがある。indicatorには存在しなかった項目だ。

どこで手仕舞うか。indicatorはサインを出すだけなので、決済を定義していない。strategyでは、損切りと利確を必ず決める必要がある。pips固定か、直近安値か、ATRの何倍か。

どれだけ張るか。ポジションサイズを決めないと損益が計算できない。固定ロットか、資金の何パーセントか。

同時に何本持つか。同じ方向のサインが連続で出たとき、追加で入るのか、無視するのか。

ドテンするか。買いポジションを持っている状態で売りサインが出たら、決済だけするのか、決済して売りに入るのか。

これらはトレードの意思決定そのものなので、開発側では決められない。依頼者が決める部分だ。逆に言えば、ここが決まっていれば作業は速い。

数字が良く出すぎる仕掛け

ストラテジーの結果を見るときに、必ず疑うべき点がいくつかある。作成を依頼する側も知っておいたほうがいい。

リペイント。上位足を参照する処理や、確定前の足で判定する処理を素直に書くと、過去のチャートでは「あとから見て都合の良い位置」にサインが出る。バックテストの成績は跳ね上がるが、実際には出なかったサインだ。上位足を参照するなら、確定した値だけを使う書き方にする必要がある。

ヒゲでの約定。指値や逆指値の約定判定を甘くすると、実際には約定しなかったはずの価格で入ったことになる。

スプレッドと手数料の未設定。TradingViewのストラテジー設定には、手数料とスリッページを入れる欄がある。ここを0のままにすると、特に短い時間足で成績が実態から大きく離れる。

サンプル数の不足。トレード回数が20回や30回では、良い数字が出ても偶然の範囲を出ない。

依頼するときは「リペイントしない実装にしてほしい」「手数料とスリッページを設定した状態で結果を見せてほしい」と伝えておくといい。まともな開発者なら、言われなくてもそうする。

検証の実際については、こちらで詳しく書いた。

Pineスクリプトで勝てるストラテジーを作る方法|検証の実際

依頼前に決めておくこと

銘柄と時間足。検証する対象を確定する。

エントリー条件。トレードの言葉でいい。

エントリーしない条件。指標前後、特定の時間帯、レンジ判定など。

損切り。方式と数値。

利確。方式と数値。分割決済をするかどうか。

ポジションサイズ。固定か、資金比率か。

同時保有とドテンの扱い

検証期間。何年分を見たいか。

このうち損切りと利確を決めていない依頼が非常に多い。だがこれを決めないとstrategyは書けない。

strategyにしたあとの使い道

バックテストを回すこと自体が目的とは限らない。strategy化には、他にも実務的な使い道がある。

パラメータの当たりをつける。移動平均の期間や損切り幅を変えて結果を比べられる。ただし数字が最も良くなる組み合わせを選ぶと、その期間にだけ合わせた形になりやすい。ほどほどの範囲で安定しているところを選ぶほうが実用的だ。

ロジックの欠陥を見つける。「年に2回しかエントリーしない」「勝率は高いが1回の負けで全部飛ぶ」といった問題は、数字にすると一目でわかる。頭の中で考えているだけでは気づきにくい。

自動売買への足がかり。strategyのエントリーとエグジットにアラートを紐づければ、Webhook経由で実際の発注につなげる構成に進める。

この構成でどこまで依頼できるかは、こちらにまとめた。

自動売買の作成依頼|TradingViewのWebhook連携でどこまで頼めるか

最初の2つだけでも、strategy化する価値はある。

MT4のEAとの関係

すでにMT4やMT5でEAを持っているなら、TradingViewへの移植という選択肢もある。

mq4やmq5のソースコードがあれば移植できる。ex4しかない場合は、先にデコンパイルという工程が必要になる。

ただし、完全に同じ結果にはならない。足の確定タイミング、ヒストリカルデータの精度、約定の判定方法が両者で違うためだ。移植の目的が「同じ数字を再現すること」なら期待に届かない。「同じロジックをTradingView上で高速に検証したい」ならうまく機能する。

逆にTradingViewで詰めたロジックをMT4/MT5のEAに落とす方向もある。検証はTradingView、24時間の運用はMT4という使い分けは現実的だ。

EA開発を依頼する場合の勘所はこちら。

EA開発の依頼|費用の決まり方と、失敗する発注の共通点

MT4インジケーターの依頼で決めておく項目はこちら。

MT4インジケーターの作成依頼|発注前に決めておく5項目

よくある質問

Q. indicatorとstrategyの両方が欲しい

よくある依頼だ。判定ロジックを共通化して、表示用と検証用の2本にする形が一般的になる。まとめて依頼したほうが安く済むことが多い。

Q. 勝てるストラテジーを作ってほしい

開発の請負としては成立しない。作れるのは「指定したルールどおりに動くもの」で、そのルールが勝つかどうかは別の問題だ。ただし、実装前に「この条件だとエントリーが年に数回しか出ません」といったロジック上の指摘はできる。

Q. 検証期間はどれくらい見るべきか

トレード回数で考えたほうがいい。時間足が短ければ1年でも回数は稼げるが、日足で年に数回しか出ない手法なら、数年見ても回数が足りない。

Q. ソースコードはもらえるか

依頼先による。受け取れる契約なら、自分でパラメータを足したり、別の開発者に渡したりできる。発注前に確認しておくといい。

Pine Script作成代行の料金相場|依頼先の選び方と失敗しない発注

まとめ

indicatorは表示、strategyは検証。同じロジックでも、strategy化するには決済とポジションサイズを新たに決める必要がある。ここが決まっていれば、作成代行はスムーズに進む。

そして結果の数字を読むときは、リペイント、約定判定、手数料設定、サンプル数の4点を必ず確認する。この4つを外すと、良い数字は簡単に作れてしまう。

PineScript Proでは、indicatorとstrategyの両方を扱っている。実際にトレードしている開発者が書いているので、リペイントの回避や、実運用との差が出やすい箇所を踏まえた実装ができる。損切りや利確が決まっていない段階でも、ヒアリングから始められる。

PineScript Proに見積もりを依頼する

→ 関連記事:Pineスクリプトで勝てるストラテジーを作る方法|検証の実際

→ 関連記事:Pine Script作成代行の料金相場|依頼先の選び方と失敗しない発注

※当サイトの内容は投資助言を目的としたものではありません。FX取引にはリスクが伴い、投資元本を失う可能性があります。投資判断はご自身の責任でお願いいたします。