書評レビュー「Python3ではじめるシステムトレード」
タイトルからして気になっていた「Python3ではじめるシステムトレード」を読んでみましたので、レビューしてみます。
※「読んだ」とは言えないかもしれませんが、、、理由は後述
Python3でシステムトレード
Python3ではじめるシステムトレード ──環境構築と売買戦略 (Modern alchemists series)
Amazonでチェックする楽天で購入Yahoo!ショッピング
Amazonでもたまたまこの書籍を見かけていたり、先日のイベントで筆者の講演を聞いていたので、この本はいつか読んでみようと思っていました。
Pythonといえば、最近特に注目されているプログラミング言語です。高度なデータ分析ができることは知っていたので、「この本を読めば、今よりもっと自動売買がはかどる!」と期待を込めていました。
が、未だこの夢は達成できていません笑 理由はこちらの通り、、
難解過ぎる
そう、難解すぎるのです。本書を理解するには、最低でもこちらが必要です
- Pythonを使えること
- Pythonのライブラリであるpandas、matplotlab等々を使えること
- 大学レベルの数学と統計学の知識があること
- もちろん株式や金融の知識もあること
はい、無理ですね。
私はPythonは一応使えます。大学で数学や統計学の授業は受けたことはあります(得意なわけではありません)。株式の知識はそれなりにあるはずです。
しかし、歯がたちませんでした。無理です。
申し訳程度にPythonや統計などについての用語に触れていますが、あまりに簡潔なので理解不能でした。まるで大学の教科書を読んでいるようです。。基本知識は他で身につけなければなりません。
この書籍を真に理解できる人間は、日本に何人いるのでしょうか。。
実際のトレード戦略にはあまり触れていない
この本のもう一つの難点は、あくまで過去の分析が主ということです。「有用なトレード方法」とか「将来の相場の予想」など、実際のトレードに役立つ戦略についてはほぼ触れられていません。
本のタイトルを「Python3ではじめるシステムトレード」から「Python3ではじめる金融相場分析」あたりに変えてほしい、、、
とはいっても
無理無理言っていても仕方ないので、今はまだ理解できていませんが、今後ゆっくりとこの本を通じて勉強していきたいと思います。
と言うのは、高度な相場の分析について日本語で書かれた本なんて、他に存在しないからです。そういう意味では大変意義のある本だと思っています。
この本を通じて高度な分析を行いたい人に向けて、下記に私の思ったことや感想、意見などを述べます。
この本を読む前の事前勉強
本気でこの本に取り掛かるなら、事前勉強は必須だと思います。参考になりそうな本をピックアップしてみました。
Pythonに関して
Pythonの入門書はいろいろありますが、私はこの本が詳しいと思います。
統計学に関して
こちらの本は話題になりましたね。
「統計学が最強の学問である」は読み物としては良いものの、具体的な用語などを詳しく理解することはできないと思います。学問としての統計学について良書と言われるのはこちら。
データ分析に関して
Pythonを使ったデータ分析に関する本です。
Pythonの有用性
さて、筆者が講演でもこの書籍でも言っていましたが、Pythonは大変有用なプログラミング言語だと思います。金融に興味があるなら、Pythonを学んでみる価値はあるでしょう。
Pythonが使えれば、このように金融ビッグデータを解析することもできます。いま流行りのディープラーニング・人工知能もPythonです。流行りのIoTもPythonでできます。
Webサイトだって作れてしまいますし、パソコンがあれば(WindowsでもMacでもLinuxせも)無料で使えます。素晴らしいですね・・
環境構築
本書では、Windows(64ビット版)にAnacondaと言われるツールを入れて各種のプログラムを動かしています。Anacondaというのは、データ分析などに必要なツールが多くまとまったパッケージのことです。これを入れればすぐにPythonでデータ分析が可能になります。
私はMacBookに上記のAnacondaを入れました。特に問題は生じていません。
ちょっとコード紹介
こんな簡単なコードで、1949年からの日経平均が描画できてしまうのは、驚きです。
%matplotlib inline import pandas_datareader.data as pdr import matplotlib.pyplot as plt start="1949/5/16" end = "2016/9/30" N225 = pdr.DataReader("NIKKEI225", 'fred',start,end) N225.plot(color='darkblue') plt.ylabel('N225 index') plt.show()
Pandas
Pandasについて、著者はこう言っています。
Pandas:金融時系列データのデータベースとしての機能を意識して設計されたモジュールで、pandasの存在がPythonを使う1つの理由である
ちょっと勉強になった点について、メモ書きです。
メモ書き
Pandasでは、時間に従って記録したデータを時系列データ(time-series data)と言います。
また、時間を一時点に固定した各国の株価指数、経済指標などのデータをクロスセクションデータといいます。
この2つのタイプの特性を兼ね備えたデータをパネルデータといい、Pandasはこの時系列データとパネルデータの分析に適したデータ構造と道具を提供しています。
- Series
名前の通り時系列データを分析するためのデータ構造
1変量時系列解析に適している - DataFrame
パネルデータ、多変量時系列を分析するためのデータ構造
難しい・・
チャレンジしたい方はぜひどうぞ!
全16章ある本書、とんでもなく難解です。試してみたい方はぜひどうぞ!
Python3ではじめるシステムトレード ──環境構築と売買戦略 (Modern alchemists series)
Amazonでチェックする楽天で購入Yahoo!ショッピング