High utilisation of computer resources, while working with Binance.

Questions about MultiCharts and user contributed studies.
andreinvest
Posts: 43
Joined: 27 Oct 2019
Has thanked: 29 times
Been thanked: 1 time

High utilisation of computer resources, while working with Binance.

Postby andreinvest » 27 May 2021

Please see attached pictures of task manager.

One of them with 4 cores 2.50 GHz, utilized for 17% - Multicharts 14 works here with 30 scripts on ordinary market without Binance connection.
2021-05-24_12-32-47.jpg
Multicharts 14 works here with 30 scripts on ordinary market without Binance connection
(59.83 KiB) Not downloaded yet
One more picture with 16 cores 2.80 GHz, utilized for 70% - Multicharts 14 works here with 26 scripts with Binance connection.
2021-05-24_12-49-07.jpg
with Binance connection
(64.11 KiB) Not downloaded yet
The difference is already obvious.

I need 110 scripts running on Binance. I realized that 16 cores or even 4 cores will definitely not enough. So I tried to put them on 24 threads processor Rizen 9 5900x 4.9 Ghz. But useless. Just 84 were set.
below pictures of Rizen 9 5900x with 12 cores 24 threads 4.6 Ghz utilized for up to 84%
2021-05-24_12-33-12.jpg
Rizen 9 utilized for 44%
(110.13 KiB) Not downloaded yet
2021-05-24_14-03-47.jpg
Rizen 9 utilized for 84%
(93.46 KiB) Not downloaded yet
According to tests, this processor is on the 2nd place among all processors for desktops with a single socket.

Indeed at all cases I already took all the optimization measures, allocated the Binance server and Trading server for different cores and it doesn`t help.
2021-05-24_14-15-36.jpg
optimization measures
(61.49 KiB) Not downloaded yet
As I found Binance server and Trading server working together something like duplicate each other.

I think it is a global problem with Binance connection and I think we need a solution to improve productivity.
Last edited by andreinvest on 24 Jun 2021, edited 1 time in total.

User avatar
Vlada MultiCharts
Posts: 293
Joined: 22 Apr 2020
Has thanked: 8 times
Been thanked: 76 times

Re: High consumption of computer resources, while working with Binance.

Postby Vlada MultiCharts » 03 Jun 2021

Hello,

We can recommend updating to the latest release of MultiCharts if you haven't done that yet. It is a minor upgrade that includes fixes for Binance.
Here is the direct download link: https://www.multicharts.com/downloads/latest/mc/x64/

andreinvest
Posts: 43
Joined: 27 Oct 2019
Has thanked: 29 times
Been thanked: 1 time

Re: High utilisation of computer resources, while working with Binance

Postby andreinvest » 24 Jun 2021

Hello,

We can recommend updating to the latest release of MultiCharts if you haven't done that yet. It is a minor upgrade that includes fixes for Binance.
Here is the direct download link: https://www.multicharts.com/downloads/latest/mc/x64/
First, thank you for the new version, it got better. I have tested it for several weeks and now it is possible for all the 110 systems to run. I apply all recommendations to split CPU cores. In addition, I found live hack: do not open “Order and Position Tracker window” and any “Trade Bars” or “Chart Trading”. Then there wasn`t any problems like freeze or stop working at all as it used to be.
1.jpg
(58.39 KiB) Not downloaded yet
Despite that, there are other problems!
During active market movements, the processor is fully utilized. This happens quite often. I get many yellow warning messages that say processes are slowing.
As I wrote before, there were no failures and stops, but the computer is working on the edge of its capabilities!
Moreover, what happens if I add more scripts!?
2-3.jpg
(1.83 MiB) Not downloaded yet
Please note that this using computer is quite powerful. There is a CPU AMD Ryzen 9 5900 and now it is the second among the best desktop systems.
4.jpg
(49.17 KiB) Not downloaded yet
It is much more powerful than for the “power user” that you have in your recommendation and it is still not enough:
https://www.multicharts.com/tech-specs/

To buy VPS with such configuration costs 142 euros per month.
And VPS with AMD Ryzen 9 5950x 16 cores (32 threads) will cost 166 euros.
5.jpg
(64.1 KiB) Not downloaded yet

It is 2000 euros JUST to rent a server per year. And it is just to begin.
If the number of scripts increases in two or three times - the CPU utilization will increase also and what to do then?
My scripts do not affect performance at all. There is no any artificial intelligence or machine learning.
I do not even use real-time-trading optimization. There is such an option in MC14 and I have no idea what kind of «supercomputer» is needed to make it work properly.
According to the recommendations from this forum, I specifically split cores for the “Binance server” (6) and separately for the “trading server” (18).
6.jpg
(116.92 KiB) Not downloaded yet
The main CPU utilization goes to the “trading server”. What kind of serious calculations there can be in a trading server that the processor is utilized in full? However, when I use MC at other markets, such problems do not arise.


