相関係数算出ツールシステム版 取扱説明書(改訂版)

記事
マネー・副業

0.重要確認事項


KFシステム研究所が提供する各種ツール(以下本品)をご利用いただくに当たり、下記確認事項をよくご覧の上、順守いただきますようお願い申し上げます。

・本品の著作権は、KFシステム研究所並びにKフローが有します。第三者への販売ならびに供与等は、ご遠慮ください。

・本品並びに関連品のご使用に際して生じるいかなる損害に対しても、KFシステム研究所並びにKフローは一切の責任を負いません。また、本品はトレードで収益を上げることを約束するものではありません。必ず自己責任にてご利用願います。

・本品及びその派生物を、有償無償を問わず、第三者に開示することは禁止しておりますが、運用結果の公開や新規ロジック等の開発につきましては、自己責任において自由に行って構いません。

・本品の実行にはインストール版のMicrosoft Excel 2003以降が必要です。Web版Excelや他社製Excel互換ソフトでは動作を保証できませんのでご注意ください。なお、本品を動作させるためには、マクロの実行を許可する必要があります。

・Excel2007以降で本品を使用する場合は、原則として「互換モード」をご利用ください。それ以外のモードで保存した場合、本品を起動できなくなる場合があります。

・本品はExcel2003上で開発し、動作確認を行なっています。上記の条件を満たす限り、直近のExcelバージョンでも動作いたしますが、演算速度が2割程度以上遅くなる場合があります。何卒ご承知置きくださいますよう、お願い申し上げます。

・一部マクロにおいて、シートの切り替えなどの度に再計算が行われる場合があります。シートの状態によっては、非常に時間が掛かる場合がありますが、それを避けたい場合は、「オプション」の「数式」にて、「計算方法の設定」の"ブックの計算"の「手動」にチェックを入れてください。

・Excel2013以降では、ブックが開かれるプロセスが変更になりました。それ以前では、エクセルを起動する度に新規プロセスが使用されていましたが、2013以降では既存プロセスが使用されるようになりました。そのため、例えばシステムの最適化演算を行なう場合、従来は新たにエクセルを起動してシステムを読み込めば、個々のプロセスで実行されましたが、2013以降では同一プロセス内で実行されてしまい、処理が著しく停滞する場合があります。新規プロセスでエクセルを実行するためには、Altキーを押しながら起動するか、起動時に-xオプションを付ける必要があります。詳しくはWebやエクセルの解説書等をご覧ください。

2022年2月19日 KFシステム研究所 Kフロー


1.はじめに


相関係数算出ツール(以下、本ツール)は、登録したシステムの資産推移を分析し、各システム間の相関係数を一覧表示すると共に、それらの散布図や資産カーブの比較表示を行うためのツールです。

システム間の相関関係は、同一銘柄の複数システムを合成して低リスク化を図ったり、うねり取りシステムを作成したりする際に有用です。また、異なる銘柄のシステムでポートフォリオを組む際にも、参照指針として重要となります。

例えば、同一銘柄の異なるシステムにおいて、順張り系システムと逆張り系システムとを合成することにより、相場環境の変化に強いシステムの実現が期待できます。その際、逆相関の関係にあるシステム同士を組み合わせれば、更なるリスク低減が可能です。

また、弱い相関関係にある異なる銘柄のシステム同士でポートフォリオを組むことにより、単独でシステムを運用するよりもリスクを低下させることができます。

本ツールでは、資産推移における回帰直線からの実際値の乖離(残差)を求め、それら同士の相関係数を求める方法を開発し、採用しています。

この方法の利点は、資産推移のうねりを比較することができるため、全体的には正相関でありながら、個々の局面においては逆相関になるシステムを、効率よく抽出することが可能となることです。
その結果、相関係数が負(逆相関)になるシステムの組み合わせが、数多く得られるようになります。

その結果に基づいて、システム同士の最適な組み合わせを見出すことにより、リスクを低減したシステム運用が可能になるのです。

投資の世界では、今、FIRE(ファイア:Financial Independence, Retire Early)が注目されています。これは、従来のような億り人を目指すといった類ではなく、持続可能な投資を継続的に行い、早期リタイアを目指すという動きです。

