見出し画像

【TradingView】バックテスト自動化ツール

本noteではTradingViewのバックテストを自動化するツールをご紹介したいと思います。

TradingViewに内蔵されているストラテジーや自作ストラテジーのバックテストを自動的に行うので各ストラテジーの最適のパラメータを求めたい場合などにご利用下さい。

■概要

画像3

本ツールではSeleniumを使ってChromeを自動操作してTradingView上の様々なストラテジーのバックテストを自動的に行います。バックテスト結果についてはCSVファイルとして出力されます。動作環境はWindowsとなります。

実際に本ツールが動作している動画をご覧ください。

上の動画ではコマンドライン上から本ツールを実行してChromeブラウザを起動させてTradingViewのチャート画面を表示してストラテジー(MACD)のパラメータ入力を自動的に行なっております。実行ファイル(autotest.exe)のショートカットを作成すれば、ショートカットから起動させる事もできます。

■事前に準備するもの

画像4

本ツールではGoogle ChromeDriver(chromedriver)を使用するので、ダウンロードサイトからお使いのChromeのバージョンに合ったものをダウンロードしてバックテスト自動化ツール(autotest)と同じディレクトリに置いて下さい。ツールを起動する前に必ずバージョンが合っていることをご確認下さい。

Chromeブラウザのバージョン確認はブラウザのメニューボタンをクリックして[Google Chromeについて]を選択すると確認できます。

画像10

Google ChromeDriver(chromedriver)のバージョン確認はコマンドプロンプト上からGoogle ChromeDriver(chromedriver)を起動する事で確認できます。

画像11

■使用方法

画像5

最初にバックテスト自動化ツールで使用する設定ファイル(settings.ini)を開き、それぞれの項目を入力します。

ACCOUNT    = TradingViewのアカウント
PASSWORD   = TradingViewのパスワード
URL        = TradingViewのチャートURL
CODE       = 銘柄
HOURLY     = 時間足(1~13から選択)
STRATEGY   = ストラテジー
START_ITEM = 入力パラメータの開始位置(1~)
START_VAL  = 入力パラメータの開始値
END_VAL    = 入力パラメータの終了値
STEP_VAL   = 入力パラメータのステップ値

①ACCOUNTにはTradingViewのアカウントを設定して下さい。
②PASSWORDにはTradingViewのパスワードを設定して下さい。
③URL にはTradingViewのチャートURLを設定して下さい。
 ※https://jp.tradingview.com/chart/xxxxxxx
④CODEにはTradingViewの銘柄を設定してください。
 ※銘柄は複数指定が可能で銘柄コードや銘柄名で指定して下さい。
⑤HOURLYにはTradingViewの時間足(1~13から選択)を設定してください。
 1(1分足)、 2(3分足)、 3(5分足)、 4 (15分足)、 5(30分足),
 6(45分足)、7(1時間足)、8(2時間足)、9(3時間足)、10(4時間足),
 11(日足)、 12(週足)、 13(月足)
⑥STRATEGYにはTradingViewのストラテジーの名前を設定して下さい。
⑦START_ITEMには入力パラメータの開始位置(通常は1)を指定して下さい。 
 例えば入力パラメータが5個あるストラテジーの場合に3を指定した場合
 には上から3番目の入力パラメータからの入力となります。
⑧START_VALには入力パラメータの開始値を設定して下さい。
⑨END_VALには入力パラメータの終了値を設定して下さい。
⑩STEP_VALには入力パラメータのステップ値を設定して下さい。
※START_VAL、END_VAL、STEP_VALの設定値には数値を指定するようにして下さい。

設定例

ACCOUNT    = abcd0123
PASSWORD   = efgh4567
URL        = https://jp.tradingview.com/chart/abcd89
CODE       = NI225, TOPIX
HOURLY     = 11
STRATEGY   = MACD Strategy
START_ITEM = 1
START_VAL  = 11, 25, 8
END_VAL    = 13, 27, 10
STEP_VAL   = 1, 1, 1 

上記の設定の場合には
アカウントは「abcd0123」
パスワードは「efgh4567」
URLは「https://jp.tradingview.com/chart/abcd89」
銘柄は「日経225」と「TOPIX」
時間足は「日足」
ストラテジーは「MACD Strategy」
入力パラメータの開始位置は「1番目」
1番目の入力パラメーターが「11~13」
2番目の入力パラメーターが「25~27」
3番目の入力パラメーターが「8~10」
ステップ数がそれぞれ「1」の為、3✕3✕3で計27パターンをテストします。
※START_VAL、END_VAL、STEP_VALの要素数は同じになるように設定して下さい。尚、数値として扱えないリストボックス等の入力パラメーターは飛ばされます。

設定ファイル(settings.ini)を編集したらコマンドプロンプトから以下のコマンドを打ち込んでバックテスト自動化ツールを起動して下さい。引数には設定ファイルを指定します。

コマンドライン上で[autotest.exe settings.ini]を打ち込みます。

C:>autotest.exe settings.ini

コマンドを実行するとChromeブラウザが自動的に立ち上がり、①~⑧のフローに従って処理が進みます。

