Warning: Trying to access array offset on value of type bool in /home/r1406503/public_html/keito.luxe/wp-content/themes/xeory_base/lib/functions/head.php on line 135

数学


Warning: Trying to access array offset on value of type bool in /home/r1406503/public_html/keito.luxe/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 589

株価リターンが正規分布でなくてもファイナンス理論は成り立ちます!

こんにちは、毛糸です。

先日の記事で、主要地域の株価リターンが正規分布に従わないことを確かめました。
>>日本株式、米国株式、欧州株式、全世界株式の日次リターンが正規分布ではなかった件

 
この記事についてはSNSでもコメントが多く寄せられましたが、この手の「理論と現実は違う!」系の主張(というか批判)は昔からあるようで、中には建設的でない議論に終始するものもあるようです。

参考記事>>分散投資を批判した後の対案がそれ以上に酷い法則-梅屋敷商店街のランダム・ウォーカー(インデックス投資実践記)

今回はファイナンス理論の観点から、正規分布が成り立たない場合にも、既存のファイナンス理論は通用するのだということを説明します。

なお、本記事は以下の書籍の内容を参考にしているので、興味のある方はチェックしてみてください。

 

理論と現実の差は、理論の価値を損なうものではない

下記の記事で述べたとおり、主要地域の株価の日次リターンは、正規分布に従いません。
>>日本株式、米国株式、欧州株式、全世界株式の日次リターンが正規分布ではなかった件

 

投資期間が短い場合の株価リターンは正規分布に従わない、というのは学術的にも古くから指摘されており、また、投資期間が長い場合は正規性を棄却できないとする研究もあります。

ファイナンスの多くの理論研究は、資産収益が正規分布に従うことを仮定しており、正規分布と仮定しているからこそ見つかった性質というのも数多くあります。

しかし、ファイナンスの理論研究の多くは「モデル分析」、すなわち現実の問題の本質的な部分を切り取り抽象化して、他の部分は削ぎ落とした世界で成り立つ性質を調べる、というものです。

したがって、正規分布という仮定それ自体が、ある種の「捨象」であり、正規分布であることが本質的に重要でないことも多くあります。

仮に現実の株価リターンが正規分布でなくとも、ファイナンス理論の得た洞察が揺らぐものではありませんし、もし正規分布という過程によって揺らぐような理論を利用したいのであれば、自ら理論を修正すれば良いだけの話です。
>>理論・モデルの意義と、理論と現実の差異を知ったあとにとるべき行動

 

リターンが正規分布に従わない場合の平均分散分析

ファイナンスの標準的モデルが正規分布を使っているといっても、正規分布以外の分布の可能性を一切捨てているわけではなく、正規分布以外の分布で成り立つ命題を多くの研究者が探求しています。

投資理論においては、収益の平均(リターン)と分散(標準偏差、リスク)の情報を基に最適なポートフォリオを探求するという研究が、1950年台のマーコウィッツの研究以後、活発に調査されてきました。

このマーコウィッツの平均分散分析は、ノーベル経済学賞の受賞理由にもなり、昨今話題になっているロボアドバイザーの技術的根拠、さらには投資の王道「分散投資」の理論的裏付けにもなっています。

WEALTHNAVI(ウェルスナビ)

平均分散分析が成り立つためには、リターンが正規分布にしたがう、というのが十分条件になっています。

つまり、正規分布ならば平均分散分析が成り立つ、ということです。

現実には「正規分布ならば」が成り立っていませんので、平均分散分析が成り立つかはわかりません。

この点をもって「前提が破綻している!理論は不完全だ!」というのはあまりにも非論理的です。

正規分布でなくても、平均分散分析を成り立たせるような、別の十分条件があるかもしれないからです。

事実、その後の意欲的な研究により、リターンが正規分布でなくとも、楕円分布族というクラスに属していれば、平均分散分析(と同様の分析)が行えることがわかっています。

楕円分布族というのは、平たく言うとを横に輪切りにしたときの切り口が楕円(正規分布は正円です)になるような分布のことで、正規分布の他に、対称安定パレート分布t分布、分散混合の混合正規分布などがあります。

株価リターンがこれら分布に従えば、ポートフォリオのリターンも楕円分布に従うことがわかっています。

このとき、ある投資家は資産リターンが正規分布だと思い、別の投資家は安定分布だと思っていたとしても、パラメタが同じなら平均分散分析は成り立つちます。

ややテクニカルな話になりましたが、平均分散分析や分散投資という理論は、リターンが正規分布に従うという仮定でなくとも、本質的な部分は変わることなく成り立つということです。

まとめ

株価リターンが正規分布に従わないことがわかりましたが、それがファイナンス理論の破綻を意味するものではありません。
 
事実、リターンが正規分布に従わない場合にも、平均分散分析と同様の結論が得られます。
 

 

 

 

ブートストラップ法の概要と株価リターン分布への応用

こんにちは、毛糸です。

先日の記事で、株価の日次リターンが正規分布に従わないことを確認しました。
>>日本株式、米国株式、欧州株式、全世界株式の日次リターンが正規分布ではなかった件


本ブログでたびたび登場する投資シミュレーションプログラムは、リターンが正規分布に従うと仮定した場合の将来予測ツールなので、正規分布に従わないことがわかった今、何らかの改善をしなくてはなりません。
>>「投資シミュレーションプログラム」サマリー


本記事では改善のための手法として考えている「ブートストラップ法」について解説し、ブートストラップ法を株価リターン分布の推定にどう利用できるかを説明します。

