Вопрос по требованию к ПК для тестированию на тиках

 

Добрый день!

1. Хочу потестировать на тиках (таблица всех сделок) несколько ликвидных инструментов (Ri, Si, Sber, Gazp...) на интервале 1-5 дней.

2. Для этого планирую предварительно обработать данные и создать двумерные масивы с данными из таблицы всех сделок и сохранить в памяти (или на диске?).

3. Какие минимальные требования к ПК - для этой задачи, чтобы тестировние одного прохода по истории занимало, например, не больше 1 мин ?

3.1. Расчитать надо 2-3 индикатора (каналы, средние, спред,...), математика простейшая, типа усреднение в движущемся окне и т.п.

Прошу поделиться опытом, кто решал похожие задачи.

Интересует конфигурация ПК, который нужно приобрести (или заказать собрать): AMD\Intel\8-12-16 ядер\2-4 ГГц\ОЗУ 32-128Гб\SSD\...???

Буду признателен на ссылку, если кто-то знает у кого можно собрать машину для таких задач.

Спасибо за ответы.

 

бюджет нужен

Ryzen сейчас хорош,

3700х у меня, в 16 поток 32гб в режиме все тики, бывает месяц даже не получилось пройти по RAM, не понятно глюк базы, или в месяце так много тиков было, в других диапазонах и пол года проходило

для тестов для 8/16 32гб маловато, тестировать можно но, на грубых вариантах и потом на тщательных в сильно ограниченном периоде

для 8/16процев нужно 64 RAM

для одноствольных систем может и меньше

 
Fast235:

бюджет нужен

Ryzen сейчас хорош,

3700х у меня, в 16 поток 32гб в режиме все тики, бывает месяц даже не получилось пройти по RAM, не понятно глюк базы, или в месяце так много тиков было, в других диапазонах и пол года проходило

для тестов для 8/16 32гб маловато, тестировать можно но, на грубых вариантах и потом на тщательных в сильно ограниченном периоде

для 8/16процев нужно 64 RAM

для одноствольных систем может и меньше

Спасибо.

Да, похоже надо новые Ryzen посмотреть и 64 RAM. 

Дальше хотел историю стакана подключить. 

Боюсь больше одного дня не получиться. Или агрегатировать на более крупных интервалах.

 
Dmitri Voronov:

Спасибо.

Да, похоже надо новые Ryzen посмотреть и 64 RAM. 

Дальше хотел историю стакана подключить. 

Боюсь больше одного дня не получиться. Или агрегатировать на более крупных интервалах.

Какие у вас успехи в этом деле?

У меня довольно скудные данные поступают от брокера, можно на скрине видеть. 3 месяца на EURUSD занимают 1,4 Гб. Полный размер больше, я использую побитовую быструю упаковку.

10 инструментов по 1.4 Гб и плюс локальные данные для агентов по одному дню, это будет 24*0,01 Гб = 14.24 Гб, довольно скромно. Для бирж эту цифру смело можно умножать на 3.

Для тестера сделал следующим образом:

выделяется память с общим доступом, туда сохраняются все необходимые данные одного инструмента, для каждого инструмента выделяется отдельно, сторонние процессы(агенты тестера) могут считывать оттуда данные, распаковывать и использовать для расчётов. Фишка в том, что весь объём данных находится в оперативке только в одном экземпляре. Без библиотек тут никак, работает только на Windows 10, для семёрки немного по другому надо:

#import "kernel32.dll"
ulong MapViewOfFileFromApp(HANDLE hFileMappingObject,ulong DesiredAccess,ulong FileOffset,ulong NumberOfBytesToMap);
HANDLE CreateFileMappingFromApp(HANDLE hFile,long lpFileMappingAttributes,uint flProtect,ulong MaximumSize,const string lpName);
bool UnmapViewOfFile(ulong lpBaseAddress);
#import
#import "KernelBase.dll"
HANDLE OpenFileMappingFromApp(uint dwDesiredAccess,bool bInheritHandle,const string lpName);
#import
#import "msvcrt.dll"
int memcpy(ulong destination,uchar &source[],ulong count_bytes);
int memcpy(ulong destination,ulong &source[],ulong count_bytes);
int memcpy(uchar &destination[],ulong source,ulong count_bytes);
int memcpy(ulong &destination[],ulong source,ulong count_bytes);
#import


Кстати, визуализацию стакана у меня можно бесплатно взять.

 
Aliaksandr Hryshyn:

Какие у вас успехи в этом деле?

У меня довольно скудные данные поступают от брокера, можно на скрине видеть. 3 месяца на EURUSD занимают 1,4 Гб. Полный размер больше, я использую побитовую быструю упаковку.

10 инструментов по 1.4 Гб и плюс локальные данные для агентов по одному дню, это будет 24*0,01 Гб = 14.24 Гб, довольно скромно. Для бирж эту цифру смело можно умножать на 3.

Для тестера сделал следующим образом:

выделяется память с общим доступом, туда сохраняются все необходимые данные одного инструмента, для каждого инструмента выделяется отдельно, сторонние процессы(агенты тестера) могут считывать оттуда данные, распаковывать и использовать для расчётов. Фишка в том, что весь объём данных находится в оперативке только в одном экземпляре. Без библиотек тут никак, работает только на Windows 10, для семёрки немного по другому надо:


Кстати, визуализацию стакана у меня можно бесплатно взять.

Я на МТ5 пока ничего не сделал. Только в этом году начал изучать возможности. Кажется, что простые быстрые стратегии могут  получится.

На другом софте тестировал стратегии с тиковой дельтой на акциях и фьючерсах. Ловятся микротренды внутри дня, но нужно много фильтров по объемам и проч.

Пришел к выводу, что надо железо помощнее для этих задач.

Спасибо за предложение по стакану.