カブ放浪記
株式売買プログラミング(1) TOP 漫画「ブルベア劇場」 日経平均予想 駄日記 リンク 過去ログ

エクセルで株価チャートを描く

エクセルで株価チャートを書く
今日は、普段、私が使っているエクセルの株価グラフの書き方を解説します。この複合グラフは全て、EXCELで作ることができます。
グラフ(1)は、商品先物のチャートです。「旧限月」というのが、先物特有のものですが、他は株式のロウソク足チャートと同じです。
これを描けるように解説します。
今日、生まれて初めてエクセルを使った人でも、理解できるように書いています。


このチャートには、ロウソク足と、5日の単純移動平均線(水色)が描かれています。
陽線は赤のロウソクで、陰線は黒のロウソクです。
緑色の線は、限月交替の後、旧限月を10日間だけ表示しています。(先物のみ)

ある日の高値が、「過去5日間の最高値」より高い時、青色の菱形マークを表示します。
ある日の安値が、「過去5日間の最安値」より低い時、橙色の菱形マークを表示します。

(例) 2月19日の高値が、2月12日〜18日の5日間の最高値より、高いので、青色の菱形がマークされています。

ここに、エクセルの入力データと、グラフ(1)〜(9)を置いておきます。


では、まず、表を作ります。
A列(日付)〜E列(終値)に、データを入力します。
F列(旧限月)は、先物だけなので、株価の場合は無視してください。先物の場合、1つ前の限月のデータを10日分位、入力しておきます。(12月25日に限月交替となってます。11行目と、12行目の旧限月が、同じ限月です)

G列(5日移動平均)では、「G7」に、「 =AVERAGE(E3:E7) 」と入力してください。
H列(5日高値更新)では、「H7」に、「 =IF(C7>MAX(C2:C6),C7+1,0) 」と入力したください。
I列(5日安値更新)では、「I7」に、「 =IF(D7<MIN(D2:D6),D7-1,0) 」と入力してください。

  <式の説明>式を書くときは、必ず英数字で書くこと。
   (1)=AVERAGE(E3:E7)
     E3〜E7の平均(AVERAGE)
   (2)=IF(C7>MAX(C2:C6),C7+1,0)
     もし(IF)C7が「C2〜C6の最大値(MAX)」より大きい(>)なら、C7を加えた値を入れる。そうでないなら、0を入れる。
       (C7を加えるのは、ロウソク足のに、青色の菱形マークをつけるためであり、テクニカル分析としての意味はない)
   (3)=IF(D7<MIN(D2:D6),D7-1,0)
     もし(IF)D7が「D2〜D6の最小値(MIN)」より小さい(<)なら、D7からを引いた値を入れる。そうでないなら、0を入れる。
       (D7からを引くのは、ロウソク足のに、橙色の菱形マークをつけるためであり、テクニカル分析としての意味はない)


(注意1)式で「空白」は作らないこと
「H7」に「 =IF(C7>MAX(C2:C6),C7+1,"") 」、「I7」に「 =IF(D7<MIN(D2:D6),D7-1,"") 」と入力した方が、シートでは見やすいのですが、セルに空白を入れる式だと、後の「グラフの種類・ユーザー定義」の追加保存が、うまくいきません。
(注意1・終わり)

後は、「G7」「H7」「I7」をコピーして、下方へ、ペースト、してください。

(注意2)「0.0」を表示しない
H列とI列では、このままだと、「0.0」という数字が入り、見えにくくなります。そのため、書式を変更します。
H列とI列の全体を選択して、「セルの書式設定」ウィンドウの「表示形式」にて、「ユーザー定義」を選択して、種類の窓に「 #.# 」と入力します。

「OK」を押すと、H列とI列の「0.0」が「 . 」と表示され、見やすくなります。
(注意2・終わり)

 表は完成です。高値更新や安値更新の所にだけ数値が入り、他は空白になります。この更新の列(H列とI列)の数値は、チャート上のマーク位置を決めるものであり、数値自体に意味はありません。


日付について
日付の表示形式について述べます。
A列を選択して、「書式」の「セル...」の「セルの書式設定」ウィンドウを開いて、「表示形式」を見てください。もし、「日付」が白黒反転していたら、その他の「数値」などに、変更してください。
  
その結果、A列の日付が、シリアル値(単なる数字の羅列)に変わったら、手直しする必要があります。(ダウンロードするファイルでは、A列は既に直してあります。)

日付は、表示形式が「日付」以外(「数値」や「標準」、「文字列」、「通貨」など)の時に「2003/11/17」というように表示されなくてはなりません。表示形式が「日付」の時のみ「2003/11/17」と表され、表示形式が「数字」等の時にシリアル番号(単なる数字)が出てくるのなら、直してください。そうしないと、後の「グラフの種類・ユーザー定義」の追加保存が、うまくいきません。
表示形式「数値」の時、
(正)「2003/11/17」
(誤)「37942」

(直し方)
 K列に書かれているのが、表示形式「日付」の時は「yyyy/mm/dd」になるが、表示形式「数値」になると「xxxxxxx」という数字の羅列になる日付です。
<1> 「L2」のセルに、「 =YEAR(K2)&"/"&MONTH(K2)&"/"&DAY(K2) 」と入力します。「K2」と「L2」のセルには、同じ日付が表れたでしょう。しかし、2つは別物です。さらに、コピー&ペーストで、「L2」の式をL列下方へも入力します。
<2> L列を選択して、「セルの書式設定」ウィンドウの「表示形式」で、「数値」が白黒反転していることを確かめます。
<3> A列を選択して、「セルの書式設定」ウィンドウの「表示形式」で、「数値」を白黒反転させます。
また、A列は空白になっていますか? A列に日付が入ったままなら、「編集」の「クリア」の「数値と値」を使って、A列を空白にします。
<4> 「L2」〜「L261」をコピーして、「A2」〜「A261」へ、ペーストします。
「#REF!」と表示されることがありますが、その場合は、カバンみたいなモノをクリックすると、選択肢が現れるので、その中の「値のみ」をチェックすると、日付に変わります。
  
これで、OKです。「K列」と「L列」は、もう不要なので、消してもかまいません。


次に、ロウソク足・グラフを描きます。
A列〜E列の、1行目と、16行目から141行目(7月8日)までの、2箇所を「Ctrlキー」を押しながら選択します。
キーを押して、グラフ・ウィザードを開き、「株価」の「ロウソク足」を選択します。

「次へ(N)>」を2回押し、
「グラフタイトル」に適宜入力。(ここでは、「ゴム(東京)」と入力しています)

「軸」の「X/項目軸(G)」の「項目」を選択します。

(注)「X/項目軸」は「時系列」が良い場合もありますが、ここでは「項目」を選択しています。


「目盛線」では、「X/項目軸」の「目盛線」を選択し、「Y/数値軸」の「目盛線」と「補助目盛線」を選択します。


「凡例」の「表示位置」の「上」を選択します。


「次へ(N)>」をもう一回押して、「新しいシート」を選択して、タイトルを適宜入力します。(ここでは「ゴム(東京)」と入力」)
「完了」を押します。


グラフ(2)が出来上がります。


ここから、きれいに見やすくしていきます。

「ファイル(F)」の「ページ設定(U)」の「余白」において、すべての、余白、ヘッダー、フッターの数値を「0」にします。(印刷の時に、見やすくするためであり、しなくてもかまいません。私の好みです。)


グラフの下方の日付をダブルクリックして、「軸の書式設定」ウィンドウを出し、「目盛」の「目盛りラベルの間隔」に「5」を、「目盛の間隔」を「5」を入力します。


私は普段、「配置」で、文字列の方向を90度にして、日付を垂直方向にするのですが、ここは好みです。

「OK」を押すと、目盛線の間隔が広がります。

次に、マウスの矢印を、縦横に走る目盛線の間の灰色の部分に合わすと、「プロットエリア」という表示が出るので、ダブルクリック。
「プロットエリアの書式設定」ウィンドウが現れます。「パターン」の「領域」の「色」を、「白」をクリックし、「OK」を押します。グラフの背景が白色になります。


次に、マウスの矢印を、Y軸(縦軸)の数字に合わせると、「数値軸」と表示されるので、ダブルクリック。
「軸の書式設定」ウィンドウの「目盛」で、「最小値」100、「最大値」130、「目盛間隔」5、「補助目盛間隔」1を入力します。

また、好みで、「表示形式」の「小数点以下の桁数」を「0」にします。
「OK」を押すと、すっきりしたグラフになりました。


次に、横方向の目盛線のうち、数値のない5の倍数以外の補助目盛線)目盛線をダブルクリック。「目盛線の書式設定」ウィンドウの「パターン」の「色」を、1番薄い灰色で選択。「OK」を押すと、目盛線が薄い灰色になります。


5の倍数の数値の目盛線は、ちょっと濃い目にして、見やすくします。
横方向の目盛線のうち、数値のある5の倍数の)目盛線をダブルクリック。「目盛線の書式設定」ウィンドウの「パターン」の「色」を、2番薄い灰色で選択。「OK」を押すと、目盛線が、2番目に薄い灰色になります。(図は省略)

つまり、目盛線を濃い目の灰色に、補助目盛線を薄めの灰色にしました。

縦方向の目盛線も同様にして、1番薄い灰色にします。(図は省略)