私が提唱するシステムトレードもまた、FIREに適していると考えます。本ツールを用いたシステムポートフォリオの構築で、いわば個人投資信託を実践することができるでしょう。
本ツールが、皆さまのお役に立てることを期待いたします。


2.相関係数算出ツールの使用方法


①datファイルの準備


datファイルは、KFシステムクリエイターによるシステム作成時や更新時に、自動的に生成されます。基本的には、元となるシステムのファイル名の先頭に、"dat"を付加したファイル名となります。
datファイルは、サマリーシートとデータシートの2枚のシートで構成されます。

サマリーシートは、通常のシステムのサマリーシートを値複写したものです。これは、システムの概要を確認したり、KFシグナルチェッカーやシステム性能一覧ツールなどで参照するために用います。

図01a.png

データシートは、株価や資産残高などの主要な時系列データをまとめたものです。これらのデータは、本ツールやKFシステムアナライザなどで参照するために用います。

datファイルは、システム作成や更新により自動生成されます。
ただし、異なる銘柄同士のシステムポートフォリオを組む場合、現状ではそれらをまとめて一つのシステムとして管理することはできません。そのため、そのようなポートフォリオのdatファイルは自動生成されません。

図01b.png

②datファイルの登録


相関係数算出ツールを開いてください。初期状態では、次図に示すシステム登録シートのみ存在します。ここに、各システムのdatファイルを登録していきます。
なお、登録に当たっては、先頭の"dat"を除いたファイル名を設定してください。本ツールにて、自動的にdatを付加して処理します。

図02a.png

G6セルに、datファイルがあるフォルダ名をフルパスで入力します。末尾には必ず「\」を付けてください。
続いて、C列に識別記号、D列にシステム名、G列にシステムファイル名(datファイルから"dat"を除いたファイル名)、H列に銘柄名を設定します。各列の9行目以降に、行間を空けずに入力してください。

図02b.png

ファイル名には、必ずシステムファイル名を設定してください。同ファイル名をダブルクリックすると、ファイルタイプ欄(C6セル)の設定に応じて、システムファイル、datファイル、prmファイル(パラメータファイル)、smrファイル(サマリーファイル)のいずれかを開くことが出来ます。
もしも開かない場合は、フォルダ名かファイル名が違っているか、対象ファイルが存在しない可能性がありますので、再度確認してください。

図02c.png

なお、フォルダ名欄とは異なるフォルダにあるファイルを登録する場合は、F列にそのフォルダ名を記載します。F列は通常、非表示になっています。E列とG列とを選択した状態で右クリックし、表示されるメニューで「再表示」を選択してください。

図02d.png

図02e.png

フォルダ名入力後、F列を選択した状態で右クリックし、「表示しない」を選択すると、再び非表示にできます。

図02f.png

識別記号は、重複しないように設定してください。なお、何らかの理由で同一システムを複数登録する必要がある場合などは、末尾に「a」などの記号をつける等して区別してください。
識別記号は、あくまでシステムを特定するための記号であり、設定内容は任意です。

D列のシステム名は、登録したファイル上のシステム名とは、必ずしも同じである必要はありません。分析を行うファイルのシステムが何であるかを確認するために利用します。
なお、当欄の設定は、本ツールの実行に何ら影響を与えません。

G5セルの代表銘柄名欄には、登録したファイルの銘柄名を記載します。銘柄が複数ある場合は、併記するか代表銘柄名を記載するかしてください。内容は任意で構いません。
A列のNo.欄には、連番を記載します。また、隣のB列は相関係数算出時に自動設定されますので、何も入力しないでください。

E列のタイプ欄では、分析するシステムの運用タイプを選択します。セルをクリックして表示されるリストから、「ドテン」、「買い」、「売り」のいずれかを選びます。
通常は、「ドテン」を選択してください。特別な理由がある場合に限り、他の種類を選ぶようにします。 ファイルの登録に関し、最初に設定を行う項目は以上です。

図02g.png

③実行内容の設定


続けて、相関係数算出における実行内容の設定を行います。以降では、各項目の設定を有効にする場合には"1"を、無効にする場合には"0"を設定します。設定項目を次図に示します。

図03a.png

datファイルを新規に本ツールに取り込む場合は、データ新規取得欄であるB3セルに"1"を設定します。取り込み済みのデータを利用して、相関分析のみを新たに行う場合は、"0"を設定してください。

