SSブログ
システムトレード ブログトップ
前の5件 | 次の5件

トレーディングシステムにおけるフィルタの定義と効果 [システムトレード]

2010年11月15日の記事「フィルタはシステムだ!」で、フィルタとはそれ自身がシステムであり、あるシステムにフィルタを適用するということは、フィルタと言うシステムをそのシステムに合成することである、と述べました。

当時は、順張りシステムにおける正逆合成システムを前提としており、逆システムにとって正システムは、エントリー条件を制限するフィルタの役目を担っている、と考えたわけです。

そして、そのフィルタシステムが正の期待値を有していれば、合成後、すなわちフィルタを適用したシステムは比較的良く機能する、としたのですが、それだけでは十分な結論とは言えません。

そもそも、正逆合成システムの損益累計は、正システムと逆システムの値のほぼ平均となるわけであり、フィルタと見なしたシステムの損益累計が他方よりも小さかったら、フィルタシステムとしての損益累計は、負の期待値を有することになってしまいます。

なお、フィルタの定義としては、元システムを「加工」することにより、元々のポジションを変更したり、新たなポジションを生成したりして、元システムの性能向上を図る追加システムである、とします。

ここで、話を分かりやすくするために、あるシステムにおいて、損益率がある値を下回ったら、次のエントリーシグナルが点灯するまでポジションを解消する、というフィルタを考えてみます。

今、1単位の買い保有を"1"、同売り保有を"-1"、キャッシュポジションを"0"とします。そのようなシステムにおいて、上述のフィルタを適用するには、損益率が基準値以内なら"1"、基準値を超えたら"0"を乗じることになります。

これは、見方を変えれば、フィルタを適用しない時は"0"を加算し、フィルタを適用する時は、元システムのポジションが"1"の時は"-1"、"-1"の時は"1"、"0"の時は"0"を加算する、ということです。

すなわち、このようなフィルタと元システムとを合成(加算)することにより、元システムにフィルタを適用した状態と等価になります。
これは言うまでもなく、フィルタがシステムであることを示しています。

しかし、このようなフィルタは、損失をある程度抑えることが出来るものの、それと同時に収益機会を奪ってしまい、結果的に元システムの性能を低下させる場合がほとんどです。
個々のトレードによる損失は確かに小さいのですが、収益が上がらないために資産カーブの標準誤差が拡大し、EERは却って低下することになります。

一方、正逆合成システムでは、そもそも2つの元システムは対等であり、どちらがシステムでどちらがフィルタなどとは言えません。
そのため、正の期待値を持つフィルタ、などという表現も、適切ではないことになります。

さらに、このような合成システムは、例えば"1"と"1"が重畳する場合があるわけで、最大2単位の買い保有とういう状態が起こります。もちろん、2単位の売り保有もあるわけで、どちらをフィルタと見なすかという以前に、元システムの「加工」という範疇を超えてしまうわけです。

では、正の期待値を有する「フィルタ」は存在しないのかというと、けしてそんなことはありません。
例えば、KFシステムクリエイターにおける「追加システム」が、そのようなフィルタに相当します。

追加システムは、元システムのポジションを加工することにより、性能向上を目指すシステムであり、その役割はフィルタそのものです。
追加システムにおけるポジションは、元システムの保有単位を超えることがありません。

ただし、追加システムをフィルタシステムとした場合、そのポジションの保有単位は、最大2単位になってしまいます。
そのこと自体は、システムとしての要件に反するわけではありませんが、フィルタとしてはやや特殊な部類に入るかもしれません。

以下に、追加システムをフィルタとして求めた事例を示します。

元システムは6754アンリツの回帰逆張り正システムで、分析期間は2010年4月1日以降としています。
次図に、その資産カーブを示します。
6754アンリツ_資産カーブ_図210703a.png

一方、その追加システムの資産カーブを次図に示します。これは、元システムの買い損益率が-19%を下回ったら売りドテン、売り損益率が-41%を下回ったら買いドテンを行うシステムです。
6754アンリツ_資産カーブ_図210703b.png

これらを比べると、追加システムの適用により、元システムよりも、1割程度の性能向上が見られることが分かります。

では、この追加システムをフィルタシステムと見立て、元システムと追加システムから逆合成した結果を次図に示します。
このフィルタシステムと元システムとを合成すると、追加システムに等しくなります。
6754アンリツ_資産カーブ_図210703c.png

効果は大きくはありませんが、確かに正の期待値を有していることが分かります。
これをシステムとしてみた場合、トレード数は6回、勝率は83.33%、PFは33.0、損益レシオは6.6となり、トレーディングシステムとしての体裁を備えています。

以上より、正の期待値を有するフィルタシステムは、確かに存在することが示されました。その一方、フィルタという性質上、元システムの影響から逃れることは出来ず、フィルタ単独で独立して存在することは、恐らく不可能です。

どのようなシステムに対しても合成して適用できる、万能フィルタといったものは、恐らく存在し得ないことでしょう。
しかし、特定システムに対する、専用フィルタであれば、いくらでも作成することが可能なのです。

nice!(0)  コメント(0) 
共通テーマ:

合成株価システムとシステムポートフォリオの性能比較:アンリツ+日本電信電話 [システムトレード]

2021年5月5日の記事「株価推移間の相関分析と株式ポートフォリオの設計」で、6754アンリツと9432日本電信電話との株価合成について説明しました。
合成の結果、EERは元の0.3717と0.7512から1.5070に向上し、合成の効果が極めて大きいことが分かりました。

