Some signs of the right TCs - page 13

 
Serqey Nikitin:

Why not start from the main attribute - profit? Who needs a correct function that you have checked, but does not make a profit? Is this pure science?

Well, tie this pure science to properties needed by a trader - and this property is ONLY for profit...!

Let's tie it down. Posteriorly, when the price (time) function is already known. One currency pair. It only remains to select the moments of opening and closing of trades so as to make the largest profit. We choose these moments like this: at the moment of a global minimum we open a buy position, at the moment of a global maximum we close it and then open a sell position that is closed at the next global minimum. And so on. If the rate moves at this time is much larger than the overhead (spread, commission...), we can also insert reversal points in the retracement area, closing the position for that time and opening the opposite one. Then we will collect all possible profit, there is no more.

Bottom line. The determining moments are the moments when the price reaches its extremums. They are what is preserved if extremums F (price (time)) are searched for instead of the price (time) function if F is monotonous.

 
Vladimir:

Let's bind. Posteriorly, when the price (time) function is already known. One currency pair. It only remains to choose the moments of opening and closing of trades so as to make the largest profit. We define these moments as follows: at the moment of a global minimum we open a buy trade, at the moment of a global maximum we close it and then open a sell trade and close it at the moment of the next global minimum. And so on. If the rate moves at this time is much larger than the overhead (spread, commission...), we can also insert reversal points in the retracement area, closing the position for that time and opening the opposite one. Then we will collect all possible profit, there is no more.

Bottom line. The determining moments are the moments when the price reaches its extremums. They are what is preserved if extremums F (price (time)) are searched for instead of the price (time) function if F is monotonous.

You don't need to take a special case of customizing TS for one pair. It's called history matching.

But these adjustments do not always make this TS RIGHT!

The RIGHT TS is when the strategy settings give profit on one pair, but these same settings without additional optimization, also give the strategy profit on other pairs.

This is quite difficult to achieve, but it is possible... And in this case success depends on the IDEA of the strategy, not on the quotes, right, wrong or changed by some condition...

 
Vladimir:

Let's bind. Posteriorly, when the price (time) function is already known. One currency pair. It only remains to choose the moments of opening and closing of trades so as to make the largest profit. We define these moments as follows: at the moment of a global minimum we open a buy trade, at the moment of a global maximum we close it and then open a sell trade and close it at the moment of the next global minimum. And so on. If the rate moves at this time is much larger than the overhead (spread, commission...), we can also insert reversal points in the retracement area, closing the position for that time and opening the opposite one. Then we will collect all possible profit, there is no more.

Bottom line. The determining moments are the moments when the price reaches its extremums. They are what is preserved if extremums F (price (time)) are searched for instead of the price (time) function, if F is monotonous.

The main trading problem (in terms of abstract functions): identifying an extremum and "its locality" in real time. It means to give a "whistle"/assessment that an extremum is almost-or-already reached and there is a sufficient gap up to the opposite extremum both in price and in time.

The secondary task is to identify the absence of an extremum at the nearest price-time. The subtle point that blows your mind is that this task is fundamentally different from the first one

Both tasks can only be solved with a certain reliability, because they are forecasts and may even contradict each other.

 
Renat Akhtyamov:

Nikolai, would you show me the final figure,

just a peek at....

I suspect there is one, can't figure it out yet.

The figure is all in the woods.

But I am talking about the attributes of the ideal correct TS, the ones to which one should aspire and to which I myself aspire.
I have already talked a lot about this topic here on the forum.

An important addition is very much begging for in this thread. In a good way, of course, it should be a separate topic.

A proper TC needs a proper data structure, storage and access base.

The current one is very cumbersome and clumsy for creating a proper TS.

I had to develop my own and it turned out, in my opinion, to be much more convenient, compact and nimble.

In a nutshell I can explain.

First, all minute bars are pumped, then all ticks are gradually pumped. Yes, this may take time (a few minutes for each symbol).