本ツールでは、累計資産残高推移(資産カーブ)の回帰直線からの乖離(残差)を利用します。同値は通常、回帰直線を中心にほぼ対称に分布します。それが上方にある時は正、下方にある時は負の値となります。
この残差同士の相関を分析するということは、資産カーブの類似性を判定するということです。

I列とJ列では、ファイル名欄に登録したファイルデータを実際の相関分析に適用するかどうかを決定します。分析を行う場合は"1"、行わない場合は"0"を設定します。①(I列)は相関分析における第一システム、②(J列)は第二システムが対象であり、互いに独立して設定することができます。

なお、データ新規取得時に①と②の値が共に"0"の場合は、その株価データの散り込みは行いません。そのため、新規取得時には少なくともいずれかが"1"となるように設定してください。
通常は、特段の理由がない限り、全ての銘柄について、①と②共に"1"を設定します。

相関係数算出ツールの初期設定は以上です。銘柄登録に当たり、行の増減はコピー&ペーストにて行ってください。特に、E列、I列、J列にはリストが設定されていますので、全ての行を削除するといったことがないよう、ご注意ください。

④相関係数算出


全ての設定が完了したら、右上にある「相関係数算出」ボタンを押します。すると相関係数算出や株価データ演算の各シートが追加されます。
処理の完了まで非常に時間が掛かりますので、マウスカーソルがポインタに変わるまで手を触れずにお待ちください。

図04a.png

処理時間は、登録ファイル数や分析期間、パソコンのCPU性能やメモリ容量、データ保存用HDDやSSDの速度によって、大きく異なります。
また、エクセルのバージョンによっても違ってきます。通常、エクセル2003よりも最新エクセルの方が時間が掛かります。

⑤分析結果の評価


分析結果は、相関係数1シートに表示されます。

図05a.png

分析期間は、テスト期間、運用期間、全期間の3つに区分され、各期間毎に相関係数が求められます。テスト期間は、全銘柄における開始日の内、最も新しい開始日から直近日の概ね1年前まで、運用期間はテスト期間の翌日から直近日までの凡そ1年間、全期間はそれらの総期間です。

これらの期間は、各株価データを元に自動的に設定されますが、テスト期間の終了日は後で手動で変更することができます。変更すると、相関係数が再計算され、再表示されます。
なお、テスト期間や運用期間はあくまで便宜上のものであり、明確な意味があるわけではありません。

同シートの8行目以降は、相関分析結果を示す相関係数表です。表の縦軸は第一システム、横軸は第二システムを示し、両者が交わるセルがそれらの相関係数を表しています。
相関係数の目安については、出典によってやや異なるため、ここでは明記しません。各自にてご判断ください。

相関係数表内の数値をダブルクリックすると、その組み合わせの相関分布チャートが表示されます。例えば、6754アンリツのRSI逆張り正(aP6d)システムとブレイクアウト2正(aP7d)システムの全期間における相関分布は、次図のように表示されます。

図05b.png

これから、両者が弱い逆相関の関係にあることが分かります。
チャートを閉じるには、チャート外縁部を左クリックして同チャートを選択し、右クリックで表示されるメニューから「クリア」を選択するか、キーボードで「Delete」キーを押してください。

また、同セルを右クリックすると、両者の株価チャートと回帰直線が表示されます。チャートの閉じ方は、相関分布チャートの場合と同様です。

図05c.png

これにより、互いの資産残高推移間の関連性が明確になります。もしもこれらのシステム同士でポートフォリオを組む場合は、aP6dシステムとaP7dシステムとを概ね1対1の割合で運用すれば良いことが分かります。
それにより得られる合成銘柄は、元となる銘柄よりも資産残高推移のバラツキが抑えられることが期待できます。

相関係数表の末尾には、各行及び列の最小値や、各システムのEER及びRSQ(決定係数)を表示しています。

図05d.png

最小値は、比較的強い逆相関関係にある銘柄同士を見つけるのに役立ちます。EERは回帰直線の傾き(正負)や残差の大きさの判定に、RSQは株価推移のバラツキの判定に用います。
良好な組み合わせを得るには、EERが共に正でRSQが大きく、逆相関の関係にある2つのシステムを見つけることが必要です。

