フィルター

G設定メニューの『フィルター』を選択します。




フィルター画面は、概略4つのブロックで構成されています。

フィルター画面の4つのブロック


@銘柄リスト Aフィルター実行結果/ライブラリリスト  Bフィルター構成 Cフィルター要素

@銘柄リスト

銘柄コードと銘柄名称のリストを表示します。上側の『検索/限定』の操作やマウス右釦メニューは、基本操作の説明の A銘柄リストと同じです。

Aフィルター実行結果/ライブラリリスト

Aの領域の上にある『買い条件で抽出』や、『バックテスト(3年)』の釦を押して フィルター抽出やバックテストを行うと、 その結果を Aの領域に表示します。
『Bフィルター構成』は、『Cフィルター要素』に対して売買の動作との組み合わせたフィルターを、ANDとORで組み合わせたものです。
『買い条件で抽出』は、銘柄リストの銘柄に対して、上にある『基準日』にフィルター構成の中の買い条件に適合する銘柄を抽出して、 Aの領域に表示します。


買い条件で抽出の例をご覧ください。

また、その領域の下にある『ライブラリ』の釦を押すと、フィルター構成のリストを表示して、 そこから呼び出すことができるようにします。


フィルター構成をライブラリ登録をご覧ください。

Bフィルター構成

Cのフィルター要素に対して、購入/売却/難平購入/難平売却/買い増し/買い増しの売却 という売買の動作との組み合わせの 構成を作成します。以下に、Stocks.exeでの売買動作の制約を示します。

購入/売却

空売りは対象としていません。其の為、保有株数が0の時は『買い』の動作しかできません。『売り』は、保有株総てを売却する 動作です。

難平購入/難平売却/買い増し/買い増しの売却

株の取得価格よりも市場株価が下がったときに、平均取得単価を下げるために買増す動作(難平:なんぴん)と、市場価格が 上昇して、更なる利益を求めて買増す動作とその買い増し分を処分する動作です。持株が無いときには この動作は行われません。
フィルター画面上にある『売買条件』の釦で 買い増し数量や回数を設定します。


買い条件で抽出の例をご覧ください。

Cフィルター要素

購入/売却/難平購入/難平売却/買い増し/買い増しの売却 という売買の動作と組み合わせて、フィルター構成を作成します。
フィルター要素をマウスで選択して右釦メニューを押すと、『買い条件設定』と『売り条件設定』の2つのメニューが現れます。


購入/難平購入/買い増し を設定する場合は『買い条件設定』、売却/難平売却/買い増しの売却 を設定する場合は、『売り条件設定』 を選択してください。

買い条件で抽出の例

フィルター構成の作成

Cフィルター要素の一番上にある、『売買金額 ±(+:以上 −:以下)』を選択し、マウス右釦メニュー『買い条件設定』を選択すると、 フィルター要素の各種条件設定のダイアログが表示されます。




左上の『買い』と表示されているプルダウンメニューで、売買条件の変更ができます。 その下のANDとORのラジオボタンは、複数のフィルター要素を組み合わせる時の条件です。 『期間』、『値』については、ダイアログ下側に表示されている説明をご覧ください。

上図の例では、『基準日から3日前までの間の売買金額の平均値が 50億円以上の時、買い』というフィルターになります。
右上の『登録』釦を押すと、『Bフィルター構成』の領域に表示されます。


『買い条件で抽出』を実行

フィルターの構成によっては 条件判定に時間が掛かることがあるので、『@銘柄リスト』に4000件以上の現行銘柄が 表示されている状態で『買い条件で抽出』釦を押すと、次のような警告ダイアログが表示されます。


今回のフィルター構成は単純なのでそれほど時間がかからないはずで、『OK』を押して買い条件での抽出を行うと、 30秒ほどで結果が表示されます。


抽出されたリスト銘柄をグループ登録

抽出結果を活用する例として、抽出されたリスト銘柄をグループに登録して、いつでも利用できるようにしてみます。

Aフィルター実行結果の領域で、マウス右釦メニューを表示すると、『←リスト銘柄を母集団に設定』と、 『リスト銘柄をグループに登録』の2つが利用できます。先頭の2つのメニュー(『株価グラフ』と『バックテスト』)は、 銘柄を選択してからマウス右釦メニューを表示させると、利用できる状態になります。


