価格変化率はなぜ対数でなければならないのか?

以前にも疑問に思って、挫折した問題。
もう一度チャレンジしてみます。

084162

価格の絶対値と変化率

バーゲンセールでお買い物に行ったところ

1)定価1000円の洋服が500円だった
2)定価10000円の洋服が9500円だった

両方とも500円の割引。
でもお得感を感じるのは、間違いなく1)の方でしょう。

500円という金額の絶対値ではなく、それぞれの変化率(割引率)を計算してみます。

1)500/1000-1=▼50%
2)9500/10000-1=▼5%

わざわざ計算するまでもなかったかもしれませんが、1)は半額の50%OFF、2)は5%OFFです。

なので、同じ500円の割引でも価値が違う、というのはOKですね。

株価の場合も同じで、1000円の株が500円下がったら「ぎゃぁあ!!」だけど、10000円の株が500円下がっても「あいたたた…」くらいでしょ。

だから株価の上昇/下落は、普通は価格差でなく変化率で表します。

価格変化率=当日終値÷前日終値-1

これがいわゆる騰落率というヤツでしょう。
ニュースとかでも、「今日の日経平均は〇%の上昇でした」っていう場合は、上記の式を使ってるはずです。

でもでもでもね、オプションとかFXの分析をするときに、対数変化率を使えって書いてることが多いんですよ。

今回はその謎を解明したいと思います。

上昇と下落を対称にする

