ビットフライヤーAPI自動取引・健闘中メモ!

これまでの経緯

今年2月初旬くらいから本格的にAPIをいじり始めた。

言語はサンプルコードが豊富なrubyを選定。PHPも捨てがたいが、あまりこの世界では使わないみたい。
ビデオ教材で軽く入門。感触は意外と簡単。

まずは取引なしでシミュレーション・プログラムを作成。

ちなみに開発環境はAWS Cloud9
これで行こうと思ったが、一日中回すと請求が怖いので、実行環境はさくらVPSを使う事にした。

シミュレーションではMACDを指標に使い、発注を繰り返し累計でどの程度の利幅が期待できるかを計算してみた。
結果はまずまずという所。

ここで落とし穴パート1

あとは買い注文、売り注文を仕込めば出来上がり!と思っていたが甘かった。

注文と言ってもあくまでもトレードだ。注文が取れるかどうかは相手次第。そしていつ取れるかどうかも分からない。

そこで
・買い待ち
・オーダー(成約待ち)
・売り待ち
・オーダー(成約待ち)
・買い待ち
のステータス管理をしてグルグル回るようにした。

一定期間で成約しなかった場合のキャンセル処理も入れた。
さらに売り逃した場合、価格が2%下がったら損切りをするようにした。

とまあ書くと簡単だが、デバッグが大変。何しろ動かしてから30分してからエラーが出たりするし、実際のループに入る前のデータ収集期間もあるので作業が進まない。

また、この頃はlinuxのバックグラウンド実行さえ知らず、cronを使わなきゃいかんのだろうか?いやー毎回プログラムが初期化されるとパラメータとか大変だなとか思ったり。
答えはnohupだった。

これで自分のプログラムは昼夜問わず頑張ってくれると思ったらなかなかそうは行かない。単純なプログラムなのにどこかでコケる・・・

ruby自体初心者なので、型エラーが良く出る。APIから帰ってきたデータは要注意だ。

今恐れているのは、暴落防止の損切り機能、これが何回も発動されたら2%ずつ資産が減っていく・・・要するにMACDクロスの騙しにあった場合。騙しはかならずあるので、2勝1敗くらいで美しいカーブを取れれば損はしないはずだが。

(つづく)

bitFlyer ビットコインを始めるなら安心・安全な取引所で

コメント

タイトルとURLをコピーしました