Machine learning in trading: theory, models, practice and algo-trading - page 3223

 
fxsaber #:

I don't get it.

In the CSV file deployed from the BIN file, the milliseconds value in the first field (time) does not match the original (terminal).

Here.

Машинное обучение в трейдинге: теория, модели, практика и алготорговля - Исходник меньше 7 млн тиков
Машинное обучение в трейдинге: теория, модели, практика и алготорговля - Исходник меньше 7 млн тиков
  • 2023.09.06
  • www.mql5.com
Алгоритм рандомизации такой Берется реальная тиковая история. В этой последовательности каждый член рандомно умножается либо на 1. Из полученной последовательности приращений собирается новая тиковая история
 
Mikola_2 #:

In the CSV file deployed from the BIN file, the milliseconds value in the first field (time) does not match the original (terminal).

Here.

The source file was generated here.

 
Maxim Dmitrievsky #:

generates some rubbish compared to the original.

I've tried several algorithms. To illustrate a few of them.

ZZ is built by Avg-price with the condition of fixing min. knee.

  • Green points are indices of ZZ vertices in the tick array.
  • Purple ones are the average index between the vertices.

The idea is to run through the array of ticks and in the places of the found indices to randomly assign further sign of increments.

You get full preservation of timestamps, absolute values of increments (Avg-price) and spreads.


Results.

  1. Running only on green indices - plum. Obviously, such randomisation straightens (reduces the number of ZZs) the final chart.
  2. Running only on purple - gralite stronger, the more the condition of the min. knee ZZ.
  3. Running on both colours - plum.
I assume that if you build ZZs by Bid/Ask simultaneously, then point 2 will gray more strongly.

 
fxsaber #:

The source file was generated here.

Well, yes. I loaded HIS ticks to BIN-file by the first script, and from BIN to CSV by the second script. Then I compared - the milliseconds in CSV do not match the milliseconds in the terminal.
 
fxsaber #:

Tried several algorithms. To illustrate a few of them.

There is also a variant via generative NS for sequences, but I am afraid it will be too long

There is also a fun option to feed increments together with some parameters of the TS, for example, profit or direction of trades, as I did in the article. Then it worked for me on new data.

 

I have approximately modelled the distribution of increments of your ticks. The blue ones are original, the orange ones are generated.

https://disk.yandex.ru/d/aR_f9DkG3yK7_g


TicksG3.csv.zip
TicksG3.csv.zip
  • disk.yandex.ru
Посмотреть и скачать с Яндекс Диска
 
Maxim Dmitrievsky #:

I have approximately modelled the distribution of increments of your ticks. The blue ones are original, the orange ones are generated.

https://disk.yandex.ru/d/aR_f9DkG3yK7_g

What is this?

2023.03.01,00:00:00.800,-6.324313995573414 e-06

If it's an increment, is it possible to reload the cumulative amount?

 
fxsaber #:

What's that?

If it is an increment, is it possible to re-populate the cumulative sum?

it's the first line that's messed up, delete it, the header was left over from the dataframe.

There are also negative values, I forgot to fix it.


 
Maxim Dmitrievsky #:

it's the first line that's messed up, delete it, the header is left over from the dataframe

There are also negative values, I forgot to fix it.

I added a one.



Result.


 
fxsaber #:

Added a unit.

Result.

Yeah, so the increments are not independent, we need to model them through chains of sequences.

Reason: