【開発の裏側⑮】通貨ペアの名前は業者ごとに違うので、インジケーターに探させています

【開発の裏側⑮】通貨ペアの名前は業者ごとに違うので、インジケーターに探させています

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

同じユーロドルでも、口座によって名前が違います。
EURUSD のこともあれば、EURUSD# や EURUSD.pro、m.EURUSD のように、前や後ろに飾りが付いていることもある。

1つのチャートで動くインジケーターなら、これはあまり困りません。
困るのは、ほかの通貨ペアの値を読みに行くインジケーターです。



e-CurrencyStrength は、28の通貨ペアの値から、8つの通貨の強さを出すインジケーターです。
以前の版は、通貨ペアの名前を決まった形で持っていました。名前の違う口座では、動かなかったんです。

製品にするときに、ここを作り直しました。
どの口座の名前でも、そのまま表示できるようにするためです。



やり方はこうです。

起動したときに1回だけ、その業者の銘柄を全部見ます。
銘柄の情報にある基軸通貨と決済通貨から、28の組み合わせを探す。名前の文字列には頼りません。

同じ組み合わせが何個も見つかることがあります。そのときは、順に点数を付けて1つ選びます。
一番重いのは、今のチャートの銘柄と同じ飾りが付いていること。次に、銘柄の情報が合っていること、値が届いていること、取引できること、と続きます。

起動した瞬間に口座へログインできていないと、銘柄の一覧が欠けることがあります。なので、ログインできたら選び直すようにしました。



作ってすぐ、MT4で5分足だけが計算中のまま進まない、ということが起きました。

調べると、今のチャートの銘柄から飾りを取り出すところで、MT4とMT5で同じ名前の関数が違う結果を返していました。飾りを取り違えたせいで、この口座では値の来ていない銘柄を選んでいたんです。
飾りの取り出し方を直して、飾りが同じことを一番重くしたら、正しい銘柄を選ぶようになりました。



手元の口座で確かめられたのは、飾りの無い名前と、後ろに記号が1つ付く名前です。
前に飾りが付く口座でも同じ手順で探す作りですが、実際の口座ではまだ試せていません。

インジケーターを、いろいろな業者の口座で動くように直すご依頼も受けています。


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