市場創造型のイノベーション 書評:The Prosperity Paradox

2024/10/20

ノーベル物理学賞の対象としての機械学習  今年のストックホルムの物理学賞に、機械学習の分野への貢献に対してジョン・ホップフィールド氏と以前グーグルにいたトロントのジェフリー・ヒントン氏が選出された。  ACM、チューリング賞なら自然なのだが、コンピュータサイエンスの分野から物理学賞として選ばれるのは珍しい。ストックホルムの賞は物理学と化学と生理学の3種類しかないので、物理学的な考えがアルゴリズムに導入されているので物理学という枠組みが適用されるのであろう。それだけ機械学習の社会へのインパクトが大きいという ...

ReadMore

外国為替平衡操作のパラドックス

2024/9/20

 経済や金融の分野で、統計的な手法を使って市場を分析していると、実際の経済現象と一般に認識されている経済状況の間でパラドックスに出会うことがあります。  大規模金融緩和や長期間の金融緩和が経済活動の縮小を招くことや、通貨当局の外国為替市場介入により当局の意図とは逆方向に為替レートが推移することなどは、このサイトでも紹介しています。  ここでは以前、データの因果性を解析するツールの一つとしてcausal-learnや、CausalPyを紹介しました。パラドックスのように映る経済現象を正しく認知する上で因果性 ...

ReadMore

世界株式市場の混乱:外国為替市場介入による資金供与と相場操縦

2024/8/30

 2024年8月初旬、金融市場を揺るがす株式市場の乱高下が発生し、世界の主要な金融市場で混乱が見られました。東京市場では、8月5日に日経平均株価が12%を超える下落を記録しました。主要な原因と見られる背景が見過ごされているため、本稿でまとめておきます。  これは、端的に言えば犯罪収益によるドル円為替レートの相場操縦がもたらした株式市場の混乱です。 外為市場介入のリスク  前月の7月に財務省がドル売り市場介入を通じて、投機グループに資金を供与しました。建て玉余力を増加させた同グループがドル円の相場操縦を実施 ...

ReadMore

ヒューリスティックス:マーコヴィッツ・ポートフォリオ理論 対 不確実性

2024/8/22

 合理性の限界について検討を重ねていたハーバート・A・サイモンの時代は、ダニエル・カーネマン氏等の行動ファイナンスは経済学の主要な流れとはなっていませんでした。  サイモンは複雑系経済学の起源の一つとみなせますが、その時は複雑系という用語もありませんでした。 サイモンは人工的な現象(経済現象を含む)は、環境に従順であるという点で”環境依存性”を持っているとみなしていました。  サイモンの仕事を継承するような、現在、複雑系や行動心理学の分野で活動している人々は、不確実な状況での認知や予測に関して新しい知見を ...

ReadMore

マイナス金利 : ニューケインジアンの視点

2024/8/13

 多くのニューケインジアンのモデルでは、外因によりゼロ金利が想定されることで経済が流動性の罠に陥ることがあります。スウェーデン、デンマーク、スイス、ユーロ圏、日本で、深刻な不況に対応する非伝統的な金融政策として、金利を負の領域に導く政策が取られました。  欧州、米国ではコロナ・パンデミックからの回復と東欧での軍事侵攻を契機にしたグローバルなインフレーションに対応して、政策金利を引き上げました。日本は、最近マイナス金利政策を解除し、現在も量的緩和を継続しています。  量的緩和の効果に対しては、多数の研究報告 ...

ReadMore

書評:May Contain Lies -嘘を含んでいるかもしれない

2024/7/15

May Contain Lies: How stories, statistics and studies exploit our biases - and what we can do about it. Alex Edmans 嘘を含んでいるかもしれない:どのようにストーリー、統計、調査研究が私たちのバイアスにつけ込むか、私たちがそれについてできること。 嘘を含んでいるかもしれない  著者は、私たちの日々の生活に影響する誤った情報が氾濫している複雑な現代社会において、より賢明に考え、正しい判断を行う上 ...

ReadMore

現代のプロパガンダと量的緩和の陰影

2024/5/27

 ロシアが侵攻した地域で、老婆に物資を支給している映像を撮るロシア人を、ウクライナの現地の市民が動画撮影してSNSに投稿していました。ロシア兵は老婆に食料品を支給していましたが、その老婆は、解放している様子を演出するためにロシアから連れてきたエキストラでした。SNS動画には現地の市民がブーイングをしている様子が映されていました。  ロシアの国営放送では、そうしたエキストラを使った映像が放映され、ブチャでの惨状は放映されません。ロシア国内の市民が知るロシア語の報道は、現地を圧政から解放するロシア兵の映像です ...

ReadMore

causal-learnによる因果探索