では、この合成株価をシステム運用したら、性能は更に向上するのでしょうか?それとも、これ以上の性能向上は望めないのでしょうか?
更には、合成元のアンリツと日本電信電話それぞれでシステムを作成した時、それらのシステムポートフォリオ性能は合成株価のそれよりも向上するのでしょうか?

今回は、それらの疑問について検証した結果を報告いたします。
なお、検証に用いた銘柄は6754アンリツと9432日本電信電話で、作成したシステムは全てドテンシステムとなっています。

今回作成した合成株価システムは全22点ですが、その中から比較的良く機能していたものは、逆張り系を中心とした7点でした。
さらに、アンリツ単独のシステムの内、比較的良好だった2点と、同じく日本電信電話の5点、そして、それらのシステムポートフォリオ10点を、比較用として評価しました。

各システムの分析期間は、合成株価の期間に合わせて2010年4月1日~2021年4月30日としましたが、今回示す結果は直近データ更新後の5月21日の性能としています。
評価は、相関係数算出ツールに各システムを登録し、資産カーブやEERを比較することで行いました。また、平均リターンと累積リターンを、KFシステムクリエイターから引用しました。

なお、アンリツと日本電信電話のシステムポートフォリオは、現状、KFシステムクリエイターで単一システム化できないため、資産カーブの合成と、EER及び平均リターンの算出に留めました。
平均リターンは、元システムの値の平均を取ると共に、累積リターンの代わりに元システム間の相関係数を記載しています。

結果一覧を、次表に示します。この表で、薄い緑色の行のシステムは、選択した中で特に良好な資産カーブを有するものです。ただし、アンリツに関しては、元々2つのシステムしか選択しなかったため、全てマークしてあります。
中段はアンリツと日本電信電話のシステムポートフォリオ、下段のA001で始まるグループは、冒頭で述べた合成株価システムです。
システムトレード_性能一覧_20210524a.png

アンリツの元システムは比較的高リターンですが、EERは他の選択システムと比較してやや低めです。他のシステムでは、EERが総じて高いことが分かります。
以下、チャートに基づき、各システム性能を比較します。

アンリツ回帰逆張り正システムの資産カーブは、次図に示すように、2013年と2017~2018年にやや大きな落ち込みが見られます。後者ではドローダウンの大きさ自体は限定的であるものの、期間がやや長いため、回帰直線との乖離が広がっており、そのことがEERが低めである最大の原因となっています。
システムトレード_資産カーブ_20210524b.png

アンリツ累乗平均逆システムは、同様に2017年を中心とした停滞期間が長く、逆に直近における上振れが大きいことが、EERを下げる要因となっています。
更に、アンリツ回帰逆張り正システムよりもリターンが小さいことも、同システムよりもEERが小さい理由です。
システムトレード_資産カーブ_20210524c.png

日本電信電話の各システムは、大きく2つのグループに分かれます。一方は、EERが高いもののリターンはやや低いグループ、もう一方は、リターンは高いもののEERが低めのグループです。
今回の選択は、EERの大きさを最大の判断基準としたため、前者のグループのみを採用する結果となりました。

日本電信電話RSI順張り正システムは、資産カーブが回帰直線上によくフィットしているものの、資産の急落が随所に見られます。チャート的には逆張りシステムのような振る舞いとなっていますが、実際にはトレード数61回の長周期順張りシステムです。

すなわち、資産カーブの粗さは、株価推移の粗さを反映していると考えられます。意外に見えますが、このシステムの最大ドローダウンは37%程度しかありません。
見た目の印象よりもEERが大きいのは、資産カーブが変動しても、すぐに回帰直線付近に収斂するためと考えられます。
システムトレード_資産カーブ_20210524d.png

日本電信電話累乗平均逆システムは、資産カーブこそ上記システムと似ていますが、トレード数409回の逆張りシステムです。
最大ドローダウンは38%程度で、RSI順張り正システムとほぼ同じです。
システムトレード_資産カーブ_20210524e.png

アンリツ回帰逆張り正と日本電信電話RSI順張り正のシステムポートフォリオは、資産カーブの直線性が良好で、EERは2.5733という大きな値となっています。元システム間の相関係数は-0.1323と逆相関になっており、それがEERを向上させる要因となっています。
平均リターンは、元システムの平均値から求めていますが、年率25.91%という高効率となっています。
システムトレード_資産カーブ_20210524f.png

アンリツ累乗平均逆と日本電信電話RSI順張り正のシステムポートフォリオは、やはり良好な直線性を有し、EERは2.4746となっています。
上図のポートフォリオと比べて、アンリツ元システムのリターンがやや低いことから、平均リターンは2.6ポイントほど小さくなっています。
システムトレード_資産カーブ_20210524g.png

アンリツ累乗平均逆と日本電信電話累乗平均逆のシステムポートフォリオは、異なる銘柄における同一システム同士の組み合わせです。そのため、後述するこれらの合成銘柄の累乗平均逆システムと、良い比較対象となります。
本ポートフォリオのEERと平均リターンは、他の2つよりもやや低めですが、資産カーブを見る限り、特に直近における上昇力は、他を上回っています。
システムトレード_資産カーブ_20210524h.png

