システム最適化演算ツール 取扱説明書

記事
マネー・副業

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.システム最適化演算ツールの概要


システム最適化演算ツールは、登録したシステムの最適化演算を自動実行します。セットアップしたシステムを全て登録しておくことで、セットアップ完了後に最適化演算を行い、最終的なシステムを自動設計することが可能となります。

ただし、同一ロジックのシステムでも、最適パラメータの選択にはある程度の裁量要素が入り込む場合があります。
時系列分析では、最適パラメータ直近継続期間が最長となるシステムを一意的に決定しますが、そのシステムが必ずしも良好な性能を有しない場合もあります。そのため、最適化が完了したシステムを一つ一つ開き、目視で確認する必要があります。

また、最適化演算、特に時系列分析には、通常、多大な時間が掛かります。そのため、例えば4コアCPUパソコンの場合では、システム最適化演算ツールをファイル名を変えて4つ用意し、それぞれ等分にシステムを割り振ります。それらを並列実行ツールに登録し、それをシステム最適化演算ツールの代わりに自動実行ツールに登録することで、処理時間を大幅に短縮することが出来ます。

システムの安定性を担保するためには時系列分析が欠かせませんが、他の処理と比べて膨大な時間が掛かります。そのため、最初にテーブル演算等でシステムの選別を行ったり、パラメータの走査範囲を絞り込んだりすることで、トータルの処理時間を短縮することも可能です。ただし、その場合は常に、優良システムの取りこぼしの可能性を排除できません。

どのようにシステム設計を行うかについては、使用するパソコンの能力や処理に掛けられる時間、システム設計への設計者の充当時間等によって違ってきます。
それらの制限の中で、いかに効率的に優良なシステムを見出すことができるかが、重要な課題となっています。

システム最適化演算ツールは、システム設計を効率的かつ網羅的、客観的に行うために必須のツールです。
システム最適化演算ツールと他のツール、例えば並列実行ツールやシステム性能一覧ツールなどを活用することで、よりエッジの効いたシステムを得ることが可能となります。

なお、システム最適化演算ツールによる最適パラメータ設定機能は、システムそのものに備わっている機能と全く同じです。
そのため、ごく少数のシステムの最適化演算を行う場合は、システム最適化演算ツールをあえて使用する必要はありません。


2.システム最適化演算ツールの設定


KFSCtr3-2-w.png

システム最適化演算ツールでは、登録したシステムの最適化演算を連続して行うことが出来ます。最適化演算は、テーブル演算(テーブル1/2/1+2演算)、数値演算(テーブル0演算)、時系列分析が可能です。
ツールはテンプレート方式になっており、基本的にはフォルダ名やファイル名以外は標準設定のまま使用できます。

フォルダ名欄には、最適化を行うシステムが格納されているフォルダ名を、フルパスで設定します。なお、フォルダ名の末尾には、必ず"\"を付けてください。

また、ファイル名欄には最適化を行うシステムのファイル名を設定します。標準設定のまま利用する場合には、ツールに記載されたファイル名の対応ロジックと同じロジックのシステムを設定してください。
もしも異なるロジックを設定する場合は、そのロジックに合わせて、パラメータの走査範囲やステップを変更する必要があります。それらの設定項目は、システムのオペレーションページから実行する最適化演算に準じます。

KFSCtr3-2-x.png

設定したシステムの最適化を行う場合はCK欄に"1"を、行わない場合は"0"を設定します。したがって、とりあえず全てのロジックのシステムファイルを設定しておき、それらの中から最適化対象を選択することが出来ます。
時系列分析を行う場合の設定はこれだけです。開始日や終了日は自動的に、株価データファイルの最大範囲が設定されます。

時系列分析以外の場合、開始日欄にはテスト開始日、終了日欄にはテスト終了日を設定します。これらは必ず、株価データが存在する日付を指定してください。
なお、開始日欄に"1"("1900/1/1")を設定すると、自動的に株価データファイルの最大範囲が設定されます。

最適化対象欄には、最適化対象指標のセル番地を設定します。セル番地は、最適化対象指標シートで確認出来ます。同シートのテスト対象欄(G7セル)に記載されたセル番地を変更すると、対応する性能指標欄が薄くグリーン表示されます。
最適化対象指標は標準ではH130セル(ドテン単利KFインデックス)となっていますが、時系列分析の際には参照されません。

KFSCtr3-2-y.png

テーブル欄には、最適化演算の種類を設定します。最適化演算の種類は、セルをクリックした際に表示されるリストから選択してください。
各演算の内容は、システム単独でオペレーションページから行う場合と同じです。

最適値欄には、"MAX"か"MIN"を設定します。最適化演算において、対象指標の最大値を選択する場合は"MAX"、最小値を選択する場合は"MIN"を設定します。
最小値の選択は、標準誤差など極限られた指標のみであり、通常は最大値を選択します。

