D《リアル24》Ver.3のご紹介

 DVer.3で進化したもの(検証ツール)


目次へ.. 前頁へ.. 次頁へ..

検証ツールで進化したもの

検証ツールは大進化しました。
  1. 65000本の分足をいちどに検証できるようになった。(2005年7月からの3分足データが付属する)
  2. 検証の成績評価が精緻になった(T得点の採用)。
  3. 成績評価に「期間別売買成績」と「期間別推移グラフ」が追加された。
  4. 売買ルールに新しい仕掛けのルールが加わった。
  5. 売買ルールの利食いや損切りの幅を「%」または「円」で指定できるようになった。
  6. 注文の仕方によって検証ができるようになった。(成行・指値・なし)
  7. ギャップを調整した検証ができるようになった。
  8. 「連続検証」の機能が追加された。
  9. 「連続印刷」の機能が追加された。
  10. 「売買ルールの一括変更」の機能が追加された。
  11. 「最適パラメータ」で変化させるパラメータが5行に増加した。(5つのパラメータを同時に変化させることができる)
  12. 「最適売買ルール」の機能が追加された。

@65000本の分足をいちどに検証できるようになった。

《リアル24》の「検証ツール」では過去の分足データを使って、売買成績を検証し、売買ルールを変更したり、条件表の最適化をして、売買成績を向上させることができます。そのためには過去の分足データが必要です。分足データは《リアル24》を使っているうちに次第に蓄積されていきますが、購入当初は、過去の分足データがまるでありません。検証ができません。


そこで「《リアル24》セットアップCD-ROM」に過去の「3分足」を収納していますから、これをハードディスクにインストールすることによって、(3分足でよければ)すぐに「検証」することができます。

3分足データは2005年7月から2007年9月までの2年3か月のデータが入っています。(この後生まれてきた3分足データは「データ・ダウンロード」でダウンロードすることができます。)


過去データをインストールしたら、DTKB69に3分足データが入ったかを確認して下さい。
  1. データコントローラーの「検証ツール」ボタンをクリック。


  2. 「検証ツール」のスタート画面が現れるので、「DTKB69」に切り替えて下さい。

  3. (110銘柄)とあります。3分足は1銘柄につき5日分を記憶しているので、過去550日分の3分足データがあることになります。

  4. 最もコードの若い8946には、2005年6月29日からのデータがあります。2005年6月29日から(現在の)2007年9月13日までのデータがあります。

  5. 「検証ツール」では、65000個の分足データを使って、@検証し、A条件表を最適化し、B売買ルールを最適化することができます。

    Ver.2時代に比べて6.5倍のデータが扱えるようになりました。これはすごいことです。例えば3分足データは1日に95本生まれるので、65000本というのは684日分です。約2年半のデータが扱えるわけです。


A検証の成績評価が精緻になった(T得点の採用)

検証をしたときの「損益経過」では成績がまとめられています。


上図の成績は、以下の数字で表現されています。Ver.2では(a,b,c,d,e,f,g,j)の数字がありましたが、Ver.3では評価の項目が増加しています。
  1. トレード数は、423回。勝ちが221回、負けが202回
  2. 累計損益額は、5840円(実際はX1000倍)。勝ちの累計損益額は 16600円、負けの累計損益額は -10760円。
  3. 平均損益は、13.8円(実際はX1000倍)。勝ちの平均利益額は75.1円、負けの平均損失は -53.3円。
  4. 平均損益%は、+0.081%。勝ちの平均利益%は+0.463%、負けの平均損失%は-0.338%。

  5. 勝率は、52.2%
  6. 取引途中での最大ドローダウンは、-860円(実際はX1000倍)
  7. 9連勝をしたとき690円の利益が出たが、5連敗したとき-390円の損失となった。
  8. 1000回のトレードをしたとき、10連敗する可能性がある。そのときには-532.7円の損失がでる。
  9. 連敗による損失を取り戻すためには38.6回のトレードをしなければならない。

  10. PF(プロフィット・ファクタ-)は、1.54倍。
  11. ドローR(ドローダウン・レシオ)は、1.36倍。
  12. 回復R(連敗回復レシオ)は、1.30倍。
  13. 総合評価のT得点は115点だった。
