私が株式投資をはじめて間もない頃なので、20年以上も前の話です。
「株のデイトレードは、始値で売って終値で買い戻すだけで利益がでる!」
そんな情報に出会いました。
はたして本当なのでしょうか?
それとも都市伝説か?
いわゆる、寄り天相場が相対的に多い事を想定した、デイトレード投資戦略です。
今でも通用するのでしょうか?
Pythonで分析してみましょう。
約21年間の日経平均株価を分析します
個別銘柄をひとつひとつ分析するのは大変なので、約21年間の日経平均株価を分析します。
自分のPCに保存しているCSVデーターを取り込みました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#ライブラリーをインポート import pandas as pd #ここで日経平均株価を指定している Security_code = 'Nikkei 225' # 指定された銘柄コードのファイル名を作成 Security_code +_Longest_term_historical_data.csv csv_file_name = f"{Security_code}_Longest_term_historical_data.csv" # parse_dates=Trueで、インデックスの列をdatetime型に変換している df = pd.read_csv('./data/' + csv_file_name, header=0, index_col='Date', parse_dates=True) # データーを降順に並び替える df = df.sort_index() df |
取り込んだデーターは2001年01月05日から2022年08月19日まで。
当日始値からの上昇下降その他の値算出
当日始値からの、上昇下降その他の値を算出します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
#1日の上昇下降の値差を算出' df['Ascent_and_descent_of_the_day'] = df['Close'] - df['Open'] #1日の上昇・下降したかのフラグ設定 #まず初期値を入力 (未判定) df['Up_Down_day_flag'] = 'undecided' #当日 始値から上昇して終わったか 上昇していればUP 下降していればDOWN フラグを付与 df.loc[ df['Open'] < df['Close'], 'Up_Down_day_flag'] = 'UP' df.loc[ df['Open'] > df['Close'], 'Up_Down_day_flag'] = 'DOWN' ####後の検証で使用する#### ## 前日の価格変動のフラグ設定(上昇して終わったか下降したか) #まず初期値を入力 (未判定:undecided) df['Up_Down_day_before_flag'] = 'undecided' #前日の価格変動をフラグ付け 上昇ならUP 下降ならDOWN df.loc[df['Ascent_and_descent_of_the_day'].shift(1) > 0 , 'Up_Down_day_before_flag'] = 'UP' df.loc[df['Ascent_and_descent_of_the_day'].shift(1) < 0 , 'Up_Down_day_before_flag'] = 'DOWN' ##当日の始値と前日の終値との比較 #前日終値と当日始値とのギャップ df['Close_previous-Open'] = (df['Open'] - df['Close'].shift(1)) #前日終値にタッチしたかのフラグ設定 #まず初期値を入力 (未到達) df['touch_Close_the_day_before'] = 'unreached' #前日終値と当日始値とのギャップがプラスの場合 当日の安値 < 前日の終値 なら タッチ判定 df.loc[df['Close_previous-Open'] > 0, 'gap_from_the_previous_day'] = 'gap_up' #前日終値と当日始値とのギャップがマイナスの場合 当日の高値 > 前日の終値 なら タッチ判定 df.loc[df['Close_previous-Open'] < 0, 'gap_from_the_previous_day'] = 'gap_up' #売り戦略の場合の損益金額を算出' Profit and Loss of Sell Strategy df['Profit_and_Loss_of_Sell_Strategy'] = df['Ascent_and_descent_of_the_day'] * -1 df |
ヒストグラムで頻度確認
ヒストグラムで取引が当日始値から上昇して終わったか、下降して終わったか。
その出現頻度をヒストグラムで見てみましょう。
1 2 3 4 |
import matplotlib.pyplot as plt import seaborn as sns sns.histplot(df['Up_Down_day_flag']) |
こちらが表示されたヒストグラムです。
当日の当日の日経平均株価は、上昇よりも下降している場合が少しだけ多いようです。
それと、UP・DOWN以外に上昇下降の判断が出来なかった事を示すundecidedが表示されています。
上昇下降の判断が出来なかったデーターを、表示してみましょう。
1 2 |
#当日のUp_Down_day_flagが'undecided' df[df['Up_Down_day_flag'] == 'undecided'] |
11件抽出されました。
1番下のデーターは2020年10月1日ですが、この日に何が起こったか覚えていますか?
この日は東京取引所のシステムトラブルで、東証に上場する全銘柄の売買が終日停止した日です。
始値と終値が同値であるため、上昇・下降の判断が出来ませんでした。
全データー5324件の内、判断が出来なかったデーターが11件なので、今回はこのデーターを削除して無視することにしました。
不要なデーターを削除して新しいデーターフレームdf2に格納します。
1 2 3 4 5 |
#不要なデーターを削除して新しいデーターフレームに格納する df2 = df[df['Up_Down_day_flag'] != 'undecided'] df2 = df2[df2['Up_Down_day_before_flag'] != 'undecided'] |
もう一度ヒストグラムを表示させます。
1 |
sns.histplot(df2['Up_Down_day_flag']) |
DOWN・UPのみ表示されています。
売り戦略で利益が出るのか
過去データーを見ると、ほんの少しだけDOWNが優勢です。
私たち投資家が知りたいのは、その戦略で利益が出るのかです。
◇売り戦略
当日の始値で売り仕掛け
当日の終値で手仕舞い
1 2 3 4 5 |
#売り戦略の場合の損益金額を算出' Profit and Loss of Sell Strategy df2['Profit_and_Loss_of_sell_all_strategy'] = df2['Ascent_and_descent_of_the_day'] * -1 #売り戦略の累積和を算出する df2['Accumulation_sell_all_Strategy'] = df2['Profit_and_Loss_of_sell_all_strategy'].cumsum() |
売り戦略の損益をチャート表示
売り戦略の損益をチャート表示します。
1 |
sns.lineplot(data=df2,x='Date',y='Accumulation_sell_all_Strategy') |
まぁ、何とか右肩上がりのチャートになっています。
2001年の年初から、ずーっと売り戦略を続けていたら、利益がでるチャートに見えます。
(手数料・税金は考慮せず)
「株のデイトレードは、始値で売って終値で買い戻すだけで利益がでる!」
この話を聞いたのは、今から20年以上前なので、その頃(2003年頃まで)はしっかり機能していた戦略なのかも知れません。
2020年以降のチャートは乱高下しているように見えます。
最近は「デイトレードが難しくなった」と言われるように、相場環境が大きく変わっていることを表しているのかも知れませんね。
もう少し深掘り
「株のデイトレードは、始値で売って終値で買い戻すだけで利益がでる!」
この投資戦略は、今では使えない都市伝説だった。
このように結論づけるのは簡単です。
でも、ここで分析を終わらせたらもったいない気がしませんか?
前日から、大きくギャップをあけて始まった日だけを選んでエントリーしたら?
前日上昇した翌日だけを選んで取引したら?
次回の記事では、上の条件を追加して利益が出るのかを分析したいと思います。
都市伝説か!?デイトレードは始値で売って終値で買い戻すだけで利益がでる!Pythonで株価分析[サンプルコード付き]Part2
※注意事項
ブログ運営者は、このブログ記事を参考にした取引で発生した損失、その他の不利益に対して責任を負いかねますのであらかじめご了承ください。
このブログ記事は、特定の銘柄の売買を推奨・投資の勧誘を目的としたものではありません。
最終的な投資決定は、ご自身の判断でなさるようにお願いいたします。
この記事を書いた人
あしおゆたか
投資歴21年の個人投資家
机上の理論ではなく、実体験に基づいた記事作りをモットーにしています。
スポーツクラブに毎週2日~3日通い、サウナ後の暴飲暴食が趣味。(現在自粛中)
◇主な投資対象
日本株式
株式ETF(上場投資信託)
日経225先物
日経225先物オプション
◇運営者情報はこちら