ルールはあるのに手が追いつかないとき
アルゴリズム取引システム開発
お決めになった売買ルールをコードに移し、過去データで回して確かめられる環境までつくります
お渡しするのはルールどおりに動くソフトウェアです。収益ではありません。
ルールは決まっているのに、手作業で回している状態
売買ルールが決まっていても、人の手で回すと取引時間に縛られ、条件が合った瞬間を取りこぼし、同じ場面で毎回違う判断をしてしまいます。かといっていきなり実口座にコードをつなぐと、結果が悪かったときにルールが間違っていたのかコードが間違っていたのかを切り分けられません。ルールをコードに移す作業と、そのコードがルールどおりに動くかを確かめる環境は、揃っていて初めて意味を持ちます。
作業内容
-
ルールを条件式に
エントリー、手仕舞い、損切り、建玉配分、再エントリー禁止といった条件を、文章からコードが判定できる式へ移します。曖昧なまま残った条件は、書き下せるところまで質問で詰めます。
-
過去データで回す環境
同じコードを過去の期間に対して回せるようにします。手数料、スリッページ、約定の前提を何に置いたかも併せて書き残します。前提の書かれていない結果は読めないからです。
-
証券会社、取引所との接続
発注、約定、残高照会を実際の API でつなぎ、認証情報はコードの外で管理します。提供範囲や規約は取引先ごとに異なるため、つなぐ前に確認します。
-
まずデモ口座から
実口座につなぐ前に、同じコードをデモ環境で回します。ルールどおりに注文が出ているかは、お金が乗る前に見ておくほうが安全です。
-
止まるべきときに止まるように
接続が切れたとき、注文が拒否されたとき、同じ注文が二重に出そうになったとき、一日の損失上限に達したときに何をするかをコードに入れます。
-
何をなぜ発注したかの記録
どのシグナルでいつ何を発注し、どう約定したかをログに残します。あとでルールを見直すときに見るのはこの記録です。
お渡しする資料
戦略のルールを人が読める文章として整理し、検証を回した期間と前提、ログの読み方、起動と停止の手順を併せて記載します。成績の解釈と投資判断は、この資料の外側の話です。
進め方
-
ルールの整理
いまお使いのルールを文章で書いてお送りください。表計算やメモのままでも構いません。
-
条件式と範囲の合意
コードが判定できる形に移し、どこまでつくるか、どのくらいかかるかを先に決めます。
-
実装と検証環境
戦略コード、過去データで回す環境、接続をまとめてつくります。
-
デモ稼働と引き渡し
デモ環境で回して確認したうえで、リポジトリ、起動手順、資料をお渡しします。
こういう場合に向いています
- 表計算やメモにルールを書き、いまも手作業で回している方
- お使いのルールを過去の期間に当てて確かめてみたい方
- 証券会社の API ドキュメントを開いて、認証と発注で止まっているチーム
よくある質問
- 収益は出ますか
- 成績はお約束しません。お渡しするのは、お決めになったルールどおりに動くソフトウェアと、そのルールを過去データで確かめられる環境です。戦略が通用するかどうか、投資判断と損益はご依頼主のものです。
- 戦略もつくってもらえますか
- 戦略はご依頼主が決めるものです。こちらはそのルールをコードに移し、確かめられる形にします。ルールがまだ文章の段階でも構いません。コードが判定できる条件になるまで質問で詰めていきます。
- 投資助言や運用代行にあたりますか
- いいえ。行うのはソフトウェア開発だけです。銘柄や売買時期をお勧めすることはなく、口座を代わりに運用することもありません。口座と認証情報はご依頼主がお持ちのままです。
- どの市場に対応できますか
- 証券会社や取引所が発注 API を公開している市場であれば接続できます。ただし提供範囲や自動発注に関する規約は取引先ごとに異なるため、お使いの先をお知らせいただければ可能な範囲を先に確認します。
- ソースコードは誰のものになりますか
- ご依頼主のものです。リポジトリ、起動手順、資料までお渡しし、ほかの開発者が引き継げる状態にします。
- つくったあとの運用もお願いできますか
- この商品はつくってお渡しするところまでです。その後も継続して手が要るようであれば、保守代行として続けてお引き受けします。