Algorithmic trading - Integrate C# and Matlab
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hi. I need to:
1) connect to a server with a C# API in order to get stock data 2) analyse the data in Matlab 3) return an answer to the server (example "buy" or "sell")
Clearly I need to run this continuously and faster is better...
QUESTION: A) What is the best way to do this? Should I integrate C# inside Matlab or should I integrate Matlab inside a C# program? B) Let's say that I integrate matlab in C# I read these: http://www.codeproject.com/KB/dotnet/matlabeng.aspx http://www.mathworks.com/matlabcentral/fileexchange/12987-integrating-matlab-with-c So, excluding the COM approach (too slow), I can choose between the ".NET" and the the "C shared library" what are the pros and cons? What does it mean that the C shared library - way is very fragile?
1 Commento
Walter Roberson
il 11 Dic 2011
If this is not just for simulation, if this is to be used for real money, I would recommend checking the MATLAB license conditions, as there are some things that MATLAB is not intended to be used for. Nothing that affects human safety, for example. I would not imagine that MathWorks certifies their software as being good enough for use in handling real money.
Risposta accettata
Titus Edelhofer
il 9 Dic 2011
Hi Condor,
some thoughts: it depends somewhat on who has control on the process, the server or the client (MATLAB). The description you give (1), 2), 3)) suggests that the client has control. In this case calling the .NET API directly from MATLAB will probably be your best bet.
If you turn around the process: if you are able to tell the server to call some other .NET code, then you could use Builder NE (see here) to compile your MATLAB code into a .NET component. This should be the fastest option.
Titus
4 Commenti
Titus Edelhofer
il 12 Dic 2011
Hi,
yes, that should work. The alternative would be:
1) Use .NET API in MATLAB to get data.
2) Do computation in MATLAB
3) Buy/sell using .NET API.
It depends: this way should be easier to implement (depending on your C# knowledge). Second, a test about performance (for steps 1) and 2) at least) should be easy to do. The speed probably will depend on the amount of data (converting the retrieved .NET data into MATLAB data I guess will be the bottle neck, although the support for converting object arrays introduced in R2011b should help here).
Titus
Più risposte (0)
Vedere anche
Categorie
Scopri di più su .NET Client Programming in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!