KFシステムクリエイター取扱説明書(3)

記事
マネー・副業
2.システムの概要

(1)KFシステムクリエイターでできること 

KFシステムクリエイターでは、ボトムアップ型のトレーディングシステムを作成し、それに基づいた運用を行なうことができます。 
いくつかの基本的なロジックやフィルタを予め備えているため、運用対象とする株価データ(4本値)を用意すれば、どなたでも簡単な手順でシステムトレードを開始することができます(注)

また、ロジック定義やフィルタ定義を行なう領域は、システム内で明確に決められているため、その部分を書き換えることにより、オリジナルロジックや同フィルタを作成することが可能です。 
それらの作成は、エクセルのワークシートを直接書き換えることで行ない、その結果をボタン一つでロジックリストに登録して、後からいつでも呼び出すことができます。

システムに用いるデータは基本的には株価の4本値と出来高の計5種類であり、それらは付属のKFデータマネージャを用いることで取得・作成できます。 
ただし、オリジナルロジックの場合はその限りではなく、元となるデータを別途用意することで、例えば始値と終値、そして他の3つのファクター、といったようなマルチファクター構成にすることも可能です。もちろん、そのデータを有効に利用するためには、ロジックがそれらのファクターに対応している必要があります。

以降では、KFシステムクリエイターに標準的に備わっている機能について、ご説明いたします。それらは基本的にはオリジナルシステムにおいても当てはまりますが、ロジックの内容によっては、正しく機能しない場合もありますのでご注意ください。 

さて、システムに用いるデータの時間軸には、2通りあります。 

一つは、不連続な時間軸。例えば、株価の日足データなど、終値と翌始値とが異なる場合です。 
この場合、システムは終値以前のデータで売買判定を行ない、翌始値以降のデータで売買します。すなわち、終値から翌始値までの情報は参照しません。

もう一つは、連続した時間軸。例えば、株価の時間足データや為替データなど、基本的にはある時間における終値が翌始値に等しい場合です。 
この場合、システムの売買判定や実際の売買を行なうタイミングに、実質的な制約はありません。始値=直近終値ですから、始値と終値は完全に対等であり、どのようなタイミングでも判定や売買を行なうことができます。

不連続な時間軸においては、引け判定、翌寄付き売買が基本となりますが、連続した時間軸を用いれば、寄付き判定、引け売買も可能となります。 
これは、日足データに夜間足データを追加することで、達成できます。それを実現する機能は、KFデータマネージャで提供しています。

連続した時間軸を用いれば、事実上システムの時間軸に関する制約はほとんど無くすことができますが、それだけデータ数が増大するため、システムの処理時間もまた増大するという問題があります。 
また、時間軸の自由度とシステム性能とは必ずしも連動しないため、労多くして功少なしとなる可能性も多分にあります。

KFシステムクリエイターでは、時間軸の自由度増大の他にも、運用数の自由度を高めることが可能です。 

一般的なシステムにおいては、1株毎もしくは取引単位毎のトレードとなりますが、KFシステムクリエイターでは任意の実数単位毎のトレードが可能です。 
もちろん、実際の運用場面では取引単位の整数倍のトレードしかできないわけですが、運用時の設定により、建玉数を取引単位の整数倍に丸めると共に、その運用経過を確認することができます。

実数単位毎のトレードが可能になることで、システム運用に様々なバリエーションが生じます。例えば、0単位のトレードを設定することで、それはキャッシュポジションを採ることと同義になりますし、時間の経過と共に取引単位を増減させることで、うねり取りシステムの作成・運用が可能となります。 

従来、うねり取りトレードを実現するためには、非常に多くの運用資金を必要としましたが、建玉数を取引単位の整数倍に丸めることで、少ない運用資金で擬似的にうねり取りトレードを実践することができます。 

うねり取りシステムの作成は、最初からそのようなロジックを作成してもいいのですが、簡易的には複数の異なる同一銘柄システムを合成することで実現できます。 
システムの合成は、一度に最大3システムをセットアップ可能で、それらを更に階層化することで、事実上無制限の数のシステムを合成することができます。

システムの合成数が多いほど、うねりの推移は滑らかとなり、一般にリスクは低減しますが、そのトレードオフとして取引コストが増大します。 
システム合成はシステムポートフォリオとほぼ同義ですが、運用上は「買い増し」や「売り乗せ」などを行なう「うねり取りシステム」として機能します。

合成システムは基準となる複数のシステムの出力を参照することで実現していますが、単一の基準システムの出力を参照するシステムも作成可能です。 
それは「追加システム」として提供していますが、フィルタに近い役割を果たしています。

ただし、フィルタが一般にトレードを絞り込むためのものであるのに対し、追加システムは基準システムの出力を加工するためのものとなっています。 
また、追加システムは合成システム同様、無制限の階層化が可能ですが、一般に階層が深くなるほど過剰最適化の危険性が増大します。

更には、建玉数を反転させることで、最初のシステム(正システム)とは逆のシグナルを発する「逆システム」を作成することができます。 
標準システムにおいては、サマリーページから「正システム」か「逆システム」かを設定することにより、両システムを容易に使い分けることが可能です。

既存のシステムを反転させただけでは、一般にマイナスの収益しか得られませんが、反転後に改めて最適化を行なうことで、既存システムを上回る性能が得られる場合があります。 
一般に、既存システムが順張りシステムの場合は、その反転システムは逆張りに、既存システムが逆張りシステムの場合は、その反転システムは順張りになります。

ある1つのシステムから得られる「正」と「逆」の2つのシステムは、通常、大きな相関となることはありません。 
そのため、これらを合成したシステムは、元となるそれぞれのシステムよりも、累計損益のバラツキを小さくすることができます。すなわち、低リスク化が可能となるわけです。

もちろんそれだけでは、システムが長期に渡って機能し続けることを、保証できるわけではありませんが、単独システムと比べれば下方リスクが低減される分、より長期に渡った運用が可能になることが期待できます。 

なお、同一ロジックに拘らずに、様々なロジック間の相関を検証することで、より安定したシステムを合成することもできます。 
それを容易に実行するために、複数のシステム間の相関を求めるマクロを、KFシステムコントローラに同梱しています。

KFシステムコントローラは、KFシステムクリエイターを効率的に扱うためのマクロ群で、株価データやシステムの更新を連続実行したり、セットアップや最適化などの作業を連続して行なったりすることができます。 
また、システム開発に役立つ様々なユーティリティを提供しています。

これらのブック(ワークシート)やマクロは、完全にオープンとなっていますので、ご利用者自身で内容を確認したり、改造したりすることが可能です。 
また、これらに使われている様々なTipsを、いろいろな場面で活用することができるでしょう。


(注)KFシステムクリエイターの実行には、32bit版Microsoft Excel(2003以降)および、それが軽快に動作するパソコン環境が必要となります。 
Excel本体はKFシステムクリエイターには同梱されていませんので、ご利用者が別途ご用意する必要があります。


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