【開発の裏側65】トレンドラインのお知らせが、鳴るべきときに鳴らず、鳴らなくてよいときに鳴っていた。判定の3つのずれ

【開発の裏側65】トレンドラインのお知らせが、鳴るべきときに鳴らず、鳴らなくてよいときに鳴っていた。判定の3つのずれ

記事
IT・テクノロジー
どうも、FXトレーダー兼システムエンジニアのナオトです。

開発の裏側の65回目です。前回は、ボックスのインジケーターが、ほかのチャートに手を出していた3つの話でした。
今回は、その姉妹品のトレンドラインのインジケーターを作り直したとき、お知らせの判定で見つかった3つのずれを書きます。



このインジケーターは、高値の山どうし、安値の谷どうしを自動で結んで、トレンドラインを引きます。
価格がラインに近づいたら到達、ラインを抜けたらブレイクとして、音やポップアップで知らせます。

作り直す前の版を1行ずつ読むと、お知らせの判定に3つのずれがありました。



1つ目は、確定した足で判定する設定のときの比べ方です。

足が確定してから判定する設定では、1本前の足の終値と、ラインの価格を比べます。
ところが前の版は、1本前の終値を、いまの足の位置のラインの価格と比べていました。

水平線なら、どの足の位置でも価格は同じなので問題になりません。
トレンドラインは斜めなので、足1本ぶん先の位置では、ラインの価格が傾きの分だけずれています。終値とラインを、違う時刻どうしで比べていたことになります。

1本前の終値は、1本前の足の位置のラインと比べるよう直しました。



2つ目は、お知らせの状態の扱いです。

前の版は、新しい足ができるたびに、到達したか、抜けたか、という状態を初めの状態に戻していました。
新しい足ができたちょうどその時にラインに届いたり抜けたりすると、戻した直後のため、その動きを取りこぼすことがありました。

状態を戻すのは、ラインが引き直されたときだけにしました。
引き直した直後は、いまの状態を知るだけで、鳴らしません。



3つ目は、ラインを隠しているときです。

パネルのボタンでラインを隠していても、前の版はお知らせを鳴らしていました。
チャートに線が見えないのに、到達やブレイクを知らせてくる形です。

隠しているあいだは、お知らせを鳴らさないように直しました。



3つとも、チャートの見た目には出ません。線は正しく引かれていて、お知らせだけがずれていました。

お知らせを作るときは、何と何を比べているか、それぞれがどの時刻の値か、を1つずつ確かめてみてください。特に斜めの線は、比べる足の位置が1本ずれるだけで、判定が変わります。

高値と安値のトレンドラインを自動で引き、保存して見比べられるインジケーターです。


最後までお読みいただき、ありがとうございました。
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す