半自動仮想通貨機械学習BOTフレームワーク🦌Rudolph
はじめに
さんとなです🎅本noteでは機械学習(ML)BOTを半自動で作成及び評価できるフレームワークを提供します。本フレームワークはできる限り誰でも利用できるようにGoogle Colaboratoryを中心に構成されています。BOT開発にかかわる煩雑かつ冗長なワークフローを省力化し、アルファの探索を効率化します。
システム要件
・Googleアカウントを所有していること
・インターネット環境があること
・ブラウザ(Chrome推奨)をインストールしていること
対象
以下に当てはまる人には本noteを推奨します。
・機械学習BOT作ってみたいけど、何から始めたらいいかわからない
・機会学習で自動取引してみたい
・VPSとかAWSとかGCPとかよくわからない
・課金青天井怖い
・GPU持ってない
・スマホやタブレットでもやってみたい
・ローカル環境の汚染が深刻
・ワークフローが複雑になりすぎて把握しきれなくなっている
・機械学習ボットのパラメータ管理が煩雑になっている
・ブースティングやスタッキングをやってみたい
・パラメータの最適化にベイズ最適化を使ってみたい
・モデルがブラックボックス化してるので、説明性や解釈性がほしい
・運用コストを下げたい
非対象
以下に当てはまる人には本note非推奨です。
・つよつよトレーダー(既につよつよなら必要ありません)
本noteでの記載事項
*Google Colaboratoryによる環境構築
以下、有料部分
*Rudolphのコード(以下を全て含みます)
*特徴量エンジニアリング
*機械学習モデル作成(線形モデル系、非線形モデル系、決定木系など)
※ディープラーニング系は除く(将来実装予定)
*Optuna等によるモデルチューニング(パラメータ最適化)
*モデル評価
*バックテスト New
*汎用的なモデル解釈 New
*Neptune.ai連携によるログ&モデル管理 New
*コストを抑えたボット運用方法 New
*クローズドコミュニティ
クローズドコミュニティ内では有用なライブラリやモデル等の情報紹介や新たなサービスの開発を行っています。
など
本フレームワークにより、特徴量分析、バックテスト、モデル解釈、ログ&モデル管理を容易に行うことができます。
Q&A
Q. あなた誰ですか?
A. さんとなです。自動取引プラットフォーム”はむとれ”開発者です。次期自動取引プラットフォーム”erizo”も近日公開予定です。本フレームワークとの連携も予定しています。
Q. フレームワークを公開することでアルファが探索しにくくなるのでは?
A. 機会学習BOTで一番肝となるのは特徴量エンジニアリングです。ここを如何に上手く作るかがほぼ全てだと考えています。本noteでは、その特徴量エンジニアリングのコアな部分は除いており、影響は小さいと判断しました。
Q. 本フレームワークは何を目的としていますか?
BOT開発にはコアな部分ではない煩雑かつ冗長なワークフローが存在します。その部分を省力化し、アルファの探索を効率化します。
Q. 本フレームワークは継続して開発されますか?
A. 継続して開発します。さらに、本フレームワークはあえて既存ライブラリを出来る限り組み合わせて使用し、独自コードを最小限にすることで、フレキシブルな構成にしています。
Q. コードは改造できますか?
A. できます。ユーザー好みの構成に組み替えることも容易です。
Q. 独自のモデルを組み込めますか?
A. Scikit-learn準拠のモデルなら組み込めます。
Q. 独自のメトリクスを組み込めますか?
A. 組み込めます。例として、本フレームワークにロバストな情報係数及びスピアマン相関係数の組み込み方を記載しています。
Q. 再現性は担保されてますか?
A. パラメータはログ管理できるため、過去に遡って確認できます。コードはハードルをできる限り下げるために一つのノートブックにまとめているため、多少損なわれます。今後、コードの再現性を向上させることも検討しています。
Q. モデルの運用方法は?
A. 2021/1/14から運用方法もカバーしました。通常のVPSやIaaSでの運用よりも格段にコストを節約することができます。また、複数のモデル管理も容易です。
Q. Rudolphってなんて読むんですか?
A. 「るどるふ」と読みます。サンタのソリを引っ張る先頭のトナカイです。「♪真っ赤なお鼻のトナカイさんは〜」で知られているトナカイです。先陣を切って颯爽と引っ張ってくれる輝く存在になれるように期待を込めました。
Q. その他意見または質問できますか?
A. twitterやdiscordにてご連絡ください。
注意事項・免責事項
*β版のため、記載不足が多々あります。随時更新します
*本note及び付随するコンテンツは利益を保証するものではありません
*本note及び付随するコンテンツを通じて得た情報等につき、その正確性および特定の目的への適合性等について、いかなる保証もしません
*本note及びそれに関連する情報に基づいて被ったいかなる損害について、一切責任を負うものではございません
*本noteからのリンク先は、著者が管理、運営するものではございません。リンク先で提供される情報の真偽、サービス等につきましても一切の責任も負いません
*本note及び付随するコンテンツに記載されている内容の著作権や肖像権等は、各権利所有者に帰属します
*本note及び付随するコンテンツの複製、販売等の一切を固く禁じております
*本noteに記載している仕様ならびに価格などは予告なしに変更することがあります
以上、ご了承ください。
令和2年12月25日 策定
令和3年01月29日 改定
1. Google Colaboratoryによる環境構築
Google Colaboratory(略称Colab)上に環境を構築します。Colabは、ブラウザでPythonを記述して即座に実行できるインタラクティブなサービスです。また、コードを記述したファイルもGoogleドライブに保存できるため、スマホを含む複数端末から自由にアクセスができます。加えて、ややこしい環境構築が不要であり、GPUやTPUを無料で使用できます。
※日本でColaboratory Pro(高速なGPU使用とメモリ増強ができる)が契約できるようになりました。
では、早速始めましょう。
Googleアカウントにログインしてください。
これでGoogle Colaboratoryにアクセスできるようになりました。Google Colaboratoryの簡単な説明はこちらにあります。
上記リンク先にアクセスし、「ファイル」→「ノートブックを新規作成」を選択してください。
Googleドライブ上に「Colab Notebooks」フォルダが自動作成され、「Untitled0.ipynb」というノートブックが作成されます。Rudolphは全てノートブックにコードをまとめています。
これでほぼ環境構築完了です。ここにコードを記述していきます。
宣伝
以下のフレームワークも販売しています。是非検討してみてください。
はむとれ
https://www.hamutore.erizo.co.jp/
BFS-X2
https://www.hamutore.erizo.co.jp/bitflyer-scalping-x/
ここから先は有料部分です。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
ここから先は
¥ 49,800
この記事が気に入ったらサポートをしてみませんか?