Скрипт python + GPU или перенести код python на RUST/С + GPU

Цена договорная
04 мая 2023, 20:58 • 9 откликов • 130 просмотров
Приветствую, у меня есть скрипт подбора параметров для торговой стратегии tradingview, написан на python3 с использованием GA (genetic algorithm), проблема в том, что параметров довольно много и подбор на питоне занимает около 19 часов (подбор осуществляется рандомно с использованием Генетического алгоритма на детях). Хотел перенести подбор с cpu (используется мультипроцессинг) на gpu но, стратегия подбора параметров линейная (не матричная) и прогер, что писал этот скрипт говорит, что на gpu он перенести не может, по факту, как он сказал для лучшей реализации нужно все перенести на язык программирования rust - так как он более адаптирован к высоким нагрузкам для вычисления таких данных и более быстрый чем python. Опять же не могу знать насколько это утверждение верно.

Соответственно сама задача состоит в том, чтобы:
1. перенести скрипт на python, в котором используется GA для вычисления параметров для стратегии (сама стратегия так же на python перенесена с tradingview pine), на язык программирования rust (на данный момент для вычисления параметров - скрипт по API подключается к бирже binance/bybit и загружает данные указанной монеты и начинает подбирать указанный диапазон в параметрах по net profit с указанным количеством итераций, остановка если за указанное количество итераций не найден более высокий net profit)
2. Перевести ga мультитред на ресурсы gpu для ускорения расчётов используя нативные либы

В последующем потребуется
1. дописать модуль backtesting - используются ранее подобранные параметры (подгружать из файла) выводить результат в виде графика, с наложением на него стратегии и данных с ранее подобранных параметров и, статистики, как на tradingview (чистая прибыль, количество сделок, процент прибыльных, фактор прибыльности, просадка, процент за сделку).
2. модуль авто-торговли на уже подобранных параметрах из интерфейса бектестинга

Идеи или свои мысли (может вообще не надо переносить на rust и как то можно вычислять линейный подбор на GPU используя Python) только приветствуются! Для работы используется сервер на linux (Ubuntu), cuda Cuda compilation tools, release 11.5, V11.5.119 / Build cuda_11.5.r11.5/compiler.30672275_0

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