Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Tal vez Renat pueda ver lo que se puede aprender de esto. Es muy posible que la nueva especificación ofrezca un mejor rendimiento también en MQL5, ¿no es así?
En cuanto a C#/C++, si es necesario, también podemos dejarlo. Lo principal es obtener el máximo rendimiento posible. ;)
He probado algunos de los scripts de este hilo en una máquina de este tipo:
CPU-Z
CUDA-Z
Para cada script proporcionaré un enlace al post donde fue publicado para que otros puedan encontrarlo rápidamente, ejecutar las pruebas y comparar los resultados si es necesario.
Prueba 1
Prueba 2
Prueba 3
escala = 1000
CPU
GPU
Prueba 4
Prueba 5
Prueba 6
Prueba7
Prueba 8
También intenté probar el indicadorqpu_EMA-Rainbow de MetaDriver.
En la CPU, el resultado es a veces hasta 2 veces mejor. Aquí está el resultado:
//---
Volodya(MetaDriver), ¿me enseñas tus resultados?
P.D. He cambiado el tipo en el código del kernel en los parámetros de la función gpuEMA de__global a__local. Un poco más rápido, pero todavía más lento que en la CPU.
También intenté probar el indicadorqpu_EMA-Rainbow de MetaDriver.
En la CPU, el resultado es a veces hasta 2 veces mejor. Aquí está el resultado:
Volodya(MetaDriver), ¿me enseñas tus resultados?
P.D. Cambiado en el código del kernel en los parámetros de la función gpuEMA de__global a__local. Un poco más rápido, pero todavía más lento que en la CPU.
Tengo resultados similares. Esto se ha discutido durante mucho tiempo, y tiene sentido - la tarea es demasiado simple, la transferencia de memoria hacia y desde la tarjeta de vídeo no vale la pena. La ventaja de la GPU aparece en tareas más complejas.
Un ejemplo de uso de la aceleración de la GPU para el comercio (derivados).
Mark Joshi -famoso por sus libros sobre matemáticas financieras, en particular sobre el comercio de derivados y opciones- ha informado aquí sobre su trabajo:
http://ssrn.com/abstract=2388415
Trasladó su trabajo de estilo OOP a la GPU CUDA. Lo empezó en 2010, luego tuvo un parón, y desde 2011 hasta el verano de 2014 llegó a la versión operativa 0.3. Logró una aceleración de 100X... 137X veces - y eso es en un algoritmo increíble, que es difícil.
El trabajo utilizaba la librería QuantLib en C++, que él mismo admite que tuvo que reelaborar en la línea de "OOP -> enfoque procedimental", para que todo funcionara en la GPU CUDA.
Escribe:
"He implementado la fijación de precios de Monte Carlo del IRD con el LMM en la GPU con mínimos cuadrados para las características del ejercicio temprano.
Puedes obtener el código en kooderive.sourceforge.net tanto en C++ como en CUDA. El documento se encuentra en ......
Utilicé un código completamente diferente para CUDA del que había utilizado anteriormente para C++. En esencia, trato los datos como concepto central y utilizo el código para actuar sobre los datos. El estilo es muy funcional. Me costó mucho trabajo porque mis anteriores implementaciones en C++ habían sido orientadas a objetos".
Su proyecto es de código abierto:
http://sourceforge.net/projects/kooderive/