『←リスト銘柄を母集団に設定』は、@銘柄リストを一旦消去して、そこに 抽出結果のリストをコピーします。
これは、抽出された銘柄を母集団として、次の抽出を行ってみたい用途の為に用意しました。
何度も利用したい場合には、抽出結果のリストをグループに登録してしまえばいいので、そのために『リスト銘柄をグループに登録』 というメニューを用意しています。

『リスト銘柄をグループに登録』を選択すると、グループ設定画面が開き、右側の『銘柄リスト』に、買い条件で抽出した結果の 銘柄リストが表示されています。


左上の『追加』釦を押して新たなグループ登録の状態にし、名称とその下のコメント欄に任意の文言を記入して、 銘柄リストの領域のマウス右釦メニュー『←(全銘柄)』を押して、買い条件で抽出した結果の銘柄リスト総てを メンバー銘柄に コピーします。


『Save』釦を押して、この画面を終了。

左上の『検索/限定』右の入力欄のマウス右釦メニューから、『グループ>test』を選択すると、上記で登録した銘柄リストが 表示されます。




買い条件を追加

同様に、右側のフィルター要素のなかの上から2番目『単元終値±(+:以上 −:以下)』を『買い条件設定』で追加してみます。


値の欄に、『30』と入力されているので、『-30』に変更して、『登録』釦を押します。


これは、『基準日の終値x単元数(最小購入価格)が30万円以下なら購入』という条件になります。

再び『買い条件で抽出』釦を押すと、56件が抽出されました。


フィルター構成をライブラリ登録

『Bフィルター構成』の上の『id=』の右側に2つの入力欄があります。左側がライブラリ登録の名称、右側がコメントです。
そこに文字を記入して『Save』釦を押すと ライブラリ登録されます。


この時、Aの領域は、ライブラリリストとして使われています。『買い条件で抽出』釦や、後述の『バックテスト』釦を押した ときは、フィルター実行結果を表示しますが、フィルター構成をSaveしたときや、『ライブラリ』釦を押した時は、 ライブラリリストを表示します。

バックテストの例

新たなフィルター構成の作成

『Clear』釦を押して、Bフィルター構成をクリアーし、Cフィルター要素の『MACD』の下の『ゴールデンクロス Macd±Signal』 を選択して マウス右釦メニュー『買い条件設定』を選択。下図のようなダイアログが表示されます。


これは、『MACDが基準日の2日前からの間に、Signalを下から上へ突き抜けて、(MACD-Signal)が終値の0.1%以上になると買い』という 条件です。『登録』釦を押し、更に今のフィルター要素の3つ下の、『ΔMacd』を選択して、マウス右釦メニュー『買い条件設定』を 選択。


これは、基準日の3日前からのMacdの変化が終値の+0.1%以上になると買い』という条件です。『登録』釦を押します。

つぎに、売り条件を設定します。今の『ΔMacd』のすぐ上の『Macd∪|∩(+:∪,−:∩)』を選択して、 マウス右釦メニュー『売り条件設定』を選択。


これは、『MACDが基準日の5日前から基準日までの間に、上昇→下降に転じて、ピークと基準日のMACDの変化が終値に対して-0.1%以上 になると売り』という条件です。『登録』釦を押すと、次のような警告が表示されます。


先ほどのフィルター要素登録の際、登録画面の『先行条件』の欄に記載されているフィルターが、2番目のフィルターなので、 そのフィルターにORの売り条件を設定しても条件がTrueになることは無い為、1番目のフィルターに対してORの売り条件を設定するように 変更するという警告文です。そのまま『OK』釦を押して、先へ進めます。


フィルター構成のid(名称)とコメントを記入して、ライブラリ登録(『Save』釦を押す)します。


バックテスト

銘柄リストをGroup>test に設定して、『バックテスト(3年)』を押してみます。母集団の数が100以上なので 警告文が出ますが、 そのまま『OK』釦を押します。すると、下図の様な画面が現れます。


これは、銘柄リストの118銘柄に対して過去3年間のバックテストを行った結果のまとめの画面です。