なお、本記事は下記サイトの内容を参考にしています。
>>Rで「ブーツ」(PDFリンク

ブートストラップ法とはデータを無作為抽出し推定に使う手法

あるデータがよく知られた確率分布から発生していると仮定して行う統計分析を「パラメトリック法」と呼びます。
投資シミュレーションプログラムは株価リターンが正規分布に従うと仮定しているため、「パラメトリック法」による分析です。
>>「投資シミュレーションプログラム」サマリー
しかし、データがよく知られた確率分布から発生しているとはみなせない場合には、無理やり何らかの確率分布に当てはめると、誤った結論を導くことになります。
したがって、あらかじめ確率分布を特定化せずに、確率分布を推定する方法を考えなければなりません。
その方法の一つが「ブートストラップ法(ブーツストラップ法)」です。
ブートストラップ法は、すでに得られているデータから無作為抽出を繰り返し、それを新たなデータとみなすことにより、確率分布や密度関数の推定を行ったり、標本平均や標準偏差といった統計量を計算する手法のことです。
ブートストラップ法は「データはこの確率分布から発生しているはずだ」という前提をおかず、「データをありのままに利用する」という考え方に基づいており、このような統計手法を「ノンパラメトリック法」といいます(厳密には、パラメトリックなブートストラップ法もあります)。
また、データをランダムに利用するという意味で、モンテカルロ法の一種とも言えます。

株価リターンにブートストラップ法を適用する

ブートストラップ法によれば、株価リターンのデータから、無作為にデータを抽出し、新たなデータとして扱うことになります。

これにより、リターンが正規分布に従うと仮定できなくても、実際の株価リターンデータを乱数のように用いて、統計的・確率論的な分析が可能になります。

実際に、日本株式のリターンを使って、分析を行ってみましょう。

まず、下記の記事を参考に、日本株式のリターンのデータを読み込みます。
>>ファーマ-フレンチの3ファクターモデルのデータを入手する方法

#csvデータの読み込み
JP <- read.csv("Japan_3_Factors_Daily.csv", skip=5)
#時系列データとして加工
JP_mkt<-ts(JP$Mkt.RF+JP$RF,start=JP$X[1])/100

日本株の日次リターンの統計量を求めてみます。

#平均
m=mean(JP_mkt)
#標準偏差
s=sd(JP_mkt)

library(moments)
#歪度:正規分布が0
skewness(JP_mkt)
skewness(rnorm(10000,m,s))
#尖度:正規分布が3
kurtosis(JP_mkt)
kurtosis(rnorm(10000,m,s))

株価リターンと同じ平均、標準偏差をもつ正規分布より、尖度はかなり大きな値になっていることがわかります。

データが正規分布に従うかを調べるための、コルモゴロフ・スミルノフ検定も行っていますが、「正規分布に従う」という帰無仮説は棄却され、株価リターンは正規分布ではないと結論付けられます。

#コルモゴロフ・スミルノフ検定
ks.test(JP_mkt, "pnorm", mean=m, sd=s)

ヒストグラムを正規分布と比較してみます。実際の株価リターンデータと、同じ平均、標準偏差の正規分布の密度関数を描きます。実際のデータのほうが、左右の裾が厚い感じがします。

hist(JP_mkt,freq = FALSE,ylim=c(0,30))
curve(dnorm(x,m,s),add=TRUE,col="red")

株価リターンにブートストラップ法を適用してみます。株価リターンから、無作為に10000個のサンプルを抽出し、ヒストグラムを描きます。
#ブートストラップ法

bs<-sample(JP_mkt,10000,replace=T)
hist(bs,freq = FALSE)

ブートストラップ法で得たサンプルを使って、損失確率を計算し、正規分布の場合と比較してみましょう。

#損失確率ブートストラップ法
length(bs[bs<0])/length(bs)
#損失確率正規分布
pnorm(0,m,s)

ブートストラップ法で得たサンプルから計算した損失確率は49.2%、正規分布の場合は49.5%でしたので、実際のデータのほうがやや損失が出にくい(利益が出やすい)分布であることがわかりました。

損失確率を求めるくらいであれば、データをそのまま使えばよいので、ブートストラップ法を適用する必要もありませんが、より複雑な分析をするときには、ブートストラップ法は強力なツールになります。

まとめ

ブートストラップ法の概要と、株価リターン分析への応用可能性について説明しました。

実際の株価リターンは、理論で前提とするような正規分布ではありませんが、だからといって理論の価値が損なわれるわけではありません。

正規分布との差異をきちんと把握し、必要ならば適切に対処できることが大事です。
>>理論・モデルの意義と、理論と現実の差異を知ったあとにとるべき行動

ビットコインの確率分布について|期待リターン、リスク、ヒストグラム【正規分布じゃない】

こんにちは、毛糸です。

前回、Rライブラリ「crypto」を用いて、仮想通貨の価格が簡単に取得できることを説明しました。
>>仮想通貨の価格ヒストリカルデータを取得する方法|Rライブラリcryptoの使い方

今回は「crypto」を使って取得したBitcoin(BTC)の価格情報を分析します。

BTC価格の時系列データを分析することで、BTCの期待リターン、リスクが極めて高いことがわかりました。

また、ヒストグラムと「正規性の検定」により、BTCのリターンは正規分布に従わないこともわかりました。

cryptoパッケージによるBTC価格の取得とリターンのデータ

cryptoパッケージのcrypto_history()関数を用いて、BTC価格のヒストリカルデータを取得します。
>>仮想通貨の価格ヒストリカルデータを取得する方法|Rライブラリcryptoの使い方

#crypto_history(coin = NULL, limit = NULL, start_date = NULL,
#end_date = NULL, coin_list = NULL, sleep = NULL)
#仮想通貨の価格等情報を取得
#dateはyyyymmdd形式で。NULLとすると最長期間
BTC<-crypto_history(coin = "BTC",
                    start_date = NULL,end_date = NULL)
BTC価格を時系列データとして読み込みます。
BTC_price<-ts(BTC$close,start=BTC$date[1])
plot(BTC_price,type="l")
日次収益率を計算し、プロットしてみましょう。
#日次収益率
BTC_return_daily<-diff(BTC_price,lag=1)/lag(BTC_price,k=-1)
plot(BTC_return_daily,type="l")
以下ではこの日次収益率データを使って、BTCの収益率の統計分析をしていきます。

基本統計量

期待リターン(平均)

日次収益率の平均をとることで、日次期待リターンを推定できます。結果は、日次リターンが0.28%、簡易的に年率換算すると102%となりました。株式のリターンが年率5%ほどと言われていますから、驚異的な水準です。
#日次収益率の平均(期待リターン)(%)
mean(BTC_return_daily)*100
#[1] 0.2808807
#年率換算(%)
mean(BTC_return_daily)*100*365
#[1] 102.5215

リスク(標準偏差)

日次収益率の標準偏差を計算することで、日次収益率のリスクを推定できます。結果は、日次ベースの標準偏差が4.3%、簡易的に年率換算すると82%となりました。株式のリスクが年率25%ほどと言われていますから、とてつもなくハイリスクであることがわかります。
#標準偏差(%)
sd(BTC_return_daily)*100
#[1] 4.333606

#年率換算(%)
sd(BTC_return_daily)*100*365^0.5
#[1] 82.79343

歪度

歪度と尖度の計算には、「moments」ライブラリのskewness()、kurtosis() 関数を用います。
install.packages("moments")
library(moments)

分布の歪み具合を示すのが歪度です。正規分布のように左右対称な分布では、歪度は0になります。

BTC日次収益率の歪度は0.5です。歪度が正であるということは、分布のピークが左側にあり、右側の裾が広い分布であることを意味します。つまり、極端に高いリターンが出やすいと言えます。

#歪度:正規分布は0、正なら右裾が広い
skewness(BTC_return_daily)
#[1] 0.5234792

尖度

尖度は分布の尖り具合を示します。正規分布は尖度3(0とする定義もあり)であり、これより大きければ、分布は平均の周りで尖った、左右に裾野が広い分布になります。

BTC日次収益率の尖度は12であり、正規分布より極端に「尖った」、そして「裾野の広い」分布になります。つまり、極端に高い・低いリターンが出現しやすいことを意味します。

#尖度:正規分布が3
kurtosis(BTC_return_daily)
#[1] 12.9556

BTC収益率(リターン)は正規分布にしたがうか?(正規性の検定)

ファイナンス(金融工学)では、資産のリターンは正規分布に従うと仮定されることが多いです(資産価格が対数正規分布、資産価格が幾何ブラウン運動、も同様の意味です)。
BTC収益率は正規分布に従うのか、確かめてみましょう。
すでに、BTC収益率の歪度が0.5(正規分布なら0)、尖度が12(正規分布なら3)であることは確認しましたので、正規分布ではないような気がしますが、別の視点からも確認します。
本性の内容は下記記事を参考にしています。

ヒストグラム

リターンの実現値が、どの範囲でどのくらいの頻度で出現したかを見るグラフが、ヒストグラムです。

BTC日次収益率のヒストグラムを描いてみます。

正規分布のヒストグラムは左右対称のベルのような形をしていますが、BTC収益率のヒストグラムはやや右に裾野が厚く、かつ裾野が広がっている印象を受けます。

hist(BTC_return_daily,main="BTC算術日次リターンのヒストグラム",xlab="日次リターン",ylab="度数")

Q-Qプロット

Q-Qプロットは、与えられたデータがある確率分布とどれくらい「ずれているか」を図示したものです。データをQ-Qプロットしたとき、データが45度線(y=xのグラフ)に沿って並んでいれば、理論上の分布と近いという根拠になります。Rではqqnorm()関数によって、正規分布を仮定した場合のQ-Qプロットを描画できます。

BTCの日次データをQ-Qプロットしてみると、以下のように曲線を描いており、正規分布に近いとは言えません。

qqnorm(BTC_return_daily,main="BTC算術日次リターンのQ-Qプロット")

シャピロ・ウィルク検定

シャピロ・ウィルク検定は、「データが正規分布に従う」という帰無仮説に関する検定です。したがって、シャピロ・ウィルク検定で計算されたp値が小さければ、帰無仮説を棄却、つまり「データは正規分布に従わない」ということが言えます。Rではshapiro.test()を使います。
検定の結果、p値はほぼ0であり、「BTC日次収益率は正規分布に従わない」と結論付けられます。
> shapiro.test(BTC_return_daily)


 Shapiro-Wilk normality test


data:  BTC_return_daily
W = 0.87881, p-value < 0.00000000000000022

コルモゴロフ・スミルノフ検定

コルモゴロフ・スミルノフ検定は、「データが指定した確率分布に従う」という帰無仮説に関する検定です。したがって、正規分布に関するコルモゴロフ・スミルノフ検定を行ったときにp値が小さければ、帰無仮説を棄却、つまり「データは正規分布に従わない」ということが言えます。Rではks.test()を使います。
検定の結果、p値はほぼ0であり、「BTC日次収益率は正規分布に従わない」と結論付けられます。
> ks.test(BTC_return_daily, "pnorm", mean=mean(BTC_return_daily), sd=sqrt(var(BTC_return_daily)))


 One-sample Kolmogorov-Smirnov test


data:  BTC_return_daily
D = 0.11752, p-value < 0.00000000000000022
alternative hypothesis: two-sided


 警告メッセージ: 
 ks.test(BTC_return_daily, "pnorm", mean = mean(BTC_return_daily),  で: 
   コルモゴロフ・スミノフ検定において、タイは現れるべきではありません
なお、警告メッセージは同一データが存在するときに発生します。連続確率分布では同一の値が実現する確率は0なので、本来生じるべきではないというアラートですが、今回は厳密な議論をしているわけではないので、スルーします。
以上のような検討の結果、いずれの方法でも、BTC日次収益率は正規分布に従わないという結論が得られました。

ビットコインの収益率が正規分布に従わないとなにが困るか

ビットコインの収益率が正規分布に従わないということは、収益率が正規分布に従うと仮定して展開される多くのファイナンス理論の道具が使えないことになります。
たとえば、オプションの価格公式であるブラック・ショールズ式は、資産価格が幾何ブラウン運動に従うこと(つまり収益率が正規分布に従うこと)を仮定しています。
したがって、ビットコインのオプションが組成されたときに、そのオプションの価格をブラック・ショールズ式で評価するのと、意思決定を誤ります。
また、将来の投資運用の成績をシミュレーションする「投資シミュレーションプログラム」も、資産の収益率に正規分布を仮定しているため、仮想通貨投資には利用できません。

このように、確率分布が標準的なファイナンスの仮定と異なることにより、やや慎重な議論が必要になってきます。

投資においては、為替や株式等よりも変動性が大きく、また極端に高いもしくは低いリターンが出やすいという点に気をつける必要があります。

まとめ

Rライブラリ「crypto」を用いて、ビットコインの価格情報を取得し、日次リターンの分析を行ってみました。
ビットコインの収益率は極めてハイリスク・ハイリターンであり、また、ファイナンスで通常仮定される正規分布とは大きく異なる性質を持っています。

ビットコインを始めとする仮想通貨のデータを扱う際には、この分布の特性をよく踏まえる必要があります。

関連記事>>ビットコインはバブルである

参考記事


データ解析その前に: 分布型の確認と正規性の検定 #rstatsj(リンク)
Leihcrev’s memo 入門本編 8章 確率分布(リンク
統計解析フリーソフト R の備忘録頁 ver.3.1 63. 正規性の検定(リンク)
Wikipedia 歪度(リンク
Wikipedia 尖度(リンク

「投資シミュレーションプログラム」サマリー(随時追加)

こんにちは、毛糸です。

本記事は「投資シミュレーションプログラム」に関する記事のまとめページです。

「投資シミュレーションプログラム」とそれを使った各種の分析について、このページから各記事に飛ぶことが出来ます。

投資シミュレーションプログラム

投資シミュレーションプログラムVer.1.0

投資シミュレーションプログラムVer.1.0のコード例と、投資シミュレーションプログラムが用いている「モンテカルロ・シミュレーション」に関する説明は下記ページです。
>>投資シミュレーションプログラムを作ってみた【Rでプログラミング】

投資シミュレーションプログラムVer.1.1

投資シミュレーションプログラムは何千何万という膨大な数のシナリオをコンピュータの圧倒的計算力で処理するプログラムですが、Ver.1.0ではサンプルの計算をfor文を用いて行っていました。

統計プログラミング言語Rはfor文による繰り返し計算よりベクトル演算の方が高速に処理することができ、これを実装したのがVer.1.1です。
>>投資シミュレーションプログラムを高速化してみた

活用例

年金の分析

投資シミュレーションプログラムを用いて、年金積立金のポートフォリオの将来予測を行っています。積立金の100年後の状況を予測したり、1年後に損失が生じる確率が35%あることなどが明らかになりました。
今後、運用期間中に資金が出入りするような、より現実的な仮定のもとで分析を行う予定です。

FX・外貨預金の分析

FXの期待リターンの理論値を計算したうえで、それをパラメタとして投資シミュレーションプログラムを使い、FXで億り人になれる確率や破産する確率を計算しました。

レバレッジが億り人になれるキーであることが明らかになりましたが、破産確率の上昇と隣合わせであることもわかりました。
>>FXの期待リターン、億り人になれる確率、破産する確率【モンテカルロ・シミュレーション】

インデックス投資の分析

資産運用の王道、インデックス投資について、投資シミュレーションプログラムを用いた将来予測を行う予定です。

投資シミュレーションプログラムを支える技術

投資シミュレーションプログラムは、3つの技術と知識によって支えられています。
  1. 確率論・統計学
  2. ファイナンス理論(金融工学)
  3. プログラミング言語
投資シミュレーションプログラムは、確率論における「大数の法則」によって正当性が保証される「モンテカルロ・シミュレーション(モンテカルロ法)」により、将来の予測値を計算しています。
分析の対象は投資であり、金融商品です。金融商品の性質や運用戦略の策定については、ファイナンス(金融工学)の分野において知見が蓄積されています。
投資シミュレーションプログラムにおける実際の計算はコンピュータが行いますので、必然的にプログラミングのスキルが必要になります。投資シミュレーションプログラムは統計プログラミングRを用いて作成されています。
ファイナンスにおけるモンテカルロ法の活用については、下記の書籍が大変役に立ちます。

統計プログラミング言語Rによるファイナンス分析に関しては、下記書籍を読めば、Rの基本的な使いかたから、本格的な分析までを学ぶことが出来ます。

 

FXの期待リターン、億り人になれる確率、破産する確率【モンテカルロ・シミュレーション】

こんにちは、毛糸です。

資産運用にはいろいろな手段があり、なかでも外貨預金やFX(外国為替証拠金取引)は有名どころです。

しかし、外貨預金やFX(以下FX等といいます)は、文献によっては「手を出すべきでない」投資商品として紹介されていたりもします。

たとえば『図解・最新 難しいことはわかりませんが、お金の増やし方を教えてください!』には、以下のように説明されています。

『為替が上がるか、下がるか』と、『金利が高いか、安いか』をセットで考えて、取引価格が決まっているから、買う前にどっちの通貨がお得かは言えない

外貨預金をやるのはコイントスで『表』か『裏』にお金をかけるのとほぼ一緒

 

本記事ではこの主張について詳しく掘り下げ、FX等の期待リターンについて考察したあと、それに基づく「億り人になれる確率」と「破産する確率」を投資シミュレーションプログラムを用いて計算してみます。

外貨預金・FXはなぜ魅力的なのか

FX等は、2つの収益機会にあずかれます。

ひとつは海外通貨に対して適用される高い金利収入(インカムゲイン)、もうひとつは通貨高による価値の増加(キャピタルゲイン)です。

外貨預金は通常、高金利通貨建てで設定され、高い金利収入(インカムゲイン)が得られるとされています。

またキャピタルゲインに関しても、例えば米ドル建て外貨預金をするとして、1ドル100円のときに1万ドルを預金し、引き出し時に1ドル110円になっていれば、円建てでは100万円から110万円に増えることになります。

FXも同様に、為替の変動による利益を得つつ、スワップポイントと呼ばれる金利収入が得られます。

このように、インカムゲインとキャピタルゲインが同時に得られるという魅力があるため、FX等は人気の投資となっています。

FXリターン分析の前提①:裁定取引とフォワード・パリティ

FX等の期待リターンについて考察する前に、いくつかテクニカルな前提をおきます。

今後、通貨高が見込めるような通貨があったとしましょう。つまり、キャピタルゲインが見込めそうな通貨です。

為替の世界には、将来の為替レートを現時点で「約束」する契約が存在します(通貨先物や為替予約といいます)。

もし将来、通貨高になりそうな通貨に対して、将来低いレートで買う「約束」をすることができれば、その取引を行う投資家は、将来安いレートで通貨を買い、高い市場レートで売却することで利益が得られそうです。

このような投資家の行動を「裁定」とよび、通貨は投資家の裁定によって「適正水準」に収斂します。

やや数学的な表現をすると、将来の( T)年後のスポット為替レートの期待値\(E[S_T] \)が「約束」されたフォワード為替レート\( F_T\)と異なっていれば、市場の効率性を前提として裁定が行われ、両者は一致するようにレートが変化します。つまり

\[ \begin{split} F_T=E[S_T]\end{split} \]

という等式が成り立つようにフォワード為替レート\( F_T\)が調整されます。

両辺を現在のスポット為替レート\( S_0\)で割ると

\[ \begin{split} \frac{ F_T}{S_0 }=E[\frac{ S_T}{ S_0}]=E[1+s_{0,T}]\Leftrightarrow E[s_{0,T}]=\frac{ F_T}{S_0 }-1\end{split} \]

となります。\(E[s_{0,T}] \)は為替の変化率(純額表示のキャピタルゲイン)です。

この等式をフォワード・パリティとか、為替レートの期待形成条件といいます。

 

FXリターン分析の前提②:カバー付き金利パリティ

さて、FX等で高金利通貨を買うことで、高いインカムゲインが得られ、運が良ければキャピタルゲインにもあずかれます。

しかし、このような目論見はあらゆる市場参加者(個人投資家や、証券会社などの機関投資家)が狙っているものです。

もし高い金利水準にありながら割安な通貨があれば、その通貨にはまたたく間に買いが入り、一瞬で「適正水準」にまで通貨高になります。

そうなれば、将来のキャピタルゲインの幅が縮まって、投資の旨味が小さくなりますので、投資家は早くに将来の為替レートを「約束」しようとします。

こうした取引によって、フォワード為替レートで「約束」した通貨の値上がり益は、最終的には金利差と同じ水準になるよう調整されます。

数式で表すと、スポット為替レートを\( S_0\)、フォワード為替レートを\( F_T\)、売り通貨の金利(国内金利)を\( i_D\)、買い通貨の金利(海外金利)を\( i_F\)としたとき

\[ \begin{split} \frac{ F_T}{S_0 }=\frac{1+i_D}{ 1+i_F}\simeq 1+i_D-i_F \end{split}\]

という関係が成り立ちます(右辺は近似式)。

つまり、フォワード為替レートという「約束」された為替レート(カバーされたレート)で測る通貨のリターンは、内外金利差と一致するということです。

FX等の期待リターンはゼロ

フォワード・パリティとカバー付き金利パリティを組み合わせると、FX等の期待リターンが計算できます。

FX等の期待リターンは、金利差(インカムゲイン\( i_F-i_D\))と通貨高による増分(キャピタルゲイン\( E[s_{0,t}]\))の和を意味します。

フォワード・パリティより

\[ \begin{split}E[s_{0,T}]=\frac{ F_T}{S_0 }-1 \end{split} \]

であり、

カバー付き金利パリティより

\[ \begin{split}\frac{ F_T}{S_0 }-1\simeq i_D-i_F  \end{split} \]

ですから、これらを合わせると

\[ \begin{split}E[s_{0,T}]= i_D-i_F \Leftrightarrow (i_F-i_D)+E[s_{0,T}]=0\end{split} \]

となります。第一項はインカムゲイン、第二項はキャピタルゲインを表しており、これらの和、つまりFX等の期待リターンは0であることが示されました。

以上のことをまとめると、フォワード・パリティとカバー付き金利パリティによって、FX等の期待リターンは、インカムゲインとキャピタルゲインが相殺され0になる、ということです。

以上の内容は、下記書籍により詳しい説明と数式での証明が載っていますので、合わせてご参照ください。

FXで億り人になれる確率、破産する確率

期待リターンが0のFXで十分な資産を築ける確率はどれくらいなのでしょうか。

以下では当初資金1,000万円をドル円(年あたりリスク10%と想定)で運用するとして、10年後に億り人になれる確率と破産する確率を計算します。

FXはレバレッジ取引が可能ですから、レバ1倍、5倍、10倍のそれぞれのケースを考えてみます。

本性の計算は「投資シミュレーションプログラム」を用いています。シミュレーション回数は10000回です。

  1. レバ1倍の場合、10年後の資産の期待値は1,002万円、億り人になれる確率は0%破産する確率は0%
  2. レバ5倍の場合、10年後の資産の期待値は1,018万円、億り人になれる確率は1.5%破産する確率は20%
  3. レバ10倍の場合、10年後の資産の期待値は1,866万円、億り人になれる確率は3.12%破産する確率は83%

考察

期待リターン0のFXでは、レバをかけないと億り人にはなれないことがシミュレーションで明らかになりました。
また、レバを高めることで億り人になれる確率は高まりますが、同時に破産する確率も高くなることがわかりました。

まとめ

フォワード・パリティとカバー付き金利パリティという関係式から、FX・外貨預金は理論上、期待リターンが0であることがわかりました。この前提のもとで投資を行うと、レバレッジをかけないと多大な富を築くことは出来ないことが明らかになりましたが、一方で破産の確率も高まることがわかりました。

本記事の内容は複数の仮定に基づくものであり、実際の投資収益の成否を保証するものではなく、また実際にFX等で成功していらっしゃる方々の成果を否定する意図は全くありません。また、シミュレーションはあくまで確率論に基づいた予測であることをお断りしておきます。

 

【君の知らない複式簿記2】複式簿記の拡張、三式簿記

こんにちは、毛糸です。

先日こういう呟きをしました。

最近、複式簿記というものについてとても興味を持っており、いろいろ調べております。

今回は、複式簿記の拡張とその例、三式簿記についてお話します。

複式簿記の拡張とはなにか?

「複式簿記の拡張」というのは壮大な試みです。

複式簿記は12世紀頃に生まれたとされ、14世紀の数学者ルカ・パチョーリが著書の中で取り上げたとされています(Wikipedia)。

それから数百年の時が流れ、複式簿記は未だに会計を支える基幹技術として、ビジネスマンの必須スキルとされています。

長きに渡り人類の営みを支えてきたそんな複式簿記ですが、単純な疑問として、複式=貸借の二式簿記は、それ以上の次元に拡張することは出来ないのか?と考えてしまいます。

 

「複式簿記の拡張」として考える際にまず思い浮かべるのは、借方貸方に次ぐ第三の「方」です。

借方貸方の2方向のバランスを、3方向のバランスにするという拡張が思いつきます。

これを勝手に「方向的三式簿記」と呼ぶことにすると、貸方借方ほにゃらら方の3方向にバランスする(3方向の重心が零点になる)と考えられそうですが、この第三の「方」が何を意味するのかは、ちょっとよくわからないですね。

複式簿記においては、貸借対照表の借方貸方が資金の運用と調達という意味付けができますが、この「方向的三式簿記」については、概念としては成立しつつも、意味付けが難しい気がします。

このように、複式簿記の拡張は、それほど簡単なものではないのです。

 

しかし、「複式簿記の拡張できるのか?」もしくは表現を変えて「複式簿記は完成された概念か?」という疑問について、熱心に取り組み一定の成果を挙げた学者がいます。

 

それが、日本人の公認会計士として、アメリカ会計学会の会長を務めた井尻雄士先生です(Wikipedia)。

 

井尻先生の研究については、大藪「<研究ノート>複式簿記から三式簿記へ : 井尻雄二著「三式簿記の研究」を中心にして」(外部リンク)によく整理されています。

 

以下では上記資料を眺めつつ、井尻先生が「複式簿記の拡張」として提唱した三式簿記について述べたいと思います。

 

時間的三式簿記

複式(二式)簿記を三式簿記に拡張するには、まず複式簿記の二次元性がどこからくるものかを理解する必要があります。
複式簿記の二次元性は結局、

財産=資本

という等式に基づいていると井尻は考えました。
ならば、別の等式を新たに加えれば、三式簿記への拡張が出来るのではないか?という考えが生まれます。
井尻先生はここで財産=資本という等式を

現在(財産)=過去の累積(資本)

と解釈しました。BS=現在、PL=過去ととらえた、と言ってもいいでしょう。

こう考えるならば、自ずともう一つの等式が何であるべきかが見えてきます。

現在、過去に続くもう一つの要素、そう、未来を表す財務諸表を加えればいいのです。未来を表す財務諸表=予算計算書を導入することで複式簿記を拡張したものが「時制的三式簿記」と呼ばれるものです。

未来を表す情報、すなわち予算計算書を考えることが、複式簿記の第一の拡張です。

 

しかし、その後時制的三式簿記は「複式簿記を2度適用したもの」にすぎないことが、井尻自身によって看破されました。

 

未来を考えるといっても、それはあくまで1つの時間軸上の話であるから、「複式簿記の拡張」と呼ぶにはやや心許ないということです。

 

微分的三式簿記

時制的三式簿記に限界を見出した井尻先生は、別の確度から「複式簿記の拡張」を試みます。
井尻先生は、1次元と2次元の対応関係が、2次元と3次元の対応関係と並ぶような「次元の拡張」を試みました。
そのような考えで得た次なる視点は、

財産=資本

という等式を

ストック=フロー

という等式として見る、ということです。
ここで、フローはストックの変分を意味すると考えます。
より一般に、フローをストックの「微分」概念と捉えることにより、複式簿記の拡張の緒になるのではないかと井尻先生は考えました。
いわば
\begin{equation} \begin{split}
\mathrm{dBS}=\mathrm{PLd}t
\end{split} \end{equation}
という関係式です。
こう考えることにより、資本の微分(財産の2次微分)概念を新たな次元として、複式簿記を拡張できるのではないかと思い至ります。
離散的に考えれば、損益の2期比較が新たな次元ということになります。
これを利力・利速と呼びます。
実務的には、PLの前年同期比が開示されまするが、これはまさに利力に関する開示情報と言えます。
こうして

財産=資本(の積分)=利力(の積分の積分)

として、複式簿記は拡張されます。
これが微分的三式簿記です。
微分的三式簿記における
  • 財産
  • 資本
  • 利力
は、ニュートン力学における
  • 位置
  • 速度
  • 加速度
に対比されます。

井尻先生は、損益(PL)をBS項目の変化ととらえるところから、拡張を試みました。

BSの差分(極限の世界での微分)としてPLを定義することで、複式簿記は拡張したのです。

井尻先生が発見した微分的三式簿記は彼自身によって「利速会計」と呼ばれ、企業の業績評価に利用できる新しい会計として本にもなっています。

ブロックチェーン的三式簿記

近年、「複式簿記の拡張」とは別の側面から「三式簿記」と呼ばれる概念が生まれました。
それが「ブロックチェーン的三式簿記」です。

これは、取引の当事者2者に加え、当該取引をブロックチェーンに記録することで、会計情報の正確性を担保しようとする試みのことです。

ブロックチェーン的三式簿記は会計情報の正確性や透明性を高める新しい手法として注目されていますが、複式簿記という技術そのものを再定義するものではなく、複式簿記を用いた会計情報の記録手段と考えられるので、私はこれを「複式簿記の拡張」とは位置づけていません。

 

井尻の三式簿記は「複式簿記の拡張」と呼べるか?

時制的・微分的三式簿記を発見した井尻先生は、複式簿記の拡張に際して考慮すべき2つのポイントを挙げています。
1つが旧システムの保存性=拡張された簿記が複式簿記を包含すること、もう1つが新システムの必然性=旧システムから論理的に導かれるものであることです。
井尻先生が自ら結論づけているように、時制的三式簿記は「三式簿記ではない」のですが、微分的三式簿記は保存性・必然性を満たす「複式簿記の拡張」になっているように思えます。

しかし、利力という新たな会計概念の理解や測定といった実務的困難さゆえ、現状有用なものとはみなされていません。

複式簿記が会計計算技術であるという前提に立てば、微分的三式簿記はその概念の普及と利力の測定インフラの整備が必要です。

終わりに

現代の日本の会計研究界において「複式簿記の拡張」というテーマに取り組んでいる研究者はどれくらいいるのでしょう。
社会に広く浸透している複式簿記は、果たして完成された概念なのか、それとも更に高い次元に至る可能性を秘めているものなのか、個人的にじっくり研究していきたいと考えています。

最近読み進めている『Algebraic Models For Accounting Systems』という書籍は、複式簿記の代数的構造に着目した、異色の会計専門書です。

複式簿記そのものが持つ構造・性質を深く理解すれば、複式簿記の拡張も可能になるかもしれません。

私は、井尻先生に挑戦したいと思います。

私の生活において「数学」は何に役立っているのか

こんにちは、毛糸です。

最近、数学を学びなおす社会人が増えているそうです。

ビッグデータやAIといった新しいテクノロジーを理解するに当たり、数学が重要であるというのがあるようです。

私も、大学院で金融工学を研究し、その後も趣味で勉強を続ける中で、数学をいつも身近に感じています。

今回は、私の生活において数学がどんなふうに役立っているのかを振り返ってみたいと思います。

続きを読む

【君の知らない複式簿記1】行列簿記の意義、性質、限界

こんにちは、毛糸です。

会計は企業の活動を財務諸表という成績表として表現するためのルールであり、「複式簿記」の規則に従って財務諸表が作られます。

簿記を学習するうえでは、簿記3級のような資格にチャレンジしたことがあるかと思いますが、そこでは複式簿記の規則が問われます。

今回は、そんな複式簿記の、ちょっと変わった考え方についてお話します。

本記事でお話するのは、複式簿記を「行列」で表す「行列簿記」という手法です。

続きを読む

『モンテカルロ法によるリアル・オプション分析』内容の概説、こんな人におすすめ、いい点と注意点

こんにちは、毛糸です。

5/11土曜日に、『モンテカルロ法によるリアルオプション分析』(きんざい)の輪読会を開催します。

>>『モンテカルロ法によるリアル・オプション分析』輪読会第1回 hosted by PyCPA(外部サイトに飛びます)

今回は本書の内容をざっくり紹介したあと、この本がどんな人におすすめかに触れたあと、いい点と注意点について説明します。

目次

  • 本書の目次と内容概説
  • こんな人におすすめ
  • いい点と注意点その1:ファイナンス・金融工学・リアルオプションの教材として
  • いい点と注意点その2:エクセルVBAの教材として
  • まとめ

本書の目次と内容概説

第1章 エクセルVBAプログラミング入門

エクセルVBAとはどんなプログラミング言語なのか、どうやって使い始めたらよいのかを解説しています。

第2章 数値解析入門

モンテカルロ法とは何かを説明し、実際にモンテカルロ法を用いて円周率の推定を行います。覆面算、方程式、数値積分、常微分方程式などを題材に、モンテカルロ法の理解を深めます。

第3章 乱数

乱数とは何かについて説明したあと、乱数の生成方法について述べます。乱数発生アドインのインストールを解説し、以後の章の準備をします。本書では線形合同ジェネレーターの拡張版と、インバース法を用いて正規乱数を生成します。

第4章 基本株価プロセスとブラック・ショールズ・モデル

二項モデルの例をみたあとに、ランダムウォークと株価プロセスのモデル化を行います。モンテカルロ法による「ブラック・ショールズ・モデル」の実装方法について説明します。

第5章 エキゾチック・オプション

バイナリー・オプション、ルックバック・オプション、バリア・オプション、アジア型オプションの評価方法とコード例を説明します。

第6章 推定誤差

サンプル数による推定誤差の理論と計算について述べます。推定精度の向上法や離散化による推定誤差について説明しています。

第7章 シンプルなモデル

売上高のランダムなパスを生成し、リアルオプション分析のためのシンプルなモデルを作成します。

第8章 リスク中立評価

リアルオプションを含むデリバティブの評価理論に必要なリスク中立評価法について、数式で詳しく説明します。

第9章 基本プロセスの拡張

前章までで紹介された基本プロセスに、配当、外国為替、価格のジャンプなどを入れて拡張します。ファット・テイル分布からのサンプリングや平均回帰過程についても説明します。

第10章 スタートアップ企業の評価

Schwartz and Moonの「アマゾン」モデルを使って、スタートアップ企業の評価を行います。

第11章 アメリカン・オプションの評価

最小二乗モンテカルロ法(LSM法)について説明し、バミューダ・プット・オプションの評価を行います。

こんな人におすすめ

本書はファイナンス・金融工学で研究されてきたデリバティブの価格評価理論を応用し、経営上の意思決定の柔軟性が生む企業価値(リアル・オプション)の評価を行います。
リアル・オプション分析に必要な金融工学の数学的背景が丁寧に解説されているため、金融工学を学ぶためのテキストとしても適しています。
数学(解析学や確率論)に触れてきた人で、その知識を実務に活かしたい人は、本書でデリバティブ理論を学ぶことが出来ます。
また、リアル・オプション分析を行うに当たり、プログラミングが必要になります。
本書ではエクセルに標準搭載されたプログラミング言語VBAを用いてリアル・オプション評価のためのプログラムを作成します。
プログラミングに初めて触れる人でも躓かないよう、エクセルVBAの使い方からプログラミングの基礎的内容を説明しています。
昨今のプログラミングブームのなかで、自分も何か始めたいけれど、どんな言語を始めたらいいのかわからず、勉強方法についても悩んでいる、という人は、本書を手を動かしながら読むことで実力が身につきます。

いい点と注意点その1:ファイナンス・金融工学・リアルオプション

本書のテーマはモンテカルロ法を用いて企業の意思決定の柔軟性から生まれる価値=リアル・オプション価値を定量的に評価することです。
本書で学ぶリアル・オプション分析は、従来、ファイナンス・金融工学という分野で蓄積されてきた研究成果を応用したものです。
ファイナンスとは、リスク(不確実性)と時間の概念を明示的に考慮した経済学の一分野であり、確率論を高度に利用した応用数学の側面もあります。
金融工学とは、ファイナンスのうち、実務的便益を企図していることを強調した表現です。
本書ではファイナンス・金融工学のうち、リアル・オプション分析に必要な部分を整理して解説してくれているため、ファイナンス・金融工学を勉強する大変よい教材となっています。
本書に取り組むことで、実務への応用を前提としたファイナンス理論を習得することが出来ます。
ただし、ファイナンス・金融工学を完全に理解するためには、数学、とくに解析学や確率論の知識が必要不可欠です。
本書ではファイナンスに用いる数学を最低限しか解説していないため、例えば高校レベルの数学に抵抗感を持っているような人には、通読が難しい内容となっています。
高校数学に不安のある方はまず高校数学の参考書に取り組むことをおすすめします。

また、ファイナンスで用いる数学は、高校数学+アルファなので、この「+アルファ」の部分を勉強する必要もあります。具体的には確率解析と呼ばれる、確率論と微積分学の応用分野が必要になります。
ファイナンスに用いる数学については、以下の本に必要最低限の内容がまとまっているため、参考文献にすることを勧めます(増補版は入手しづらいようですが、古い版でも十分です)

いい点と注意点その2:Excel VBA

リアル・オプション分析では、乱数を用いた将来予測(モンテカルロ・シミュレーション)を強力なツールとして利用します。

コンピュータの計算力をフル活用した現代的手法であるモンテカルロ・シミュレーションを行うには、コンピュータに処理をさせるためのプログラミング言語を習得する必要があります(簡単なものであれば、エクセルシートでもなんとかなります)。

本書はモンテカルロ法を実行するに当たり、エクセルに標準搭載されているプログラミング言語VBAを用います、

VBAはエクセルがインストールされたPCであれば特別なことをしなくてもすぐに使えるようになりますので、プログラミングの入門には適しています

構文も難しいものではなく、少し訓練すれば容易に習得可能ですし、その訓練は本書にじっくり取り組むことで達成されます。

実際、私のプログラミング力を飛躍的に上昇させたのは、この本を読んだからです(私はプログラミング勉強会を開くまでにスキルアップしました)。

実際に手を動かしながら本書を読み勧めていく中で、エクセルVBAとプログラミングの基礎がしっかり身につきます

ただし、一点注意点があります。

プログラミング習得には近道は存在しません。

本書を流し読みすれば勝手にプログラミング力が身につくということは絶対にありませんので、しっかり自分で手を動かす必要があります。

本書に記載されているコードを実際に打ち込む(エンジニア用語で、写経する、と言います)ことでしか、プログラミング力は向上しません。

そもそも本書は、紙面上でコードが記載されてはいるものの、コーディング済みのエクセルシートなどは公開されていません

もし「手軽にリアル・オプション分析を行うためのツールが欲しい」と考えている人にとっては、本書はふさわしくないでしょう。

裏を返せば、確かなプログラミング力を身につけるための教材としてはこれ以上のものはないと言ってもいいでしょう。

スキルアップを目指す方にとって最高の教材です。

まとめ

『モンテカルロ法によるリアル・オプション分析』はファイナンスとVBAを使ってリアル・オプションを学ぶ大変良い教材です。
ある程度の数学の素養がある人が、ファイナンスとプログラミングを学ぶのにおすすめの本です。
ファイナンスを基礎から学び、数理的思考力を鍛えることが出来るとともに、VBAプログラミングのスキルを効率的に学ぶことが出来ます。
リアル・オプション分析の手法を学ぶことで、企業の意思決定に説得力をもたせることも出来ます。
難書ではありますが、間違い無しの良書です。是非チャレンジしてみてください。

まだ数学から逃げてるの?これからのビジネスと数学

こんにちは、毛糸です。

先日、私が所属している勉強会で「会計士と数学」に関するセミナーが行われました。

昨今のAIを始めとするテクノロジーの進展の背景には数学の利用があり、ビジネスマンの中でも数学を勉強したいという人が増えているようです。

今回は、これからのビジネスと数学についてお話します。

続きを読む

Warning: Trying to access array offset on value of type bool in /home/r1406503/public_html/keito.luxe/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 299

Warning: Trying to access array offset on value of type bool in /home/r1406503/public_html/keito.luxe/wp-content/themes/xeory_base/lib/functions/bzb-functions.php on line 301
class="col-md-4" role="complementary" itemscope="itemscope" itemtype="http://schema.org/WPSideBar">