TradeStationメモ: 自動売買ストラテジーのバックテストを行う

ストラテジーを用意する

ここでは、下記のサンプルストラテジーを使ってバックテストを行う手順を示します。 このストラテジーは、上昇トレンドが発生しているときに移動平均線のゴールデンクロスで 100 株の買い(ロング)ポジションを取り、デッドクロスで決済します。

Vars: myShortMa(0), myMidMa(0), myLongMa(0);

myShortMa = Average(Close, 5);  // 短期移動平均
myMidMa = Average(Close, 25);   // 中期移動平均
myLongMa = Average(Close, 50);  // 長期移動平均

// ロングでのエントリーは長期の上昇トレンド時に限定する
if myLongMa >= myLongMa[1] then begin
    // 短期と中期の移動平均線のゴールデンクロスで買い
    if myShortMa crosses above myMidMa then Buy("Entry") next bar 100 shares at market;
end;

// 短期と中期の移動平均線のデッドクロスで決済
if myShortMa crosses below myMidMa then Sell("Exit") next bar at market;

トレードステーションの開発環境から ファイル(F) → 新規作成(N) → ストラテジー(S) を選択すると、新しいストラテジーを作成するエディタが開きます。 上記のコードを入力して F3 キーを押してコンパイルしてください。 これで自動売買ストラテジーの完成です。

チャートにストラテジーを適用する

まず、ストラテジーを適用する銘柄のチャート分析ウィンドウを開いてください。 チャート分析ウィンドウにストラテジーを追加する方法は以下の 2 通りあります。

方法 1:

  1. チャート上で右クリックして「ストラテジーを挿入…(R)」を選択。
  2. 適用するストラテジーを選択。

方法 2:

  1. メニューから「挿入(I)」→「ストラテジー(T)…」を選択。
  2. 適用するストラテジーを選択。

ストラテジーを適用すると、チャート上にどの位置で売買が行われるかが表示されます。 ローソク足の色を白黒にしたり、バーチャートに切り替えると視認しやすくなります。

/p/ksa62e6/img-001.png

チャート上には EasyLanguage の売買注文命令で指定したラベルが表示されます。 今回のサンプルでは Buy("Entry")Sell("Exit") とコーディングしているため、各注文位置に EntryExit と表示されます。 慣例としてはストラテジー名なども含めますが、今回はシンプルにエントリーとエグジットのタイミングだけわかるようにしています。 ラベルの上下に表示される数値は、その時点でのポジション数の変化を示しています。 ショートポジションを持っているときはマイナスの数値が表示されますが、今回のサンプルは買いから入って決済して終わる戦略のため、ショートポジションは発生しません。

パフォーマンスレポートを表示する

チャート分析ウィンドウにストラテジーを適用したら、パフォーマンスレポート(バックテスト結果)を表示できます。

  1. チャート分析ウィンドウを選択状態にする。
  2. メニューから「表示(V)」→「ストラテジーパフォーマンスレポート(F)」を選択。あるいはショートカットキー Alt+Shift+P を入力。
/p/ksa62e6/img-002.png
/p/ksa62e6/img-003.png

パフォーマンスレポートでは、上記のように損益グラフ、最大ドローダウン、プロフィットファクターなどを確認できます。

このレポートウィンドウを開いたまま表示する銘柄を切り替えると、同じストラテジーを異なる銘柄に適用したときのパフォーマンスを次々と確認できます。 同じストラテジーでも適用する銘柄によって損益グラフは大きく変化します。 特定の銘柄だけでバックテストを行うことのリスクがよくわかります。