ミリ秒単位のタイムスタンプを提供する新しいmql4.... - ページ 4

 
autoabacus:

...
とても興味深いです。ありがとうございました。
 

mt4にGetMicroSecondCount() が追加されたことに気づきました。これはGetTickCount関数を使うよりも精度の面で優れているのでしょうか?

GetMicrosecondCount() vs GetTickCount() を使用する利点/欠点は何でしょうか? より多くのリソースを使用しますか? 私は、MilliSecよりもMicroSecの分解能が優れた関数だと思います。 MicroSecからMillisec以下の分解能にはいつでも変換できますが、Millisecを取ってMicroSecs以上の分解能にすることはできないのです。


なぜ、MQはミリ秒のタイムスタンプにGTC関数とGMicroCを推奨したのですか? 以前はGMicroC関数がなかったのでしょうが、今はあるのですから、ドキュメントを更新して、より高いタイムスタンプ分解能にGMicroCを推奨してはどうでしょうか?

 
4evermaat:

mt4にGetMicroSecondCount() が追加されたことに気づきました。これはGetTickCount関数を使うよりも精度の面で優れているのでしょうか?

GetMicrosecondCount() vs GetTickCount() を使用する利点/欠点は何でしょうか? より多くのリソースを使用しますか? 私は、MilliSecよりもMicroSecの分解能が優れた関数だと思います。 MicroSecからMillisec以下の分解能にはいつでも変換できますが、Millisecを取ってMicroSecs以上の分解能にすることはできないのです。


なぜ、MQはミリ秒のタイムスタンプにGTC関数とGMicroCを推奨したのですか? 以前はGMicroC関数がなかったのでしょうが、今はあるのですから、ドキュメントを更新して、より高いタイムスタンプ分解能にGMicroCを推奨してはどうでしょうか?

あなたは、ミリ秒を要求したのに、マイクロ秒になってしまいましたね。とにかく、TimeCurrent() (およびサーバから返される他の時間) がミリ秒を返すなら、それはより良いことでしょう。

もしMetaquotesと話したいなら、ServiceDeskに書き込んでください。

 
4evermaat:

mt4にGetMicroSecondCount() が追加されたことに気づきました。これはGetTickCount関数を使うよりも精度の面で優れているのでしょうか?

GetMicrosecondCount() vs GetTickCount() を使用する利点/欠点は何でしょうか? より多くのリソースを使用しますか? 私は、MilliSecよりもMicroSecの分解能が優れた関数だと思います。 MicroSecからMillisec以下の分解能にはいつでも変換できますが、Millisecを取ってMicroSecs以上の分解能にすることはできないのです。


なぜ、MQはミリ秒のタイムスタンプにGTC関数とGMicroCを推奨したのですか? 以前はGMicroC関数がなかったのでしょうが、今はあるのですから、ドキュメントを更新して、より高いタイムスタンプ分解能にGMicroCを推奨してはどうでしょうか?

GetTickCountは(Windowsの初期から)Windows APIのコア関数ですが、他の関数は(簡単ではありますが)実装が必要でした。両者は関係ありません。
 
zirkoner:

あなたは文句を言うのが好きなようだ あなたはミリ秒を要求し、今あなたはマイクロ秒を持っています。とにかく、TimeCurrent() (およびサーバーから返される他の時間)がミリ秒を返すなら、それは良いことです。

もしMetaquotesと話したいのなら、ServiceDeskに書き込んでください。

文句を言うつもりはありません。 ただ、より正確な新しい関数が利用できるようになったのに、なぜ彼ら(あるいは誰)はまだ古い関数を勧めるのだろうと思っただけです。サービスデスクに手紙を 書きました。

Ovo です。
GetTickCountは(Windowsの初期から)Windows APIのコア関数ですが、もう一つの関数は(簡単ではありますが)実装が必要でした。両者は互いに関係ありません。

GetMicroSecondCount()は、タイムスタンプでマイクロ秒の精度を得るためにどのような実装を使用していますか?

 
4evermaat:

GetMicroSecondCount()は、タイムスタンプのマイクロ秒の精度を得るためにどのような実装を使用しますか?

私はそれをコード化する方法を明確に知っていますが、私はMQコーダーではありません。とにかく、すでにそれを動作させたのなら、なぜそれを知る必要があるのでしょうか?
 

システム時刻をエポックからのミリ秒単位で取得する。


#include <WinAPI\windef.mqh>
#import
"kernel32.dll" void GetSystemTimeAsFileTime(FILETIME& t); #import ulong getCurrentEpochMsc(){      FILETIME t;      GetSystemTimeAsFileTime(t);      ulong time = (long)t.dwHighDateTime << 32 | t.dwLowDateTime;      ulong diffTo1970 = 11644473600000;      return (ulong)(time * 0.0001 - diffTo1970 - TimeGMTOffset()*1000); }
 
owneroxxor: システム時刻をエポックからのミリ秒として取得する。

Datetimeは"epoch "からの秒数です。longに キャストして1000倍してください。

 
William Roeder:

Datetimeは エポックからの秒数です。longに キャストして1000倍してください。 そんなことは必要ありません。

あなたは、(私のように)私が注文したTimeMsc()と比較するためにシステムの現在の瞬間(ミリ秒精度)を知る必要があるケースがあることを考慮していないようです。その場合、あなたが言ったことは妥当ではありません。

 
owneroxxor:

あなたは、(私のように)私が注文したTimeMsc()と比較するためにシステムの現在の瞬間(ミリ秒精度)を知る必要があるケースがあることを考慮していないようです。その場合、あなたのおっしゃることは妥当ではありません。

単純にGetTickCount() を使えばいいのです。