【開発の裏側㉕】キリ番の線を0から足し続けて作っていた。2024年の自分のインジケーターを作り直した話

【開発の裏側㉕】キリ番の線を0から足し続けて作っていた。2024年の自分のインジケーターを作り直した話

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

2024年に出した、キリ番に線を引くインジケーターを、この秋に作り直しました。
作り直す前に、古いソースを点検したところ、直すところと足すところが12項目挙がりました。
今回は、その中から、インジケーターを作る方にも役に立ちそうな4つを書きます。



1つ目は、線の価格の作り方です。

古い版は、0から線の間隔を足し続けて、キリ番の価格を作っていました。
0、0.5、1.0、1.5と足していって、今のレートの近くまで来たら線を引く、という形です。

これには2つ困ることがあります。
まず、小数の足し算を何百回も繰り返すと、計算の誤差がたまります。コンピューターは0.1のような数を正確には持てないので、足すたびにわずかなずれが乗ります。
もう1つは、レートが大きい銘柄ほど、0から数える回数が増えて遅くなることです。

作り直した版では、キリ番を、何本目かという整数で持つようにしました。
価格は、その整数に間隔を1回掛けて作ります。足し算を重ねないので、誤差がたまりません。今のレートから何本目かを割り算で出すので、0から数える必要もありません。



2つ目は、小数の桁が少ない銘柄です。

古い版は、価格の桁から1 pipsの大きさを決めていました。
ところが、小数が0桁や1桁の銘柄では、1 pipsが0になり、線を引くループが終わらなくなる作りでした。
0の間隔で足し続けても、いつまでも次の線にたどり着かないからです。

桁が3桁と5桁なら10ポイント、それ以外は1ポイント、と決めて、0にならないようにしました。



3つ目は、点滅と音の終わり方です。

キリ番に近づくと、線が点滅して音が鳴ります。
古い版は、その終わりの条件が、上限の2倍の価格と終値を比べる式になっていました。2倍の価格にレートが届くことはまず無いので、近づいている間、点滅と音が続いていました。音も0.8秒ごとに鳴らし続ける作りでした。

作り直した版では、近づいた幅の2倍より離れたら終わり、という形にしました。
音は近づいた瞬間に1回だけ。同じキリ番は、30分のあいだ知らせ直しません。



4つ目は、作り直しの途中で、自分で入れてしまったものです。

次のキリ番までの距離をパネルに出す機能を足したとき、キリ番が売値と買値の間にあると、そのキリ番を飛ばして、1つ先の線を出していました。
売値と買値の間にあるキリ番は、上の線とも下の線とも数えられていなかったんです。
売値と買値の真ん中の価格から見るように直しました。



最後に、確かめ方です。

テスターの上で、近づいたと判定したキリ番を、変わり目ごとに数えました。ドル円の5分足で、2026年9月の前半です。
そのキリ番が、ちゃんと間隔の倍数になっているか。近づいたと決めたとき、本当に判定の幅の中にいたか。
どちらも、外れは0件でした。

古いコードは、動いているように見えても、点検すると穴があります。売っているものほど、一度は読み直しておきたいところです。

作り直した e-RoundNumberAlert の出品ページは、こちらです。MT4版とMT5版の両方が入っています。


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