書評:Shocks, Crises, and False Alarms: How to Assess True Macroeconomic Risk

2025/4/20

Shocks, Crises, and False Alarms: How to Assess True Macroeconomic Risk Philipp Carlsson-Szlezak, Paul Swartz Shocks, Crises, and False Alarms: How to Assess True Macroeconomic Risk  本書はマクロ経済における近年見られたような、ショック、危機などのリスクを案内します。  マクロ経済のリスクを判断するとき、リスクが実際のショック ...

ReadMore

合衆国の新関税の税率と貿易収支

2025/4/17

2025年4月2日に合衆国の新しい関税の税率が公表されました。現在の貿易収支の状況と導入される関税の税率をまとめます。 合衆国の貿易収支 図1 合衆国の貿易収支2023年(単位:USD million)  図1は、左側が輸出国、右側が輸入国です。マウスポインタを領域の上に置くと、輸出入額(単位:100万USドル)を表示します。 データソースはJETROがまとめている貿易投資年報より参照。 新関税の税率と各国の対米貿易収支 図2 関税税率と対米貿易収支 対米貿易収支は、輸出額から輸入額を減算した値(単位:1 ...

ReadMore

強化学習による因果探索 gCastle因果探索アルゴリズムの検証(3)

2025/3/18

gCastleに実装された探索アルゴリズムの中で、強化学習を使ったアルゴリズムが高い性能を示しています。本稿ではこの探索のための強化学習アルゴリズムを解説します。 強化学習を使った探索  強化学習は一般的にポリシーを学習することを目的に用いられますが、彼らはこれをDAGの探索に使っています。  巡回セールスマンの問題と同様に、d次元のnシーケンスでベストスコアを導くことで、入力データからバイナリの隣接行列の生成を考えます。  隣接行列を出力するためにエンコーダ/デコーダ・モデルを作りますが、エンコーダ自己 ...

ReadMore

CastleBoardの使い方 gCastle因果探索アルゴリズムの検証(2)

2025/3/2

中国のAI技術動向の調査を兼ねて、gCastleに実装された因果探索アルゴリズムを検証しました。gCastleはGUIツールCastleBoardを含んでいますが、パッケージにツールのマニュアル類は添付されていません。そのため、本稿では実際にアルゴリズムを検証するためのCastleBoardの使い方について解説します。 CastleBoardの操作  GUIツールはいくつかの設定項目への入力でテストデータを生成できるため、テストプログラムを組むより簡単にアルゴリズムを検証できます。ツールの機能は主に二つの ...

ReadMore

マイニング・セクターのリスク許容度、関税の影響 (DoubleMLの推論)

2025/3/14

 2025年2月に合衆国の新政権の政策として、鉄鋼とアルミニウムに25%の関税が課されることが決定されました。一方で、ウクライナへのこれまでの支援の対価として、ウクライナの鉱物資源などの天然資源の権益取得が交渉されています。  この関税政策が、原料である鉄鉱石やボーキサイトなどの鉱物資源の採掘を行なっている企業に与える影響について分析します。  分析手段として機械学習を使った推論手法、DoubleML(Double Machine Learning)を用います。このDoubleMLという推論手法と同じ名称 ...

ReadMore

gCastle 因果探索アルゴリズムの検証

2025/2/28

gCastleは、因果探索アルゴリズムが実装された因果の構造を学習するツールチェインです。パッケージは、Webアプリを含んでおり、因果探索アルゴリズムがGUIベースの操作で検証できるようになっています。 gCastle 概要  Huawei社のリサーチラボから提供されています。因果探索アルゴリズムが実装されており、Webアプリを使用してアルゴリズムの動作が検証できます。  GCastleの名称は、Gradient-based Causal Structure Learning pipeline. の頭文字 ...

ReadMore

クレジット・カードの種別と利用額の最適化 YLearnによる因果推論(2)

2025/2/20

YLearn因果推論パッケージを使ったケース・スタディを使ってYLearnの機能を解説します。YLearnの因果推論パイプラインを使ったマーケティング上の分析の一つになります。クレジット・カードのグレードを更新した場合の効果の推論です。 機能と仕様  以下、簡単に機能をまとめ、最後にケーススタディを使って動作を確認します。ケース・スタディでは、Kaggleの実際のデータセットを使います。 DAG グラフと交絡因子  観測されていない変数はconfounding arcとして定義し、下の図1では(黒の点線) ...

ReadMore

YLearnによる因果推論(1) 概要とセットアップ

2025/2/20

 因果推論はAIシステムが、イベント間の真の因果関係をよりよく理解する助けになります。中国製のLLMが最近、話題(注1)になっていたので、データサイエンス分野で中国の因果推論に関する取り組みとツールについて評価します。  因果推論や因果探索のツールとして、Huaweiが提供しているgCastleと、因果探索・因果推論ツール、ylearnを使います。gCastleはPyTorchで実装された因果探索パッケージです。因果関係に関連した代表的なアルゴリズムが実装されて、検証ツールが提供されています。Huawei ...

ReadMore

Jupyter-notebookがAnaconda Navigatorから起動できない問題

2025/2/6

新しいAnaconda Navigatorをインストールしたところ、jupyter-notebook(7.3.2)がNavigatorから起動できない問題がありました。 Navigatorのエラーメッセージは、次のようになっています。 【The file /Users/xxx/anaconda3/bin/Jupyter_mac.command does not exist.】 jupyter_mac.command does not exist.  問題は、インストールまたはNavigatorが参照してい ...

ReadMore

Apple Silicon Mac 用 Anacondaバージョン更新・インストール

2025/2/5

Apple Silicon用に新しいバージョンのAnacondaがリリースされていたので、Navigatorの更新を兼ねてインストールします。 (Mac OSの更新(Sequoia15.3)によって、使用中のNavigatorが起動しなくなったため) Anaconda Navigatorのインストール  以下のAnacondaのサイトにアクセスします。最近のAIに対する、人と資本、計算リソースの流れを反映した画面に様変わりしています。 https://www.anaconda.com  【1】画面左上のP ...

ReadMore

ファイナンス

LSTMで株価予測

LSTMはRNNの一つですが、言語処理向けに開発されてきました。

Pythonのコンファレンスで、いくつかLSTMを用いた株価予測に関してプレゼンがあったので検討してみました。

LSTM

金融市場の多くのモデルは、効率的市場仮説(以下 EMH)を前提にしています。

株価の時系列データはランダムであり、ドリフトフォース(トレンド項)にランダムな要素を加味してモデル化されています。

ブラウン運動と同じモデルです。

一方、言語の時系列データは、自然発生的に法則性を内在して形成されています。

言語のワードの順序は、プレフィックス、ポストフィックスなどに決まったパターンがあり、言語の文法として体系化されています。

これは、ニューラルネットワークによって学習することができます。LSTMはそうした文法の学習など、言語処理系のアプリケーション向けに作られています。

LSTMに正弦波を学習させた例があります。

正弦波は明確に規則性のあるデータです。

LSTMに学習させて出力した例では、振幅が徐々に現象する点はあるのですが、正弦波を再現しています。

では、果たして株価の時系列データをLSTMに学習させた場合、LSTMは何らかの法則性をデータから抽出できるでしょうか。

これは株価の時系列データに私たちの知らない何らかのパターンが存在しており、それを機械学習によって抽出してみようという試みです。

時系列データのパターンが既知であれば、LSTMにそのパターンを学習させることは可能です。

機械翻訳では、翻訳の誤りを外部から訂正することで翻訳の精度を上げていきます。

モデル

以下のモデルを検討してみましょう。

N日後の株価の上昇、下落を予測させるモデルです。

ここでは先物価格の時系列データを使って、翌日の株価を予測させます。

LSTMの実装には、tensorflowをバックエンドにしたKerasを用います。

学習モデルは、一定の期間単位の株価を読み込み、翌日の株価が上昇したか、下降したかを学習させます。

予測精度が50%を超えるようであれば、データから法則性を抽出していると言えます。

取引コストを差し引いて、取引回数を重ねると、実際の運用に有効であるとみなせます。

Kerasのインターフェイスを使ってPythonで組んでみます。

トレーニングエポック数:32
バッチサイズ:32

に設定してネットワークを学習します。

入力層 ドロップアウト0.2  lstm  lstm  dropout   dense
model = Sequence()
model.add()
model.add(Dropout(0.2))
...
model.add(Dense(1))
....

上記のように、Kerasではモデルに層を追加していくことで、多層ニューラルネットワークを簡単に組むことができます。

損失関数に mse, 最適化アルゴリズムには adam を使用してモデルをコンパイルします。

学習データにはTopixの先物データを使います。

では実行してみましょう。

以下は、Jupyter上で実行した結果のスクリーンショットです。

予測結果

今回の学習データの中で、そのカテゴリー(次のN日後の価格の上下変動)に分類できる特徴量の抽出は見られません。

学習データを変えて、様々な条件下で試してみると、季節要因やその他の要因による規則性を見出す可能性はあります。

特定のデータから市場の特異点を抽出することができるかもしれません。

多くのデータを用いて、詳細に検討してみるのも良いでしょう。

他のモデルを用いた手法で、より良い結果をもたらす候補がいくつかあります。

そちらの手法を洗練させることにしますが、機械学習は発展途上の分野で様々な手法と応用例があります。

他の様々な手法を検討しても良いでしょう。

-ファイナンス
-