Here's what you can do with OpenCL directly in MetaTrader 5 without any DLLs - page 2
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
We are preparing an OpenCL staff library for maths and rendering, which will take a few weeks. It's going to be amazingly fast and beautiful.
In the meantime, take a look at the updated graphics library for rendering science graphs.
It didn't start for me either:
2016.12.10 07:00:47.418 Seascape (EURUSD,M1)
2016.12.10 07:00:47.418 Seascape (EURUSD,M1) OpenCL program create failed
2016.12.10 07:00:57.263 Seascape (EURUSD,M1) OpenCL: GPU device 'Redwood' selected
2016.12.10 07:00:57.285 Seascape (EURUSD,M1)
2016.12.10 07:00:57.285 Seascape (EURUSD,M1) OpenCL program create failed
OpenCL is very good, you can train neural networks very quickly with this technology, hundreds (thousands) of times faster than on an ordinary processor.
2016.12.10 03:57:36.695 Seascape (GOLD-12.16,H1) OpenCL: GPU device 'GeForce GTX 970' selected
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) <kernel>:188:18: error: subscripted access is not allowed for OpenCL vectors
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) uint b=(uint)(res[2]*255);
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) ^ ~
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) <kernel>:189:18: error: subscripted access is not allowed for OpenCL vectors
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) uint g=(uint)(res[1]*255);
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) ^ ~
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) <kernel>:190:18: error: subscripted access is not allowed for OpenCL vectors
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) uint r=(uint)(res[0]*255);
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1) ^ ~
2016.12.10 03:57:36.711 Seascape (GOLD-12.16,H1)
2016.12.10 03:57:36.730 Seascape (GOLD-12.16,H1) OpenCL program create failed
This can be fixed by finding these lines in the script -
" uint g=(uint)(res[1]*255);\r\n"
" uint r=(uint)(res[0]*255);\r\n"
and replace them with -
" uint g=(uint)(res.y*255);\r\n"
" uint r=(uint)(res.x*255);\r\n"
A few questions:
Thousands of GPU cores can be used with OpenCL to speed up calculations by a hundred (several hundred) times.
This is exactly what is needed in trading and what will enable the transition to techniques that require orders of magnitude more computational resources.
In MQL4 you dig with a shovel, while in MQL5 with OpenCL you get a tractor in terms of performance. To bring GPU calculations to the masses, we are preparing new math libraries in addition to the existing ones.
You also need real examples of what can be realistically paralleled in an EA, for example.
Can I use code using OpenCL when optimizing?
With OpenCL you can use thousands of GPU cores to speed up mathematical calculations a hundred (several hundred) times.
This is exactly what is needed in trading and what will allow the transition to techniques that require orders of magnitude more computational resources.
In MQL4 you dig with a spade and in MQL5 with OpenCL you get a tractor in terms of performance. To bring GPU calculations to the masses, we are preparing new math libraries in addition to the existing ones.
Will there ever be something similar for MQL4? Or at least, the use of multithreading, because multicore processors are of little use...
You can make games with such graphics on the client terminal, but I wonder whether traders will play instead of trading )
Will there ever be something similar for MQL4? Or at least, the use of multithreading, because multicore processors are of little use...
I don't know if traders will play games on the terminal with such graphics, but I wonder if they will play games instead of trading )
What are your tasks that lack one core?
You can run copies of terminals corresponding to the number of cores to optimize them.
What kind of task do you have that lacks one core?
You can run copies of the terminals corresponding to the number of cores to optimise.
Well, if not only 8-16 CPU cores but thousands of CPU cores are used for optimization, it would be a performance explosion. If, of course, such a possibility will be implemented.
Beautiful!!!
Even thought of how it could be used later - live news directly on the chart, or its own channel with analytics or training (webinars)
Developers Well done.