vdemydiuk / mtapi

MetaTrader API (terminal bridge)
http://mtapi4.net/
MIT License
521 stars 281 forks source link

Degrading performances. #157

Open darcome opened 5 years ago

darcome commented 5 years ago

Hello,

Has it ever happened that after a while the commands sent to MetaTrader take more and more time to execute? Normally I leave my program running for days and after a while commands seem to take more and more time to execute. Is there something I can do to avoid it?

Thanks in advance

KptKuck commented 5 years ago

Hello darcome, can you give an example to demonstrate this behavior? I use this API extremely much with Matlab. But that it reacts slower I can not say. Over which periods do you speak?

darcome commented 5 years ago

I currently have a dashboard which is connected to 6 metatraders through MtApi (on different ports, of course). The first metatrader is used to gather basic data for 28 piars (current price, high, low, close, open, spread and various indicators) which is collected every minute (therefore imagine like 200 MtApi calls every minute), while the other metatraders are used to execute different strategies that are run from the dashboard. This infrastructure sits on one server and it runs 24/7. I restart it only when there are windows updates or I need to make changes to the dashboard, therefore the average running time is about 2 weeks.

What I have noticed is that over time the communication between MtApi and metatrader degrades... I don't know if it's because I am pushing MtApi to the limits....

vdemydiuk commented 4 years ago

Thank you for your feedback. I want to ask you check the memory usage of MtApi during it works in your project after some time. Maybe we have memory leaks in the api.