(楽天証券の口座で取引する前提で)デイトレ自動売買を実現するには、Windows / Excel 上で マーケットスピード II RSS(以下、単に RSS と呼びます)を利用することがまずは確実な方法だと考え、Windows / Excel / VBA を使って自動売買のためのマクロを作ってリアルタイムの取引シミュレーションを始めており、Python で検証をしています。
プログラムで売買判断をさせるメインの手法は、ティックデータに適用できるようにした Parabolic SAR です。
AF パラメータの依存性調査
目的
Parabolic SAR で単純なドテン売買をしたときの収益と AF パラメータの関係をある程度網羅的に調べて、使えそうなパラメータの値を探索します。
銘柄毎、異なる日の取引(値動き)でどのように違うか、あるいは共通しているところがあるかを、ある程度系統的、継続的に調査します。
また、取引アルゴリズムを最適化するために、今後追加する機能の効果を評価できるように、ここで実施したシミュレーション結果をベースライン・データとして利用する。
実験水準
条件 1
AF は初期値、ステップ、最大値を設定しますが、そのうちステップを(対数スケールで比較することを前提にして)20 水準設定しています。一方、初期値は 0 に固定、最大値はステップの 10 倍になるように設定しています。
# | af_init | af_step | af_max |
---|---|---|---|
1 | 0.0 | 0.000010 | 0.000100 |
2 | 0.0 | 0.000020 | 0.000200 |
3 | 0.0 | 0.000030 | 0.000300 |
4 | 0.0 | 0.000050 | 0.000500 |
5 | 0.0 | 0.000075 | 0.000750 |
6 | 0.0 | 0.000100 | 0.001000 |
7 | 0.0 | 0.000200 | 0.002000 |
8 | 0.0 | 0.000300 | 0.003000 |
9 | 0.0 | 0.000500 | 0.005000 |
10 | 0.0 | 0.000750 | 0.007500 |
11 | 0.0 | 0.001000 | 0.010000 |
12 | 0.0 | 0.002000 | 0.020000 |
13 | 0.0 | 0.003000 | 0.030000 |
14 | 0.0 | 0.005000 | 0.050000 |
15 | 0.0 | 0.007500 | 0.075000 |
16 | 0.0 | 0.010000 | 0.100000 |
17 | 0.0 | 0.020000 | 0.200000 |
18 | 0.0 | 0.030000 | 0.300000 |
19 | 0.0 | 0.050000 | 0.500000 |
20 | 0.0 | 0.075000 | 0.750000 |
条件 2
AF は初期値、ステップ、最大値を設定しますが、そのうちステップを(対数スケールで比較することを前提にして)20 水準設定しています。一方、初期値は 0 に固定、最大値はステップの 100 倍になるように設定しています。
# | af_init | af_step | af_max |
---|---|---|---|
1 | 0.0 | 0.000010 | 0.001000 |
2 | 0.0 | 0.000020 | 0.002000 |
3 | 0.0 | 0.000030 | 0.003000 |
4 | 0.0 | 0.000050 | 0.005000 |
5 | 0.0 | 0.000075 | 0.007500 |
6 | 0.0 | 0.000100 | 0.010000 |
7 | 0.0 | 0.000200 | 0.020000 |
8 | 0.0 | 0.000300 | 0.030000 |
9 | 0.0 | 0.000500 | 0.050000 |
10 | 0.0 | 0.000750 | 0.075000 |
11 | 0.0 | 0.001000 | 0.100000 |
12 | 0.0 | 0.002000 | 0.200000 |
13 | 0.0 | 0.003000 | 0.300000 |
14 | 0.0 | 0.005000 | 0.500000 |
15 | 0.0 | 0.007500 | 0.750000 |
16 | 0.0 | 0.010000 | 1.000000 |
17 | 0.0 | 0.020000 | 2.000000 |
18 | 0.0 | 0.030000 | 0.300000 |
19 | 0.0 | 0.050000 | 5.000000 |
20 | 0.0 | 0.075000 | 7.500000 |
評価特性
評価する特性は、前場、後場の全取引時間においてシミュレーションを実施した合計損益です。
評価特性 | 説明 |
---|---|
合計損益(円) | 前場に寄ってから大引けまで、一秒間隔で取得した現在株価に Parabolic SAR を適用して算出されたトレンドに対して、シミュレータで単純なドテン売買をしたときの損益合計。 |
検証銘柄
検証する銘柄は下記の 3 つです。
コード | 銘柄 | 売買単位(株) | 呼値(円) |
---|---|---|---|
7011 | 三菱重工業 | 100 | 0.5 |
7203 | トヨタ自動車 | 100 | 0.5 |
8306 | 三菱UFJフィナンシャルG | 100 | 0.5 |
シミュレーション結果
シミュレーション結果を日付ごとにまとめています(随時追加)。全銘柄共に収益がプラスになっている部分を薄い青色で塗りつぶしています。
まとめ
Parabolic SAR で単純なドテン売買をしたときの収益と AF パラメータの関係調査については、データが多ければ多いほど良いのですが 4 週分ぐらいのデータを収集できたので、ひとまずここでまとめます。ここまでの AF パラメータ毎の総収益 TOTAL で見当をつけて、アルゴリズムを改良する次のステップに進みます。
基本、総収益重視で良いと考えていますが、もしもある日の特定の値動きに対して、極めて効果的に Parabolic SAR を適用できて突出した高利益をあげられて、それが結果を左右してはいないかをチェックするため、AF パラメータ毎の日毎の収益のボックスプロットも作成しました。この場合、横軸は Log スケールではなく、順番に並べただけです。
当面、リアルタイムの Parabolic SAR で使えそうな AF(ステップ)は、10-5 ~ 10-4 程度、AF(最大値)は AF(ステップ)の 100 倍とすることにしました。
次のステップでは、「単純なドテン売買」を止めて、「PSAR トレンド反転で建玉を返済、その後でエントリ条件を満すまで次の建玉の取得を待つ」というようなアルゴリズムについて取り組む予定です。
0 件のコメント:
コメントを投稿