Then a database of minute bars is formed but with a structure where Open, Close, Hight and Low add 4 more times for each of these events. In my implementation this structure occupies approximately 13 bytes per bar. It is 5 times more compact than the MqlRates structure (60 bytes) and more informative at the same time. It is achieved because only increments are stored and for quick access and search there are additional index arrays.

The array of MqlRates minute bars is removed due to its uselessness. The array of ticks is still here (it is our lion's share of memory consumption - hundreds of Mb - usually up to 1 Gb)

This database already occupies 30-40 Mb for one character instead of 100-200 Mb for the whole history.

From this database, you can easily create a timeframe of any period in a few milliseconds and it is more informative due to the fact that the Open, Close, Hight and Low times are still known.

However, this is only an intermediate database, which is only needed to analyze a symbol at the stage of loading an Expert Advisor to calculate all necessary parameters of the symbol (taking the symbol behavior characteristics off). I emphasize that it is to calculate and not to pick by search method. I say this to tester and tester-grail lovers. This is quite a complex multi-step system of pattern recognition and forming a multidimensional statistical array, a few kilobytes or tens of kilobytes in size. This whole procedure takes about 5 seconds.

After that the tick array can also be deleted, and a logarithmically compressed database of up to 1Mb is created from a database of 30-40Mb. This database contains a complete picture of the whole symbol history from the current moment. In the beginning, there are a couple of thousands of ticks, which gradually increase to weekly bars. The same principle is applied to our vision when we look at a landscape. The closer the objects in the landscape, the more detailed they are, the further away, the less detailed they are because they are unnecessary. Who knows the structure of the eye and the number of cones and rods, he understands that the picture of a person with perfect vision is somewhere around 100 megapixels.

After that, you can delete the base of 30-40 Mb and leave only the base that weighs less than 1 Mb.

A few minutes of preparation for the TC is done.

Next we add ticks to our database as we trade, and repackage it every, say, 30.5 minutes. We supplement and update the multidimensional table of symbol characteristics.

It's a beauty, isn't it - 1 Mb per symbol with a detailed history. With this you can create a proper TS, that doesn't depend on timeframes.

Am I not right?

All the numbers are absolutely real.

 

Nikolai Semko:

Am I wrong?

Question - why do you need a system for storing all the history for production? )
 
TheXpert:
Question - why do you need a full history storage system for production? )

For the right TC.

Read more carefully. The entire storage system takes up less than 1 MB.

The TC should see the entire history.

In my TS this is what happens. Each tick is a pattern recognition on the whole history from ticks to weeks. I have achieved a time of much less than 1 millisecond for the whole cycle of recognition over the whole history by means of logarithmic compression and cycle-free calculation methods.

 
Nikolai Semko:

For the correct TS.

the principle of data storage has nothing to do with the "correctness" of the TS)

 
TheXpert:

The principle of data storage has nothing to do with the "correctness" of the TS)

It is about the possibility of building a correct TS. It is much easier to build a sturdy building out of better and sturdier bricks.

I am simply stating my opinion based on my own experience and experience.

I am not imposing anything on anyone and I am not going to argue

 
Nikolai Semko:

It is about being able to build a proper TC. It is much easier to build a sturdy building out of better and stronger bricks.

I am simply expressing my opinion based on my own experience and experience.

I do not impose anything and I am not going to argue

"rightness" and in general, what is TC individual concepts :-)

As far as I understand the message of the topic - some kind of trading system as a set of mathematical formulas and determination of buy/sell moments should not be linked to coordinates (does not depend on the moment in time, only on previous movements; and does not depend on absolute values, but on the relative price spread). This is what we will call "correct".

But I don't want to call it right because if it is about the market, then it is nonsense. About abstractions, it's about convolutions.

Документация по MQL5: Математические функции / MathAbs
Документация по MQL5: Математические функции / MathAbs
  • www.mql5.com
Математические функции / MathAbs - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Nikolai Semko:

It's about being able to build the right TS.

@TheXpert purposely puts the word "correct" in quotes. When I created the topic, I could not foresee that this word would cause so many statements completely off-topic. It is a case where the power of the word has not played in a positive direction. I can't rename it. I can't even think of another name - I can't think of anything else.