アンリツと日本電信電話の合成株価の累乗平均逆システムは、今回検証したシステムの中で、2.6939という最も高いEERを有します。しかし、資産カーブを見ると2015年のドローダウンが目立ちます。ただ、このシステムの最大ドローダウンは24%ほどしかなく、ほとんど問題ありません。
システムトレード_資産カーブ_20210524i.png

前述のシステムポートフォリオと比較すると、元システムの最適パラメータは(50,5)と(93,28)であるのに対し、合成株価のそれは、その中間に位置する(71,10)となっています。
では、元システムの最適パラメータを合成株価と同じにすると、そのポートフォリオ性能は合成株価システムと同じになるのでしょうか?

答えは否です。なぜなら、元システムの最適パラメータを揃えても、売買タイミングはけして同じにならないからです。合成株価システムは、その性質上、売買タイミングは構成銘柄で等しくなりますが、ポートフォリオではそうはならないことは明白です。

ちなみに、各システムの最適パラメータ直近継続期間は、アンリツ累乗平均逆は2018年3月29日以降、日本電信電話累乗平均逆は2017年12月22日以降、合成株価の累乗平均逆は2018年4月20日以降、となっています。
いずれもほとんど同じ水準で、分析期間の概ね2割程度となっています。

アンリツと日本電信電話の合成株価のブレイクアウト逆システムは、EERと平均リターン共に、他の合成株価システムやポートフォリオと比べて最小です。
このシステムは逆張りシステムではありますが、トレード数は11年余りでわずか32回しかなく、順張り的な振る舞いとなっています。
システムトレード_資産カーブ_20210524j.png

しかし、このシステムの元となった合成株価は、元々資産カーブの直線性に優れ、そのまま長期保有してもシステム運用と遜色ない水準です。
そのことを念頭に置いて考えると、本システムは元の合成株価の特性を最も忠実に反映していることが分かります。

本システムの勝率は84.38%ですが、買いシステムのみで見ると、何と100%です。11年間で16回トレードして、全て勝っているということです。その平均利益率は11.57%、平均リターンは17.11%となっています。
買いシステムの最大ドローダウンは、時価ベースで17.32%、簿価ベースではもちろん0%です。システム全体でも、時価ベースでは41.72%とやや高めですが、簿価ベースではわずか14.32%に留まります。
システムトレード_資産カーブ_20210524k.png

上図は、本システムの買い運用時資産カーブです。5月5日の記事から分かりますように、合成株価の株価上昇額は11年間で4,000円ほどになっています。一方、買いのみのシステム運用では、累計損益は3割近く増えて5,100円ほどになっています。
何よりも、株価下落をうまく回避していることが見て取れます。

以上、6754アンリツと9432日本電信電話の各システムについて、それらのシステムポートフォリオと合成株価システムを比較しました。
その結果、少なくともこれらの合成株価やシステムについて、以下のことが分かりました。

a.システムポートフォリオを組むことにより、単一システムよりもリスクを低減したシステムが得られる。

b.システム間相関係数の算出は、システムポートフォリオ設計にとって極めて重要である。特に、逆相関の関係にあるシステム同士の組み合わせでは、高いリスク低減効果が得られる。

c.合成株価システムでも、システムポートフォリオと同等程度のリスク低減効果がある。ただし、選択肢はシステムポートフォリオよりも少なく、銘柄によっては良好な結果が得られない可能性も否定できない。

d.合成株価システムとシステムポートフォリオは互いに独立したシステムであり、同一性能となる条件は存在しない。これらを余すことなく考えることにより、システムの多様性が生まれる。

システムトレードは、単独運用や相関を考慮しない並列運用でも、比較的低リスク高効率の資産運用が可能ですが、構成銘柄やシステム間の相関係数を考慮することにより、よりリスクを低減した運用が可能になります。
最近では、新型コロナウイルス禍における将来不安もあってか、株式トレードを始めとする資産運用に関心を持つ若い世代が増えていると見聞きします。

長期に渡って着実に資産を積み上げていくには、何よりも、リスクを可能な限り低減していく姿勢が必要です。高レバレッジのデイトレやFX、仮想通貨、さらにはバイナリーオプションなど、短期に大きく利益を上げられる可能性があるトレード手法や対象は、その一方で非常に高いリスクを背負う必要があります。

パチンコや公営ギャンブル感覚で、自分の射幸心を満たし、億万長者を夢見るために行うのであれば、どのようなトレード手段でもよいでしょう。
しかし、地道に資産を増やし、早期リタイア(FIRE)を目指すのであれば、それなりの方法が必要です。

システムトレード、及びそれらのポートフォリオ運用や合成株価システム運用などは、着実な資産運用のための有力な手法の一つだと考えます。
nice!(0)  コメント(0) 
共通テーマ:

「システムトレード」は何故勝てないのか? [システムトレード]

先日、とあるブログを見ていたところ、「システムトレードは勝てない」といった内容の記事がありました。その方は、10年ほど前に半年間ほど検証をした結果、上記の結論に達したとのことです。

ここでは、その真偽について触れるつもりはありません。ただ、そのような結論に至った過程を見ていくと、システムトレードに関するいくつかの「誤解」が見えてきます。
今回は、逆説的ではありますが、表題に掲げた内容について考えてみたいと思います。


1.検証に要する時間

