Python からはじめるアルゴリズムトレード
パイソンカラハジメルアルゴリズムトレード
自動売買の基礎と機械学習の本格導入に向けた Python プログラミング
- 著者:
- Yves Hilpisch / 村上 振一郎(イーブ ヒルピシュ / ムラカミ シンイチロウ)
- 出版社:
- オライリー・ジャパン
- 出版日:
- 2022年04月08日頃
- ISBN:
- 9784873119793
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
技書の森解説
『Python からはじめるアルゴリズムトレード 自動売買の基礎と機械学習の本格導入に向けた Python プログラミング』 (Yves Hilpisch 著、村上 振一郎 訳、オライリー・ジャパン、2022 年 4 月刊) は、売買のルールを Python のコードとして書き、金融データの取得から戦略のバックテスト、市場予測、ストリーミングデータの処理、ブローカーの API を通じた自動売買の運用までを順に組み立てる書籍です。原書は Python for Algorithmic Trading で、版元の紹介文では、アルゴリズムトレードを始めるうえで必要な自動売買の基礎と、機械学習を本格的に導入するために必要な Python の知識を解説する本と説明されています。
全 10 章と付録 A の構成、実行環境の準備から自動売買の運用まで
構成はまえがきに続く 1 章から 10 章と、付録 A です。1 章は Python によるファイナンスの書き方として NumPy のベクトル化や pandas の DataFrame クラスを示し、単純移動平均、モメンタム、平均回帰、機械学習と深層学習という戦略の種類を整理します。2 章は Conda と Docker コンテナ、クラウドインスタンスを使った実行環境の準備、3 章は CSV、Excel、JSON、Eikon Data API などからの金融データの読み込みと、TsTables や SQLite3 による保存です。4 章はベクトル化バックテストで、単純移動平均、モメンタム、平均回帰の各戦略をバックテスト用のクラスへ一般化し、5 章は線形回帰、scikit-learn によるロジスティック回帰、ディープニューラルネットワークを使ったマーケットの方向性の予測を扱います。6 章はロングオンリーとロングショートのイベントベース・バックテストのクラスの作成、7 章はティックデータのサーバーとクライアントをソケットでつなぐリアルタイム処理と Plotly によるストリーミングデータの可視化です。8 章は Oanda での CFD トレード、9 章は FXCM での FX トレードを、それぞれの API でヒストリカルデータの取得から発注、アカウント情報の取得まで追い、10 章はケリー基準による資産管理、最適レバレッジとリスク分析、オンラインアルゴリズム、ロギングと監視を含むトレードオペレーションの自動化です。付録 A は Python、NumPy、Matplotlib、pandas の基礎を補います。
ベクトル化とイベントベース、2 つのバックテストと過学習
戦略を検証する最初の段階では、価格の時系列を pandas の列として持ち、シグナルとリターンを列どうしの演算でまとめて計算するベクトル化バックテストがよく使われます。コードが短く計算も速いため、多くの案をふるいにかける用途に合いますが、約定のタイミングや取引コスト、手持ちのポジションに応じた分岐は表しにくいという弱点があります。時点を 1 本ずつ進めながら注文と残高を更新するイベントベースの方式はその弱点を補う代わりに、実装の手間と実行時間が増えます。本書は 4 章でベクトル化、6 章でイベントベースのバックテストを扱います。4 章には 4.5「データスヌーピングとオーバーフィッティング」の節があります。
機械学習 を価格の予測に使う場合も、同じ注意が形を変えて現れます。過去のリターンを特徴量にして翌期の上げ下げを当てる分類問題は組み立てやすい一方で、時系列の順序を崩して学習用と検証用のデータを分けると、未来の情報が学習に混ざって成績を過大に見積もります。また、価格の水準そのものより方向性を当てる問題として立てるほうが扱いやすく、予測の正解率が高くても取引コストを差し引くと利益が残らない場合があります。5 章は線形回帰による指数の水準とリターンの予測から始め、方向性の予測、回帰に基づく戦略のベクトル化バックテストを経て、分類アルゴリズムと深層学習へ進む順に並んでいます。
前提となる Python と金融の知識、Oanda と FXCM の位置づけ
付録 A は Python のデータ型や制御構造、NumPy、Matplotlib、pandas の基礎を補い、本文はクラスを使ったバックテストのコードやソケット通信、クラウド上の実行環境を扱います。金融の側では、ロングとショート、レバレッジと証拠金、CFD と FX といった語が説明の前提として出てきます。8 章と 9 章のコードは Oanda と FXCM の API とアカウントを前提にしています。また 2022 年刊の本で、ライブラリと各社の API はその時点の仕様に基づいています。目次に並ぶ戦略は単純移動平均、モメンタム、平均回帰と、回帰 / 分類のモデルです。
Python の本の中での位置づけと、全 10 章の範囲
Python の書籍の中での位置づけは Python 本の選び方 で整理しています。本書は、金融データの取得からバックテスト、機械学習による予測、ストリーミング処理、Oanda と FXCM の API を通じた発注と監視までを、全 10 章と付録 A に収めています。
言及した記事 (1 件)
この本は技書デッキのカードです (攻撃 2 / 3 枚引く) 図鑑でこの本を見る
この本に興味がある方におすすめ
関連する本
関連記事
Python 本の選び方 - 独学の最初の 1 冊から実務品質まで
Python 本の選び方を「動機」から逆算して整理。プログラミング未経験の最初の 1 冊、業務自動化に直結する本、型ヒントとコード品質で実務水準へ進む本まで、2026 年 8 月時点の定番を独学ルートに沿って解説します。
アルゴリズム本ガイド - 競プロだけじゃない、実務に活きる選び方
アルゴリズム本の 3 タイプと、実務でアルゴリズムの知識が活きる場面、数学が苦手な人向けの学習ルートを紹介します。
本の選び方に正解はない
どの本を選べばいいか迷って決められない。同じテーマの入門書は扱う基礎が大きく重なるため、どれからでも学べます。確認すべき 1 点と、迷いを終わらせる決め方を解説します。