2024/4/25

 【マネーサプライと物価上昇の因果推論】で、二つの時系列データ間のGranger因果性を調べました。ベクター自己回帰モデル(Vector Auto-Regression:VAR)を適用したものです。他にも、近年、新しい因果推論、因果探索アルゴリズムが提案されています。PythonやR上に実装された因果推論パッケージがAI関連技術に投資している企業や機関からリリースされています。  causalQueries, causalml, causal-learn等、【為替レートと地政学的リスク-割り込まれた時系列 ...

ReadMore

書評:Statistical Consequences of Fat Tails

2024/3/27

Statistical Consequences of Fat Tails Real World Preasymptotics, Epistemology, and Applications Nassim Nicholas Taleb Statistical Consequences of Fat Tails  タレブ氏の著書は、ビジネス書と一般向けの啓蒙書の印象がありますが、本書は統計の専門書になっています。  この著書は、不確実で複雑な現実社会をどのように生きるかという、著者のIncertoプロジェク ...

ReadMore

書評:BATTLEGROUND

2024/3/21

BATTLEGROUND Ten conflicts that explain the new Middle East. Christopher Phillips BATTLEGROUND - Ten conflicts that explain the new middle east  本書で示す中東は、14の異なる独立した国と地域からなります。著者は北アフリカのリビア、トルコも中東に拡張(モロッコ、アルジェリア、チェニジア)して論じています。イラン、イスラエル、トルコ、クルド等を除いて、多くの地域はア ...

ReadMore

slide ファイナンス リスクモデル

極値理論

極値理論

金融市場に関して、経験的に観測された事実として、価格の収益率のような時系列データの多くに該当する事項があります。

例えば、極端な収益率の値はクラスタを形成するようなことです。

収益率系列における極値は、同期してボラティリティ・クラスタを形成しやすいというようなことです。

極値理論は最大観測値に対するモデルであり、こうした金融時系列データが示す特徴的な現象を記述する上で整合性があります。

株価が急変するような場合、極端な観測値を効率的に使用する点で、株式、株価指数、ポートフォリオの損失に対するモデルとして実際に応用できるでしょう。

閾値モデル

ブロック最大値法

nブロック最大値Mnの分布はnが大きければ、3パラメータGEV分布で近似できます。

GEVとは(Generalized Extreme Value) distribution  一般化極値分布

以下のモデル

G(z) = exp{ -1 [1 + ξ((z - μ)/ σ) ]}

GEVの三つのパラメータは
μ:位置
σ:スケール
ξ:シェイプ xi 形状パラメータ

xi->0 の極限ではグンベル分布になります。

以下の機械学習を実行すると、このパラメータはそれぞれ以下の推定値になります。

xi : 0.155542
sigma: 1.041265
mu: 2.443496

パッケージevirを用います。

evir はExtrem Value in R の略です。

evir

これはS-PLUSのパッケージEVISからRに移植されています。

package evir

バージョン1.7-4

以下のCRANのWebサイトからAPIのマニュアルを参照することができます。

library('evir')
data(danish)
SieLos <-100.0 * siemens
GEV <- gev(SieLos, block="semester")
> library('evir')

 次のパッケージを付け加えます: ‘evir’ 

 以下のオブジェクトは ‘package:ggplot2’ からマスクされています:

    qplot

> data(siemens)
> SieLos <- 100.0 * simens
 エラー:  オブジェクト 'simens' がありません 
> SieLos <- 100.0 * siemens
> SieGEV <- gev(SieLos, block="semester")
> SieGEV
$n.all
[1] 6146

$n
[1] 48

$data
 [1] 3.332837 4.564551 2.929195 3.195160 3.074342 2.847947 2.317558 1.607382
 [9] 2.744829 1.353201 1.529342 1.645970 1.730462 1.859042 2.557895 1.772810
[17] 1.489706 2.946031 2.232120 2.157249 3.500081 3.812336 4.518762 3.425502
[25] 3.772542 4.385188 6.070131 4.355276 4.037816 5.117573 7.295798 3.131371
[33] 3.797925 5.732228 2.836112 6.211146 7.672870 3.368053 1.904819 3.829483
[41] 1.809127 3.817076 1.941525 3.345885 1.900642 1.844945 1.934538 1.125012

$block
[1] "semester"

$par.ests
      xi    sigma       mu 
0.155542 1.041265 2.443496 

$par.ses
       xi     sigma        mu 
0.1564440 0.1439107 0.1807022 

$varcov
             [,1]         [,2]        [,3]
[1,]  0.024474739 -0.007558325 -0.01260267
[2,] -0.007558325  0.020710290  0.01538971
[3,] -0.012602670  0.015389708  0.03265327

$converged
[1] 0

$nllh.final
[1] 82.07033

attr(,"class")
[1] "gev"

表示するにはplotで表示します。

> plot(SieGEV$data,type="h",col="blue", xlab="", main="Maximum Biannual Losses of Siemens")