システムトレードについて検証するに当たって、その時間の長さは重要ではありません。確かに、より多くの時間を掛けた方が、より多くの結果を得ることができますが、その全てが有用であるわけではありません。
重要な発見の多くは非常に限られた期間に成されます。ただし、その発見を得るためには、一見何の関係もない多くの無駄が必要です。

これは、偉大な発見を成し得た多くの先人たちが唱えています。偉大な先人たちの足元にも及びませんが、私もまったく同感です。
ある時、突然、それまで分からなかった答えがフッと浮かぶことがあるのは、多くの人も経験したことがあるのではないでしょうか?その背景には、必ず、長く積み上げた経験が生きているのです。

ただし、だからより多くの経験を積まなければならない、というのは、正しくもあり正しくなくもあり、といったところです。
かのニュートンの有名な言葉に、「巨人の肩の上に乗る」という例えがあります。私たちが積むことのできない多くの経験は、先人たちによって蓄積され、体験できるようになっているのです。

2.検証に用いるデータの期間

検証データの期間に関しては、長すぎても短すぎても異論があります。通常は、漠然と10年程度と考えている人が多いのではないでしょうか?
しかし、その根拠は曖昧です。今から10年前を考えた時、それは東日本大震災の年に相当します。そのような特異な年度を、検証の起点にして良いのかという考えもあります。

それよりも短い場合は、アベノミクスやトランプノミクスによる株価高騰の影響が支配的になりますし、それよりも長い場合は、リーマンショックなどの特異点の扱いが問題になります。
検証データ期間が長いほど、より多くの局面を反映することができますが、そのことがシステム開発を難しいものにしていることもまた事実です。

私は、検証期間は特にこだわる必要はないと考えています。ただし、システムが機能する期間は、検証期間の平均2割程度ではないかと思います。
例えば、検証期間を10年とした場合は、その後2年程度しかシステムの機能維持を期待できない、ということです。

この考えに、科学的な裏付けはありません。ただ、80対20の法則に見られるように、経験的には何となくしっくりくるものがあります。
KFシステムクリエイターで作成したトレーディングシステムでも、全検証期間の内、直近2割程度以上は、最適パラメータが変わらない場合が多くあります。

また、「システムトレード 検証と実践」(Pan Rolling刊:ケビン・J・ダービー著)においても、アウトオブサンプルデータとして、全データの10~20%を最適化後の見直し用に取っておくべきとしており、著者推奨のウオークフォワードテストでも、インサンプル期間4年に対して、ウオークフォワード期間(アウトオブサンプル期間)1年(すなわち20%)とすべきとしています。

システムトレード 検証と実践 ──自動売買の再現性と許容リスク (ウィザードブックシリーズ)

システムトレード 検証と実践 ──自動売買の再現性と許容リスク (ウィザードブックシリーズ)

  • 作者: ケビン・J・ダービー
  • 出版社/メーカー: パンローリング株式会社
  • 発売日: 2017/04/16
  • メディア: 単行本


例えば、わずか4年分の検証データで、最初の2年をバックテスト用としてシステム設計に用い、残り2年のデータでシステム性能を検証する、という方法を用いた場合、いくら頑張ったところで、機能するシステムが得られるとは到底考えられないわけです。

3.検証指標の汎用性

トレーディングシステムを設計するに当たって、そのロジック、すなわち売買判定に用いる指標を何にするかは、重要な要素です。
独自の指標を開発する場合もありますが、既存のテクニカル指標を用いることの方が多いかもしれません。

既存のテクニカル指標を用いること自体に、問題があるわけではありません。事実、KFシステムクリエイターにおいても、移動平均やブレイクアウト、RSI等を採用しています。
問題となるのは、それに用いるパラメータはこうあらねばならない、という思い込みです。

例えば、移動平均と株価との関係をシグナルとする売買を考えた時、古くから言われているのは、ゴールデンクロスで買い、デッドクロスで売る、と言った類です。
この場合、それに用いる移動平均の期間にも決まりがあり、大抵は20日移動平均や5日移動平均が用いられたりします。

この20日や5日にも当然深い意味があり、20日は1か月、5日は1週間の立会日数を意味します。すなわち、大抵の人はそのような単位で損益を確認するのだから、その期間を用いるのは至極当然である、というわけです。
だから、それをロジックに採用するに当たっても、それらの期間から大きく逸脱したパラメータは、採用すべきではない、ということになります。

結局、自分だけの売買タイミングでトレードを行っても、他の多くの人たちは20日や5日の移動平均を見て売買しているわけだから、勝てるわけがない、と考えてしまうのです。
でも、よく考えてみましょう。多くの人が同じタイミングで買えば、確かに株価は上がります。一方、そのためには同じタイミングで売る人が必要です。

これって、例えばゴールデンクロスで買いに向かう人がいる一方で、逆にゴールデンクロスで売りに向かう人がいることを意味します。
売り手は、何故このタイミングで売るのでしょう?もちろん、十分な利が乗っているから売るんでしょうが、もしもゴールデンクロスが上昇のサインならば、わざわざこのタイミングで売る必要はないように思います。

その理由は明確です。それは、このタイミングであれば、より多くの売買が成立しやすいからです。多くの持ち株を抱えた売り手にとって、これほど好都合なことはありません。
その後、仮に株価が上昇したとしても、確実に利益を得ることの方が重要なのです。

一般的に、このような著名な方法で収益を上げることは困難とされています。では、人よりも早く仕掛け、人よりも早く手仕舞えばどうでしょう。
理屈では、収益を上げる可能性が高まります。しかし、それは未来予測を行うことと同義であり、実現は困難です。