I want to draw the attention of Multicharts developers that this is such a SERIOUS problem. We need to find a solution and fix it in new releases.

Thank you!

User avatar
Vlada MultiCharts
Posts: 293
Joined: 22 Apr 2020
Has thanked: 8 times
Been thanked: 76 times

Re: High utilisation of computer resources, while working with Binance.

Postby Vlada MultiCharts » 21 Jul 2021

andreinvest,

The issue is related to the high volatility of crypto instruments. Binance provides ticks with extremely high frequency, it's more than 1000 ticks per second. MultiCharts processes every tick to plot the charts, run calculations of the scripts and send orders to make auto trading work.
Changing the algorithm on our end could filter the ticks coming from Binance, but we prefer not to do that since all the incoming data for the instrument should be available for trading and analysis.

The possible solution is to decrease the number of active objects for Binance (reduce the number of charts/indicators/signals/scanners for Binance), or spread the load between several instances of MultiCharts.

wilkinsw
Posts: 662
Joined: 21 Apr 2013
Has thanked: 154 times
Been thanked: 104 times

Re: High utilisation of computer resources, while working with Binance.

Postby wilkinsw » 23 Jul 2021

Any symbols with frequent updates need to be handled carefully in MC.

For me (a futures trader) I have to split emini SP500 futures across two machines. When that gets lively things slow down.

I had to also move away from IOG versions of code as volatile SP500 sessions would cause major issues.

If you can, try and stack all automated signals onto 1 or 2 charts.

kagein
Posts: 55
Joined: 12 Oct 2017
Has thanked: 16 times
Been thanked: 10 times

Re: High utilisation of computer resources, while working with Binance.

Postby kagein » 23 Jul 2021

I've struggled with this exact problem with Binance, im spending a small fortune on servers compared with futures trading. If you put all signals on one chart, can you track the market position of each individual signal?

User avatar
TJ
Posts: 7740
Joined: 29 Aug 2006
Location: Global Citizen
Has thanked: 1033 times
Been thanked: 2221 times

Re: High utilisation of computer resources, while working with Binance.

Postby TJ » 23 Jul 2021

A software can only calculate as fast as the CPU clock cycle
A CPU can only process as fast as the internal bus can transfer
The internal bus can only transfer as fast as the memory can read and write
The memory can only take whatever the internet buffer can handle
It is a cycle of a cycle, there is no one single bottle neck.

wilkinsw
Posts: 662
Joined: 21 Apr 2013
Has thanked: 154 times
Been thanked: 104 times

Re: High utilisation of computer resources, while working with Binance.

Postby wilkinsw » 23 Jul 2021

I've struggled with this exact problem with Binance, im spending a small fortune on servers compared with futures trading. If you put all signals on one chart, can you track the market position of each individual signal?
If all orders are named you certainly can.

You have to use keywords like:
postradecount
postradeisopen
postradeentryname

With those you can scan through all open positions, opened by a given entry name, and then flag it as open.

If stacking on one chart you will have to split long and short entries (to stop counter entries from a different signal killing an open position).... so you will need two charts actually.

There's more to it than just that... but's it's possible. I'm yet to implement it in my live trading and it will be time consuming to implement. But expect it to improve MC performance drastically.

User avatar
Vlada MultiCharts
Posts: 293
Joined: 22 Apr 2020
Has thanked: 8 times
Been thanked: 76 times

Re: High utilisation of computer resources, while working with Binance.

Postby Vlada MultiCharts » 26 Jul 2021

MultiCharts handles all the incoming data without any reductions or filters except the one you can set in the settings. By filters here I mean for example session settings, holidays, filters in the data source settings (e.g. IQFeed has the option to Request trades only).

When the market is volatile and the number of incoming data and orders sent by the strategy increases, orders can form queues either in MultiCharts or at the broker.

MultiCharts processes the orders one be one, so even there is a batch of orders, all of them will be processed due to the core logic of MultiCharts.
To decrease the load and improve performance you can use general performance recommendations:

1. Disable your anti-virus and all excessive applications running in background;
2. Make sure none of the applications are doing any updates/scans while you are trading;
3. Make sure Windows is not downloading and installing any updates while you are trading
4. Split the load across CPU cores by splitting the number of charts you have in each MC instance.

The latest tech specs are specified here.


Return to “MultiCharts”