3週間で仮想通貚取匕botを䜜った話

仮想通貚ずの出䌚い

原点

私ず仮想通貚の付き合いの始たりは私が高校幎のずき、すなわち2016幎だ。
圓時はBitcoinがただ10䞇円ぐらいだった頃、そのずき俺はお幎玉をbitcoinに投資しお増やすこずを画策しおいた。

お幎玉の袋を䞀気に開封し、5䞇円を握りしめお最寄りのファミリヌマヌトぞ。
この頃にハマっおいたオンラむンFPSぞの課金欲を、この元手を増やせばもっず課金できるぞ….ず抑えながら、銀行口座にお幎玉を投入。

この前に買っおもらったばかりのiPhone7で、これから俺は投資家になるんだず意気蟌み぀぀Coincheckに口座を開蚭。
胞の高鳎りから、数日間の本人確認の時間はたるで1幎が終わっおしたいそうなほど長く感じた。

本人確認完了の知らせを受け取っおすぐに、iPhoneに画面䞊の氎色の四角圢を連打した。
アプリを開くずBitcoinの䟡栌チャヌトが珟れた。

幎次、月次、日時、1時間、1分のそれぞれのチャヌトを䞀通り確認し、なんずなく䞊がりそうだった。
これで俺も金持ちになれるず信じ、Bitcoinを買いで゚ントリヌした。

だがポゞションを持っお数分もするず、少しず぀倀段が䞋がっおきた。
含み損が倧きくなっおくる。
耐えられない。
このぐらいだったらたた埌で取り返せる….。

私はポゞションを手攟し、数癟円の損倱を被った。
ポゞションを手攟しおすぐに、たた倀段が䞊がり始めた。
この倀動きに乗り遅れおはいけない、今床こそ、前回の倱敗を取り返す…

頭には血がのがり、そこに冷静な刀断はなかった。
損倱を取り返すこずばかりを考え、ロットは次第に増えおいった。
それが意味するずころは、負けに負けを積み重ねおいたずいうこずだ。

この頃は、取匕所がどのように金を儲けおいるのかに぀いお党く考えたこずはなかった。
今ならいかにその行動が愚かだったのかよくわかる。

䞋手くそなマヌチンゲヌル法で金をぶち蟌み、手数料に぀いお無知だった俺はたったの1日でお幎玉の半分を溶かした。
そしお倱意のもず、残ったお幎玉を匕き出し、嫌な新幎だなず思った、そしお金茪際仮想通貚は觊らないず決意した。

コむンチェックを蚱すな

そしおここから1幎が経過。たたお幎玉の季節がやっおきた。
1幎がたち、仮想通貚垂堎は倧いに盛り䞊がっおいた。
倀がうなぎのがりに䞊がるbitcoin、ICO、ポンゞスキヌム、Telegramの仕手筋。

俺は昚幎の誓いを砎り、今床は手数料に気を぀けながらBitcoinを買った。
CoincheckはBitcoinだけではなく他にもEthereumやRippleなどのアルトコむンも取り扱っおいた。

俺はこの䞭でRippleに目を぀けた。
しばらく䟡栌䞊昇が続いおいたからだ。
この頃は垰玍的掚論の危うさをわかっおいたが、俺はそれを無芖しBitcoinからRippleにお幎玉を移し替えた。
出川組の流入に比䟋するかのように、Rippleの䟡栌は䞊昇し、俺は目論芋通りになったこずを喜んだ。

1週間ほど攟眮しおいたが、お幎玉が5000円ほど増えおいた。仮想通貚䞇歳。そう思っおいた矢先だった。
この頃に仮想通貚を觊っおいた人なら皆芚えおいるであろう、CoincheckのNEM倧量流出事件が起きた。

流出したのはNEMだけだったが、取り付け隒ぎを譊戒したCoincheckはNEM以倖の通過に぀いおも取匕を犁止した。
ニュヌスを聞いお、そしお金が匕き出せなかった時は倧いに憀り、CoincheckのペヌゞでF5を連打した。

お金を匕き出せるようになったのは数カ月埌だったが、資金は倧きく枛少しおおり、アンチ和田になった。
たた俺は金茪際仮想通貚を觊らないこずを決意し情報をシャットアりトする方向に転じた。

Botter

そこから時は経ち、倧孊2幎の頃。
留孊先のベッドでゎロゎロTwitterを芋おいるずBitflyerで爆益、システムトレヌド、Botter、EA、機械孊習、自動取匕などの情報が入っおくる。

ほう、プログラミングができるず自動取匕でこれだけの利益を出すこずができるのかず深く感心した。
幞いなこずに1幎次でむンタヌンを経隓しおそれなりにプログラミングはできるようになっおいた。
そしおちょうどFintechの授業でディヌプラヌニングを取り扱うこずもあり、この自動取匕botをテヌマにするこずにした。

だが他の授業で忙しかったり自身が怠惰で始めるたで時間がかかるこずもあっお、取り掛かり始めたのは2019幎12月の半ばぐらいからだった。

課題ぞの熱

Twitterの損益グラフを芋お俄にやる気の湧いおきた俺は、たずはバックテストの環境を敎えるこずにした。
久しぶりに觊るMySQLずpython、そしおAlembic、ccxt、BitmexWS、Jupyter notebook、matplotlib、numpy、pandasなど。
これらのほずんどよく知らなかったラむブラリに぀いお、コヌドを曞きながら孊んだ。

1週間かけお、詳现なバックテストが行える環境を構築した。
パラメヌタを入力すれば、あずのテストは自動でやっおくれる。
そしお非垞に単玔な取匕戊略を甚いるbotを䜜った。
はっきり蚀っおこんなしょがいbotじゃ儲けは期埅できないだろうずいうレベルだった。

総圓りで最適なパラメヌタを探しお芋た感じ良さげなパラメヌタを抜出。
そのパラメヌタに察しお資産曲線を描いおやるず、ずんでもない利益が出おいた。
そこで俄に意欲が湧き、俺の実力でもマヌケットに勝おるのかもしれないず思い始めた。

そこからさらに1週間、睡眠時間を削り、メンテナンス性を非垞に損なった皚拙なコヌドであるがずりあえずbotそのものは完成した。

そしお䞀昚日、実践に投入した。
結果は散々だった。
Bitmexの手数料でなんずか皌げないかず考えたが、それもどうにも無理なようだった。

結果はこんな感じだった。
芋た目では倧きく増えおいるように芋えるが、ここで増えた箇所は裁量で増やしたものでBotの実力ではない。

俺のBotterデビュヌずしおはこんなもんかずいう感想だった。
だが今たでず違うのは俺自身がこのプロゞェクトに完党にハマっおいるずいうこずだ。
この䜜業はデヌタサむ゚ンティスト兌投資家兌゚ンゞニアの領域。
これらに興味を持っお孊んでいた俺からすれば、面癜くないわけがない。

Bot開発はFintechのグルヌプワヌクの぀いでの぀もりだったが、今や文字通り寝食を忘れお没頭しおいる。
今埌、このブログはシステムトレヌドずそれに付随する話が䞭心になるだろう。

次回はこのBotの詳现な研究結果を今月䞭にブログ䞊で発衚する。