株のシステムトレードソフトProtraの勉強会をしてみたいっ!
さて5月のお題「こんな勉強会に参加してみたい」「勉強会妄想」の第2弾、もう6月だけど。遅れた理由はあとがきにて詳しく。
■Do you know 'Protra'?
Protraというシステムトレードソフトをご存知だろうか?独自のプログラミング言語を使用して株のトレーディングシステムを構築できる。GNU GPLv3ライセンスで配布している。URLはこちら。
■システムトレードとは?
詳しくは、ググるなり、Wikipediaなりで調べてほしい。簡単に言うと、決められたルールに従って、淡々と株などをトレード(=売買)する手法。感情に左右されないように。ルールは何でも良い。極論「晴れたら買う、雨が降ったら売る」でもOK。儲かりさえすれば。
■土曜のProtra
本題であるProtraの説明に入ろう。ダウンロードしてインストール……から始めると長くなるし本題から外れていくので、簡潔に済ませる。いきなり本体入れて失敗してもコンポーネントがないと怒られるだけだから大丈夫、失敗を恐れず書いてある通りに。これが画面。
上の図がチャートを表示するソフト本体。下の図がPtSimというトレーディングシステムを構築するためのソフト。PtSimで売買ルールを書いたプログラムを実行し、シミュレーション。右側には売買履歴や、その売買ルールでのトレード結果をテキストやグラフで表示できる。こんな感じ。
このグラフがy=ax(aは定数)に近づけば近づくほど安定して右肩上がりということで良い。企業も売り上げが上がったり下がったりするよりは安定して増えている方が良い。それと同じ。あとは期待値(一回のトレードあたりの利益)とプロフィットファクター(利益÷損失)あたりを押さえておく。基本土曜の作業、プログラミングには時間がかかるし、シミュレーションにはもっと時間がかかるから。
独自のProtra言語の説明をしたいところが、本題と関係ないので割愛。ただ、イコールは==と表記するのでC言語的と言える。
if Year() == 2011
return
end
また履歴はテキストファイルに落とせるので、整形してエクセルのピボットテーブルにかけることも出来る。
データ形式も今のところMDB形式なので、いじればいろいろ出来そう。あんまりしたことないけど。
■Protra勉強会での評価軸を考えてみる
前振りが長くなったが勉強会。売買ルールと利益を参加者が順に発表していくわけだが普通のシステムトレードの勉強会では当然のごとく利益が多い方がよい。
ちょっとここでブレーク。エンジニアたるもの、普段人月や人日単価XX円でお金(自分の額の)の話をしていることに辟易していると思う。なので普段の会話でお金の話は極力避けたい。しかしこれが単位:円でなくゴールドなど架空の単位だと何となく大丈夫だったりする。なので以降は「ペリカ」を使うことにする。
さてと、話を戻す。普通のトレード勉強会では儲けたペリカが多いほうがよい。売買ルールは二の次。図示すると下図のようになる。
プログラミングが出来るProtraではこの評価軸にコードの美しさという評価尺度が入る。図示するとこの通り。
ペリカの多さは関係なく、つまりまったく儲かってなくてもコードさえよければ評価されるそんな勉強会(となるだろう)。そこは組込み関数使えとか、nullになっちゃうよとか、一見何の勉強会かわからないような。
でも2時間過ぎたあたり(またそれかよ!)から、ライブドアショックの時や、リーマンショックの時の失ったペリカの多さを競い始めるんだろうと……。
このソフト、MLも閑散としているし、周りに使っている人がなかなかいないので寂しい思いをしています。なので他の方がコーディングを含めて、どんな使い方をしているかが気になりこんな勉強会を妄想しています。
こんにちは、けいいちっくです。今回ですが、前回の「敗軍の兵~」コラムより先にこっちを書こうと思ったのですが、構想段階でPCが壊れてしまい、さすがにIS01では書けず、やっとPCが修理から返ってきた今になってしまいました。わからない方にはまったく何のことやら? という内容かもしれませんが、文字数の関係もあって説明を大幅に割愛してみました。雰囲気だけでもつかんでいただければ幸いです。