右上の表は、対象銘柄全体での売買回数、確定損益(最終日での売却済み金額−購入金額)、 保有株数(最終日に未売却で保有している株数)、評価損益(確定損益+最終日の保有株の含み損益)を表示しています。
赤いラインのグラフは、『確定損益』の推移です。

この画面を閉じて、フィルター画面に戻ると、『Aフィルター実行結果』の欄に、銘柄毎の結果が表示されています。


『Aフィルター実行結果』の欄の『損益』列は、確定損益のことです。その右側の( )内の数字は、評価損益の値です。

『@銘柄リスト』または、『Aフィルター実行結果』の銘柄を選択して、マウス右釦メニューから『バックテスト』を選択 すると、その銘柄のバックテスト結果をグラフ表示します。下の例は、先頭の 1001 日経225のバックテストを行ったところです。


右上の表は、先ほどのバックテストのまとめの画面と同じです。グラフには、確定損益(売却済み金額−購入金額)を表示しています。

売買条件

画面上の『売買条件』の釦を押すと、以下の様な画面が現れます。


フィルターの条件成立を確認できるのは取引終了時点なので、例えば買い条件が成立した時点で株を買おうとしても、 できません。取引終了間際に確認して、終値で取引するのがやっとです。通常なら、翌日の始値で取引しますが、翌日の始値で暴落して 急騰していたら、予算オーバーとなる為、前日終値の指値買い注文ということになるかと思います。そのような訳で、買い条件には 3つの選択肢を用意しました。売り条件も同様です。
難平・買増しについては、難平購入/難平売却/買い増し/買い増しの売却をご覧ください。

どのくらい変わるか? 試しに 買い・売り共に、『前日終値の指値』に変更してみると、




1001 日経225のバックテストでは、評価損益が 430→1851 に増大しました。 118銘柄全体でも、1,447,511→2,056,073と増大しました。


『難平買い』を設定して試してみると、

  1. 難平買いのフィルター要素『損益が-5%以下になったとき』を追加

  2. 買いと同じフィルター要素(MACDのゴールデンクロスとMACDの変化)を難平買いのフィルター要素に追加

  3. 難平売りのフィルター要素『損益が+1%以上になったとき』を追加

  4. 売りのフィルター要素『損益が+1%以上になったとき』を追加

  5. 難平買いの売買条件を設定



1001 日経225のバックテストでは、評価損益が 430→1851→4,329 に増大しました。 118銘柄全体でも、1,447,511→2,056,073→17,475,141と増大しました。


トレース

『難平買い』の例で作成した 1001 日経225のバックテストグラフの 『買い条件』や『難平買い』条件が発生する状況をトレースしてみます。

1001 日経225のバックテストグラフで、見たい場所をマウス右釦クリックしてラバーバンドによって 領域設定します。
まずは、2月〜3月の『買い』が行われた部分を見てみます。




確定損益が落ちる2/21付近をマウス左釦でクリックすると、画面下側のデータ一覧表で、クリックした日付のデータにカーソルが移り、 グラフ上部に、の印が表示されます。


この時、画面下側のデータ一覧表の上の2つの表の右側の表には、フィルター要素を上から順に評価した結果が表示されます。

左側には フィルター要素を表示しているので、それと見比べながら確認していくと、

もう一つ、1月に難平買い〜2月難平売り が行われた部分も見てみます。




右側のフィルター要素評価結果の表を見ると、先頭の『買い T(6,1)…』と5番目の『難平買い T(6,1)…』は、フィルター条件として 同じなので、どちらもTrueとなっています。難平買いのフィルター要素(左側の表)5番目の『損益』が、 フィルター要素評価結果(右側の表)では4番目に示されているのは、フィルター要素の4番目の『売り 損益』が3番目の売り要素がFalseだった 為に評価されていないので、評価結果としては4番目となっている点にご注意ください。

1/9に難平買いの条件が成立し、更に翌日の始値が、1/9の終値よりも安いので、難平買いが行われました。

次に難平売りの部分を見てみます。


2/25に、損益が+2%となって条件が成立し、その翌営業日の日中の株価が 2/25の終値よりも高いタイミングがあるので、売却が 成立しています。