FC2ブログ
    cernのrootの基本文法(1次元ヒストグラムと誤差棒付きグラフ etc.)
    Kapok の資産運用PCLinux・Mac
    解析ソフトのrootの基本事項をメモしておきます。
    自分用の覚書です。

    下記のコードは、株式リターンの季節変化を検証するためのマクロですが、その過程で

    ①1次元ヒストグラムを作る
    ②作ったヒストグラムにデータを入れる
    ③ヒストグラムを表示する
    ④ヒストグラムからパラメータを取得する
    ⑤エラーバー付きグラフの設定・表示

    を行います。




    1 #include<iostream>
    2 #include<fstream.h>
    3 using namespace std;
    4
    5 void month(){
    6
    7 // histogram set up
    8 char hname[16]={0};
    9 TH1D* mhis[12];
    10 for (int ii=0;ii<12;ii++){
    11 sprintf(hname,"h-%02d",ii+1);
    12 mhis[ii]=new TH1D(hname,hname,16,-20,20);
    13 mhis[ii]->GetXaxis()->SetTitle("return [\%]");
    14 }
    15
    16
    17
    18 // read data
    19 char line[256]={0};
    20 int yy,mm;
    21 double rtn; //return
    22 ifstream ifs("nikkei225_monthly_return.txt");
    23 while(ifs.getline(line,256)){
    24 stringstream st;
    25 st << line;
    26 st >> yy >> mm >> rtn;
    27 mhis[mm-1]-> Fill(rtn);
    28 }
    29 ifs.close();
    30
    31
    32
    33 // plot histogram
    34 TCanvas *c1=new TCanvas("c1","c1",0,0,1200,900);
    35 c1->Divide(4,3);
    36 //gStyle->SetOptStat("nerM");
    37 for(int ii=0;ii<12;ii++){
    38 c1->cd(ii+1);
    39 c1->cd(ii+1)->SetGrid();
    40 mhis[ii]->Draw();
    41 //mhis[ii]->Fit("gaus");
    42 }
    43
    44
    45
    46 // get histogram parameters
    47 double rmean[12]={0};
    48 double rerr[12]={0};
    49 double month[12]={0};
    50 double merr[12]={0};
    51 for(int ii=0;ii<12;ii++){
    52 rmean[ii]=mhis[ii]->GetMean();
    53 rerr[ii]=mhis[ii]->GetMeanError();
    54 month[ii]=ii+1;
    55 merr[ii]=0.5;
    56 }
    57
    58
    59
    60 // Graph set up
    61 TGraphErrors *gr = new TGraphErrors(12,month,rmean,merr,rerr);
    62 //gr->SetMarkerStyle(3);
    63 gr->SetTitle("month .VS. stock return");
    64 gr->GetXaxis()->SetTitle("month");
    65 gr->GetYaxis()->SetTitle("return[\%]");
    66
    67
    68 // plot Graph
    69 TCanvas *c2=new TCanvas("c2","c2",0,0,450,450);
    70 c2->cd(1);
    71 c2->cd(1)->SetGrid();
    72 gr->GetXaxis()->SetLimits(0.5,12.5);
    73 gr->Draw("ap");
    74
    75
    76
    77 }
    78


    7-14行目:
    1次元ヒストグラムを作ります。配列を使えば、複数のヒストグラムを同時に作ることができて便利です。12行目で3番目の引数がビンの数、4番目が最小値、5番目が最大値です。

    18-29行目:
    データの読み込みです。27行目で値をヒストグラムに入れています。

    33-42行目:
    ヒストグラムを表示するための枠を作り、分割やグリッド線のセット等の調整をしています。40行目で描いています。

    46-56行目:
    作ったヒストグラムで得られた平均値やその誤差を取得する事ができます。

    60-65行目:
    エラーバー付きグラフのセットアップです。61行目のように配列を突っ込みます。

    68-73行目:
    グラフを描きます。


    rootマクロはmonth.ccと名前をつけて保存し、
    root -l month.ccと打てば、結果は下図のようになります。

    rootsample.png
    ※クリックで拡大します。


    2014.05.08 / コメント:: 0 / トラックバック:: 0 / PageTop↑

    「柏の宮公園」と「塚山公園」 散策しました
    Kapok の資産運用写真観光地
    「柏の宮公園」と「塚山公園」を散策しました。2つの公園は隣接している東京都杉並区の公園で、京王井の頭線浜田山駅から徒歩20分程度の位置にあります。


    柏の宮公園 新緑の季節の木々:
    IMG_0473_2.jpg
    新緑の瑞々しい木々が楽しめる季節でした。


    柏の宮公園 日本庭園:
    IMG_0477_2.jpg
    やや荒涼とした日本庭園でした。ゴールデンウィークですが、私が行ったときは観光客は一人もいませんでした。風に揺れる木々の音を聞きながら、腰掛けに座りゆっくりと過ごすのもまた一興でした。


    塚山公園 池:
    IMG_0481_2.jpg
    階段を上ったところに池がありました。水のある景色はなぜか落ち着きます。


    写真撮影:2014/5/4



    2014.05.06 / コメント:: 0 / トラックバック:: 0 / PageTop↑

    投資信託での資産運用出口戦略 等口数解約と等金額解約との比較
    Kapok の資産運用投資手法出口戦略
    ライフステージレベルの長期的な視点では、資産運用は、
    ①(給与などで得た)現金を金融商品に投じる段階
    ②保有する金融商品を売却し、現金を得る段階
    の2段階に分かれる事があります。

    今回は、②の売却時の手法について考えます。投資信託の等口数解約と等金額解約とを比較し、等口数解約の方が有利そうだという事を説明します。

    同時にそれぞれのメリット・デメリットを挙げてみます。


    1. 解約シミュレーションとその結果


    1-1. シミュレーション設定

    某外債型投信の運用損益実データを使いシミュレーションします。最初10,000千円保有(基準価額10,000円で10,000千口)していたとして、これを毎月解約します。

    解約は2種類で
    ①毎月50千口ずつ解約した場合(青)※等口数解約
    ②毎月60千円ずつ解約した場合(赤)※等金額解約
    のそれぞれの場合での運用状況の変化を考えます。


    1-2. シミュレーション結果

    結果は下図のようになりました。

    KaiyakuHikaku_ToukuchiToukin.png
    ※クリックで拡大します。


    1-3. 上図の説明

    青線上方:
    等口数解約での総資産額(保有投信+解約後の受け取り金)推移です。

    青線下方:
    等口数解約での月々の解約金です。等口数解約では、区間①のように運用成績が悪い時は、1口あたりの価額が小さくなるため、受け取る金額が少なくなります。逆に区間②のように運用成績が良い時は、受け取る金額が多くなります。

    赤線上方:
    等金額解約での総資産額(保有投信+解約後の受け取り金)推移です。

    赤線下方:
    等金額解約での月々の解約金です。等金額解約では、投信の運用状況の良し悪しに関わらず、月々同じ金額を受け取る事になります。


    1-4. パフォーマンス比較

    最終的には2014年3月に
    等口数解約:12,104千円
    等金額解約:11,670千円
    の総資産になりました。

    等口数解約の方が433千円多くの資産を持つ事になりました。同じ金融商品での運用でも、解約手法の違いにより、パフォーマンスが異なる事になります。


    2. 結果分析と、等口数解約と等金額解約のメリット・デメリット


    2-1. 結果分析

    上記のシミュレーションでは、等口数解約が等金額解約と比べて良い成績となりました。この要因を2つ程挙げてみます。

    要因①
    等口数解約では、運用状況が良くない「区間①の部分」での解約金額が少なくなっています。解約金が少なかった分、区間②における上昇相場でのリターンが多くなりました。安い所で売らなかった事が、等口数解約でのパフォーマンスが良かった要因の1つです。

    要因②
    等口数解約では、運用状況が良い「区間②の部分」での解約金額が多くなっています。この期間に高値で売る事が出来た分、等口数解約のパフォーマンスが良くなっています。


    2-2. 等口数解約と等金額解約のメリット・デメリット

    以上の結果を踏まえ、各解約手法のメリット・デメリットで考え付くものを列挙してみます。


    等口数解約のメリット:
    ①安値で手放す金額が少なくなるため、運用成績を良くする事が期待できる
    ②高値で売る金額が大きくなるため、運用成績を良くする事が期待できる
    ③同じ口数ずつ解約するため、解約する期間の長さを読む事ができる

    等口数解約のデメリット:
    ①受け取る金額が投信の運用成績に依存するため、不安定となる
    ②一方的な右肩上がり相場の場合、解約金が増える事に伴い更なる上昇の恩恵を得にくい

    等金額解約のメリット:
    ①受け取る金額が投信の運用成績に依存せず安定する
    ②一方的な右肩上がり相場の場合、解約金が増えない分だけ更なる上昇の恩恵を受けられる

    等金額解約のデメリット:
    ①安値で解約する口数が多くなるため、安値売りの多さから運用成績が悪くなる事がある
    ②高値でも売る金額が大きくならずに一定のため、利益確定の機会損失となる事がある
    ③解約する口数が投信の基準価額に依存するため、解約する期間の長さを読む事ができない


    3. その他・所感


    等口数解約の方がメリットは多そうです。ドル・コスト平均法の逆で、解約時には等口数解約が、等金額解約と比較し、平均売却価額の観点で有利だという事が数式を使って示せたりもします。

    参照:投信運用出口戦略には、「等口数解約」が効果的(過去記事)


    ただし、値動きによっては等金額解約の方が資産総額が大きくなる事もあり、一概には言えません。結局は、「いかに安く買い、高く売るか」という運用側面と、「安定したキャッシュフローの価値・重要性」という生活面での折り合いで決める事になるのかも知れません。


    2014.05.02 / コメント:: 2 / トラックバック:: 0 / PageTop↑




    Pagetop↑
    ブログ内検索
    プロフィール

    Kapok

    Author:Kapok


    個人投資家。1986年生まれのサラリーマンです。将来、資産運用で財産を築き、自由に暮らす事を夢見ています。

    ブログについて
    「資産運用について調べた事・考えたこと」をブログのメイン記事にしています。

    記事の情報の正確さには注意を払っていますが、保証はしません。投資判断は自己責任でお願いします。

    Kapok
    資産運用の方針
    資産運用は、下記の規定の範囲内で行っています。私Kapokが、どのような個人投資家であるかがよく分かるファイルになっています。

    Kapok の資産運用規定

    最近の記事・コメント

    アクセスカウンター
    ↑ポインタを合わせると、1週間のアクセス数推移が確認できます。

    Since Mar.17/2011
    Twitter
    おすすめ書籍
    ウォール街のランダム・ウォーカー 株式投資の不滅の真理
    Kapokの投資哲学に大きな影響を与えた1冊。個人投資家必読の書。

    スポンサー
    相互リンク
    資産運用全般

    株式個別銘柄投資 etc.

    投資信託 etc.

    債券・預貯金

    FX・派生商品 etc.

    その他 有価証券

    資産運用以外