4.オーバーフィッティング(過剰最適化)

有名な相場格言に、「人の行く裏に道あり花の山」というものがあります。これは、シストレ流に言うならば、「既存指標やパラメータに固執せず制限を取り払えば聖杯が見える」とでもなりましょうか。
システムトレードは、全数検索が大原則だと考えます。できるだけ制約を取り払い、自由な発想で最大限の可能性を追求することにより、光が見えてくるのです。

全銘柄で共通した指標、共通したパラメータで、平均期待値がプラスであるシステムが存在するかどうかは分かりません。しかし、そのような条件を設定すること自体、無用な制約だと考えます。
いくつかの銘柄の株価推移を見るだけでも、それらが大きく異なっていることが分かります。そのような、全くでたらめな推移を、一つの枠に括り付けて制御しようということの方が、無理があります。

もっと自然に考えれば、銘柄ごとに最適な指標があって当然、最適なパラメータが異なって当然なのです。それを無理に一つの枠に押し込めようとするから、歪みが生じます。
その歪みは、聖杯の形を歪め、収益機会を確実に損なっていくのです。

システムトレードで取り得る可能性の極一部しか検証せずに、「システムトレードでは勝てない」と結論付けることはできません。
全ての可能性を検証してみて初めて、システムトレードで勝てるか否かが判明するのです。

しかし、巷では「パラメータの最適化はオーバーフィッティングを生む」と、まことしやかに言われています。このようなことを言う人は、本当に検証を行っているのか疑問です。
そもそも、オーバーフィッティングとは何のことを指すのでしょう?

システム性能が大きく変わってしまう条件の一つに、パラメータの変遷があります。もちろん、これはどのような指標を用いるかによっても違ってくるのですが、大なり小なり、パラメータが変わればシステム性能も変わります。
例えば、移動平均を用いたシステムの場合、移動平均期間の変化幅は1日単位となります。そして、移動平均期間が1日違うだけで、システム性能は変化します。

KFシステムクリエイターでは、例えば2つの移動平均期間を3~150日の間で1日単位で変化させ、最適パラメータを決定します。
その際、パラメータがわずか1日ずれただけで、システム性能が大きく変化することはザラにあります。では、このような条件で得られる、システム性能が最適となるパラメータは、無意味なのでしょうか?

けしてそんなことはありません。確かに、パラメータが1日でもずれれば、性能は大きく損なわれます。しかし、パラメータがずれない限り、性能が大きく変わることはないのです。
そして、実際に検証すれば分かることですが、その最適パラメータは、直近においてずれることはほとんどありません。

それどころか、全検証期間の直近2割以上の長期に渡って、全く変化せずにいることが少なくありません。前述のケビン・J・ダービー氏の言葉を借りるまでもなく、そのようなシステムは、フォワードテストにおいても良好な結果が得られるであろうことが推察できます。

では、ある銘柄で最適パラメータが直近において安定しない場合は、どうすればいいのでしょうか?
答えは簡単です。安定する最適化対象指標を探し、それでもだめなら別のロジックを調べ、それでもだめなら、その銘柄を諦めればいいのです。

システムが安定しない場合に、フィルタ等の条件を付け加えたりする場合がありますが、これは通常、システムの不安定要因として働きます。
ただし、フィルタをシステムと考え、フィルタ単独で評価した際に、正の期待値と十分な安定期間を有する場合は、その限りではありません。

5.システムトレードで勝つには裁量も必要か

これは微妙な命題です。ただし、あながち間違っているわけでもありません。
そもそも、システムトレードにおいて、どこまでをシスティマティックに行うかは人それぞれです。

中には、運用者が行うのはパソコンのスイッチを入れるだけ、というものもあるかもしれませんし、シグナルの発生までをシステムで行い、発注は手動と言うパターンもあります。
ただし、このような事例の場合、裁量が入り込む余地はほとんどありません。

実際に裁量が入ってくる可能性があるのは、建玉数の決定や運用システムの決定等、資金的な制約によるものが多いでしょう。
また、高次のシステムとして、レジームスイッチシステムがありますが、それを自動ではなく手動、すなわち裁量で行う場合もあるかと思います。

結局のところ、システムと呼ばれる部分は多くの場合、シグナルを出すまでであり、それ以降の運用面においては、裁量判断が入ってくる余地が多分にあります。
そもそも、どのシステムを運用に供するかは運用者の判断であり、そのシステムの仕様もまた開発者次第です。

そういった意味で言えば、システムトレードとは言っても、裁量判断が必要であることに違いはありません。では、何を持ってシステムトレードと言うかと申しますと、少なくとも入力(株価)に対して出力(売買シグナル)が唯一定まること、に尽きるのではないかと思います。

もしも、システムによって出力された売買データに対して、運用者が勝手に違う売買行動を取ったとしたら、それはもはやシステムトレードとは言えません。
しかし、レジームに応じて運用システムを変更し、その変更ルールが明確であるならば、それはシステムトレードであり、けして裁量ということではありません。


結局、システムトレードで勝てない多くの場合は、「十分な検証が行われなかったから」の一言に尽きるかと思います。
もちろん、運用面での問題もありますが、それらはむしろ裁量判断の帰結ということになります。

nice!(0)  コメント(0) 
共通テーマ:

