EATradeStop Ver1.25リリースのお知らせ

EATradeStop ご連絡・雑記

EATradeStop Ver1.25

以下の機能を追加しました。

  • サーバー時差(ServerOffsetGMT)の自動計算(手動入力は削除)

サーバー時差は質問が比較的多いパラメーターだったことと、夏冬の切り替えが少し面倒でしたので、なんとか自動計算できないものかと考え‥実装しました。

サーバー時差はMT4から取得することができないため、最初はローカルの時差(LocalOffsetGMT)から計算することを考えましたが、利用したい時差(日本時間)とPCの時差が異なるケース(米国VPSなど)もあるためこの方法は使えません。

協定世界時 (以下、UTC)を取得する方法を探してみましたがJavaやPHP、JavaScriptなどでは比較的簡単に取得できるという記載はあるものの、MQL4に関しては見当たりません‥。(MQL4でUTCを取得する関数などはもちろんありません‥)

最後の手段はスクレイピング‥Webページを読み込んで取得する方法ですね。
美しくはありませんが、止む終えません‥。

PHPでUTCの時刻を取得して表示するページを作成して、そのページから取得するようにしました。

自前で用意すれば他のサイトにアクセス負荷がいく‥といったことは考えなくても良いですし、なにより時刻以外の情報が一切無いページであればスクレイピングも楽です。

他の言語であればスクレイピングに便利な関数などがあって簡単に取得できたりするのですが、当然ながらMQL4にはそのような機能はありませんから、地道に欲しいデータを探してくるロジックを書かなければいけないので‥。 実はかなり大変なんですよね‥。

自前のページなら時刻だけ表示してそれをそのまま使えばOK!というわけです。

UTCさえ取ってくれば時刻の差分計算は簡単です!

サーバー時刻からUTCで引けば出てきます。

というわけで、これを使えばもう夏冬時間の切り替えはいらなくなる‥はず‥(時差計算は毎日1度だけ実行しています。夏冬切り替え時に再設定する必要は無いように作った‥はず‥)

実際に切り替えがうまくいくかどうか?という確認まではできないので‥うまくいくはず‥とは思っていますが、一応、最初の切替時には切り替わっているかご確認をお願い致します。

自動設定されたServerOffsetGMTは左上に表示されるようにしてありますので‥。

なお、LocalOffsetGMTも計算できなくはないのですが、前述の通り、米国のVPSなどを使用している場合には「停止などに使用したい時差」が「PCの時刻」ではない可能性を考慮すると、これはちょっと難しいかなと思い断念しております‥。

少なくとも日本時間であれば夏冬の切り替えは不要ですし、需要は少ないでしょう。たぶん‥。(一応、海外の方も使用されておりますが少数派ですし、夏時間の切り替えにも慣れていらっしゃるでしょう。)

無駄に長い内容になりました‥。

ダウンロードはいつもどおり、ご購入のショップからお願い致します。
(右上の「ログイン」からログインしていただき、「マイページ」からダウンロードできます。)

ショップ – FX研究日記 別館

※ゴゴジャンでご購入のお客様はゴゴジャンからダウンロードをお願いいたします。また、ゴゴジャンの操作でご不明の場合にはゴゴジャンへお問合せをお願いいたします。

コメント

タイトルとURLをコピーしました