No.19 《Qエンジン24》のオートマで条件表を作る |
2014年12月に執筆 ・・ HP目次へ.. 講座目次へ. 2014年4月に《カナル24》はVer.5になりました。Ver.5で追加した機能のうちで、条件表を設定するときに重要なものは、「統計」と「検証」の2つの機能です。2014年6月に、この2つの機能を使ってどうすれば成績のよい条件表が設定できるのかの講座No.18 「統計」と「検証」を繰り返せば成績がよい条件表ができる を執筆しました。 講座No.18を読まれて、「では私もその手順で条件表を設定してみよう」と挑戦されたユーザーがいると思いますが、1銘柄について(例えば日経平均とか日経先物のため)の条件表は何とかできただろうと思いますが、多くの銘柄を対象にした条件表を設定しようとすると、あまりにも作業量が膨大なものになることがわかり、ほとんどの方は頓挫されたと思います。 2014年12月に《Qエンジン24》Ver.5を出したのは、実にこのことをパソコンに任せて、膨大な作業をさせ、自動的によい条件表を生成させようという目的からでした。この作業は「オートマ」がやってくれます。従来もオートマはあり自動的に条件表を生成することはできましたが、その理論と手順は講座No.18出述べたものと少し違っていました。今回のオートマ講座No.18で述べた理論と手順を忠実に実行します。 理論から導かれた手順どおりにすればよいのだから、「オートマ」を実行するに際してはユーザーが迷うような選択肢はなくなりました。ほぼ「実行」ボタンをクリックするだけで条件表ができあがるといっても過言ではありません。 この講座では、「オートマ」用に用意されている条件表と、これを使って3つの条件表を生成する手順を解説します。 [ 1 ] 用意されているトリガーと局面判別用の条件表 [ 2 ] 日経先物用の寄引売買のための条件表を作る。 [ 3 ] Core30用の寄引売買のための条件表を作る。 [ 4 ] 日経225銘柄用の条件表を作る。(目標は10日間で5%以上の利益が出るような条件表) [ 5 ] 2014年の成績はどうだったか? |
[ 1 ] 用意されているトリガーと局面のための条件表について右図はHPでお馴染みのNo.20「平均線と順位相関」のグラフですが、ある点で売買マークを表示するようにしています。
|
という簡単なものです。これらは「トリガー」です。 トリガーというのは、売買マークを出すときのキッカケのことです。この日が仕掛ける日だということがわかるチャートのある一点です。 例えば、図の(a,b,c)の日は何日間に一度しかないのでトリガーですが、「9日順位相関が+80以上になっている日」は何日間も続くことがあるので、これはトリガーではなく「局面」です。 すべてのトリガーがよい仕掛けのタイミングではありません。仮に、
|
としましょう。すると(A,B,C,D,E)は次のように判定されます。
|
成功したトリガーは(B)と(D)の2つ、失敗したのは(A)(C)(E)の3つです。では(B)(D)では売りマークが出て、(A)(C)(E)では売りマークが出ないような条件表を作るにはどうすればよいのか? (B)(D)と(A)(C)(E)の日のその他のチャートがどうなっているのかを調べます。図では4本の平均線(9日・25日・75日・200日)と25日順位相関を使っているので、このチャートについて調べると次表のようになりました。 |
トリガー | 25日順位相関 | 25日順位相関向き日数 | 9日線カイリ率 | 25日線カイリ率 | 75日線カイリ率 | 200日線カイリ率 | 9日線向き日数 | 25日線向き日数 | 75日線向き日数 | 200日線向き日数 |
B(成功) | 60.2 | +6日 | 0.3% | 1.0% | 4.3% | 4.0% | +9日 | +52日 | +23日 | +50日 |
D(成功) | 92.2 | +2日 | 0.7% | 2.7% | 4.9% | 7.4% | +28日 | +17日 | +61日 | +88日 |
A(失敗) | 71.9 | -1日 | 0.1% | 0.8% | 4.2% | 3.1% | +3日 | +35日 | +6日 | +32日 |
C(失敗) | 2.5 | +7日 | 0.3% | 0.9% | 2.7% | 3.4% | +8日 | +10日 | +41日 | +68日 |
E(失敗) | 44.5 | +10日 | 2.6% | 7.2% | 7.3% | 11.1% | +10日 | +6日 | +10日 | +6日 |
上表では局面を表す10種類のチャートについて調べていますが、(B)(D)では売りマークがでて、(A)(C)(E)では売りマークが極力でないようにするには、次の売買条件をつければよいことがわかります。
|
このようにトリガーの日の局面を表すチャートを調べると、どういう売買条件をつければよいのかがぼんやりとわかります。しかし、この例はトリガーの個数が5個で、チャートが10種類というごく小さなデータであるから手作業でもできたのです。もしトリガーが30000個あり、局面のチャートが150種類あるとするなら、4,500,000個の数値を調べなくてはなりません。次に、どういう売買条件をつけると最もよい判別ができるのかを検討して、ようやく1つの売買条件が決まります。条件表にたった1行の売買条件を設定するだけで、この作業量です。とうてい人間が手作業でできることではありません。これをラクラクとやってくれるのが「オートマ」です。 オートマには①トリガーの条件表と、②局面を判別するチャートの条件表の2つが必要ですが、《Qエンジン24》Ver.5 には次のように実用的なサンプルの条件表を用意しているので、ユーザーは①②を設定することなく、すぐにオートマに条件表を生成させることができます。 |
用意してあるトリガーの条件表 |
用意してある局面チャートの条件表 上の左側の図のNo.2~No.12は一般銘柄用のトリガーです。11種類あります。 上の右側の図のNo.17 ~No.27は日経先物用のトリガーです。同じく11種類あります。一般銘柄用に比べて短期間のトリガーが設定されています。 右図のNo.1~No.3は日経先物用の局面を判別するチャートの条件表です。 No.1「日経先物A」には22種類のチャート No.2「日経先物B」には76種類のチャート No.3「日経先物C」には144種類のチャート が設定されています。 No.11~No.14が一般銘柄用の局面を判別するチャートの条件表です。 No.11「一般銘柄A」には22種類のチャート No.12「一般銘柄B」には76種類のチャート No.13「一般銘柄C」には120種類のチャート No.14 「一般銘柄D」には156種類のチャート が設定されています。 チャートの種類が多いNo.3(日経先物用)またはNo.14(一般銘柄用)を使えばよいでしょう。 |
4勝4敗で、トータルで-140円の損失になっています。このトリガーにどういうチャートを組み合せると成績がよい条件表ができるのか? これをオートマを使って生成してみます。 |
(1)オートマを使う手順(寄引売買の買い)1009「日経先物」を選択しておいて、 メニューの「オートマ」をクリック。 オートマ指示書の一覧表が現れるので、ここから日経先物の寄引売買用のオートマ指示書を選択します。 寄引売買用の指示書はNo.16「日経先物(BS)陰陽/順 寄引売買0.2%」とNo.17「日経先物(BS)陰陽/逆 寄引売買0.2%」に設定していますが、これはサンプルです。 日経先物用のトリガーは(描画1)No.17~No.27に11種類の設定をしていますから、トリガーの部分をNo.17~No.27に変更すれば、11種類の「日経先物の寄引売買用のオートマ指示書」ができます。 ここではNo.16の「日経先物(BS)陰陽/順 寄引売買0.2%」を例題とします。 オートマ指示書No.16の内容が表示されます。「寄引売買」のオートマ指示は次のことが重要です。
|
以上のことを確認したら「新規実行」ボタンをクリックすれば、(拡張4)の条件表No.33に、「陰陽/順」をトリガーとした寄引売買(買い)の条件表が自動的に生成されます。 |
(2)日経先物の寄引売買(買い)のための条件表の成績オートマが生成した寄引売買(買い)の条件表の成績を表にまとめました。検証の前提は以下のようにしています。
|
なお「評価」欄に○印があるのは、①トレード数が50回以上あって、②平均利益額が30.0円以上、③勝率が70%以上、④PFが2.0倍以上 のものです。 また②③④を満足していている場合、「最小注目数」を(60回)に増やしたらトレード数が増加したものは(60回)の成績を掲げ、タイトルに「(60回)」を表記しています。 注目数が少なすぎてオートマが条件表を生成できなかったものには「評価」欄に「×」印をつけています。 |
(表1) 日経先物寄引売買(買い)の成績 (手数料は往復1.05円)
|
(3)オートマを使う手順(寄引売買の売り)(売り)の場合は、
|
以上のことを確認したら「新規実行」ボタンをクリックすれば、(拡張4)の条件表No.34に、「陰陽/順」をトリガーとした寄引売買(売り)の条件表が自動的に生成されます。 |
(4)日経先物の寄引売買(売り)のための条件表の成績オートマが生成した寄引売買(売り)の条件表の成績を表にまとめました。検証の前提は以下のようにしています。
|
なお「評価」欄に○印があるのは、①トレード数が50回以上あって、②平均利益額が30.0円以上、③勝率が70%以上、④PFが2.0倍以上 のものです。 また②③④を満足していている場合、「最小注目数」を(60回)に増やしたらトレード数が増加したものは(60回)の成績を掲げ、タイトルに「(60回)」を表記しています。 注目数が少なすぎてオートマが条件表を生成できなかったものには「評価」欄に「×」印をつけています。 (表2) 日経先物寄引売買(売り)の成績 (手数料は往復1.05円)
|
(5)生成した寄引売買の条件表をまとめる(表1)で、成績がよかったのはNo.33、No.35、No.37、No.53 の4つの条件表でした。この4本を(拡張4)No.35「B 日経先物寄引売買」にまとめました。 また、(表2)で、成績がよかったのはNo.34、No.36、No.38、No.40、No.42、No.44、No.50、No.52、No.54 の9つの条件表でした。この9本を(拡張4)No.36「S 日経先物寄引売買」にまとめました。 最後に(拡張4)条件表No.35「B 日経先物寄引売買」の80行と(拡張4)条件表No.36「S 日経先物寄引売買」の166行を、(拡張4)No.37にまとめ「◎BS 日経先物寄引売買」としました。241行の巨大な条件表です。 |
(6)「日経先物寄引売買」の成績拡張4)条件表No.35「B 日経先物寄引売買」、(拡張4)条件表No.36「S 日経先物寄引売買」、(拡張4)No.37「◎BS 日経先物寄引売買」の成績を表にまとめました。検証の前提は以下のようにしています。
|
(表3) 寄引売買の成績 (手数料は往復1.05円) 「評価」欄の印は、以下のことを表しています。 ○・・・①平均利益が30円以上、②勝率が70%以上、③PFが2.0倍以上。 ◎・・・①平均利益が5 0円以上、②勝率が75%以上、③PFが3.0倍以上。
|
No.35の(買い)とNo.36の(売り)を単純に合計すると、トレード数は821回(257+564)になるところですが、No.37(売買共)のトレード数は751回になっています。これは(同じ日に反対の売買マークが出たときは仕掛けない)という売買ルールによってトレードが制限されたためです。821回と751回の差の70回は同じ日に買いマークと売りマークが出ていたことになります。 このトレードの制限は成功しています。平均利益は(買い)の60.9円と(売り)の53.5円の中間にあってよいところですが、61.1円と最もよい数字になっています。これは勝率とPFにも同じことがいえます。 13年間で751回のトレードは、平均して年に57~58回のトレードをしていることになります。これはややもの足りませんが、ここで使った11種類のトリガー以外のトリガーを見つけていけば、次第にトレード数は増加していきます。 |
(7)「日経先物寄引売買」の年別成績条件表を1つにまとめる(統合する)大きな理由は、①トレード数を増やすし、②仕掛ける日を分散させる(リスクの分散をする)、③結果として毎年安定した成績になるようにするためです。安定した成績を出しているかどうかを知るには「検証結果」→「損益経過」→「年別成績」を見るのが一番です。年別成績の図を掲げます。 (表4)No.35「日経先物寄引売買(買い)」の年別成績 13年間で一度も損失になった年がないのは安定した成績です。また13年で257回のトレードをしているので、1年当たり20回のトレード数が平均値ですが、最も少なかった2013年でも11回のトレードがあります。平均値の1/2程度です。(平均値の1/4の5回程度のトレード数なら、極端にトレード数が少ないといってよい) 逆に2007年は33回のトレードをしていますが、平均値の1.6倍強でしかありません。2007年にトレードが集中しているわけでもありません。トレード数や平均利益がすべてプラスという点から(買い)の成績は安定しています。 (表5)No.36「日経先物寄引売買(売り)」の年別成績 13年間で一度も損失になった年がないのは安定した成績です。また13年で564回のトレードをしているので、1年当たり43回のトレード数が平均値ですが、最も少なかった2005年でも21回のトレードがあります。平均値の1/2ほどです。 逆に2008年は56回のトレードをしていますが、平均値の1.3倍でしかありません。2008年にトレードが集中しているわけではありません。トレード数や平均利益がすべてプラスという点から(売り)の成績も安定しています。 (表5)No.37「日経先物寄引売買(売買共)」の年別成績 13年間で一度も損失になった年がないのは安定した成績です。また13年で751回のトレードをしているので、1年当たり58回のトレード数が平均値ですが、最も少なかった2005年でも36回のトレードがあります。平均値の1/2にもなっていません。 逆に2007年は78回のトレードをしていますが、平均値の1.3倍強でしかありません。ある年にトレードが極端に少なかったり、多かったりはありません。トレード数や平均利益がすべてプラスという点から(売買共)の成績も安定しています。 |
[ 3 ] Core30用の寄引売買のための条件表を作るTOPIX Core30(コア30)の「寄引売買」のための条件表をオートマで生成する手順と、できた条件表の成績を掲げます。日経先物1銘柄を選択するか、Core30銘柄を選択するかの違いだけで、オートマの指示などはほぼ同じです。 |
結果ファイルNo.974「TOPIX Core30」を利用して、Cor30銘柄を選択しておいて、 メニューの「オートマ」をクリック。 |
(1)オートマ指示書を選ぶオートマ指示書の一覧表が現れるので、ここから一般銘柄(Core30)用の寄引売買用のオートマ指示書を選択します。 一般銘柄の寄引売買用の指示書はNo.94「Core30(BS) 寄引売買 1.0%」に設定していますが、これはサンプルです。 一般銘柄用のトリガーは(描画1)No.2~No.12に11種類の設定をしていますから、トリガーの部分をNo.2~No.12に変更すれば、11種類の「一般銘柄の寄引売買用のオートマ指示書」ができます。 |
オートマ指示書No.94の内容が表示されます。図の青色線の部分は変更することはありません。
|
このオートマ指示で変化させるものは次の3点です。
|
以上のことを指示したら「新規実行」ボタンをクリックすれば、(拡張5)の条件表No.1に、(描画1)No.2「陰陽/順」をトリガーとした寄引売買(買い)の条件表が自動的に生成されます。 |
(2)トリガーNo.2の(買い)の条件表を作る(拡張5)No.1へ(描画1)No.2「陰陽/順」をトリガーとした寄引売買(買い)の条件表が生成されました。 銘柄数が30銘柄と少ないので、だいたい10分くらいで条件表が生成されます。 注雑ファイルNo.199のタイトルをみると、注目点は1210個・雑音点は3939個ありました。始値で仕掛けて終値で決済したとき、1%以上の利益が出たのは30銘柄で延べ1210回、1%の利益が出なかったのは3939回あったわけです。 これは注目点と雑音点の仕分けを(0日で1%)とした場合ですが、例えば(0日で0.5%)とすれば、注目点はもっと多くなり、雑音点はもっと少なくなります。 (拡張5)No.1のトリガーNo.2(買い)の条件表は以下のようになっていました。 |
(3)トリガーNo.2の(売り)の条件表を作る右図は(売り)の条件表の指示をし、(拡張5)No.2に(売り)の条件表を生成した直後の画面です。
|
注雑ファイルのタイトルをみると、注目点は1394個・雑音点は4587個ありました。生成された(拡張5)No.2は26行の条件表になっていました。 (拡張5)No.2のトリガーNo.2(売り)の条件表は以下のようになっていました。 |
(4)トリガーNo.3の(買い)の条件表を作る右図は(描画1)No.3のトリガーを使って(買い)の条件表の指示をし、(拡張5)No.3に(買い)の条件表を生成した直後の画面です。
|
注雑ファイルのタイトルをみると、注目点は764個・雑音点は2430個ありました。注目点が少ないのは、「足型」が陰線のときの買いはあまり成功していないということです。 |
(5)生成された(拡張5)No.1~No.22の「検証」をする「連続検証」を使って、22本の条件表を一度に「検証」します。結果ファイルNo.974「TOPIX Core30」を利用して、Cor30銘柄を選択しておいて、 メニューの「検証」→「連続検証」をクリック。 「連続検証」の画面が出たら、
|
(6)Core30の寄引売買(買い)のための条件表の成績オートマが生成した寄引売買(買い)の条件表の成績を表にまとめました。検証の前提は以下のようにしています。
|
「評価」欄印は、トレード数が100回以上あって、 ○印・・・①平均利益率が 0.5%以上、②勝率が70%以上、③PFが2.0倍以上のもの。 ◎印・・・①平均利益が0.5%以上、②勝率が75%以上、③PFが3.0倍以上 のもの。 △印・・・①利益率、②勝率、③PF のどれか1つが不合格のもの。 (表1) Core30寄引売買(買い)の成績 (手数料は往復0.2%)
|