Ver.2で重視していたのは、a)トレード数、c)平均損益額(13.8円)、e)勝率(52.2%)、f)最大ドローダウン(-860円)、j)PF(1.54倍)でしたが、この項目は互いに違う視点から評価しています。Ver.2ではこれらを総合して評価する方法をまだつかめていませんでしたが、Ver.3では「T得点」によって総合的な成績の評価ができます。「T得点」は次の3つの成績項目を総合したものです。
  1. PF・・・(累計利益額)÷(累計損失額)
  2. ドローR・・(累計損益額)÷(最大ドローダウン×5倍)
  3. 回復R・・(予想連敗時の損失額)÷(平均損益額)
予想連敗は勝率から計算するので、この3つの成績項目は@システムの安定性(PF)、Aシステムの効率性(ドローR)、Bシステムの回復力、などシステムを持続していくうえで評価しておかねばならない項目を含んでいます。T得点の目安は、
  1. 取引コスト0円で検証したときは、150点で合格
  2. 取引コストあり(標準は手数料2.1円+スリッページ6.6円の8.7円(往復で))で検証したときは、50点で合格
とします。

B成績評価に「期間別売買成績」と「期間別推移グラフ」が追加


上記のT得点は簡単に成績の評価をすることができますが、ただひとつできないのが、成績の推移です。

例えば24か月のうち6か月で大儲けし、18か月で損失を出していたならば、18か月の損失の期間にトレードをやめているでしょう。負けがこむと精神的にトレードすることができなくなります。「期間別売買成績」や「期間別推移グラフ」で月別の成績の変動を知ってください。

図の黒線は月ごとの累計利益額。水平線より上にあればプラス。24か月のうち(a〜g)の7か月でマイナスになっています(17か月はプラス)。2か月連続して負けたのは(e)(ただし損益額は0円)と(f)(-270円の損失)でした。3か月も4か月も連敗しているようだとシステムは不合格です。(波がありすぎてシステムを持続できない)


C売買ルールに新しい仕掛けのルールが加わった

次図の赤枠部分が、「仕掛け」のしかたで追加・変更されたものです。

  1. 「仕掛けB」はマークがでた分足の高値か安値を、(一定の期間内に)突破した瞬間に仕掛けます。
    一定の期間は「有効期限」欄で設定しておきます。図では「10本以内」としています。仕掛けのマークがでた次の分足から数えて10本までにマークがでた分足の高値または安値を突破できなければ仕掛けません。

  2. 「仕掛けC」はマークが出たら、@一定の期間のうちに、A基準とする株価より、B株価の呼び値の×倍ほど有利な値段になれば仕掛ける。と少し複雑な仕掛けかたです。 「仕掛けC」は「仕掛けA」に比べて
    1. 呼び値の何倍か(10円とか20円とか)だけ有利な値段で仕掛けようとします。約定できれば「仕掛けA」よりも成績はよくなります。
    2. しかし10本以内に約定できないと、仕掛けるチャンスが減る。
    ので、トータルとしての成績は「仕掛けA」よりよくなるとは限りません。(条件表にもよるが、No.103「プレゼント」の成績は相当にアップする。T得点は115点→161点へ)

  3. 「仕掛けD」は売買マークが出なくても仕掛けます。@「決済K」(特定の時刻になると手仕舞う)のルールを採用しているとき、A特定の時刻に仕掛けする代わりに、翌日の寄り付きで仕掛ける。とややこしそうな仕掛けですが、目的はオーバーナイトしないが、翌日も前日と同じ建て玉を持つことです。
    1. 「決済K」を採用しているときだけ有効です。「決済K」とは、特定の時刻(図では15:00)になったら建て玉を決済する。というルールです。
    2. 15:00に強制的に手仕舞いしますが、翌日の寄り付きで、前日と同じ建て玉を持つ。というルールです。

  4. 「時刻制限」はその時間帯(次図の例では14:30〜15:10)では、新規の仕掛けはしません。(手仕舞いはする) 時刻制限は2つの時間帯の指定ができます。図では(14:30〜15:10)としています。14:30以降の仕掛けはしないとしています。


