自動売買、やってみたかったんです
投資って、結局「いつ買うか・いつ売るか」が一番むずかしい。
インデックス投資なら積立で放置できるけど、仮想通貨とか個別株みたいな“波が激しいやつ”って、感情が邪魔してくるんですよね。
「下がってる…損切りするべき?」「いや反発くるかも…?」
そうやって迷ってるうちに、結局なにもできずに終わるパターン、あるあるすぎて。笑
目指すのは「パン焼いてる間に勝手に稼いでるBOT」
もともとPythonが好きで、自動化も好きで、「この手動トレードの迷い、コードにやらせたらよくない?」と思って始めたのがきっかけ。
目標はシンプル:
完全放置で、淡々と指標見て、いい感じに売買してくれるBOT。
私はパンをこねて、赤ちゃんと昼寝してる間に、勝手に働いてくれるやつです。
まだ利益は出てません(でも作ってるとワクワクする)
先に言います。サムネが煽りに煽っていますが、
まだ一円も儲かってません。
(売買の条件が無駄に高いせいで石橋叩き続けてるだけになってる)
でも、いいんです。楽しいから。
TA-Libに何度も裏切られても、APIの仕様にブチギレそうになっても、作ってると「未来きた」って感じするんです。ほんとに。
自作BOTの全体像、図にしてみた
というわけで、今作ってる自動売買システムの全体像を、Notion+Mermaidで図にしてみました。
クリックしたくなる図がこちら:

モジュールの役割はこんな感じです
以下のファイルたちが、それぞれいい仕事してくれてます。
モジュール | やってること |
---|---|
get_indicators.py | RSIやMACDなどの指標を計算してDBに保存 |
detect_market_type.py | トレンド相場かレンジ相場かを判定 |
signal_checker.py | シグナル(買い・売り)を判断 |
trade_executor.py | Bitflyerに注文出して記録/通知 |
monitor_watchdog.py | スクリプトが止まってないか見張るやつ |
check_commands.py | TelegramからBOTのON/OFF切り替え |
その他 | ログ管理、パフォーマンス記録、バックテスト etc… |
こうやって見ると、めっちゃ作り込んでて自分でもビビる。
ただの趣味のはずだったのに、いつのまにか“システム”になってきた感ある。
次回予告:価格データの取得と指標計算の中身!
次の記事では、いちばん最初の入口であるget_indicators.py
の中身について書いていきます!
BitflyerのAPIからデータ取って、RSIとかMACDとか計算して、PostgreSQLに保存してる…って言うと簡単そうだけど、地味に詰まったとこも多かったので、その辺もゆるく書いていきます。
まとめ:利益はまだだけど、楽しんで作ってます
自動売買って聞くと「何にもしてないのに儲かるの?ズルい!」みたいに思われそうだけど、実際やってみると、半分趣味で、半分修行みたいな世界です!
でも、ちゃんと動いたときの感動はすごいし、技術も知識も増えるし、何より未来っぽくてテンション上がる。
ということで、続編もお楽しみに!
コメント