OR条件の活用法
今日も色々とバックテストしましたが、あまりいい感じにはなりませんでしたので、ストラテジーの作り方の一部をご紹介しようと思います。
私はストラテジーを作るとき、OR条件を多用します。それは、シグナルを多く残し、とてもひどいものだけ除外することができるからです。具体例を挙げて説明しましょう。皆さんも一緒に考えてください。
まず、前提条件を決めておきます。日経225銘柄を対象、100円以下の株価は除く、15日間に売買代金が1億円以下の日があるものは除く、手仕舞い条件は無条件に2日経過した翌日の始値で成り売り売却です。ここで問題です。新規建て条件で次の?〜?の4種類作りました。1番期待値が低いものはどれでしょう。ただし、どれも翌日始値で成り買いです。また検証期間は2000年から現在までです。
? 終値がstop安ではない。
25日移動平均乖離率が−10以下
出来高上昇率が0以下
高値0日前が高値1日前以下
安値0日前が安値1日前以下
? 終値がstop安ではない。
25日移動平均乖離率が−10以下
出来高上昇率が0以下
高値0日前が高値1日前以上
安値0日前が安値1日前以上
? 終値がstop安ではない。
25日移動平均乖離率が−10以下
出来高上昇率が0以下
高値0日前が高値1日前以下
安値0日前が安値1日前以上
? 終値がstop安ではない。
25日移動平均乖離率が−10以下
出来高上昇率が0以下
高値0日前が高値1日前以上
安値0日前が安値1日前以下
どれも下の2つの条件だけが違います。皆さん予想しましたか。それでは結果を発表いたします。
?0.78% ?−0.06% ?0.53% ?0.40% ということで正解は?となります。高値も安値も切り上げているものが、1番期待できません。
一般にストラテジーを作るとき、期待値がいいものをとっていきますね。この場合だと?ですね。そしてまた条件を追加して良くしていきます。しかし、?と?を捨てるのはもったいなくないですか。私の場合、そうではなくて、1つだけとても悪いものを省いていきます。この場合ですと、?を省くことになります。どのようにして省くかといいますと、?の条件の反対をORで結べばいいだけです。
高値0日前が高値1日前より小さい OR 安値0日前が安値1日前より小さい、
こうすれば?だけ省いて、?、?、?はシグナルとして残ります。こうすることで、とってもひどいものだけを除外し、シグナルを数多く残すことができます。注意する点は、1つだけがとっても悪いものを探すのが非常に大変だということです。たいていの場合、4つとも似通っていたりすることが多いです。ですから根気が必要です。根気がないといいストラテジーは作れません。また逆に1つだけがとってもいい場合は、そのままAND条件で利用すればいいです。
私も「一日一買」を作るのに苦労しました。色々なストラテジーを作っていく過程でできあがったものです。ですから、いいストラテジーができなくて困っている人もあきらめずに、頑張ってください。
前々記事:色々とお知らせです。
前の記事:newバージョン完成しました。
今の記事:OR条件の活用法
次の記事:OR条件の威力
次々記事:ユーザー定義の説明不足につきまして。