D売買ルールの利食いや損切りの幅を「%」または「円」で指定できる


利食い・損切りのルールでは、その単位を「%」か「円」で指定します。

右図は「%」を指定したものです。(標準のルールです)

○の部分は「%」が表示されているので、「%」にふさわしい数字を設定して下さい。
次図は「円」を指定したものです。○の部分は「円」が表示されています。



上図の「%」に近い円の数字を設定してみました。この売買ルールを使って、No.103「プレゼント」の過去2年間の検証をすると「%」基準による成績と「円」基準による成績はほとんど同じような数字になります。「%」と「円」のどちらを使ってもわずかの違いしかありません。


E注文の仕方による検証ができる

図の赤枠は「注文の出し方」を決めるためのものです。これは「検証」用のものでトレードグラフが取引マークを出すことには影響を与えません。



注文を出す機会は、「仕掛け」「手仕舞い(決済)」「利食い」「損切り」の4つで発生しますが、それぞれについて注文の出し方を指定することができます。
  1. 「スリッページ採否」欄の「▼」をクリックすると、
  2. 注文の出し方のリストが出ます。ここから「なし」「成行」「指値」を選択して下さい。
  3. 「手仕舞い」については、「なし」と「成行」しかありません。必ず決済すべき注文であるからです。
  1. 「成行」注文は、基本的に呼び値1つ分不利な値段で約定したとします。

  2. 「指値」注文は、指値の値段より呼び値1つ分有利な値段がついたときに約定したとします。例えば、
    • 買い仕掛けが「当足終値」のタイミングのとき、当足終値が16400円だとすると、翌足以降で16390円の値段がついたら、16400円で約定できたものとします。
    • 注文は成約するまで出し続けられている。売買マークが出てから何本後に成約してもよい。
    • ただし、次の仕掛けのマークがでたときは、その仕掛けはできなかったものとして、新しい仕掛けの注文を出す。(注文が成約できなかったものは、成績に含まれない)

  3. 「なし」は、Ver.2と同じです。設定してある「仕掛け」や「手仕舞い」のタイミング(当足終値とか翌足始値とか)で約定したとみなして検証されます。

Fギャップを調整した検証ができる

日経先物には前日の大引け値と当日の寄り付きの値に大きな差がでることがしばしばです。この差を「ギャップ」といいますが、ギャップが発生すると、昨日までのチャートと今日のチャートが繋がらなくなります。

図の(a)は前日終値が18180円だったのに、当日の寄り付きは17980円から始まりました。200円のギャップです。この結果No.103「プレゼント」は9:00に「売り仕掛け」のマークを出します。ギャップがなければ売りマークはでません。

(b)は前日終値が17970円だったのに、当日の寄り付きは18020円から始まりました。50円のギャップです。この結果No.103「プレゼント」は9:00に「買い仕掛け」のマークを出します。ギャップがなければ買いマークはでません。

ギャップを調整すると図のようになります。ギャップの調整とは、上図の(b)では+50円のギャップがあったので、前日のすべての株価に+50円を加えて当日と同じ株価水準にすることです。

(a)では当日の株価は-200円安く始まったので、(a)の前日のすべての株価から200円を引いて株価を引き下げます。

(b)の日の株価が現実の株価であるとすると、(b)の前日の株価は+50円され、(a)の前日の株価は(b)の日に比べて-150円引き下げられた(bで+50円、aで-200円の調整をされる)ことになります。

