2009年01月30日

更にMSSGA

MSST2のその後ですが、バックテストの結果2年ほどは調子がいいのですが、調子が悪くなると大きくドローダウンしてしまいました。
タネを明かせば、仕掛けは完全に時間制御にのみ頼っていて、INの時間を15分おきに24時間分、OUTの時間を15分おきに24時間分それぞれ売りと買いですべての組み合わせで売買を行い、成績のよいINOUT時間と売り買いの別をランキングしてデモトレードしていたのでした。これはある自動売買プログラム選手権の2位か、3位にランキングしていたシステムが履歴からその手法がバレてしまい、多くの人々に利益をもたらした件を再現するプログラムだったのです。
たぶん、筋の介入タイミングなんかがキャッチされると効果があるのだろうと想像つきますので、価格帯と時間帯で詳しく調べていけば今後も有効かもしれませんね。

さて、MSSGAの続報です。
まず、収益グラフから見て頂きましょうか。これです。

graf.jpg

はい、すごいですね。
もちろん、一番いいところを切り取ってますから過剰に期待してはいけませんが、一番瞞されたのはわたしです。
なにしろ、2006年のユーロドル10月1日からのバックテストで最初の5日間こういうことになってしまったからです。何のチューニングもしていない初っぱなで、いきなりです。

そりゃ、びっくりしますわ。

最初のころはこんな売買をしています。

c1.jpg

まぁ、ヘタというか、同値撤退が多いですね。
これはわたしが作ったシステムの特性ですが、最初にランダムに生成されたライフもある程度のライフポイントを持っていて、最初のうちは損失が少ないライフが上位にランキングされてしまうからです。同値撤退繰り返していれば確かに損失は少ないです。
やがて、必ず大なり小なりのドローダウンに見舞われ意味不明の売買を繰り返すライフが大量に死亡します。わたしはこの時期を大絶滅と呼んでいます。
そして、カンブリア期のように多彩なライフが現れては消え、徐々に収益曲線は上昇しはじめます。わたしはこの時期を生命爆発と呼んでいます。
これはユーロドルのいろんな時期で動かしてみてもいい生命が生まれる全長としてよく見られる現象なんです。

やがて、継続して利益を出すライフが順次台頭してきて、そして伝説のライフ69が誕生します。

69.jpg

チャートの上段に表示される文字表示はライフのライフポイントランキングです。一番左に69というライフが1455というライフポイントを稼いで一位に来ていますね。最初に与えられるライフポイントが500なのを差し引いても実に1000Pipsを稼いでいることになります。PFは2前後です。すごいですね。こんなのが偶然出てくるんですから。

2行目から3行目は、この時点で上位2つのライフの売買シグナルにしたがって実際の売買を行っているので、その2つのライフのゲノム(遺伝子)が表示されています。最初の数文字が決済指し値(テイクプロフィット)と損切り指し値(ロスカット)を決定する遺伝子で途中に−1がありますので、8Pipsくらいのプロフィットを取るようになってます。
次のGTが閾値で5つ目までの数値の合計がシグナルの閾値になります。5つ目までで2つ1があるので、ライフ69はシグナルの合計が3にならないと売りも買いもしません。次がレンジブレイクで1分足12本の高値安値をブレイクしたら−1なので逆張りです。
MAは移動平均で、やはり1分足12本の移動平均を超えたら買い、くぐったら売りのサインを出します。RSIは5分足24本のRSI値70と30に対して順張り、ADXでは1時間足に対して逆張り、そしてボリンジャーの1分足24本のDIに対して逆張り、同じく30分足に対して順張り・・・・

こんな組み合わせです。はっきり言って、なにがしたいんだかわかりませんが、そんな69の売買はこうなります。

c2.jpg

移動平均とレンジブレイクの逆張りでポジションを取り、決済指し値の6Pipsで決済しているようですね。そして、シグナルが消えるまでそれを繰り返すのでツボにはまるとこんなに見事な結果になるのです。

また、3列目のライフ325を見てみるとライフ69にそっくりなのがわかります。ライフ325はライフ69の子孫なんですね。
このように、優秀な売買手法を獲得した遺伝子は保存され、バリエーションを増やしていくわけです。

ユーロドルに限れば、長寿命となるライフのほとんどはスキャルピングで、しかも、トレンドに逆向きのリバ取り手法が多く見られます。

このライフ69もおよそ10日でその寿命を終え、やがてながく混迷の時代がやってきます。この時期の画像は退屈なのでのせませんが、収益曲線は緩やかに下る感じですが、ドローダウンはそれほど大きくありません。

だいたい、毎日このあたりに来るとテストも1日以上経過して、テスト中に書き直したコードの結果を見るためにあえて同じ条件で再びテストを繰り返しています。

とは言っても、例えばランキング上位に居たライフが売り買いを実際に指示するフラグを立てたままランキングが下がった場合にそれでも売買をシグナルするのかどうか、とか、一度死んだライフを生成するために何割をmama(上位)の遺伝子のコピーにするか、どの程度ランダムなノイズを入れるか、といったチューニングであって、売買結果を意図したチューニングは一切していません。

同時にアメリカサーバーはMSST2の残念な結果を受けて、今はMSSGAのフォワードテストに入っていますが、テスト3日目で現在は若干のドローダウン、ちょうどタンパク質のスープの中でランダムな触媒反応が起こっているような時期です。

MSSGAは決して安定した収益曲線を継続させるものではないかも知れませんが、その都度つどでおもしろい手法のパターンを見せてくれるのが見ていて飽きません。

100のシグナルの部分は誰でもチューニングできるようにカスタムインジケータの配列を使ったソースコードを公開して、ベースプログラムの遺伝的アルゴリズムのみをEAとして配布してみんなで結果を共有してみたらおもしろいかも知れません。

また、ブログネタとしてもリアルタイムのフォワードテストで生まれるライフの売買手法はその都度で発表していきたいと思います。

そろそろブログ村に登録すべきかも知れませんねー。

それでは。
posted by (;D)笑男 ◆LeBIz0ZWfs at 22:19| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/113419948

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。