• ベストアンサー

株価の統計の作成なんですがどなたか教えてください。

株価のサイコロジカルラインをエクセルで作っていますが銘柄が多い為、毎日たくさんの入力項目があり大変苦労しています出来れば終値だけを入れると上昇、下落、勝敗の項目が自動的に入力されるようにしたいのですが。 ABCDEの5個の列がありA列=に日付け、B列=に終値、C列=に株価が上昇ならチェックが入るとします、D列=に株価が下落するとチェックが入るとします、E列=にC列とD列の結果を入れたいのです。上昇と下落が12日間のうち半分ずつなら6勝6敗(6-6でも結構です)と記入したいのですが、ここでポイントが1つだけありまして例えば9月1日~12日(曜日は無視します)の12日間が2日~13日、3日~14日というふうにスライドしていくようにしたいのです。 エクセルの本を読んで勉強すればいいのですが中々時間も取れません達人の皆様のお力をお借りしたいと思いますどうかよろしくお願いします。出来ましたら説明が下手なので下記の表を参考にしてください。 日付け  終値 上昇 下落 勝敗 9月1日 \1000 2 \990 1 0-1 3 \980 1 0-2 4 \970 1 0-3 5 \960 1 0-4 6 \950 1 0-5 7 \960 1 1-5 8 \970 1 2-5 9 \980 1 3-5 10 \990 1 4-5 11 \1000 1 5-5 12 \1010 1 6-5 13 \1020 1 7-5 14 \1030 1 7-5(9月2日からの勝敗とする)

質問者が選んだベストアンサー

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.1

C3に =(B3>B2)*1 D3に =(B3<B2)*1 E3に =SUM(INDIRECT("C"&MAX(ROW()-11,3)):C3)&"-"&SUM(INDIRECT("D"&MAX(ROW()-11,3)):D3) この式を、行下方向にコピーします。 上昇:C列、下落:D列、勝敗:E列 で、9月2日のデータが3行目にあるとしています。 質問の9月14日の勝敗が?です。質問を誤解釈しているかもしれません。また、『引き分け』は上昇、下落のどちらにも入っていません。 算式は、当日も含め、過去12日間を集計しています。また日付は考慮せず、最大12行分を集計しています ご参考に。

noname#14890
質問者

お礼

実際にエクセルに乗せてみますと土曜、日曜、祝日は記載しなければ、それで済むことでした、集計は最大12行分でスライドしてくれています。ありがとうございました。

noname#14890
質問者

補足

早速の御回答ありがとうございました。回答が無いだろなぁーと思っていましたから、とても嬉しいです。おかげさまで作業が減りそうです、売却益が出るとお礼がしたい気持ちです(笑)とてもシンプルですごく理解しやすかったのも助かりました。私の質問の仕方が悪かったので申し訳なく思っていますが、今一度よろしければお尋ねしたいのですが、9月1日~12日の12日間と2日~13日間と3日~14日間などの日にちがずれても連動して12日間の集計をしたい場合はどうすればいいのでしょうか。サイコロジカルラインは12日間周期で(土・日曜・祝日は反映させないものとする)見るため12日間の期間は日にちが変わっても連動できるようにしたいのです。よろしければお手すきのときにでも教えてくださいよろしくお願いします。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

入力省力化に拘って見ました。取り急ぎの案です。難点をご指摘下さい。 (日付けについて)A列 必ず当日株価を入力するものとする。 A列(A2)関数=IF(B2="","",TEXT(NOW(),"yy/mm/dd")) B2に入力されていなければ空白、入力されていれば本日をセット。NOW()-1とすれば、必ず翌日に株価入力するなら、それで使える。 (株価について) 円単位にする。ドロップダウンリストで20円刻みの中から クリックして株価を選ぶ。B2セルにおいて データ-入力規則-(入力値の種類の▼をクリックして 「リスト」を選ぶ。元の値のボックスの矢印をクリックする。 株価候補を採ってくる範囲をF1からF20を指定し×をクリック。OKをクリック。 (株価候補価格について) F7に965円を入れる。F6は式=F7-1と入れる。 F5からF1へ複写する。F8=F7+1と式を入れる。 F9からF20まで複写する。F7でなくF10に入れても 良い(中心値。ずれてきたらF7へ適当な予想か実績株価を入れる。 (勝敗に付いて) 勝敗は簡単にするため、C列に統一して欲しい。取りあえず 質問のまま。C2は手作業で勝敗を入れる。C3に式=IF(B3>=B2,"0","1")と入れる。C3の式をC4から下へ複写する。0を空白にするなら、=IF(B3>=B2,"","1") D列へはD2に式=IF(C2="1","0","1")を入れる。C列空白なら=IF(C2="1","","1")。C3より下に複写する。 (何勝何敗について) 初めの何日間(10日スパンなら9日間は手作業でデータを入れてください)。IFを使って複雑化すれば自動でセットできるかも。 テストしやすいように、3日移動スパンで説明します。 E2からE4までは、手入力。E5に式=COUNTIF(C2:C5,"=0") を入れる。E5の式をE6から下へ複写する。勝ち(0)の数 が出る。10日スパンならE11のところに、=COUNTIF(C2:C11,"=0")となります。 結果はA1からF13は下記の通り。日付けがおかしい理由は 判りますね。 日付 株価 勝(敗) (勝)敗 959 02/09/22 963 1 0 960 02/09/22 963 1 0 961 02/09/22 968 0 1 1 962 02/09/22 965 1 0 1 963 02/09/22 963 1 0 1 964 02/09/22 968 0 1 2 965 02/09/22 964 1 0 1 966 02/09/22 970 0 1 2 967 02/09/22 968 1 0 2 968 02/09/22 965 1 0 1 969 02/09/22 968 0 1 2 970 02/09/22 968 1 0 1 971 私としては、本日入れた株価の上下10円巾を自動的にリストに出したいが、取り急ぎなので断念(出来るかどうか不明)。 株価の入力は、セルの右側をクリックしたら出てくるドロップ ダウンリストの中から、あればクリックすると、その値がセルにセットされる。無い時はF7に例えば1000円と入力し もう一度クリックすると当然現われる。

noname#14890
質問者

お礼

早速の御回答本当にありがとうございました。回答が無いだろなぁーと思っていましたから、とても嬉しいです。とり急ぎと言われながらこれだけ詳しくご説明いただいて感激しています。同じく株式投資をされていらっしゃるのかなーと、お見受けしました。まだ僕には複雑すぎて(苦笑)この先必ずこの回答が必ず役に立つ日を目指してがんばりたいです。又いつか質問する機会がありましたらどうぞよろしくお願いします。本当にありがとうございました。

関連するQ&A