①ログイン失敗画面
②ログイン画面
③チャート画面
④ストラテジー入力
⑤銘柄入力
⑥時間足入力
⑦パラメーター入力 ※テストパターン数回実行される
⑧結果をCSVファイルに保存

※④のストラテジー入力は、インジケーター&ストラテジーリストで検索を行って一番上に来たものが対象となります。
※⑤の銘柄入力は、シンボル検索リストで検索を行って一番上に来たものが対象となります。
※プログラム起動中にブラウザへの操作が割り込むと動作が不安定になったり、正しく動作しない場合がありますのでご注意下さい。
※処理ボタン上に広告が表示された場合には処理が停止する場合がありますので、その場合には広告を消すようにして下さい。

バックテスト自動化ツールはTradingViewのテスト操作に並行してコマンドプロンプト上に以下のようなログ出力を行います。

画像1

全てのフローが終了するとブラウザが自動的に閉じて処理が終了します。

コマンドプロンプト上から起動させるのが面倒な場合には、実行ファイル(autotest.exe)のショートカットから起動させる事もできます。
まず、実行ファイル(autotest.exe)のショートカットを作成した上で、ショートカットの「ショートカットプロパティ」を開いてリンク先の一番後ろに半角スペースを入れ、そのあとに「settings.ini」の文字列を追加してみて下さい。その上でショートカットをダブルクリックして起動させて下さい。

画像9

尚、起動時に「このアプリはお使いのPCでは実行できません」や「WindowsによってPCが保護されました」といったメッセージが出る事があります。

画像12

このような場合には、実行ファイル(autotest.exe)を右クリックして[プロパティ]を開きセキュリティの項目で[許可する]にチェックを入れてOKボタンをクリックして下さい。その上で起動させてみて下さい。

画像13

セキュリティがご心配の場合には、Microsoft Defenderを使ってダウンロードファイルのセキュリティチェックを実行してみて下さい。
Microsoft Defenderは対象となるディレクトリやファイルを選択してから右クリックして[Microsoft Defenderでスキャンする]を選択することで実行できます。

画像14

■出力結果について

画像6

バックテスト自動化ツールはバックテスト結果をCSVファイルに出力します。出力項目は以下の通りとなります。

・入力パラメータ
・純利益(額)
・純利益(率)
・トレード数
・勝率
・プロフィットファクター
・最大ドローダウン(額)
・最大ドローダウン(率)
・平均トレード(額)
・平均トレード(率)
・平均バー数

画像2

上記の情報を元に項目毎のソートフィルタ処理などを行って最適なパラメータを抽出して下さい。例えばプロフィットファクターを降順でソートすればプロフィットファクターが最も高い入力パラメータの組合わせを求める事ができます。

■試用版ツールの公開について

画像8

バックテスト自動化ツールの試用版を公開します。以下のリンクからダウンロードしてご利用下さい。

【ダウンロード】

試用版は設定内容が以下のものに固定されております。

①銘柄は「日経225」と「TOPIX」
②時間足は「日足」
③ストラテジーは「MACD Strategy」
④入力パラメータの開始位置は「1番目」
⑤1番目の入力パラメーターが「11~13」
⑥2番目の入力パラメーターが「25~27」
⑦3番目の入力パラメーターが「8~10」
⑧各入力パラメーターのステップ数は「1」
※ステップ数がそれぞれ「1」の為、3✕3✕3で計27パターンをテストします。

上記①~⑧が固定のため試用版の設定ファイル(sample_test.ini)の内容は以下のものだけとなります。

ACCOUNT    = TradingViewのアカウント
PASSWORD   = TradingViewのパスワード
URL        = TradingViewのチャートURL

起動する際のコマンドも設定ファイルの指定は不要です。

コマンドライン上で[sample_test.exe]を打ち込みます。

C:>sample_test.exe

尚、試用版もGoogle ChromeDriver(chromedriver)を使用するので、ダウンロードサイトからお使いのChromeのバージョンに合ったものをダウンロードして試用版(sample_test)と同じディレクトリに置いて下さい。

まずは試用版ツールをダウンロードしてお手持ちの環境で実際に動作確認を行った上でバックテスト自動化ツールのご購入をご検討頂くようお願い致します。また、下記のご注意・免責事項を必ずお読み下さい。

■ご注意・免責事項

画像8

・TradingViewのサーバーに負荷をかけ過ぎるような使い方はお控え下さい。
・TradingViewへの多重アクセスにはご注意下さい。(※特にPro以下の場合)
・本ページに掲載されているソフトウェア、および同梱のファイルの使用、または使用不具合等により生じたいかなる損害に関しまして作者は一切責任を負いません。
・本ツールはTradingViewのWebサイトの仕様変更に影響を受けますので将来にわたって動作を保証できるものではありませんが、出来る限りアップデートで対応する予定でおります。
・本ツールの転売・再公開等を禁止します。
・本ツールをダウンロードしてご利用された場合には、上記事項について全てご承諾頂いたものと見なしますので、ご了承ください。


ここから先は

61字 / 1ファイル

¥ 9,700

この記事が気に入ったらサポートをしてみませんか?