共通項目におけるパラメータ1欄には、数値演算あるいは時系列分析におけるパラメータ1の走査範囲を設定します。開始欄はパラメータの走査開始値、終了欄はパラメータの走査終了値、ステップ欄は走査単位を設定します。ステップがマイナスの場合は、走査開始値>走査終了値となります。
なお、テーブル演算においては、走査範囲はロジック毎に自動設定されるため、この設定項目は反映されません。

共通項目におけるパラメータ2欄には、数値演算あるいは時系列分析におけるパラメータ2の走査範囲を設定します。開始欄はパラメータの走査開始値、終了欄はパラメータの走査終了値、ステップ欄は走査単位を設定します。ステップがマイナスの場合は、走査開始値>走査終了値となります。
なお、テーブル演算においては、走査範囲はロジック毎に自動設定されるため、この設定項目は反映されません。

KFSCtr3-2-z.png

テーブル0演算項目の絞り込み欄には、数値演算における絞り込み演算を有効にするかどうかを設定します。これは、テーブル演算におけるテーブル2演算に相当します。
有効にする場合は"ON"を、無効にする場合は"OFF"を設定します。

数値演算では、通常、ステップを想定する最小値に設定するため、絞り込み演算を行う必要はありません。ただし、多少精度が落ちても演算時間を短縮したい場合や、より細かなステップでパラメータを決定したい場合は、この設定を有効にしてください。

同項目におけるパラメータ1の範囲欄には、絞り込み演算を行う範囲を設定します。範囲の中心値は共通項目で数値演算を行った際の、最適パラメータ1の値となります。
また、ステップ欄には、走査単位を設定します。これは共通項目で設定したステップ値よりも、必ず小さい値を設定するようにしてください。範囲にステップを掛けた値が、絞り込み演算におけるパラメータ1の走査範囲となります。

同項目におけるパラメータ2の範囲欄には、絞り込み演算を行う範囲を設定します。範囲の中心値は共通項目で数値演算を行った際の、最適パラメータ2の値となります。
また、ステップ欄には、走査単位を設定します。これは共通項目で設定したステップ値よりも、必ず小さい値を設定するようにしてください。範囲にステップを掛けた値が、絞り込み演算におけるパラメータ2の走査範囲となります。

時系列演算項目におけるメインピーク演算欄は、必ず"ON"を設定するようにします。セカンドピーク演算欄は、演算時間を短縮する必要がある等の特段の理由がない限り、"ON"を設定してください。
セカンドピーク演算は、運用開始後にシステムの機能判定を行う上で、非常に重要な役割を果たしています。

システム欄には、最適化演算を行うシステムの運用方法を設定します。通常は、"ドテン"を選択してください。ただし、売り建てが出来ない銘柄や、売りや買いのみの運用を明確に示したい場合などは、その限りではありません。
KFシステムクリエイターにおいては、通常、ドテン運用における最適パラメータは、大抵の場合で買いや売り運用における最適パラメータと同一になります。したがって、最適化段階においてはシステム形態にこだわる必要はありません。

演算範囲欄には、セカンドピーク演算における除外範囲を設定します。メインピーク演算で求めた最適パラメータ値を中心として、除外範囲以内にあるパラメータは、セカンドピークから除外します。
演算範囲は、メインピークからのステップ数で設定します。詳細につきましては、「KFシステムクリエイター取扱説明書」の「6.最適化」の項目をご参照ください。

基準システムにおける色分けは、最適化演算に掛かるトータル時間がほぼ同程度になるグループです。そのため、例えば4並列実行とする場合は、それぞれのグループ毎に"1"を設定した4つの最適化実行ツールを作成し、それらを並列実行ツールに登録してやれば、効率的に最適化演算を行うことが可能となります。

なお、同一ロジックのシステムを複数、一度に最適化演算したい場合などは、最適化するシステムの行全体を最下行直下にコピーするか、システム最適化演算ツールを複数用意するかしてください。
その際、オリジナルのシステム最適化演算ツールの構成や書式が変更されないよう、必ずコピーを用いるようにしてください。

なお、システム最適化演算ツールを複数用意する場合は、それらを連続実行ツールなどに登録すれば、連続的に最適化演算を行うことができます。
並列実行を行う場合は、そのような連続実行ツールを複数用意し、それらを並列実行ツールに登録します。


3 システム最適化演算ツール の実行


システム最適化演算ツールを実行するには、全ての設定が完了した後、上部の「最適化」ボタンを押します。
すると、登録順にシステムが起動し、指定された最適化演算を実行します。

ただし、通常はシステム最適化演算ツールを並列実行ツールから呼び出して実行することになります。その場合は、システム最適化演算ツール上で操作を行う必要はありません。

登録した個々のシステムの演算が終了すると、そのシステムのチェック欄に ”済 ”と記載されます。
また、演算を実行しなかったシステムのチェック欄には”未”と記載されます。

最後に、全ての処理が完了すると、システム最適化演算ツール自体も保存されます。



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