1000円の株が50%下落した、翌日は50%上昇した、その翌日は50%下落した、その翌翌日は50%上昇(ry
これを繰り返していくと

1日目 1000*50%=500
2日目 500*150%=750
3日目 750*50%=375
4日目 375*150%=562.5


対数1

こんな感じで株価は下がっていってしまいます。
50%下落したら100%上昇しないと、株価は元の価格に戻りません。

そんなの当たり前じゃん!って思うかもしれませんが、上昇と下落を対称にするためには対数を使うようです。

対数には常用対数自然対数があって、何が違うかというとが違います。

常用対数は底が10
自然対数は底がe(ネイピア数、2.71828182845904・・・)です。

底ってなんだい?っていうのは、のちほど説明します。

とりあえず株やオプション、FXなどの分析では自然対数(Ln)が使われてるみたいです。
が、ここでは説明しやすいので常用対数(Log)を使います。

っていうか、そもそも対数ってなんぞや?
というところから、まずは解説してみますね。

対数とは?

対数2

環境依存文字(小さい文字)は、端末によっては上手く表示されない?ので、上記は次のように表記します。

2^3=8
LOG(2)8=3

まずは、2^3=8の方は大丈夫ですよね?
2を3乗したら8になる、2×2×2=8っていう意味です。

で、先に言っちゃうと、3が指数であり対数です。
2は底です。

2^3=8のときの3、右肩にある小さい文字のときは指数ですが
LOG(2)8=3のときの3は対数です、説明むずい…

つまり、2を3乗すると8になりますよ、っていうのは指数
じゃあ、8は2を何乗したの? ⇒ 3乗です、っていうのが対数

説明合ってるかな…
間違ってたらコメント欄に指摘お願いします。

では、問題です。
625は5の何乗ですか?

【答え】
5^x=625 ⇒ x=LOG(5)625
ってなるんですけど、Excelの関数で求めちゃいましょう。

・対数を求める関数
=LOG(数値、底) ※底は省略可、その場合は底は10

対数3

こんな説明で、対数とは何か?わかってくれた人が一人でもいれば幸いです…

日経平均の対数変化率のヒストグラム

疲れたので、結果を書きますね…
まずは、日経平均20年分のグラフです。

日経平均20年分

左軸、青線が価格推移。
右軸、赤線が対数目盛です。

次に、
価格差=(当日終値―前日終値)
騰落率=(当日終値÷前日終値―1)
対数変化率=LOG(当日終値÷前日終値)
この3つの分布図を描いてみました。

対数4
※クリックすると拡大します

あれ?価格差も正規分布っぽくなってるぞ…
やっぱり騰落率と対数変化率に、差がほとんど見られないし、もうわけわかめ…

暫定結論

僕の数学能力が欠けてるので、まったく意味のない検証になってしまいましたが…
計算ミスもあるかもしれないなあ。

たぶん、日経平均の日次変動率くらいだと、普通の騰落率と対数変化率はほとんど変わらない。
10倍とか100倍とか変動するものだと、違ってくるんじゃないですかね。

実際に僕も価格の変動率に対数は使ってないし。
数倍とかに変動する可能性のある変数にだけ、いちおう対数を使っています。

トレンドフォロー型ペアトレード【検証結果】

金曜日のようなミスをもう二度としないように…
3連休はシステムの完全自動化にあてました。

まあ一応できたことはできたんだけど、エラー処理が不安で実践では使いたくないなあ。
想定外のエラーが出たときのために、やっぱり目視はしておきたいです。

‘実行時エラー442’とかね、どう対処していいのかわかんないもん。
とりあえずOn Error Resume Nextですっ飛ばして、発注が上手くできなかったときは諦める、って感じかなあ。

どっちにしろ、パソコンの電源やネット回線が落ちたら、どうにもならないんだけど…

ってことで、まったりできる寄り引けシステムを構築中。

お風呂の中でパッとアイデアを思い付いだんで、約一年半ぶりにシュート練習しましたよ!!

シュート練習1

おぉ、思いつきの割には素晴らしいw
タイトルにあるようにトレンドフォロー型のペアトレード検証。

弱い銘柄を買って強い銘柄を売る、鞘の収斂を狙うのではなく、鞘の拡大を狙う戦略。
完全寄り引けです、これならオーダーミスの心配ナッシング。

一発目のシュート練習でこれくらいの結果が出ると、ちょっと研究意欲が湧いてきたぞ。

夕凪さんの過去エントリは、ほとんど読ませて頂きました。
ヒントはたくさんもらったので、それを参考に検証したいと思います。

試行回数がこなせないと思って、イベント戦略はあまり研究してこなかったんだけど。
小さなものを含めれば、毎日何かしらのイベントはありますからね。

やはりモメンタム戦略に、触媒(イベント)は必須だと思うので。
テクニカル的な分析だけでは、難しいと思います。

トレンドフォロー戦略について、ヒントが落ちてないか色々ググってみたんだけど、ほとんどが情報商材かアフィリエイト目的のFXサイトばっかり。

こんなんまったく参考にならねーよ。
って、10年トレードやってるから判断できるけど、トレードを始めたばかりの人は見抜けないだろうなあ。

俺も、たくさん騙されてきたもん。
まあ、ネットに落ちてる情報の99%がゴミ。でも、残りの1%にヒントが落ちてたりもするんだよなあ。

だからネットサーフィンするんだけど、さっきも書いた通り、トレードのことだったらある程度判断できる。

でも、アフィリエイトに関してはまったく判断できません!
アフィリエイターをカモにするアフィリエイターのネギにされそうで怖いです。

アフィリエイトは金銭的なドローダウンはないけど、だからといってストレスがないわけじゃない。
リスクが少ない、敷居が低い分、リターンを得るのも難しく感じてます。

と、アフィリエイトから逃げる口実を必死に探していますw

結局、俺はトレーダーなのかな…

時間になったらブックを開いてマクロを実行【寝坊対策】

タイトルから、僕の今日のサボりの原因がバレてしまいそうですが(笑
指定した時刻になったら、ファイルを開いて実行するマクロを作ります。

ボタン一発押すだけなんだし、寝坊しなきゃいいだけの話なんだけど。
今日みたいな思いは絶対にしたくないもん。
ストラテジーが増えたら、どっちにしろ必須になるだろうし。

OnTimeメソッド

onTimeメソッドの使い方は簡単です。
あまり使ったことはないけど(笑

Application.OnTime EarliestTime:= _
TimeValue(“8:50“), Procedure:=”実行するマクロ

基本的な構文はこんな感じ。
太文字の時刻と実行したいマクロ(プロシージャ名)を代えればOK。

 icon-check-square-o サンプルマクロ

Sub Auto_Open()
    Application.OnTime EarliestTime:= _
    TimeValue("8:50"), Procedure:="実行するマクロ"
End Sub


Sub 実行するマクロ()
    MsgBox ("まだ寝てるの!?" & vbCrLf & "ダウが大幅安よ。")
End Sub

簡単にコードを解説します。

標準モジュールにAuto_Openという名のプロシージャ名をつけることで、Excelのファイルを開いたときにマクロを自動的に実行してくれます。
標準モジュールではなく、ThisWorkbookにWorkbook_Openというプロシージャを記述する方法もあります。

Excelのファイルを開いてから、マクロを実行しないでもOK。
Excelファイルを開きっぱなしのまま寝ればいい。
これで安心して寝坊できます。

えっ?パソコンつけっぱなしだと電気代がもったいない?
朝、自動でパソコンも立ち上げたい?

BIOSっていう設定で、割と簡単にできるけど…
それくらいは自分でしなさい!

まあ、スマホから遠隔でパソコンの電源を立ち上げられたら、すごく便利そうなのだけれども。
これは有線LANだと、かなりハードルが高くて挫折しました。

無線LANだと簡単っぽいんですけどね。
まあ、簡単に遠隔で操作できるようだとセキュリティー面でも心配か…

あと、vbCrLfはMsgBox内で改行するコードです。
知らない人も多いと思います、それはあまり使わないから(笑

Workbooks.Open

話しが少しそれてしまいましたので、次に進みます。

指定時刻になったらマクロを実行するファイルと、売買サインやら発注をするファイルを別にしたいときがありますよね。
そんなときは、Workbooks.Openメソッドを使って、指定したブックを開きます。

Workbooks.Open “場所:ブック名.xlsm”

場所はドライブ名など。あとはブック名と拡張子を指定します。
ちなみにExcelの場合、ファイル=ブックと覚えておいて大丈夫っぽいです。

Excelファイルの上にマウスカーソルを合わせて右クリック ⇒ プロパティで場所とブック名の確認はできます。

 icon-check-square-o サンプルマクロ
Sub Auto_Open()
Application.OnTime EarliestTime:= _
TimeValue(“0:38″), Procedure:=”実行するマクロ”
End Sub

Sub 実行するマクロ()
Workbooks.Open “C:\Users\PCUser\Desktop\test.xlsm”

Workbooks(“test.xlsm”).Activate
End Sub

ロング・ショート戦略の限界から新たな武器探し【イベント・ドリブン戦略】

モメンタム戦略

016818

ロング・ショート戦略一本ではやはり厳しいので、新たな武器を探すことにしました。

もちろん、ロング・ショート戦略がもうダメってわけじゃないですよ。
僕のお粗末なモデルでも、一応プラスの収支を出せてはいるし、改善の余地はいくらでもある。

時間軸やアセットクラスを変えることで、今のモデルと相関の低いモデルを作ることも可能だと思う。

でもね、ロング・ショート戦略にもレラティブバリュー型やマーケットニュートラル型など、いくつかの種類があるんけど。
結局は、割安を買って、割高を売るってことに変わりはない。

割安、割高をどういう基準で判断するかで運用成績もガラリと変わるし、モメンタム型(強い銘柄を買って、弱い銘柄を売る)という戦略もあると思うんだけど、僕はモメンタム型の戦略を完成させることはできなかった。

それなりに時間を割いて検証したときもあったんですけどね。
納得いくレベルの検証結果は出ず、運用に至るまでにはいかなかった。

その理由の一つとして、モメンタムが発生するには触媒(イベント)が必要なため、今のモデルと違ってトレードの機会が圧倒的に少ないから。

トレードの機会が少ないということは、再現性が低い可能性が高い。
何故そうなるのか?という根拠、演繹的推論がしっかりとしていれば問題ないはずだけど、ファンダメンタルに疎い僕にその自信はなかった。

後知恵バイアスによるこじつけと、数値合わせによるカーブフィッティングになってしまいそうだ。

うむ、久々に真面目に相場のことを書いている気がする(笑

自分が従えるシステム byエド・スィーコータ

048368

タイトルにイベント・ドリブン戦略と書いたけど、別に戦略は何でもいいです。
ただ、数あるヘッジファンドの手法の中でも、イベント・ドリブン的なものが模倣しやすい、かつ今の自分に合ってるかな?と思っただけです。

企業の買収や合併による株価の歪みだけでなく、狙えるイベントは何でも狙います。

たぶん、参考にする方は夕凪さん。
ブログを片っ端から読み漁ってみます、まだブログがあればだけど。

もう古い?
劣化してライバルが減った手法をリサイクルするのは大好きです。

僕の理想としては、慌てずゆっくりトレードできること。

バタバタしたり、コンマ何秒を争うトレードは嫌。
瞬間的な判断を要するものもダメ。

理想は寄り引けとか、一泊二日とか。
夜にのんびり注文入れられそうなもの、ないだろうけど(笑

ほんとは完全自動売買で高速スキャをやりたいけど、その技術は当然ない。
だから、スイングトレードみたいな感じになるのかなあ?

何にせよ、研究してみないことには話にならないので、空いた時間はトレードの検証にあてます。

結局、トレーダーに戻っちゃったねえ(笑

無題

エクイティーカーブは、ブレイクアウトしてくれて一安心…

胸のモヤモヤ(ざわざわ)を解消【呼吸法】

悩み事や不安、ストレスがあったときに、胸の辺りがモヤモヤして不快に感じることはありませんか?

572f48ca2decf0400a7e5c6c65c24902_s

強い痛みではなく、何となくしくしく痛む感じです。
僕はずっと、この胸のモヤモヤに悩まされてきました。

病院に行くほどのことではないのだけれど、この症状があらわれるととても不快です。
集中力が落ち、何をしてても楽しめません。

何か直接的な原因がはっきりしているならば、それが解消されれば胸のモヤモヤも消えます。
なので、それに対処していけばいいです。

でも漠然としたもの、例えば将来の不安とか。
そういったものは、すぐには解消できませんよね。

なので、ずっと胸のモヤモヤに悩まされることになるのですが…

自律神経の乱れ

どうやらこの胸のモヤモヤは、自律神経の乱れによって起こるようです。

自律神経とは、自分の意思ではコントロールできない末梢神経のこと。
心拍数や体温、汗の量などですね。

70da85a5cef44be9b3adefcb33b40467_s

さらに自律神経は、交感神経と副交感神経にわけることができます。

交感神経は「闘争と逃走」の神経などと呼ばれ、興奮や緊張を起こす神経です。
副交感神経は逆に、体に落ち着かせる働きをします。

交感神経と副交感神経のバランスが崩れた状態が、いわゆる自律神経失調症です。

また、自律神経とホルモンは密接な関係にあります。
自律神経が乱れればホルモンバランスも崩れ、逆にホルモンバランスが崩れると自律神経も乱れてしまいます。

ホルモンバランスの崩れ

脳には、自律神経の調整を行う視床下部があります。

ストレスによって視床下部が影響を受けると、脳内で情報伝達が行えなくなります。
すると、上手く頭が働かなくなったり、ネガティブな思考に陥ったりしてしますのです。

この状態が胸のモヤモヤ(ざわざわ)を起こし、酷くなると「うつ病」になってしまうこともあります。
なので、早い状態で胸のモヤモヤを解消してあげる必要があります。

腹式呼吸

お待たせしました。
本題の胸のモヤモヤの解消法です。

82eaafeb9bfb65fa5b7a230547a759c3_s

方法はいくつもありますし、もちろん効果には個人差がありますが、僕が実際に試してみて一番効果があった、かつ簡単な方法を紹介しますね。

それは、ズバリ腹式呼吸です。

鼻から息をスッと吸って、おへその下辺りにグッと力を入れる。
そしたら、ゆっくりと10秒以上かけて、口から息を吐き出していきます。

腹式呼吸ですから、息を吸うときにはお腹を膨らまし、吐くときにはへこますのですが、上手くできない人は初めはお腹に手を当てながらやってみてください。

また、10秒以上かけて息を吐くのは、最初は辛いかもしれませんが、これも慣れれば自然にできるようになります。

さらに、この呼吸法の効果をUPさせる方法があります。
胸のモヤモヤをできるだけ具体的にイメージするのです。

どんな色をしてるか?どんな形をしてるか?など。
僕の場合は、薄黒い煙のような形です。

それを息を吐き出すときに、一緒に吐き出すようにします。
嘘みたいに胸がスーとしてきますよ!

他には、軽い運動やハーブティーなど。
リラックスできて、ストレスを解消するのがよいみたいですね。