目次
- Python×投資の成果物とは?
- そもそもなぜPythonか
- 投資において最も大切なポイントは何?
- ドンチアン・トレンドシステムのロジックとは
- 実際の値動きのグラフで参入・決済のロジックを開設
2020.09.24
投資にもプログラミングにも興味がある、という方は多いのではないでしょうか。
現代では投資にも機械学習・データ分析が必須となってきており、そのふたつを同時に学んでおいて損はありません。
そこでSchooで開講されたのがPythonを用いて仮説を立て、相場を読むための力、データ分析のためのプログラミングスキルを学ぶ授業シリーズ『Pythonで投資シミュレーション』です。
講師はブログ『Investment Tech Hack』で投資とプログラミングについての情報を発信しているトレーダーの髙橋雄也先生です。自らもPythonを投資に生かし、日々アウトプットされている先生が授業を通して目指すのが「同じ検証をみなさんの手元で再現できるようになる」ということ。
授業を通して投資術とPythonの技術の両方を磨きましょう!
先生から最初にリアルタイム受講生の皆さんになされた問いかけは「Pythonの使用経験はありますか?」。「ECサイトのユーザー分析に使っている」「ウェブページつくりました」などの声が上がる中、先生から語られたのが数あるプログラミング言語からPythonを選ぶ理由です。
その理由は「流行」「導入コストが安い」「応用が利く」「自由」の4つにわけて説明されました。
AIや機械学習、ディープラ―ニングと親和性の高いPythonは現在大きく注目を集めています。「『Python ユーザー数』で検索するとそのことは一目瞭然でしょう」と先生。また、2回目の授業以降で演習に使われるGoogle Colaboratoryなど無料のツールが充実しており、さらにInstagramの構築に利用されているようにできることはさまざまです。
何かと制限がかかりがちな既存のツールに対し、制限のないPythonは自由だと先生は強く感じているそうです。
続いて先生からは第2の質問が。
「投資をしたことがありますか?」という質問に応える形で、「債権」「株」「為替」「つみたてNISA」などさまざまな投資商品の名前がコメント欄に並びます。
ここで先生が紹介するのが書籍『伝説のトレーダー集団 タートル流投資の魔術』。巨額の運用実績を誇るトレーダー集団タートルズが2006年時点で勝てていた手法を紹介する書籍で、「投資の大切なポイントが網羅されている」と先生はいいます。
この書籍に掲載されているシステムトレードの手法を検証する形で、今回紹介する株式相場分析は行われました。
第3の質問は「投資において最も大切なポイントって、何だと思いますか?」。
「勘」「ストップロス」「強い心」といった意見がコメントされる中、先生が出した答えは2つ。
「ロジック」と「資金管理」です。
ロジックは投資におけてある根拠に基づいた自分のスタイルのこと、資金管理はリスクを管理することとも言い換えられます。世間的に投資というと「勝率」や「値上がりする銘柄の見分け方」など、ロジック重視の意見が上がりがちですが、資金管理も同様に重要であると髙橋先生は語ります。
いよいよここからは実際の仮説・検証について語られます。
その題材となるのは前述の『伝説のトレーダー集団 タートル流投資の魔術』で紹介されていた以下の6つのロジック。
・ATR CBO(1年間の平均利益率:49.5%)
・ボリンジャーCBO(1年間の平均利益率:51.8%)
・ドンチアン・トレンドシステム(1年間の平均利益率:29.4%)
・時限付ドンチアン(1年間の平均利益率:57.2%)
・ダブル移動平均(1年間の平均利益率:57.8%)
・トリプル移動平均(1年間の平均利益率:48.1%)
最も1年間の平均利益率が低いドンチアン・トレンドシステムであっても10年で約13倍になるということですから、その効果の高さがうかがえます。「それほど有効なロジックであれば、その後も利益が上がるのではないか」と先生は仮説を立てました。
その仮説に基づいて「ドンチアン・トレンドシステムの2007年1月以降の損益」を検証するのが今回の試みです。
ドンチアン・トレンドシステムで重要な要素となるのは以下の2要素。
・市場:何を買い、何を売るか
・取引量:金額ベースのリスク調整、アカウントの調整
市場ですが、対象となるのは貴金属、燃料、農畜産物などの27銘柄。それらを安く買って高く売ることで利益を得ることになります。
金額ベースのリスク調整におけるリスクとは、投資金を失うリスクのこと。ドンチアン・トレンドシステムではエントリー時にリスクを何%にするかを決めて投資します。こうすることでリスクは、ある金融商品にいくら投資するかを決めるための指標となります。
なお、リスクとは、以下のローソク足におけるAとDの間の幅のことを指します。
また、アカウントとは元手となる金額のこと。ドンチアン・トレンドシステムではドローダウンの幅を2倍に換算することで最大でも損失が50%程度に収まるようにリスク調整をしていると先生はいいます。
ドンチアン・トレンドシステムでは参入と決済のそれぞれにもロジックが設定されています。
・参入:シグナルによるエントリー、追加エントリー
・決済:損切り、利益確定
こちらについては「EMA25>EMA350、High>Highest20」など細かい条件が設定されているため、実際に値動きのグラフを用いた説明がなされました。
画像だけではよくわからないというのが一般的な意見だと考えられますが、実際の授業でグラフを見ながら説明を聞けば理解が進むはずです。
まずはこのテキストを入り口として授業動画にアクセスしてみることをおすすめします。
本授業を下敷きにいよいよ「Pythonを使ったバックテストの演習」が行われる第二回目以降の授業も映像でこそ理解の進む面があるはずです。
『Pythonで投資シミュレーション 第1回 Python×株式相場分析:仮説の設定』
http://schoo.jp/class/6704/room
『第2回 Python×株式相場分析:仮説検証のためのデータの収集』
http://schoo.jp/class/6705/room
文=宮田文机
ペンシルからのプッシュ通知を設定しておくと、新着記事のお知らせなどをブラウザ上で受信できて便利です。
通知を受信しますか?
今回の授業では「仮説の設定」について主に取り扱うと髙橋先生。
成果物の一例として提示されたのが以下のスライドです。
上から順にProfit、DrawDown、LongShot、Symbolsと並んでいますね。順に投資の損益、保有資産の下落率、ロング・ポジション(買い建て)とショート・ポジション(売り建て)の取引、銘柄の取引を意味します。
これらの指標を、Pythonを使ってわかりやすく可視化しているというわけです。
また、以下のような値動きのグラフもPythonによって構築されたものです。
今回の授業では実際に手は動かさず、学習の近道となるように、シミュレーションやデータ分析の基本についてのレクチャーが受けられます。