■目次
更新日時:2019年8月18日
※この記事は連載です。
トレードステーションとエクセルを使った株価予報の開発過程を完全公開します。(サンプルプログラム含む)
連載記事を続けてご覧の方は、目次から [第6章]3つのローソク足データーをまとめる にお進みください。
前の記事はこちら
株価予報の作り方2 日経平均ローソク足3連続陰線・陽線投資戦略は機能するか? トレードステーションから株価データーを取得する。[自動売買・システムトレード戦略]
あなたは、天気予報を毎日チェックしますか?
株式投資をやっているなら、「株価予報」も毎日チェックしたいと思いますよね?
「今日の日本の株価は 晴れ(上昇)でしょう。」
「降水確率(下落確率)は30%です」
こんな情報を、朝のニュース番組でやっていたらいいですよね。
でも私の知る限り、朝のテレビ番組では放映していません。
ないなら作ってみよう!!
このように思い立ちましたが、作るのは 株価予想 ではなく 株価予報 です。
ナゼ、そのような予報になったのか、根拠を公にする必要があるでしょう。
サイト管理者が、頭を悩ませながら株価予報の仕組みを作ります。
その過程をすべて公開する予定です。
成功と失敗を重ねながら、多くの時間を掛けて開発することになるでしょう。
これだけは、絶対に自信を持って言えます。
「このページにあるのは、偽りのない事実だけです」
スポンサーリンク
この記事のコンセプト
このブログ記事は、下のブログ記事を再編集したものです。
目的の項目にアクセスしやすいように、記事を分割・加筆・修正しました。
このブログ記事を書き進める前に、記事作成の方針を明らかにします。
- 「株価予想」を作成する過程を公開する。
- 「株価予想」のロジック(しくみ)を公開する。
- 「再現性」を確保する。(他の人もできる)
- トレードステーションやエクセルがなくても内容を理解できる。
「株価予想」を作成する過程を公開する。
情報の取り方や、取得した情報の加工方法なども、解説します。
作業手順を、順番どおり公開します。
失敗(無意味な分析結果が出る)することも多いと思いますが、隠さずに公開します。
システムトレードをやっている方には、むしろ失敗の方が有益な情報になるかも知れませんね。
「株価予想」のロジックを公開する。
株価予報の結果が、どのように導き出されたのか?
すべての理由を公開します。
ロジックを公開した条件下でなら、ベータ版の「株価予報」をこのブログで公開しても、許容されると考えています。
再現性を確保する。
使用するツールは誰でも手に入れられるツールを使用します。
「マネックス証券のトレードステーション」と「Microsoftのエクセル」を使用する予定です。
トレードステーションから情報を得たり、検証するためにトレードステーションの専用プログラミング言語「Easy Language」を使用します。
「Easy Language」のプログラムも、できるだけ単純な構成にして、プログラム未経験者にも優しい解説を心がけます。
トレードステーションや、エクセルがなくても内容を理解できる。
読み物としても楽しんでいただけるように、配慮するつもりです。
気楽に読んでいただけたら幸いです。
この記事は連載です。
前の記事はこちら。
株価予報の作り方2 日経平均ローソク足3連続陰線・陽線投資戦略は機能するか? トレードステーションから株価データーを取得する。[自動売買・システムトレード戦略]
[第6章]3つのローソク足データーをまとめる
株価予報について思い出しましょう。
株価予報作るために、日本の株価に影響を与えるとされる、ニューヨーク証券取引所の「DOW指数」や「為替」データーをエクセルに取り込みました。
そして、日経平均株価の値動き、前日のDOW指数の上下、為替(USD・JPY)の上下、この関係性を見ることにしました。
別々にデーターを取得したので、それぞれのデーターは別のブックまたはシートに入っていると思います。
このままでは、関係性を分析するのは難しいので、データーを1つのシートにまとめましょう。
データーを1つのシートにまとめる
データーがエクセルのシートにどのように保存されているか確認しましょう。
私の環境では、日経平均株価、前日のDOW指数、為替(USD・JPY)すべて、下の画像のように保存されていました。
A列に期日、B列に時間、C列に始値・・・・・・・・
データーをまとめて分析する方法は、色々な方法が考えられますが、今回はエクセルの標準機能である「ピボットテーブル」を使います。
それぞれのデーターをまとめる前に、何のデーターなのか識別するための、文字列を入力しましょう。
A列に空白列を挿入して、1行目に「銘柄」と入力します。
そして、それぞれの銘柄名を2行目以降データーの最終行まで入力します
日経平均株価
DOW指数
為替(USD・JPY)
ここまで出来たら、日経平均株価が登録されているシートにデーターを貼り付けます。
まず、「DOW指数」のデーターを「日経平均株価」最終行の下に貼り付けます。
つづいて、「為替(USD・JPY)」のデーターを「DOW指数」最終行の下に貼り付けます。
これで「日経平均株価」だけが入力されていたシートに「DOW指数」「為替(USD・JPY)」も入力されました
日経平均株価が登録されているシートに、計算式を入力したのを覚えていますか?
計算式の例はこちら。
実際には、下のように計算結果が表示されています。
このL列からN列までの計算式をコピーして、データーの最終行まで貼り付けます。
このとき「DOW指数」と「為替(USD・JPY)」データの先頭2行分、N列の計算式は削除しておきます。
2行分の計算式を削除する理由。
N列は3日間のローソク足が陰線だったのか陽線だったのか、判定する計算式が入力されているセルです。
先頭の2行は3日分のデーターが揃っていないので、誤った計算結果となるためあらかじめ削除しておきます。
さて、ここまでの作業で「日経平均株価」、「DOW指数」、「為替(USD・JPY)」のデータが1つのシートにまとまりました。
エクセルに精通している方は、自由に分析を進めて頂いて結構です。
高度なテクニック不要で、手間を掛けずにデーターをまとめるために「ピボットテーブル」を使用する事にしました。
「ピボットテーブル」とは何だ!?
このように思われる方も沢山いらっしゃいますね。
「ピボットテーブル」はエクセルの標準機能で、「クロス集計」をカンタンに行うことが出来ます。
「だから!クロス集計って何者だ!!」
大変失礼しましました。
「ピボットテーブル」とは「データーを勝手に集計してくれる機能」ですが、とっつきにくい機能でもあります。
次で「ピボットテーブル」を使った集計手順を詳しく説明しますので、まず手順をご覧下さい。
ピボットテーブルで日毎にデーターを整理
データーを1つのシートにまとめた理由は、
日経平均株価の値動き、前日のDOW指数の上下、為替(USD・JPY)の上下、この関係性を見ることでした。
日付毎の日経平均株価、DOW指数、為替(USD・JPY)の情報が一覧表形式になっていると、分析がしやすくなります。
エクセル標準機能の「ピボットテーブル」を使って日毎にデーターを整理してみましょう。
これまでに行った手順で、「日経平均株価」、「DOW指数」、「為替(USD・JPY)」のデータが1つのシートにまとまっています。
データーが入力されている、どこかのセルをクリックして選択された状態にしておいてください。
「挿入」タブの中に「ピボットテーブル」のアイコンがありますので、クリックします。
テーブル/範囲(T)にデーター全体の範囲が指定されていることを確認して、「OK」ボタンを押します。
もし、表題を含むデータ全体が指定されていなければ範囲指定をやり直してください。
エクセルの別のシートがアクティブになって下のような画面に切り替わります。
Dateをドラッグ&ドロップしてみましょう。
A列に値が自動的に表示されます。
「+」のボタンを押すと、隠れていた四半期毎、月毎の表示が現れます。
でました-。 エクセルのおせっかい機能です。
今回表示させたいのは、日毎のデーターなので右クリックして、「グループ解除」しましょう。
「Open(始値)」と「銘柄」をそれぞれドラッグ&ドロップします。
すると、銘柄毎の「Open(始値)」が自動的に表示されます。
せっかくなので、別の集計もしてみます。
銘柄毎に、3日間の陰陽パターンが何回現れたのか、出現回数を集計しました。
横軸と縦軸の項目の合計を算出しているので「クロス集計」と呼ばれます。
今回の目的は「ピボットテーブルで日毎にデーターを整理」する事だったので、次の条件でピボットテーブルに整理させます。
「合計/Open」と表示されていますが、各期日にOpenは1つしか登録されていませんから、値に変わりはありません。
これで、日毎にデーターを整理する事が出来ました。
さらにこのデーターを使って分析を進めますので、このままでは使い勝手が良くありません。
ピボットテーブルの機能をリセットして、データーを自由に使えるようにします。
その方法は、シート全体をコピーして値貼り付けをするだけです。
エクセルシートの左上をクリックしてシート全体を選択します。
そのままマウスで右クリック。
コピーをクリック。
シート全体が表示された状態のまま、再度マウスの右クリック。
「貼り付けのオプション」の値貼り付けをクリックします。
値が貼り付きましたが、A列の日付の表記がおかしくなりましたね。
A列を選んで、セルの書式設定を日付に修正しましょう。
H列とI 列に,OpenとCloseの合計が集計されていますが、現時点では使用するつもりは無いので削除して、データーの整理は完了です。
[第7章]パターン分析
日本の株価に影響を与えるとされる、ニューヨーク証券取引所の「DOW指数」や「為替」データーをエクセルに取り込みました。
そして、3つのローソク足のデーターを1つのシートにまとめる所まで完了です。
いやぁ。 長いことお待たせしました。
いよいよパターン分析が始まります。
目的を思い出しましょう。
株価予報作るために、日経平均株価の値動き、前日のDOW指数の上下、為替(USD・JPY)の上下、この関係性を見ることでした。
この分析をスムーズに進めるために、あと少しだけデーターに手を加えます。
表題をわかりやすい題名に直しましょう。
A列を期日、B列以降は合計を銘柄名に変更しました。
おっと、ここで新たな問題が発見されました。
3日間のローソク足の陰陽を再判定しなければならないこと。
そして、日本とアメリカの証券取引所の営業日が異なるので、銘柄毎のデーターが連続していないこと。
銘柄毎のデーターが連続していないと、ローソク足の陰陽ターンを算出するのが難しくなります。
「アクセスなどのデーターベースに突っ込んでデーター整理すれば良かったかなぁ」と頭をよぎります。
しかし、この記事のコンセプトの1つは、「再現性」を確保する。(他の人もできる)でした。
できるだけ、一般的な標準的な手法を使って分析をしたい。
しばし考え中。。。。。。
よし! 「VLOOKUP関数」を使うことにしました。
VLOOKUP関数はなじみのない関数かも知れませんが、エクセル標準の関数です。
非常に便利な関数なので、これを機に覚えておいて損は無いでしょう。
最初に言ってしまいますが、VLOOKUP関数は少し分かりづらい関数の1つだと思います。
Googleなどで検索して貰えれば、易しく説明しているサイトが沢山見つかりますので、是非ご覧下さい。
もちろんこの記事でも、順を追って説明しますので概要は理解していただけると思います。
「VLOOKUP関数」を使うために、データーを一部加工します。
・[第6章]3つのローソク足データーをまとめる
・データーを1つのシートにまとめる
このときに使ったシートを活用します。
このシートには、日経平均株価、DOW指数、為替(USD・JPY)のすべてのデーターが入っています。
※このシートを「ピボット元シート」と名付けます。
A列の前に列を挿入して計算式を入力します。
そしてデーターの登録されている最終行まで計算式を貼り付けます。
ピボットテーブルを使ってデーターをまとめたシートに戻ります。
※このシートを「まとめシート」と名付けます。
A列の前に3列挿入してそれぞれ計算式を入力し、最終行まで計算式を貼り付けます。
さぁ、ここから「VLOOKUP関数」の出番ですよ。
「まとめシート」のK列に関数を入力します。
そしてデーターの最終行まで計算式を貼り付けます。
すると、「ピボット元シート」に登録されている、日経平均の3日間の陰陽が表示されます。
すごいでしょ!
同様にDowとUSDJPYの陰陽も取得しましょう。
つぎに、カンタンですが「VLOOKUP関数」の説明をしますね。
VLOOKUP関数の説明
ここで、カンタンに「VLOOKUP関数」の説明をします。
=VLOOKUP(C6,ピボット元シート!$A$2:$O$15135,15,FALSE)
C6 : 「まとめシート」C列のセルと同じものを「ピボット元シートから探します」
ピボット元シート!$A$2:$O$15135 : 検索するデータの範囲を指定します。
15 : 検索するデータの範囲の先頭から15行目のデーターを指定しています。
FALSE : 一致するもの無ければ エラーを返します。
こんな関数をさらっと使っていたら、カッコ良いですよね。
そろそろ本題の分析に戻ります。
フィルターでパターン分析
第5章でも行いました、エクセルのフィルター機能を使って分析しましょう。
今回は日経平均だけで無く、DOW指数ローソク足の陰陽、為替(USD・JPY)ローソク足の陰陽を含めてパターン分析を行います。
「まとめシート」N列に計算式を入れて、文字列を結合させます。
日経平均単独の陰陽を判定させる式も入力します。
入力した計算式は一番下の行までコピーしておきます。
さぁ、いよいよパターン分析本番です。
取得したデーターの最新が2019年4月27日のデーターなので、この日のパターンを見てみましょう。
N列でフィルタを掛けます。
フィルタの条件は2019年4月27日に現れた「ローソク足陰陽統合」パターンです。
全データ5206件中13件抽出されました。
おっ、すべて日経平均株価は陽線だ!
もちろん、喜んではいけません。
日経平均のパターンには、当日の陰陽パターンも含まれています。
期日2019年4月27日の日経平均株価は陽線なので、すべてのデーターが陽線で当たり前ですよね。
※取得したデーターはDOWや為替データーも含まれるため、ローソク足データーの最終取得時間は、翌日の朝5時59分です。
このため、日経平均ローソク足の期日は翌日の日付で登録されています。
この点も、システムトレード戦略を考える上でとても重要です。
「とても成績の良い戦略が出来たと思ったら、当日の終値を判断材料に入れていた」なんて、笑っちゃう話も良くあるんです。
トレード当日の終値が分かっていれば、勝って当然ですからね。
それでは、2019年4月27日の陰陽パターンで、逆に陰線が出た場合を抽出してみましょう。
「ローソク足陰陽統合」の先頭から3つめが日経平均当日の陰陽パターンです。
この3つめを、陽線から陰線に変えてフィルタを掛けます。
抽出されたのは5件です。
日経平均株価 陽線 13件
日経平均株価 陰線 5件
日経平均だけで無く、DOW指数ローソク足の陰陽、為替(USD・JPY)ローソク足の陰陽を含めたパターンです。
日経平均株価 陽線 13件 に対して 陰線 5件。
期待が持てそうです。
この他にも、色々なパターン分析が出来そうですが、フィルタ機能を使ってボタンをポチポチやっているのも疲れます。
・[第6章]3つのローソク足データーをまとめる
・ピボットテーブルで日毎にデーターを整理
このときに使った、ピボットテーブルで分析しましょう。
ピボットテーブルでパターン分析
エクセル標準機能のピボットテーブルを使って、パターン分析をしてみます。
「ローソク足陰陽統合パターン」がどの程度の割合で現れているのかを分析します。
おさらい
「ローソク足陰陽統合パターン」とは、
日経平均、DOW指数、為替(USD・JPY)それぞれのローソク足の陰陽3日分のパターンをまとめたものです。
陽線とは、始値よりも終値の方が高く終わったローソク足のことです。
陰線とは、始値よりも終値の方が低く終わったローソク足のことです。
◇表示例
日経平均が3日続けて陽線ならば、陽線陽線陽線
DOW指数が3日続けて陰線ならば、陰線陰線陰線
為替(USD・JPY)が3日続けて陽線ならば、陽線陽線陽線
なので、まとめると「ローソク足陰陽統合パターン」は「陽線陽線陽線陰線陰線陰線陽線陽線陽線」このようになります。
ピボットテーブル分析を始めます。
エクセルの「まとめシート」をアクティブにして、データーが入力されている、どこかのセルをクリックして選択された状態にします。
「挿入」タブの中に「ピボットテーブル」のアイコンがありますので、クリックします。
表全体が選択されていればOKですが、下のように一部のセル範囲しか範囲選択されていない場合があります。
この場合は、表題を含むデーター範囲全体を選択してください。
ピボットの条件は次の通りです。
ピボットテーブルのままでは、データー分析がやりにくいので、ピボットテーブルの機能をリセットして、データーを自由に使えるようにします。
エクセルシートの左上をクリックしてシート全体を選択します。
そのままマウスで右クリック。
コピーをクリック。
シート全体が表示された状態のまま、再度マウスの右クリック。
「貼り付けのオプション」の値貼り付けをクリックします。
※上のコピーと貼り付けの画像2つは、第6章で使用した画像と同じです。(気付いた人するどい!)手順を説明するための画像なので、使い回しをお許しくださいませ。
シート名を「陰陽まとめピボット改」に変更しました。
パターンの総数は512です。
3銘柄の陰陽組み合わせパターンのすべてが現れているようです。(私の計算が間違っていなければ)
日経平均株価が陰線だった日のパターンの出現回数が多い順に並べてみます。
一番多く現れたパターンは、「陰線陽線陰線陰線陽線陰線陰線陽線陰線」でした。
では、当日の日経平均以外が全く同じパターンだったときの出現回数を見てみます。
当日の日経平均は先頭から3番目なので、これを陽線に変えて「陰線陽線陽線陰線陽線陰線陰線陽線陰線」フィルタを掛けてみます。
陽線が現れた回数は12回でした。
当日の日経平均以外が同一パターンの出現回数です。
日経平均株価 陽線 12件
日経平均株価 陰線 30件
出現回数を比較すると、約3倍ですね。
逆に陽線が一番多く現れたパターンも見てみましょう。
陽線が現れた回数は35回でした。
当日の日経平均以外が同一パターンの出現回数はこちら。
陽線が現れた回数は28回でした。
当日の日経平均以外が同一パターンの出現回数です。
日経平均株価 陽線 35件
日経平均株価 陰線 28件
出現回数を比較すると、約3倍ですね。
突然ですが再確認します。
◇再確認です。取得したデーターについて注意。
取得したデーターはDOWや為替データーも含まれるため、ローソク足データーの最終取得時間は、朝5時59分です。
このため、日経平均ローソク足の期日は翌日の日付で登録されています。
パターンを分析する上で支障が無いため、補正せずにデーターを使用しています。
ここまでの手順で、「日経平均株価」に影響を与えるであろう「DOW指数」や「為替」の値動きと、日経平均株価ローソク足の陽線(上昇)、陰線(下降)に関連性が見えてきました。
株価予報実現は意外と近いか?
しかし、あらたな問題が発覚しました。
今の分析の流れは、
トレードステーションから株価データーをダウンロード。
そして、エクセルに取り込んでからパターン分析を行う。
これだけですが、手順は多く煩雑でもあります。
株式市場は平日には毎日取引を行っています。
毎日新しいデーターを取り込むのは、面倒です。
一度エクセルに取り込んだデーターの範囲内で、分析を進めるのなら良いのですが、やはり最新のデーターを分析対象にしたいですよね。
次の章では、トレードステーションから直接エクセルに、ローソク足データーを取り込む方法を解説します。
トレードステーションは持っていない方から、「早くパターン分析を進めてよ!」このような声が聞こえてきそうですが、少々お付き合いください。
今回の記事はココまでとします。
次の記事はこちら。
株価予報の作り方4 トレードステーションからエクセルにデータ転送を自動化。ローソク足パターン分析2。[サンプルコード付き・自動売買・システムトレード戦略]
このブログ記事は、下のブログ記事を再編集したものです。
スポンサーリンク
この記事を書いた人
ゆたかドットらいふ編集部
あしおゆたか
投資歴21年の個人投資家
机上の理論ではなく、実体験に基づいた記事作りをモットーにしています。
スポーツクラブに毎週2日~3日通い、サウナ後の暴飲暴食が趣味。
◇主な投資対象
日本株式
株式ETF(上場投資信託)
日経225先物
日経225先物オプション
◇運営者情報はこちら