陽線を赤色にする
マウスの矢印を、グラフのいくつかのロウソク足に合わせ、ゆっくり微妙に動かすと、「陽線1」「陰線1」「高低線1」「始値」「終値」「高値」「安値」などが、色々と表示されます。その内の「陽線」と表示されたとき、ダブルクリックすると、「陽線の書式設定」ウィンドウが表示されます。

(上のグラフは、マウスの矢印がずれてるので、あしからず。左から4本目のロウソク足の真ん中に合わせると、「陽線1」と表示されるはずです)

「輪郭」と「領域」の両方を「赤」を選び、クリックします。
  

グラフ(3)ができあがりました。きれいですね。

ロウソク足のチャートのみが必要なら、これで完成です。


「始値、高値、安値、終値」の「凡例の表示」が必要ない場合は、
マウスの矢印を、グラフ上の適当な場所で、「右クリック」し、「グラフのオプション(I)...」を「左クリック」し、
  

「グラフオプション」ウィンドウの「凡例」で、「凡例を表示する」のチェックを外してください。




形式の保存
グラフ(3)の形式を保存し、次からは簡単に描けるようにします。

      保存の前に、「数値軸(縦軸)」の最大値・最小値の設定を「自動」に戻しておきます。
      「自動」2箇所にチェックを入れます。
      理由は、別のデータの時、グラフがはみ出して見えなくなることを防ぎます。
      


マウスの矢印を、グラフ上の適当な場所で、「右クリック」し、「グラフの種類(Y)...」を「左クリック」し


「グラフの種類」ウィンドウの「ユーザー設定」で、「選択元」の「ユーザー定義(U)」をチェックし、「追加」のボタンを押し、


「ユーザー設定のグラフ種類の追加」ウィンドウの「名前」を適宜入力して、「OK」を押すと、


新たに、「ロウソク足(ゴム)」という項目(白黒反転している部分)が、できます。「OK」か「キャンセル」か、どちらかを押してウィンドウを閉じます。

削除する場合は、「追加」の横の「削除」ボタンで、できます。

次からは、新しいグラフを描くとき、「グラフの種類」ウィンドウの「ユーザー設定」の、「選択元」の「ユーザー定義」を選択し、自分が追加したグラフの種類(ここでは、「ロウソク足(ゴム)」です)をクリックすると、ここまでの作業は省略され、あっという間にグラフが自動で描けます。

複合グラフ(5日移動平均線)

グラフ(3)から始めます。
データを追加する(下方にある「簡単にデータを追加する」も見てください)

マウスの矢印を、グラフ上の適当な場所で、「右クリック」し、「元のデータ(S)...」を「左クリック」し


「元のデータ」ウィンドウの「系列」で、「追加」ボタンをクリックすると、「系列5」というのが追加されます。


「名前」の右方の小さなボタンを押すと、ウィンドウが小さくなります。




データを入力した表(Sheet1)へ戻って、「5日移動平均」とある「G1」のセルをクリックすると、セルの位置データが入ります。


再度、ウィンドウの右端の小さなボタンを押すと、ウィンドウは、元の大きさに戻ります。




次は、「値」の右方の小さなボタンを押すと、同じように、ウィンドウが小さくなります。


データを入力した表(Sheet1)へ戻って、「5日移動平均」の列の、「G16」〜「G141」の範囲を選択すると、セルの位置データが入ります。


同じように、ウィンドウの右端の小さなボタンを押すと、ウィンドウは、元の大きさに戻ります。

「OK」を押すと、グラフ(4)ができます。見た目は、変なグラフですが、さらに修正します。



簡単にデータを追加する(12月18日・追記)
(1)データを入力した表(Sheet1)で、「Ctrlキー」を押しながら、「G1(5日移動平均)」と、「G16」〜「G141」の2箇所を選択します。
(2)「Ctrl+C(コピー)」をします。
(3)グラフシートに戻ります。
(4)「Ctrl+V(貼り付け)」をします。

移動平均線を、折れ線グラフにする。
マウスの矢印を、グラフのロウソク足の間に合わせ、ゆっくり微妙に動かすと、「始値」「高値」「安値」「終値」「高低線1」「陽線1」「陰線1」などの他に、「5日移動平均」という表示が出てきます。


上記の表示が出たまま「右クリック」し、「グラフの種類(Y)」をクリックします。


「グラフの種類」ウィンドウの「標準」にて、「散布図」の右下の折れ線グラフを選択します。「OK」ボタンを押します。


折れ線グラフが表れます。

マウスの矢印を、この折れ線グラフに合わせて、「ダブルクリック」します。
「データ系列の書式設定」ウィンドウの「パターン」の「線」の色を、明るい水色にします。

「OK」ボタンを押すと、グラフ(5)ができます。