ギャップを調整すると、条件表が売買マークを出す位置が違ってきます。右図ではギャップを調整しないときは(a)で売りマークがでていたのに、(A)で売りマークがでています。(b)で買いマークがでていたのに、ギャップを調整すると買いマークはなくなりました。ギャップを調整したらどうなるかというと、
  1. 最新日の株価はありのままだが、それ以前の株価は日が変わるたびにギャップの調整がされて、現実の株価とは違ってくる。
  2. ギャップを調整することで、条件表が出す売買マークの位置(つまりは仕掛けの位置)は違ってくるが、手仕舞いは売買ルールによるので、ルールに従った位置で手仕舞いされる。
  3. 検証では調整した株価を使わずに現実の株価で仕掛け、手仕舞いし、損益額を計算するので、検証の成績は現実のトレードと同じである。
  4. ギャップの調整は「トレードグラフ」でもできるので、これにしたがってトレードすることができる。
ギャップの調整をしたら、仕掛ける位置が異なり、当然に成績は大きく変わります。(ギャップの調整はしないほうがおおむね成績はよい)

G「連続検証」の機能が追加された

Ver.2での検証のしかたは、@条件表のひとつひとつについて「検証」し、A「売買成績」や「損益経過」や「経過グラフ」を見て、B成績を評価する。というものでした。 Ver.3では複数の条件表を選択しておいて、まとめて「検証」することができます。
  1. 検証したい条件表を選択します。

    図ではNo.100からNo.107の8本の条件表を選択しています。

  2. 検証する期間を指定し、

  3. 「売買共」を指定し

  4. 売買ルールの内容を確認し、

  5. 「実行」ボタンをクリック。

  6. No.100「ベクトルのクロス」の検証が始まります。

    1つの条件表の検証が終わっても、画面には「売買成績」「損益経過」といった成績は表示されません。すべてハードディスクに記憶されていきます。

  7. なお検証中に「終了時ビープ音」をクリックしてチェックマークを入れておくと、全部の検証が終わったときに「ポン」という音を発生します。

  8. No.100〜No.107までの8本の条件表の検証が終わりました。

    過去2年間についての検証はたったの2分21秒で終わりました。

  9. 「終了」ボタンをクリック。
これで「連続検証」は終わりです。検証した結果である成績は、メニューの「検証結果」または「連続印刷」を使ってみます。

Ver.3の大きな成果である「検証ツールの解説」(ヘルプ・マニュアル)ではサンプルの条件表25本について、以下のように前提条件を変えて「検証」し、その成績をまとめています。
  1. 標準ルールで取引コスト0円のときの成績
  2. 標準ルールで取引コスト8.7円のときの成績
  3. 仕掛けAのルールを(当足の終値で仕掛け)としたときの成績
  4. 仕掛けAのルールを(翌足の終値で仕掛け)としたときの成績
  5. 仕掛けBのルールを採用したときの成績
  6. 仕掛けCのルールを採用し(10本で10円有利)としたときの成績
  7. 仕掛けCのルールを採用し(20本で10円有利)としたときの成績
  8. 仕掛けCのルールを採用し(20本で20円有利)としたときの成績
  9. 仕掛けDのルールを採用したときの成績
  10. 仕掛けEのルールを採用したときの成績
  11. 時間切れJのルールを(当足の終値で手仕舞い)としたときの成績
  12. 時間切れJのルールを(翌足の終値で手仕舞い)としたときの成績
  13. 時間切れJのルールを(仕掛けて20本で手仕舞い)としたときの成績
  14. 時間切れJのルールを(仕掛けて60本で手仕舞い)としたときの成績
  15. 時間切れJのルールを(オーバーナイトする)としたときの成績
  16. 時間切れJのルールを(仕掛けて40本+オーバーナイトする)としたときの成績
  17. 利食いAのルールを(ザラバで満足→翌日始値で手仕舞い)としたときの成績
  18. 利食いAのルールを(終値で満足→翌日始値で手仕舞い)としたときの成績
  19. 利食いAのルールを(+1.0%で利食い)としたときの成績
  20. 利食いAのルールを(+0.7%で利食い)としたときの成績
  21. 利食いAのルールを(+1.5%で利食い)としたときの成績
  22. 利食いBのルールを採用したときの成績
  23. 利食いCのルールを採用したときの成績
  24. 損切りZのルールを(ザラバで満足→翌日始値で手仕舞い)としたときの成績
  25. 損切りZのルールを(終値で満足→翌日始値で手仕舞い)としたときの成績
  26. 損切りZのルールを(-1.0%で損切り)としたときの成績
  27. 損切りZのルールを(-0.4%で損切り)としたときの成績
  28. 損切りXのルールを採用したときの成績
  29. 損切りYのルールを(20円突破)としたときの成績
  30. 損切りYのルールを(60円突破)としたときの成績
  31. 条件表を最適化したときの成績