システムトレードと株式長期保有との運用成績比較 [システムトレード]

システムトレードと株式長期保有との差は、一体どこにあるのでしょう?
資産カーブと株価推移とを比較すれば、それは一目瞭然ではあるのですが、具体的な性能指標での比較となると、事はそう単純ではありません。

何故なら、システムトレードにおける損益は、トレード毎に決まるのに対し、株式長期保有における損益は、一般に事前に決定した各期末毎に決定されるからです。
両者の成績を比較するためには、同じ期間毎の成績を求めて比較する必要があるわけです。

KFシステムクリエイターのユーティリティツール群であるKFシステムコントローラには、KFシステムアナライザという成績分析ツールが登録されています。
今回は、それを用いてシステムトレードと株式単純保有との成績を比較し、その違いを明らかにしたいと思います。

比較に用いた銘柄は、3407旭化成です。本銘柄を採択した特段の理由はありませんが、少なくとも恣意的なものではありません。
分析期間は1993年12月14日から2021年3月26日までの約27年3か月間、比較対象システムはRSI逆張り逆システムです。

分析結果の年毎成績サマリーを、次図に示します。また、3407旭化成の株価推移と、RSI逆張り逆システムのドテン運用時損益累計を、併せて示します。
なお、サマリー上の期毎成績は1994年以降1年単位となっており、1993年分と2021年分は含んでおりません。
3407旭化成_運用_20210328a.png
3407旭化成_株価推移_20210328b.png
3407旭化成_資産カーブ_20210328c.png

KFシステムアナライザでは、決算期を年毎、四半期毎、月毎の3通りに設定できます。ここで年毎の場合は、期末を3月末ではなく12月末としています。
これは、個人の確定申告を考えた時に、通常は12月末を区切りとするためです。

上掲のサマリーは、年毎の結果を示したものです。ヒストグラムの項目は、株価推移もしくは損益累計の回帰直線を求め、その周りに分布する実際値の標準誤差や最大残差(乖離値)を求めています。
また、株価推移や損益累計チャートにおいて、回帰直線を青線、回帰直線からの残差を緑線で示しています。

両者を見比べると、当然のことですがシステムトレードの方が回帰直線の傾きが大きいことが分かります。株価は回帰直線を挟んで大きく上下しながらも、全体として緩やかな上昇基調にあります。
一方、システムトレードでは、損益累計は回帰直線から大きく離れることなく、推移していることが見て取れます。

次図は、株価推移及びドテンシステム損益累計の、回帰直線からの残差のヒストグラムです。
3407旭化成_株価_ヒストグラム_20210328d.png
3407旭化成_システム_ヒストグラム_20210328e.png

これらを比較してみると、意外なことに両者には大きな差がないことが分かります。株価の場合は、概ね-400~+800円、システムの場合は、概ね-300~+500円の範囲となっています。
システムの方が多少は残差が小さいですが、株価や資産カーブと、それらの回帰直線との乖離から感じる印象とは大きく異なります。

サマリーの期毎成績を見ると、勝率は(ドテン)システムの方が15ポイントほど大きいですが、平均利益率は株式単純保有の方が、システムの3倍近くも大きいことが分かります。その一方で、平均損失率は株式の方が5倍近くも大きくなっています。
なお、ここで言う勝率や平均利益率等は、あくまで年単位での成績になります。

実際には、1994年1月1日から同12月31日までを1年目、1995年1月1日から同12月31日までを2年目、・・・・・・、2020年1月1日から12月31日までを27年目とし、各年次の中で株価もしくは損益がプラスになった年の割合を勝率、プラスになった年の利益を平均したものを平均利益率、などとしています。

各年の騰落や勝敗を分かりやすく示したチャートが、次図になります。上段が株価、下段がシステムの損益です。赤い実体が陽線、青い実体が陰線となっています。
なお、1993年分と2021年分は、サマリーに反映されていない参考値です。
3407旭化成_株価_年毎成績_20210328f.png
3407旭化成_システム_年毎成績_20210328g.png

これらを見ると、株式の場合は個々の実体が全体的に大きく、それが平均利益率や平均損失率を、システムの場合と比較して大きなものにしていることが分かります。
また、損失レシオは平均利益率と平均損失率との比であり、システムの方が7割ほど大きくなります。

特筆すべきは、株価推移における平均リターンの大きさです。年間6.92%は、システムをも超えています。その一方で、年率リターンはわずか2.11%しかありません。これは、株式を27年間保有し続けた場合、1.76倍になるに過ぎません(配当未考慮)。

その理由は明白です。株価推移が複利運用に等しいことは、これまでに何度も記してきました。すなわち、1994年末に600円で保有を開始した当該銘柄の株価が、27年後には1,055円ほどになったという事実を示しているに過ぎません。

一方、システムの場合は年率リターンが6.15%と、株価推移の3倍ほどあります。これを27年間に渡って複利運用したとすると、累積資産残高は5.01倍になります。
当初、100万円で運用を開始すると、昨年末で500万円ほどになっている計算になります。あるいは、株価と比較すると、当初600円で運用を開始したら3,006円まで株価が上昇したということと等価です。

もっとも、これはあくまで年単位での成績に基づいた結果です。実際のシステム複利運用では、トレード毎に資産を元本に繰り入れていくため、結果は大きく異なります。
その場合の年率リターンは昨年末時点で10.96%となり、時価累積損益率は16.58倍になります。100万円が1,658万円になる計算です。年単位の運用よりも3倍ほど効率的です。

ちなみに、株式を単利運用した場合、すなわち毎年の期末にリバランスを行って投資元本を一定額にした場合、27年後の資産残高は2.87倍になります。
これは単純に株式を保有し続けた場合と比べると、6割ほど資産が増えたことを意味します。

一般に、平均リターン≫年率リターンの場合、期末毎にリバランスを行う戦術は非常に有効です。そして、多くの銘柄はこの条件を満たしていると思われます。
これはドルコスト平均法に近い手法ですが、ドルコスト平均法が資金を定期的に積み上げていくのに対し、リバランスを行うこの手法は、資金額を一定に保ったままで運用を行うことが出来ます。

システム運用の場合は、平均リターン≒年率リターンとなることが多く、リバランスを行うよりも複利運用を行った方が資産は増加します。
今回の事例では、平均リターン6.68%の単利運用で27年後には資産は2.80倍、6.15%の複利運用で前述の通り5.01倍になります。

さて、投資信託等の運用安定性を評価する指標として、シャープレシオがあります。シャープレシオにつきましては、過去の記事「シャープレシオの計算方法」で解説しておりますので、そちらをご参照ください。
一般に、シャープレシオが大きいほど、リスクが小さくリターンが大きい運用が可能であるとされます。値が0.5~0.9で普通、1.0~1.9で優秀、2.0以上で非常に優秀、とされています。

株価推移とシステム運用におけるシャープレシオを比較すると、株価推移のそれがわずか0.05であるのに対し、システムはドテン運用で0.52となっています。
当該システムの場合、辛うじて0.5台に乗っており、投資適格性はギリギリOKといったところでしょうか。一方、株式単純保有の場合は、リスクに見合うリターンが全く得られていないことが分かります。

ちなみに、シャープレシオを求めるに当たって、短期金利を0.5%として計算しました。現在はほとんど0%としても良いのでしょうが、27年前からの無担保コールレートを調べてみると、1994年1月から1995年3月が平均で2.2%程度、その後1995年4月に1.5%まで低下した後、同9月に0.5%台に下がり、以降1999年2月に0.2%、その後はほぼ0%が続きました。2007年に0.5%台まで上昇するも、2010年には再び0.1%を切り、2016年にはマイナス金利に転落して現在に至っています。まあ、0.5%というのはやや大きめの水準かな、という感じです。

以上のように、株式長期保有とシステム運用を、同じ土俵で比較することにより、両者の違いが明確になります。予想もしくは期待した結果とはいえ、システム運用の方が株式単純保有よりも有利であることが分かりました。
ただし、単利運用を行った場合はその限りではなく、特に3407旭化成の場合は、1年毎のリバランスあり株式保有の方が、システム運用よりもリターンが大きくなりました。

もっとも、通常のシステム単利運用ではトレード毎に資金のリバランスが生じるため、実効的な平均リターンは13.81%と、年単位でリバランスを行った場合に対して2倍ほどになります。
何故ここまで大きな違いになるのか疑問ではありましたが、性能指標の導出過程を調べてみてもおかしな点は見られませんでした。今後、改めて検証したいと思います。

nice!(0)  コメント(2) 
共通テーマ:

システムにおける性能指標の定義と位置付け(4):投資効率と平均損益率 [システムトレード]

投資金額に対してどの程度の利益を上げることが出来るかを表した指標が、投資効率です。投資効率は、次式で定義されます。
  投資効率=(総利益+総損失)/(総利益-総損失) (総損失≦0)
      =(総利益-|総損失|)/(総利益+|総損失|)

上式の分母は、一連のトレードによってどれだけのキャッシュフローが生じたかを示しています。そして分子は、その内どれだけが利益になっているかを示しています。
すなわち、投資効率はその名の通り、トレードの効率性を示す指標であり、この値が大きいほど効率よく稼げることを示しています。

投資効率は、PFを用いて、次のように表すことが出来ます。
  投資効率=(PF-1)/(PF+1) (PF≧0)
  PF  =(1+投資効率)/(1-投資効率) (-1≦投資効率≦1)

これから、PFが0だと投資効率は-100%、PFが1だと投資効率は0%、そしてPFが無限大でようやく投資効率は100%になることが分かります。
また、投資効率が50%になるためにはPF=3、80%になるためにはPF=9が必要になります。

一連のトレードにおける損益率を平均した指標が、平均損益率です。これは全てのトレードにおける損益率の合計、すなわち累計損益率を、トレード数で割った値となります。
平均損益率は、次式で表すことが出来ます。
  平均損益率=累計損益率/トレード数
       =(累計利益率+累計損失率)/トレード数
       =平均利益率×勝率+平均損失率×(1-勝率)

平均損益率は、システムトレードを行う上で非常に重要な指標です。それは、トレードに掛かるコストとの関係が、最も顕著に示されるからです。
例えば、売買1回当たり0.1%の売買手数料が掛かる証券会社でトレードを行う場合、平均損益率が0.2%以下のシステムでは全く利益が得られません。

これは、エントリー時に0.1%、エグジット時に0.1%の計0.2%の損失が、トレード毎に必ず掛かってくることを意味します。すなわち、平均損益率が0.2%のシステムでは、期待収益分が全て手数料に取られてしまい、手元には何も残らないわけです。