ismev

ismevを使って gev.fit() gev()が返すパラメータを推定します。

上の図で縦軸にプロットされたevirで得た結果をismevの入力に渡します。

library('ismev')
SieGEV2 <-gev.fit(SieGEV$data)
SieGEV2

> library('ismev')
 要求されたパッケージ mgcv をロード中です 
 要求されたパッケージ nlme をロード中です 

 次のパッケージを付け加えます: ‘nlme’ 

 以下のオブジェクトは ‘package:dplyr’ からマスクされています:

    collapse

This is mgcv 1.8-42. For overview type 'help("mgcv-package")'.
> SieGEV2 <- gev.fit(SieGEV$data)
$conv
[1] 0

$nllh
[1] 82.07033

$mle
[1] 2.443496 1.041265 0.155542

$se
[1] 0.1807022 0.1439107 0.1564440

> SieGEV2
$trans
[1] FALSE

$model
$model[[1]]
NULL

$model[[2]]
NULL

$model[[3]]
NULL


$link
[1] "c(identity, identity, identity)"

$conv
[1] 0

$nllh
[1] 82.07033

$data
 [1] 3.332837 4.564551 2.929195 3.195160 3.074342 2.847947 2.317558 1.607382
 [9] 2.744829 1.353201 1.529342 1.645970 1.730462 1.859042 2.557895 1.772810
[17] 1.489706 2.946031 2.232120 2.157249 3.500081 3.812336 4.518762 3.425502
[25] 3.772542 4.385188 6.070131 4.355276 4.037816 5.117573 7.295798 3.131371
[33] 3.797925 5.732228 2.836112 6.211146 7.672870 3.368053 1.904819 3.829483
[41] 1.809127 3.817076 1.941525 3.345885 1.900642 1.844945 1.934538 1.125012

$mle
[1] 2.443496 1.041265 0.155542

$cov
            [,1]         [,2]         [,3]
[1,]  0.03265327  0.015389708 -0.012602670
[2,]  0.01538971  0.020710290 -0.007558325
[3,] -0.01260267 -0.007558325  0.024474739

$se
[1] 0.1807022 0.1439107 0.1564440

$vals
          [,1]     [,2]     [,3]
 [1,] 2.443496 1.041265 0.155542
 [2,] 2.443496 1.041265 0.155542
 [3,] 2.443496 1.041265 0.155542
 [4,] 2.443496 1.041265 0.155542
 [5,] 2.443496 1.041265 0.155542
 [6,] 2.443496 1.041265 0.155542
 [7,] 2.443496 1.041265 0.155542
 [8,] 2.443496 1.041265 0.155542
 [9,] 2.443496 1.041265 0.155542
[10,] 2.443496 1.041265 0.155542
[11,] 2.443496 1.041265 0.155542
[12,] 2.443496 1.041265 0.155542
[13,] 2.443496 1.041265 0.155542
[14,] 2.443496 1.041265 0.155542
[15,] 2.443496 1.041265 0.155542
[16,] 2.443496 1.041265 0.155542
[17,] 2.443496 1.041265 0.155542
[18,] 2.443496 1.041265 0.155542
[19,] 2.443496 1.041265 0.155542
[20,] 2.443496 1.041265 0.155542
[21,] 2.443496 1.041265 0.155542
[22,] 2.443496 1.041265 0.155542
[23,] 2.443496 1.041265 0.155542
[24,] 2.443496 1.041265 0.155542
[25,] 2.443496 1.041265 0.155542
[26,] 2.443496 1.041265 0.155542
[27,] 2.443496 1.041265 0.155542
[28,] 2.443496 1.041265 0.155542
[29,] 2.443496 1.041265 0.155542
[30,] 2.443496 1.041265 0.155542
[31,] 2.443496 1.041265 0.155542
[32,] 2.443496 1.041265 0.155542
[33,] 2.443496 1.041265 0.155542
[34,] 2.443496 1.041265 0.155542
[35,] 2.443496 1.041265 0.155542
[36,] 2.443496 1.041265 0.155542
[37,] 2.443496 1.041265 0.155542
[38,] 2.443496 1.041265 0.155542
[39,] 2.443496 1.041265 0.155542
[40,] 2.443496 1.041265 0.155542
[41,] 2.443496 1.041265 0.155542
[42,] 2.443496 1.041265 0.155542
[43,] 2.443496 1.041265 0.155542
[44,] 2.443496 1.041265 0.155542
[45,] 2.443496 1.041265 0.155542
[46,] 2.443496 1.041265 0.155542
[47,] 2.443496 1.041265 0.155542
[48,] 2.443496 1.041265 0.155542

attr(,"class")
[1] "gev.fit"

gev.diag()で表示させます。

> gev.diag(SieGEV2)

-slide, ファイナンス, リスクモデル
-