なんと31通りの売買ルールについて大規模な検証をしましたが、各25本のサンプル条件表があるので、延べ775回(31×25)の検証となりました。このとき威力を発揮したのが「連続検証」です。25本のサンプル条件表を連続検証すると5〜6分で検証が終わります。31通りの検証をしても延べ時間は3時間とかかりません。(成績のよしあしはT得点で判断するので、これも時間はかからない)実に簡単に多くの検証をすることができるようになりました。


H「連続印刷」の機能が追加された

「検証」をすると、その成績(正しくは検証リスト)がハードディスクに保存されます。これを利用すれば「連続印刷」で成績の一部を連続して印刷あるいは画面に表示させることができます。

  1. 成績を印刷または表示したい条件表を選択します。

    当然のことながら、一度は「検証」(個別検証か連続検証かで)したものでないと成績は印刷できません。

  2. 印刷したい成績の項目を指定します。

    図では「7.損益経過(総合成績)」と「10.期間別成績(連勝)」にチェックマークをつけているので、条件表ごとに、2つの成績項目が印刷されます。

    なお「改頁」にチェックマークを入れておくと、その成績項目を印刷したら改頁します。

  3. プリンターに印刷することもできるし、画面に表示させることもできます(印刷はしない)

  4. 次図のように選択した条件表の指定した成績が連続して表示されます。

  5. No.100「ベクトルのクロス」の成績です。

    (A)は「損益経過(総合成績)」
    (B)は「期間別成績(連勝連敗)」

    続いて、
  6. No.101「パラボリックとボリンジャ」が出力されます。

    (A)は「損益経過(総合成績)」
    (B)は「期間別成績(連勝連敗)」

    続いて、
  7. No.102「ストキャスティクス%D」が出力されます。

    (A)は「損益経過(総合成績)」
    (B)は「期間別成績(連勝連敗)」



I「売買ルールの一括変更」の機能が追加された

Ver.2では条件表と売買ルールは連動していませんでしたが、Ver.3では連動するようになりました。(例えば条件表No.103をNo.150へ複写すると、売買条件のNo.103もNo.150へ複写される)

またVer.2では売買ルールを変更するには、いちいち条件表を指定してこれに対応している売買ルールを出して変更していました(よって例えば25本の条件表に対応している売買ルールを変更するには、25回の変更作業をする必要があった)。

多くの条件表について検証をするとき、「同一の売買ルール」を使って検証したいことがあるでしょう(例えばどの条件表も+1.5%で利食いする、-1.0%で損切りするとしたい)。このようなときは「売買ルールの一括変更」を使えば、多くの売買ルールを瞬間的に変更することができます。

  1. 売買ルールを一括変更したい条件表を選択します。

    図ではNo.100からNo.107の8本の条件表を選択しています。

  2. 「売買ルールを一括して変更する」ボタンをクリック。



  3. 選択していた条件表のうちNo.が最も若い条件表に対応する売買ルールの内容が表示されます。

  4. 売買ルールの項目は「緑色字」で表示されています。

    変更したい項目名(例えば「仕掛けA」とか「決済K」とか)の文字をクリックします。

  5. 図では、「時間切れJ」と、

  6. 「利食いA」の文字をクリックしました。

    (チェック欄をクリックするのではなく、項目名をクリックする)

    クリックした項目名は「赤色字」になります。


  1. 「時間切れJ」のルールを、
    (60本)
    「当足の終値」

  2. 「利食いA」のルールを、
    (1.5%)

  3. 「損切りZ」のルールを、
    「採用する」(チェックを入れる)

  4. 「損切りY」のルールを、
    「採用しない」(チェック欄を空白)
