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
Maybe Renat can see what can be learnt from this. It is quite possible that new specification will give better performance in MQL5 as well, isn't it?
As for C#/C++, if need be, we can also dump it. The main thing is to get the maximum possible output. ;)
Tested some of the scripts in this thread on such a machine:
CPU-Z
CUDA-Z
For each script I will provide a link to the post where it was published so that others can quickly find it, run the tests and compare results if needed.
Test 1
Test 2
Test 3
scale = 1000
CPU
GPU
Test 4
Test 5
Test 6
Test7
Test 8
I also tried to test MetaDriver'sqpu_EMA-Rainbow indicator.
On the CPU, the result is sometimes up to 2x better. Here is the result:
//---
Volodya(MetaDriver), show me your results?
P.S. I changed my type in kernel code in gpuEMA function parameters from__global to__local. A little faster, but still slower than on CPU.
I also tried to test MetaDriver'sqpu_EMA-Rainbow indicator.
On the CPU, the result is sometimes up to 2x better. Here is the result:
Volodya(MetaDriver), show me your results?
P.S. Changed in kernel code in gpuEMA function parameters from__global to__local. A little faster, but still slower than on CPU.
I have similar results. This has long been discussed, and it makes sense - the task is too simple, transferring memory to and from the video card doesn't pay off. The advantage of the GPU appears in more complex tasks.
An example of using GPU acceleration for trading (derivatives).
Mark Joshi - famous for his books on financial mathematics, in particular on derivatives and options trading, has reported here about his work:
http://ssrn.com/abstract=2388415
He translated his OOP-style work to CUDA GPU. He started it in 2010, then had a break, and from 2011 until summer 2014 he made it to working version 0.3. He managed to achieve acceleration of 100X... 137X times - and that's on an AMAZING algorithm, which is difficult.
The work used the QuantLib library in C++, which he himself admits he had to rework along the lines of "OOP ->-> procedural approach" - in order to make it all work on the CUDA GPU.
He writes:
"I have implemented Monte Carlo pricing of IRD with the LMM on the GPU with least-squares for early exercise features.
You can get the code from kooderive.sourceforge.net in both C++ and CUDA. The paper is at ......
I used a completely different code for CUDA than I had previously used for C++. In essence, I treat data as the central concept and use the code to act on the data. The style is very functional. It did took a lot of work because my previous C++ implementations had been object oriented."
His project itself is open source:
http://sourceforge.net/projects/kooderive/