fc2ブログ

毎月(週)/売買ロジックのパラメータチューニング(最適化)

いわゆる、バックテスト、シミュレーション、検証などと呼ばれているものです。ここでは、バックテストを反復的に繰り返し行い、利益が最大になるパラメータを求めるところまでを行います。

一般に「自動売買」というと、バックテストやパラメータチューニングは含まれません。しかし、手作業によるパラメータチューニングは、パラメータを少しずつ調整しながら、利益が大きくなるようにバックテストを繰り返すという気の遠くなるような作業です。この部分を自動化しない理由はありません。

ここでの手順は以下のようになります。
スポンサーリンク
  1. 人間が、売買ロジックの大枠だけを決める。
  2. PCが、用いて過去の株価データから利益を最大に出すことができるパラメータを探索する。最終的にある1つのパラメータが求まる。

ここで、求まったパラメータは、後で述べるザラ場での売買注文判断に用いるのです。

これだけだと、少し分かりにくいので、移動平均線のクロス戦略を例に説明します。
まず、1.短期移動平均線と長期移動平均線のゴールデンクロスで買い、デッドクロスで売り、という売買ロジックと、短期は5分から15分の間、長期は15分から30分の間、というようなパラメータの範囲を人間が決めます。次に、2.PCを用いて過去の株価データから利益を最大にするのは、短期/長期の移動平均を計算するパラメータを求めるのです。例えば、利益を最大にするのは、短期7分、長期25分、のように求まるわけです。この例では、パラメータの範囲は期間でしたが、RSIが80%以上、などという、比率のしきい値も範囲として考えられます。

さて、上で書いた自動化の範囲の裏を返せば、人間のやるべきこと、になります。人間のやるべきこととして、何が残るでしょうか。実はシステムができてしまえば、人間は、この「売買ロジック」の大枠と「パラメータの範囲」の決定だけやれば良いことになるのです。しかし、この利益が出せるロジックとパラメータを見つけることは、筆者の経験上、とても困難な作業になります。

というのも、決めたロジックとパラメータ範囲で、利益が出るパラメータの最適値が無い、ということもあり得るからです。手数料も考慮して、十分な取引回数があり、かつ、利益が出せる万能ロジックというのはそうは見つからないのです。この部分は、コンピュータにはできず、人間にしかできないアイデアと発想勝負の知的作業になるのです。
スポンサーリンク
<<毎月(週)/新規銘柄、廃止銘柄入れ替え | ホーム | 毎日/日足データ取得>>
コメント(0)
コメントの投稿
トラックバック(0)