1 (edited by sleytus 2018-02-09 08:48:09)

Topic: Are all ticks created equal?

The Opening Point 'Bar Opening' enters the market at the beginning of a bar.  That is, it will only open a new position at tick #1 of your chosen time frame or period (i.e. M1, M5, etc.).  Many ticks may arrive per second or per minute, but tick #1 at the beginning of an interval is treated (by MT4 and our strategies) in a unique way.

I've read from other posts that 'Bar Opening' is well-defined because MT4 DOES send a tick at the beginning of each new interval (whereas that is NOT the case for 'Bar Closing').

Since tick #1 is so unique and important, then my question is -- Does MT4 (or your Broker) do anything special to ensure tick #1 is accurate?  Or does MT4 treat tick #1 the same as tick #27 or #73 and doesn't really care?

A related question -- if there is no new tick data at exactly the moment when a new interval begins, then does MT4 (or the broker) simply resend the last known tick at the exact moment a new interval begins?

And yet another question -- and I apologize if it is naive.  Why does FSB-Pro and EA Studio employ this concept of an 'Opening Point' that is distinct from 'Opening Logic Conditions'?  Why aren't the logic conditions alone sufficient to create a signal?  Other Expert Advisors (commercial or hand-coded) do not use an 'Opening Point' -- they simply combine indicators and when all the indicator formulas return 'true' then it's time to open a trade.

Thanks...

Re: Are all ticks created equal?

Does MT4 (or your Broker) do anything special to ensure tick #1 is accurate?

The ticks are equal. We simply use them to detect if a new bar appears.

The code is very simple:

int barTime = 0;
void OnTick() {
    if (Time[0]>barTime) {
        barTime=Time[0];
        OnBar();
    }
 }

We create our own OnBar event smile . It works even if there are skipped ticks because we will detect if the bar's open time changes and will act accordingly. Most of indicators use close price and it really doesn't matter if we miss the actual bar opening with a tick or two.

Re: Are all ticks created equal?

Why does FSB-Pro and EA Studio employ this concept of an 'Opening Point' that is distinct from 'Opening Logic Conditions'?

It allows us to make fast backtest and to provide a Strategy Generator. Now we check the indicators only at predefined points (only Bar Open for EA Studio).

If we don't have Position Open Price, we have to check all entry rules for each tick. It has two problems - much more calculations are needed; the interpolation path will play a significant role. We decided to make our life simpler and to make only what is exactly needed.

Please check also this article: Entering the Market at Crossover to see what problems may arise.

Re: Are all ticks created equal?

Interesting -- thank you, Popov.

Okay -- so, defining an Opening Point allows for fast back testing when generating and optimizing strategies.  Very clever.

Is it safe to assume that back testing works equally well for all Opening Points supported by FSB-Pro -- whether they be 'Bar Opening', 'Moving Average', 'Price Move'?  The reason I ask is because an Opening Point such as 'Price Move' would seem to require that each tick be checked.  Obviously, the back tester is not checking every tick in that case.  Does that mean 'Price Move' is not a good choice as an Opening Point?  In other words, when using 'Price Move' does FSB-Pro interpolate tick values, whereas when using 'Bar Opening' it can simply use the bar opening values in the data set?

In your opinion, does FSB-Pro prefer certain Opening Points over others?

Thanks...

Re: Are all ticks created equal?

Hello Steve,

The backtester is optimized to the max. if you use Price Move, it takes the two possible entry points and calculate possible entries for them only. It is the same as all other Opening Point indicators. Actually Bar Open is one of them, so there is no difference.  Please check here for more details: Opening Point of the Position

Re: Are all ticks created equal?

Your documentation is excellent -- this helps me a lot to better understand some of the finer details.  Thanks...

Re: Are all ticks created equal?

Popov -- if you don't mind, can I return to my original question?

I understand the code generated by FSB-Pro and EA Studio treats ticks the same.  However, I was wondering whether MT4 (or brokers) treat tick #1 the same as all other ticks because tick #1 always arrives at precisely the correct moment, whether or not the ask / bid price has changed.  Whereas other ticks arrive at seemingly random intervals.

Thanks

Re: Are all ticks created equal?

Hello Steve,

You must know that the bars are artificial. There are only ticks on the data feed. We form bars as a way to compress the data. If you monitor the market at night, you will see that a bar start not at the theoretical open time, but when a new tick arrives and the time is after the "open time". If the platform observes bars, it must plot a horizontal line at the exact moment of bar opening. Unfortunately this is not the case. Even worse, if there are no ticks, MT will skip a complete bar.

Re: Are all ticks created equal?

Your answers help me a lot.  Thank you, Popov.