〇EXCELのデータベース関数を使ったことはありますか。プログラムを知らなくても、VBAを知らなくても、SUM関数(Σ)を利用するのと同じ手軽さで相場分析ができます。最初にこの関数にめぐり合ったときには、相場分析関数と名付けたいと思ったほど感動しました。

  〇そこで特別企画は、「データベース関数の相場分析への応用」です。
相場データの取り込みから簡単な相場分析までを解説します。EXCELで簡単な集計が出来る人であれば2〜3日で使いこなせるようになります。応用の仕方は無限に広がっています。プログラムが組めない、EXCELが苦手だ等の理由で、自らの手で相場分析が出来なかった人は、是非チャレンジして下さい。新しい世界が広がってくることは確実です。



1.データベース関数の書式(DSUM関数を例に説明します)


    DSUM(対象リストエリア、対象フィールド、条件エリア)

    ・対象リストエリア:相場データを基に前日高値比較などを計算した表のエリア
                1行目が項目タイトル、2行目以降が日付毎のデータ
    ・対象フィールド :対象リストエリアの項目の内、計算対象として指定する項目
                のアドレス。例えば、"翌日値上り金額"などのアドレス。
    ・条件エリア    :対象リストエリアの項目タイトル行に条件入力できる行を
                1行追加したエリア

  [説明] 対象リストエリアの中から、条件エリアに指定した条件に合致した行の
        対象フィールド(翌日値上り金額など)の数値を合計する。

  ※データベース関数の本格的な使い方は、”KENZO30−関数・書式と引数”が分かり
    やすいと思いますが、後から勉強されることで十分だと思います。

  「勝ちパターンの研究」の「条件なし」から「安値の増減は日計りに役立つか」の15
  パターンは、データベース関数を利用してシミュレーションしました。条件エリアを変更
  することで、瞬時にシミュレーション結果が計算されます。マクロを組み合わせることで、
  年度別分析も同時にできます。


2.データベース関数を使った相場分析について

  相場データの取り込みから、相場分析まで、簡単なサンプルをベースに説明します。
  SUM関数が分かる方であれば、2〜3日で使いこなせるようになります。

  サンプルは、日経225先物の2002年度データを利用して、当日の高値が前日の
  高値よりも高く、当日の終値が前日の終値より高いときに翌日の終値が始値より低い
  割合をシミュレーションするものです。

  [ステップ1] 相場データの取り込み(サンプル1)
    ・ドリームバイザー・ドット・コムを利用します。
    ・このサイトの「株価チャート」を選択すると”株価チャート”条件入力画面
     が現れます。その画面で、日経平均先物を選択すると日経225のグラフが
     表示されます。そこで「4本値」を選択し、期間を6ヶ月から、「データ長(最大
     データ期間)」に変更すると3年分のデータが表示されます。
    ・後は選択して、コピーをしてメモファイルに落とし、EXCELでそれを 
     読み込めばOKです。(2001年12月28日から2003年1月6日までをコピー)

  [ステップ2] EXCELデータの加工(サンプル2)
    ・日付を年と月と日に分解します。
    ・高値比較、終値比較、終値―始値、翌日値上り日、翌日値下り日、
     翌日値上り金額、翌日値下り金額を追加します。
    ・追加した項目に計算式をセットし後ろの行にコピーします。
    ・一度、名前を付けて保存します。

  [ステップ3] データベース関数利用の準備(サンプル3)
    ・全体を数値コピーします。(容量が約1/3になります)
    ・2001年12月28日と2003年1月6日の行をカットします。
    ・条件エリアを追加します。
    ・対象データエリア(相場データ)に"taisyou_area"、条件エリアに"
     "jyouken_area"の名前を付けます。
    ・データベース関数を入力します。
    ・別の名前を付けて保存します。

    ※翌日値上金額などの計算結果は、条件無しの場合の集計となっています。


  [ステップ4] 試してみましょう(サンプル4)
    @当日高値>前日高値
    A当日高値>前日高値 and 当日終値>前日終値
    B当日高値>前日高値 and 当日終値>前日終値 and 年月=2002年1月


3.シミュレーション・シートの改良

  前回作成したサンプルを改良して、より実用度の高いものに仕上げます。

  [ステップ5] 曜日の追加(サンプル5)
    ・”日”の右隣に2列追加して、1つは”曜日W”、1つは”曜日"と項目名を付けます。
    ・”曜日W”に式(=WEEKDAY(A10))を入力し、下段にコピーします。
    ・”曜日”にVLOOKUP関数を利用して曜日を入れます。
     VLOOKUP関数を使う準備としてワークシートを追加して曜日テーブルを作成します。
     VLOOKUP関数は、とっても役に立つ関数なので、初めての方は是非覚えて
     ください。”KENZO30−検索/行列関数(VLOOKUP関数)”がお薦めです。  

  [ステップ6] 曜日別分析(サンプル6)
    ・8行目から4行追加します。
    ・サンプル6に従って、8、9、10、11行目を加工します。


4.自動登録マクロを利用したシミュレーションの自動化

  [ステップ7] マクロを使った自動化(サンプル7)
          (ステップ6で行った作業をマクロを使って自動化します)
    ・曜日別分析エリア(N9:R11)をDeleteします。
    ・ツール(T) - マクロ(M) - 新しいマクロの記録(R) を選択します。
    ・「マクロの記録」ダイヤログボックスのマクロ名(M)に”曜日分析"、ショートカットキー
     (K)に”p”(必ず小文字のこと)を入力してOKボタンを押します。
     (この時点から、EXCELの操作はマクロに記録されます)
    ・曜日(F2)に”月"を入力し、J9〜J11をN9〜N11に数値コピーをします。
    ・同様に”火”から”金”までを繰り返します。
    ・最後に曜日(F2)をDeleteします。
    ・記録終了ボタン(■)を押します。
     (これでマクロの記録は終了しました)

  [ステップ8] マクロを実行して見ましょう(サンプル8)
    ・曜日別分析エリア(N9:R11)をDeleteします。
    ・ツール(T) - マクロ(M) - ▼マクロ(M) を選択します。
    ・「マクロ」ダイヤログボックスの曜日分析を選択して実行(R)を押すと先ほど登録した
     作業が自動的に行われます。
   (今度は、条件を追加して、別の方法でマクロを実行します)
    ・曜日別分析エリア(N9:R11)をDeleteします。
    ・終値比較(M2)に”>0”を入力します。
    ・キーの[Ctrl]を押しながら小文字の”p”を押すと先ほど登録した作業が自動的に
     行われます。


5.おまけのおまけ

   売りパターン3種および売りパターン4種の組み合わせ発見に利用した私の勝ちパターン
   発見シートを紹介しておきます。

              □□□勝ちパターン発見シート□□□  




   アフターサービスとして、鉄株掲示板でどんな些細なお問い合わせにも応えて
   いきますから気楽に質問してください。

   とりあえず、特別企画はこれで終わります。