Принципиально тут надо понимать один момент - нельзя запустить параллельно
несколько стратегий на разных ядрах (процессора, графической карты и т.д.).
1) Вы можете существенно ускорить расчет индикаторов в бэктестинге с помощью CUDA,
распараллелив вычисление индикатора (например, нарезав всю историю на куски и запустив
расчет каждой порции значений индикатора на каждом из этих кусков на своем ядре - их может быть
, скажем, 8 у центрального процессора и 1024 - у графического (т.е. это для CUDA) - просто порядок такой).
Таким образом, можно ускорить расчет индикатора очень сильно, запустив 1024 процесса одновременно.
Это имеет смысл только для длинной серии и когда у Вас действительно есть проблемы с временем выполнения стратегии.
2) То же самое. Нельзя запустить выполнение сразу нескольких стратегий (т.е. одной стратегии с разными параметрами)
на разных ядрах графической карты, но можно предварительно рассчитать все индикаторы (для всех стратегий сразу) и положить их в кэш - это можно сделать с использованием CUDA - а потом запустить оптимизатор - он будет не считать эти индикаторы, а брать их из кэша, т.е. существенно быстрее будет процесс.
3) Нет смысла использовать CUDA для реальной торговли, т.к. на каждом баре вычисляется только одно значение индикатора,
а не вся серия, т.е. это и так быстро делается, а если Вы будете прикручивать CUDA, то у Вас больше шансов ошибиться, т.е. код будет ненадежным, а код работающей стратегии должен быть отлажен как часы.
В целом, надо отметить, что даже изучение технологии CUDA и грамотное написание с ее помощью даже самых
простых индикаторов отнимает очень много времени, поэтому не советую использовать ее начинающим.
Она определенно для очень продвинутых пользователей.