Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 3220

 

Таймстемпы не совпадают с исходными. MQ-demo неинтересен.

[Удален]  
fxsaber #:

Таймстемпы не совпадают с исходными. MQ-demo неинтересен.

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

TicksG2.csv.zip
TicksG2.csv.zip
  • disk.yandex.ru
Посмотреть и скачать с Яндекс Диска
 
2023.03.01,00:00:00.800,6.001640530494182

Если это приращение, то в каких единицах?

[Удален]  
fxsaber #:

Если это приращение, то в каких единицах?

Это уже преобразовано обратно в цены 

Добавил положительное число ко всему ряду (+6.0), чтобы больше нуля было. Вроде кастомные символы отрицательные значения не переваривают 

на "close" на скрине не обращайте внимание, это тики


[Удален]  
Не знаю как так происходит, что случайные ряды часто показывают упорядоченные структуры типа пятиволновок, со вложенными внутрь тоже пятиволновками, как на скрине выше. Тогда можно всю теорию Эллиотта забраковать :)

Самоподобие в броуновском движении?

То же самое и с «уровнями»

 
Maxim Dmitrievsky #:
Не знаю как так происходит, что случайные ряды часто показывают упорядоченные структуры типа пятиволновок, со вложенными внутрь тоже пятиволновками, как на скрине выше.

Вы, наверное, и узоры видели в советских телевизорах без антенны.

[Удален]  
fxsaber #:

Вы, наверное, и узоры видели в советских телевизорах без антенны.

Не, на ковре только

 
Maxim Dmitrievsky #:
Это уже преобразовано обратно в цены 
#property script_show_inputs
#property link "https://www.mql5.com/ru/forum/86386/page3220#comment_49180634"

// https://www.mql5.com/ru/forum/86386/page3216#comment_49148211
input string inFileName = "Ticks.bin";

// https://www.mql5.com/ru/forum/86386/page3220#comment_49180488
input string inFileNameGenerator = "TicksGM1.csv";

void SetAvgPrice( MqlTick &Tick, const double Price )
{
  const double Spread = (Tick.ask - Tick.bid) / 2;
  
  Tick.bid = NormalizeDouble(Price - Spread, 5);
  Tick.ask = NormalizeDouble(Price + Spread, 5);
}

void OnStart()
{
  const int Handle = FileOpen(inFileNameGenerator, FILE_READ | FILE_ANSI);
  
  if (Handle != INVALID_HANDLE)
  {
    MqlTick Ticks[];
    const int Size = (int)FileLoad(inFileName, Ticks);

    int Amount = 1;

    while (!FileIsEnding(Handle))
      // https://www.mql5.com/ru/forum/86386/page3220#comment_49180613
      SetAvgPrice(Ticks[Amount++], (double)StringSubstr(FileReadString(Handle), StringLen("2023.03.01,00:00:00.800,")));
      
    FileClose(Handle);
    
    Ticks[0] = Ticks[1];    
    ArrayResize(Ticks, Amount);
    
    FileSave(inFileNameGenerator + ".bin", Ticks);
  }    
}

Добавил реальный спред.


[Удален]  
fxsaber #:

Добавил реальный спред.

Могу другие генерации потом скинуть, если нужно будет, с другими параметрами.
 
fxsaber #:

Добавил реальный спред.

Результат оптимизации.

Сравните с оригиналом. В общем, здесь не получилось.


ЗЫ Интересно, что график оптимизации близок с H2-таймфреймом, что выше показал.

Проверка обратного времени.
Проверка обратного времени.
  • 2023.09.03
  • www.mql5.com
Мною была поставлена задача разобраться в причинах получения прибыли определенной ТС (торговая система). Для этого требовалось изучить историю котировок, подтвердив или опровергнув возникающие