そのため、いくら他の性能が優れていたとしても、平均損益率が売買手数料率よりも小さいシステムは、使い物になりません。
ただし、売買手数料率は証券会社によって異なりますし、ロット数によっても異なります。特に最近は、各証券会社で手数料の値下げが相次いでおり、平均損益率のハードルは以前と比べて随分低くなっています。

例えばauカブコム証券などでは、信用取引における売買手数料を無料としています。その代わりに、買方金利や貸株料がやや高めに設定されているようです。
ただし、貸株料に関しては通常、買方金利よりも低く設定されているため、システムに与える影響はより軽微となります。

これらの金利は年利ですので、通常はシステムの期待収益率(平均リターンや年率リターン)から減じられます。例えば買方金利が4%の場合、システムの期待収益率が24%以上であれば、金利を差し引いても20%以上の収益が期待できることになります。
これならば、十分システム運用可能な水準と言えるでしょう。ドテン運用も然ることながら、そのような事情もあるため、システム運用は信用取引で行うことが鉄則です。

ただし、現物取引であっても、売買手数料が無料であったり、非常に安く設定されている証券会社もあるかと思います。現物取引でシステムトレードを行う場合は、そのような証券会社を利用するか、あるいは手数料負けしないような十分大きな平均損益率のシステムを運用するか、もしくは相対的に手数料率が減少するような十分大きなロットで運用するか、いずれかの対策が必要になります。

以上のように、平均損益率は非常に重要な指標ですが、システムによってはその精度に疑問が生じる場合があります。例えば、トレンドフォロー型のシステムの場合、各トレードにおける損益率が大きくバラつきやすくなります。
そうすると、一部の極端なトレードの結果が、全体に大きな影響を与えてしまう可能性を否定できません。

この、平均損益率の信頼性とでも言えるような問題を判断する材料として、最大利益率や最大損失率、損益率標準偏差といった指標を考えることが出来ます。
これらはいずれも、損益率のバラつき度合いを示す指標です。

最大利益率は、全ての勝ちトレードにおける最大の利益率を表します。これは完全に独立した指標であり、統計的な意味合いもありません。
あくまで、過去において最大でどれだけ勝ったことがあるか、を示す指標に過ぎません。そのため、基本的にはシステム運用を行う上で、重要な要素とはなりません。

最大損失率は、全ての負けトレードにおける最大の損失率を表します。これも完全に独立した指標であり、統計的な意味合いはありません。
あくまで、過去において最大でどれだけ負けたことがあるか、を示す指標に過ぎません。そのため、基本的にはシステム運用を行う上で、本来は重要な要素とはなりません。

しかし、ドローダウンを考えた場合、最大損失率の影響を無視することは出来なくなります。ドローダウンについては、後日、詳細に解説しますが、最大損失率を含む連続した損失が発生すると、システム運用を脅かすほどの大きなドローダウンが生じてしまいます。

そのため、最大損失率は出来るだけ小さく抑える必要があるわけですが、システムによって完全にコントロールできるわけでもないため、対応が難しくなります。
ちなみに、ロスカットを設定すれば、最大損失率を一定範囲内に抑え込むことも可能ですが、多くの場合、ロスカットの設定はシステム性能を著しく低下させてしまいます。

損益率標準偏差は、全てのトレードにおける損益率の標準偏差です。もしも損益率の分布が統計的な振る舞いをするのであれば、そしてそれが正規分布に従うのであれば、平均損益率±損益率標準偏差に含まれる損益率の割合は68%、平均損益率±2×損益率標準偏差に含まれる損益率の割合は95%、そしてほぼ全ての損益率が平均損益率±3×損益率標準偏差の範囲に収まることになります。

しかし、多くの場合、最大利益率や最大損失率は、平均損益率±3×損益率標準偏差の範囲を超えてしまいます。もちろん、それを厳密に論じるためには、実際に損益率の度数分布を求めて、正規分布との整合性を判定する必要があります。

次図は、3407旭化成の回帰順張り逆システムにおける、損益率分布(ヒストグラム)を示したものです。実際の度数を棒グラフで、統計的に求めた正規分布(スケール調整済)を折れ線グラフで示しています。

3407旭化成_損益率_度数分布_20210309a.png

これは、損益率の階級を0%を境に3%刻みで設定したものです。そのため、近似値(正規分布)のピークがずれてしまっています。また、損益率がマイナスの方向に、分布が広がっているように見えます。
そこで、損益率の中心を平均損益率に設定し、階級をそこから3%刻みとした場合の損益率分布を次図に示します。

3407旭化成_損益率_度数分布_20210309b.png

すると、損益率が逆にプラス方向に偏っているように見えます。結局、階級の幅や中心をどのように取るかによって、度数分布の見え方が違ってくることになります。
ただ、いずれの場合でも、度数分布は釣鐘型ではありますが、階級の中央における度数が正規分布よりも突出して大きい、すなわち尖度が大きいことが分かります。

もちろんこれは、システム性能を否定的に捉えるものではありません。むしろ、分布の尖度が大きい分、安定した運用が見込めることになります。
しかし、このチャートでは分かりませんが、分布の裾野には正規分布では説明できないロングテールが広がっています。それは最大利益率や最大損失率に該当するわけですが、この存在が時にシステムの安定性を大きく損ねる要因になっているのです。

nice!(0)  コメント(0) 
共通テーマ:
前の5件 | 次の5件 システムトレード ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。