【FX】スプレッドシートで土日を除いたホールド日数を求めるには!

オリンピックで、ピクトグラムが話題となり、なんちゃってオリンピックのピクトグラムyoutubeの再生回数が劇上げしていることに、こんなことも稼げるネタになるんだと、日々精進するセレブパンダだお。

FXやってて、ホールド日数は気になるところです。1週間ポジションを持ち続けるのも精神的にしんどくなります。

今日は、そのお話です。

こんな方におすすめ

スプレッドシートで曜日の日数をカウントしたい人

FXのポジション保有日数に土日を含めない方法を知りたい人。

バックテストをやりながらポジションの保有日数を計算してファイルに出力する処理をMQL4で作成しました。

こんな感じです。

ただ、土日も含まれた保有日数です。土日は相場を見ない人からして、稼働日での日数を知れたらいいなと考えました。

MQL4で可能ですが、今回は、スプレッドシートを使って計算してみました。

曜日の回数をカウントするには、

開始日と終了日の間にある曜日の日数を計算する「NETWORKDAYS.INTL関数」

を使用すれば、実現できることをネットで知りました。

以下のように、土曜日・日曜日の回数を出力されたいセル(ここではF2)に

「=NETWORKDAYS.INTL(開始日,終了日,週末パラメータ)」と入力すればよいはず。

週末パラメータは7桁で1が休み、0が稼働日で指定します。稼働日を返すので、返したい曜日のみ0(稼働日)に設定します。

例) 土曜日、日曜日を数えたい場合の週末パラメータ

1 1 1 1 1 0 0

月火水木金土日

入力してEnterキーを押すと、入力した計算式が確定します。これで土日の日数がカウントできたはず・・・

どころが実行すると、エラーが発生してしまいました。

NETWORKDAYS.INTL のエラーの原因

日付の書式が間違っていました。MQL4で出力すると「YYYY.MM.DD」になってしまいます。

正しくは、「YYYY/MM/DD」です。

エラーの解決方法

さて、MQL4を変更するのも一つの手ですが、MQL4はそのままにしたいです。

スプレッドシートのG列、H列に 「YYYY.MM.DD」 → 「YYYY/MM/DD」 に変換した値を設定するように計算式を組みます。

「YYYY.MM.DD」の「YYYY」「MM」「DD」の部分だけ切取り、間に「/」を付け加えました。

F列 にはC列を変換、G列にはD列を変換するように計算式を組み込みました。

ようやく NETWORKDAYS.INTL を組み込みます。

土日を数えたいセル(ここではH2)に NETWORKDAYS.INTL を組み込みます。

どうように他の行にも計算式をあてはめます。

最後に、保有日数-土日の日数をすれば、求めたい土日を除いた日数(ここではI2)が求めれます。

これで、無事に土日を除いた保有日数が求めれました。

では、まただお。

Twitterでフォローしよう

おすすめの記事