複合グラフ(旧限月を付け加える)
「5日移動平均」と同じです。

グラフ上の適当な場所を「右クリック」して、「元のデータ」ウィンドウで、「追加」ボタンを押して、
「名前」にデータ表(Sheet1)の「F1」を、「値」にデータ表(Sheet1)の「F16」〜「F141」を入力します。


「OK」ボタンを押すと、グラフ(6)ができます。


マウスの矢印を、ロウソク足の辺りで、ゆっくり微妙に動かすと、「旧限月」と表示されるので、「右クリック」して「グラフの種類」を選択。
「グラフの種類」ウィンドウの「標準」の「散布図」の「左下のグラフ」を選び、「OK」ボタンを押します。


マウスの矢印を、新しくできた折れ線グラフに合わせ、ダブルクリックして、「データ系列の書式設定」ウィンドウの「パターン」の「線」を緑色に、「マーカー」の「前景」を緑色に、「背景」を「色なし」にした、「スタイル」を「X」にします。


凡例の修正
 「始値」「高値」「安値」「終値」の凡例は必要ないので、グラフ上から消します。
 マウスの矢印を、それぞれの文字に合わせ、3秒位の間隔を空けて、ゆっくりと2回、クリックします。文字が選択できるはずです。「Delete」キーを押せば、その文字を消去できます。

グラフ(7)ができました。


高値更新マークを付ける
基本は、上記2つの「5日移動平均線」「旧限月」と同じです。

グラフ上の適当な場所を「右クリック」して、「元のデータ」ウィンドウで、「追加」ボタンを押して、
「名前」にデータ表(Sheet1)の「H1」を、「値」にデータ表(Sheet1)の「H16」〜「H141」を入力します。


「OK」ボタンを押すと、グラフ(8)ができます。


マウスの矢印を、赤い線のテッペン辺りで、ゆっくり微妙に動かすと、「5日高値更新」と表示されるので、「右クリック」して「グラフの種類」を選択。
「グラフの種類」ウィンドウの「標準」の「散布図」の「一番上のグラフ」を選び、「OK」ボタンを押します。


ロウソク足の1cm上辺りに、所々、小さなマークが現れています。マウスの矢印を、そのマークに合わせ、ダブルクリック。
「データ系列の書式設定」ウィンドウの「パターン」にて、「スタイル」を「菱形」に、「前景」と「背景」を青色にします。


「OK」ボタンを押すと、グラフ(9)が出来ました。



安値更新マークも、同じように付け加えます。(省略)
結果、最初に描いたグラフ(1)が完成しました。

4種類の複合グラフの形式の保存
ロウソク足だけのグラフの時と同じです。グラフ(1)の形式を保存しましょう。
先程と同様に、「最大目盛」「最小目盛」を「自動」にしてから、「グラフの種類」ウィンドウの「ユーザー設定」の「追加」をクリック。

今回は、「説明」にも書き加えています。分かりやすいですよ。

ユーザー定義に、グラフの種類が増えました。


別のデータを使って、グラフを描く。
1991年7月1日〜1991年12月30日のデータ(136行〜261行)を使って、別の新しいグラフを描きます。

A列〜I列における、136行〜261行と第1行の2箇所を「Ctrl」キーを使って選択します。
キーを押して、グラフ・ウィザードを開き、先程の複合グラフを選択します。


後は、順番に「次へ(N)>」を押し、最後に「完了」を押します。
グラフができました。

Y軸の目盛の、最大・最小目盛を調整(95〜125)して、グラフ(10)ができました。


グラフ(10)で、1つ問題が起きてます。
「5日移動平均」グラフと「旧限月」グラフが、逆になっています。

今までの解説では、「5日移動平均」グラフを付け加えた後、「旧限月」グラフを付け加えました。そのため、「元のデータ」ウィンドウの「系列」を見ると、上から順に「5日移動平均」「旧限月」「5日高値更新」「5日安値更新」と並んでいます。

そのため、「Sheet1」のデータも、左から順に「5日移動平均」「旧限月」「5日高値更新」「5日安値更新」と並んでいる、とコンピューターが誤解しました。そのため、グラフが逆になったのです。
 このような間違いが起きないよう、今後は、データの左の列から順番に、「旧限月」「5日移動平均」「5日高値更新」「5日安値更新」とグラフを付け加えていってください。

 ここでは面倒なので、とりあえず、グラフ(10)の「旧限月」グラフと「5日移動平均」グラフを、ダブルクリックして、色とタイプを逆にします。


最後は、泥縄になりましたが、完成です。

第2弾は、鋭意製作中。


[PR]≪占い奇跡の恋愛術≫初回無料:幸せな結婚へ導きます。本格結婚鑑定