相関係数表では、セルのクリックにより、各チャートの表示以外にも、対象のシステムを開くことができます。識別記号欄をダブルクリック、もしくは右クリックすることにより、その記号のシステムファイルが開きます。開いたファイルを閉じるには、エクセル上の「閉じる」操作を行ってください。

⑥相関係数の再分析


システム登録シートにおいて、データ新規取得欄を"0"に設定することで、取得済みdatファイルデータを保持したまま、相関係数表を再集計することができます。
datファイルデータ取得済みのシステムは、B列に"済"が表示されますが、この状態でI列やJ列の設定を変更した場合、「相関係数算出」ボタンを押すことにより、それを反映した相関係数表が作成されます。

図06a.png

図06b.png

なお、システム登録シートのB列には、データ新規取得時に取得状態に応じて、"済"の他に"未"および"×"の表示がなされます。
"未"はデータ新規取得時にI列およびJ列が共に"0"の場合に表示され、datファイルデータは取り込まれません。一方、"×"はdatファイルが開けない場合に表示されます。登録したファイル名もしくはフォルダ名を確認してください。

図06c.png

図06d.png

データ新規取得時にはB列の表示はクリアされますが、datファイルデータを保持したまま相関係数算出を行う場合は、B列の表示はクリアされません。
そのため、datファイルデータの取得状況を常に確認することが出来ます。

システム登録シートのG3およびG4セルは、通常、ツール制御用として用いますが、この値を変更することで、分析の開始日や終了日を変えることができます。この値は、datファイルデータシートの行番号を示します。
G3セルが開始日、G4セルが終了日に相当しますが、通常はこのレンジ内で変更してください。変更した値を元に戻す場合は、項目名冒頭にある二重丸をクリックします。

図06e.png

開始行を初期値より小さくすると、開始日を遡ることができますが、それ以前のデータが存在しないdatファイルデータについては、相関係数やチャート表示が正常に行われません。
そのため、分析対象システムをよく確認した上で、変更するようにしてください。

⑦結果固定


システム登録シート右上の「結果固定1」ボタンを押すことで、分析結果を固定して保存することができます。それにより、ファイル容量を削減したり、チャート表示等の処理速度を向上させたりすることができます。
本処理を行ってもチャート表示は可能ですが、日付の変更はできなくなります。

図07a.png

また、「結果固定2」ボタンを押すと、システム登録シートと相関係数1シートのみ保存します。各銘柄間の相関係数は確認できますが、チャート表示はできません。ファイル容量を大幅に削減し、相関係数のみ保存しておきたい場合に有効です。

結果固定を解除するには、いずれの場合もデータ新規取得を"1"に設定して、相関係数算出を実行してください。datファイルデータを保持したままでの相関係数算出では、結果固定は解除できませんのでご注意ください。

3.おわりに


相関係数算出ツールを用いることで、リスクを相殺できるシステムの組み合わせを、容易に得ることができるようになります。
同一銘柄システムの場合、これらの合成システムを作成することにより、リスク低減システムやうねり取りシステムの運用が可能になります。

これらは単一システムにまとめて作成することが可能なため、通常のシステムと同じ感覚で合成システムを運用出来ます。
また、各種性能指標やチャートなども、通常のシステム同様に確認することが可能です。

一方、異なる銘柄のシステムを組み合わせた場合、それはすなわち、システムポートフォリオの構築となります。運用トータルとしてのリスク低減が可能となると共に、銘柄に依存したリスクの分散にも役立ちます。
現状では、単一システムにまとめることは出来ないため、ポートフォリオ全体としての性能や運用成績の確認が、やや面倒となります。

いずれにしても、相関の低い、あるいは逆相関にあるシステム同士を合成したり、ポートフォリオを組んだりすることで、単一システムよりも低リスクでの運用が可能となります。
その効果は、相関を考慮せずに適当に合成したり組み合わせたりするよりも、大きいものとなります。

本ツールは、そのようなシステムの組み合わせを見出すために、非常に有用です。KFシステムクリエイターと併用することにより、システム設計における大きな武器になることでしょう。
本ツールやKFシステムクリエイターが、ご利用者の資産拡大の一助となれば幸いです。

2022年2月14日 KFシステム研究所 Kフロー


サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す