PtSimはトレーディングシステムを実行するためのプログラムです。トレーディングシステムを実行して、その成績や売買履歴を見ることができます。
チャートの形状や、株価や出来高から計算したさまざまな指標を基に、将来の株価の動向を予想することをテクニカル分析といいます。チャートに支持線やトレンド線を引いて株価の動向を予測したり、RSIなどの指標を基に株価の買われすぎや売られすぎを判断したりしている人は多いと思います。
トレーディングシステムとは、テクニカル分析に基づく株式の売買ルールを記述したものです。売買ルールを明確にすることで、過去の株価データに適用して売買ルールの有効性を確認でます。有効性を確認したトレーディングシステムに従って売買することで、あいまいなテクニカル分析に基づく売買よりも、よい運用成績が期待できます。以降トレーディングシステムをシステムと略します。
下の画面はPtSimのスクリーンショットです。
以下の3つの手順で実行方法を決めて実行ボタンを押すとシステムが実行されます。
例えば、システムとしてRSI SYSTEMを選択して、銘柄リストに日経平均構成銘柄を選択し、株価データを日足にして実行ボタンを押すと、以下のように実行されます。
システムは銘柄ごとに全期間の株価データについて実行されます。システムの実行履歴が保存されるので、Protraで株価データを更新したらその続きを実行できます。実行をやり直す場合には実行履歴を削除します。[ファイル]→[実行履歴の削除]を選択するか、Deleteキーを押すと削除できます。
システムの検討段階では、実行結果を元にシステムを修正したら、実行履歴を削除して再実行します。システムに従って売買するときには、まず一度実行して実行履歴を保存します。そして毎日Protraで株価データを更新するたびにシステムを実行して、表示される指示を元に実際の売買を行います。
システムの実行履歴を元に成績を計算するときには成績タブを選択して、「システム」「銘柄リスト」「株価データ」の3つを指定して計算ボタンを押します。システム実行後に成績タブを選択すると、システム実行時のものが指定されているので、基本的にそのまま計算ボタンを押せばよいです。先ほど実行したRSI SYSTEMの成績を計算したのが以下の画面です。
このサマリータブに表示されている内容は以下の通りです。
ファイル: RSI SYSTEM.pt 株価データ: 日足 銘柄リスト: 日経平均構成銘柄 1996/01/04〜2013/07/05における成績です。 ---------------------------------------- 全トレード数 571 勝ちトレード数(勝率) 409(71.63%) 負けトレード数(負率) 162(28.37%) 全トレード平均利率 3.80% 勝ちトレード平均利率 11.61% 負けトレード平均損率 -15.93% 勝ちトレード最大利率 88.91% 負けトレード最大損率 -49.59% 全トレード平均期間 24.88 勝ちトレード平均期間 18.36 負けトレード平均期間 41.33 ---------------------------------------- 必要資金 \80,152,060 最大ポジション(簿価) \87,462,500 最大ポジション(時価) \99,658,500 純利益 \19,473,230 勝ちトレード総利益 \41,577,830 負けトレード総損失 -\22,104,600 全トレード平均利益 \34,104 勝ちトレード平均利益 \101,657 負けトレード平均損失 -\136,448 勝ちトレード最大利益 \858,900 負けトレード最大損失 -\488,000 プロフィットファクター 1.88 最大ドローダウン(簿価) -\5,315,100 最大ドローダウン(時価) -\11,924,370 ---------------------------------------- 現在進行中のトレード数 0
RSI SYSTEMは逆張り型なので勝率は71.63%と高くなっています。平均利率は3.80%と高く571トレードで約2千万円の利益が出ています。しかし、資金は約8千万円必要なのでなので16年半の運用益としては小さすぎます。総利益を総損失で割ったプロフィットファクターも1.88しかありません。得られる利益に対して損失が大きいです。
成績を計算したあとに利益曲線タブを選択すると、利益の推移を示すグラフが表示されます。以下に示したグラフはRSI SYSTEMの利益曲線です。ウィンドウを大きくしてグラフの部分を抜き出しました。
2008年にリーマンショックで大きく負けていることと、2011年3月に利益の半分以上を上げていることがわかります。これは東日本大震災で株価が急落したときに大きく買って、値を戻したところですぐに売却しているからです。それ以降はほとんど利益を上げていません。アベノミクス相場でも利益を上げられていません。
RSI SYSTEMは2004年1月に作られたものです。利益曲線を見ると、そのころまでは順調な右肩上がりになっています。2004年までのデータを使ってシステムを組んでいるので、当然そうなります。その先もシステムが有効かは運用してみないとわかりません。
システムを特定のデータに最適化しすぎることをカーブフィッティングと呼 びます。カーブフィッティングされたシステムは、そのデータ以外では機能しなくなることが多いです。RSI SYSTEMはカーブフィッティングされていたと言えます。
実行したシステムでどのような売買が行われたのかを見るには、履歴検索機能を使います。履歴タブをクリックして、検索したい期間を指定して検索ボタンを押すと売買履歴が表示されます。履歴をShift+クリックで範囲選択して右クリックでコピーを選択すると、クリップボードに履歴をコピーできます。RSI SYSTEMの2011年3月の履歴を表示したのが以下の画面です。
銘柄リストの作成は[銘柄リスト]→[編集]と選択すると表示される、以下のダイアログを使って行います。最初に起動したときに、自動的に空の「お気に入り」が作成されます。Protraでお気に入りに銘柄を登録していれば、銘柄リストにその一覧が表示されます。
新たに銘柄リストを作成するときは[追加]を押します。以下のダイアログが表示されるので銘柄リスト名と銘柄リストを入力します。
銘柄リストは4桁の証券コードを一行ずつ入力します。[コード範囲で入力]を使うと、指定した市場と証券コードの範囲にある銘柄をすべて入力できます。銘柄リスト名を「東証1部1000番台」として東証1部の証券コード1300〜1999の銘柄を入力すると、以下のようになります。
OKを押すと以下のように銘柄リストが追加されます。このあと[編集]を押せば、再び上と同様のウィンドウが表示されるので銘柄リストを編集できます。銘柄リストを削除するときには[削除]を押します。
先ほど実行したRSI SYSTEMの実行結果に対して、作成した「東証1部1000番台」を指定して成績計算すると、日経平均構成銘柄のうち証券コードが1000番台の銘柄だけの結果を求められます。「東証1部1000番台」のすべてについての成績を求めたいときは、「東証1部1000番台」を指定して実行してから成績計算してください。
銘柄リストを入力するダイアログで[上場廃止銘柄あり]をチェックすると、上場廃止銘柄を扱えるようになります。この状態で[コード範囲で入力]を用いると、コード範囲にある上場廃止銘柄も入力されます。さらに以下のように現存しない市場も選択可能になり、旧市場で上場廃止になった銘柄をまとめて入力できます。
[上場廃止銘柄あり]をチェックせずに銘柄リストに上場廃止銘柄を入力してOKを押すと、警告が表示されます。たとえば、[上場廃止銘柄あり]をチェックして[コード範囲で入力]で東証1部1000番台を入力した後、チェックを外してOKを押すと上場廃止銘柄について以下の警告が表示されます。
このダイアログで[続行]を押すと、そのまま上場廃止銘柄を含んだ銘柄リストが作成されます。[削除]を押すと上場廃止銘柄が削除されて銘柄リストの入力に戻り、[キャンセル]を押すとそのまま銘柄リストの入力に戻ります。
PtSimで実行可能なシステムに、Protra言語で記述した独自のシステムを追加するには、後述のシステムの書き方を参照してください。