としました。
  1. 「売買ルールを一括変更する」ボタンをクリック。

選択しておいたNo.100〜No.107の売買ルールが変更されます。変更されるのは、指定していた項目(赤色字)のルールだけです。そのほかのルールは変更されません。


J「最適パラメータ」で変化させるパラメータが5行に増加

条件表を最適化するとき、Ver.2では2つのパラメータまでしか変化させることはできませんでしたが、Ver.3では@5つまでに拡張し、Aさらに1つは他のパラメータと同じ値で変化させることができるようにしました。

  1. 条件表No.をクリックして選択すると、

  2. その条件表の設定内容が表示されます。パラメータを変化させることができる行は、いうまでもなく「パラメータ」欄に数字がある行です。

    右図ではNo.3行(10本)、No.4行(X10)、No.5行(2040本)、No.6行(1本)、No.8行(1本な)どの5つのパラメータを変化させることができます。

  3. パラメータを変化させることができる行は5行までです。@〜D欄に変化させたい行を指定します。(6行以上のパラメータを同時に変化させることはできない)

  4. ただ、ある行と別のある行のパラメータを同じように変化させることができます。これは1行だけが可能です。

    例えばNo.6行の(1本)とNo.8行の(1本)は同じように変化させることができます。これはE欄にどの行をどの行のパラメータと同じにするのかを指定します。

  5. 変化させる数値は「最小値」〜「最大値」と「増加分」の3つで指定します。


K「最適売買ルール」の機能が追加された

条件表ごとに売買ルールがあります。その条件表には最適な売買ルールがあるはずです。「最適売買ルール」を使えばこれを見つけることができます。
  1. 過去2年間のデータ(銘柄)を選択し、

  2. メニューの「最適ルール」をクリック。

  3. No.103の「プレゼント」を指定すると、

  4. 現在設定されている「売買ルール」のパラメータが青字で表示されます。ただしこれらのパラメータが使われているかどうかはこの画面ではわかりません。

  5. 「売買ルール」ボタンをクリックして、どのパラメータ(ルール)が採用されているのかを確認して下さい。


  1. パラメータを変化させたいルールにチェックを入れます。

    ここでは「時間切れJ」「利食いA」「損切りZ」の3つを変化させることにしました。

  1. 「時間切れJ」の変化の範囲は(10本から100本まで10ずつ)変化させる。

  2. 「利食いA」の変化の範囲は(0.6%から2.0%まで0.2ずつ)変化させる。

  3. 「損切りZ」の変化の範囲は(0.5%から1.5%まで0.2ずつ)変化させる
と指定しました。

  1. 「時間切れJ」の変化は10通り、「利食いA」は8通り、「損切りZ」は6通りの変化をするので、組み合わせは10×8×6=480通りになります。なんと480回の検証をすることになりますが、これはパソコンが自動的にやってくれます。

(次図)「最適化」が終了しました。最も売買成績がよい(T得点が最高)と判断されたパラメータの行が紺色で表示されてます。


@時間切れJは10本、A利食いAは1.0%、B損切りZは0.7%(マイナス)の売買ルールを使うならば、T得点は155になります。標準ルールによる成績は115点だったので、売買ルールを変更すると成績が向上します。
  1. 時間切れ10本、利食い1.0%、損切り-0.7%としたとき、その売買成績は、
  2. トレード数は、423回あり
  3. 累計損益額は、4150円
  4. 累計損益率は、25.5%
  5. 平均損益額は、9.8円
  6. 平均損益率は、0.06%
  7. 最大ドローダウンは、-320円
  8. 勝率は、49.2%
  9. プロフィット・ファクターは、1.65倍
  10. ドローR、2.59倍
  11. T得点は、155点
であることがわかります。ただしこの成績は取引コストが0円のときのものです。取引コスト8.7円での「検証」をしてみる必要があります。


目次へ.. 前頁へ.. 次頁へ..