how can i get the 100 millisecond chart ??? - page 4

 
Personally I am sure that the decision not to have a tick chart was a pure design decision just for the fact that it's consistent with the overall design of the platform. It does not make sense, engineering-wise, to have a chart that is at a time-scale that the platform is incapable of delivering when it comes to actual placement of orders. I would have done the same myself. The claim that brokers would "want" MT4 to not include this feature makes no sense, since this feature is simply useless... They wouldn't care less.
 
SDC:

in other words it is not using a tcp/ip protocol for the price feed conection. [...] The price feed connection to the broker simalar to, or actually of, the UDP type connection

Tcpview seems to indicate that the connection from MT4 to the broker is TCP, not UDP.

Ais:

Just useful information about precision of the system time in Windows, and in MetaTrader respectively [...]

I think you are referring to things like GetTickCount(). All versions of Windows from 2000 onwards also provide a high-frequency system timer. See http://msdn.microsoft.com/en-us/library/ms644904(VS.85).aspx etc. The typical 16ms granularity of GetTickCount() has no bearing on the ability to draw a 100ms chart, particularly because such a chart would almost certainly be drawn based on the broker's timestamp, not the local computer time. If the MT4 timestamp had millisecond precision, which it doesn't.

gordon:

Personally I am sure that the decision not to have a tick chart was a pure design decision [...]

Undoubtedly true. Partly because of the MT4 platform's slightly unusual definition of a "tick", and the fact that it leads to a very different number of "ticks" depending on which broker you are connected to.

 

1. Exactly, I am referring to "GetTickCount()", that is used in MetaTrader4.
2. Using "QueryPerformanceCounter" and "QueryPerformanceFrequency" for high-precision timings looks like naive, because these functions are based on the CPU's clock speed.
We well know that CPU's clock speed is not stable and may be switched by the system on the run.

 
Ais:

2. Using "QueryPerformanceCounter & QueryPerformanceFrequency" for high-precision timings looks like naive [...]

It's less naive than using GetTickCount(), and it's still irrelevant because all charts in MT4 are drawn based on the broker's timestamp, not the local clock.
 
Ais:

[...] because these functions are based on the CPU's clock speed.

Raymond Chen claims that this is not true, and the function should not be sensitive to changes in clock speed unless the BIOS or HAL are buggy: http://blogs.msdn.com/b/oldnewthing/archive/2008/09/08/8931563.aspx?PageIndex=2. And Raymond Chen is usually right about low-level Windows matters.
 

3. We do not need to syncronize time stamps to get the artifical 100 ms chart.

4. MT4 has ability to have precision 1 ms, because we can reprogram PIC.

 

http://blogs.msdn.com/b/oldnewthing/archive/2008/09/08/8931563.aspx?PageIndex=2 :

"

Carsten Orthbandt

9 Sep 2008 1:03 AM

Most times QPC is mentioned there's one very very important thing missing.

The fact that QPC is grossly unreliable. Depending on the actual hardware and CPU load, QPC will randomly jump back and/or forth several seconds (in my experience it was usually ~4 seconds).

You _can_ work around that by tracking wall-clock time too and trying to detect those leaps.

"

 
Ais:

Carsten Orthbandt [...]

Personally, I'm going to trust Raymond Chen, who works for Microsoft, over someone else I've never heard of who doesn't work for Microsoft, and doesn't know and hasn't spoken to the people who wrote the relevant parts of the Windows operating system. Your opinion may be different.
 

Processors are manufactured not by Microsoft.

 
Ais:

Processors are manufactured not by Microsoft.

They're not? Wow! I never knew. Thank you.

Reason: