Algorithmic trading - Integrate C# and Matlab
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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 comentario
Walter Roberson
el 11 de Dic. de 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.
Respuesta aceptada
Titus Edelhofer
el 9 de Dic. de 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 comentarios
Titus Edelhofer
el 12 de Dic. de 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
Más respuestas (0)
Ver también
Categorías
Más información sobre .NET Client Programming en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!