Discussion of high-frequency trading on MT5 - page 32

 
server:
I still don't get it, does anyone use in their trading even on demo account MT5 possibility to send asynchronous mode packs of orders? Well, this function was added to the terminal for a reason. Maybe we are not yet ripe for this kind of trading, we lag behind the developers, so to speak.

I think I'll finish transferring TC logic to MKL5, usingOrderSendAsync() in the coming days.

On MT4 I have to make it out by running several terminals.

 
For those who are not yet familiar with theOrderSendAsync function, here is a link tohttps://www.mql5.com/ru/docs/trading/ordersendasync
Документация по MQL5: Торговые функции / OrderSendAsync
Документация по MQL5: Торговые функции / OrderSendAsync
  • www.mql5.com
Торговые функции / OrderSendAsync - Документация по MQL5
 
Heroix:

I think I'll finish transferring TC logic to MKL5 in the next few days, usingOrderSendAsync().

On MT4 I have to make it out by running several terminals.

The new build of MT4 allows making up to 8 concurrent deals from Expert Advisors through different Expert Advisors on one terminal. The probability of catching Trade context busy is now reduced to almost zero.

You can already download the updated MetaTrader 4 build 470 from demo.metaquotes.net:443 and see how it works. While servers are not updated, you can make trades in 3 threads, but in a week the limit will be raised to 8, as soon as the brokers' servers will be updated.

 
papaklass:
This function, just like OrderSend(), does not send orders in batches, but sequentially in a loop one order at a time. The advantage of this function is that it doesn't wait for server's response to send another order. But all the same, it's not sending a batch of orders to open/close with one order. Therefore OrderSendAsync() is faster than OrderSend(), but it's not what we need for HFT.
It seems to me that it may not be HFT, but it may be new kind of trading which hasn't been connected with MT5 yet.
 
papaklass:
This function, just like OrderSend(), does not send orders in batches, but sequentially in a loop one order at a time. The advantage of this function is that it doesn't wait for server's response to send another order. But all the same, it's not sending a batch of orders to open/close with one order. Therefore OrderSendAsync() is faster than OrderSend(), but it's not what you need for HFT.

1. this is fully consistent with sending a batch of orders with zero timeout between calls

2. this is exactly what HFT needs

 
server:
Are you interested in making (1-10) trades per day with the same amount of capital you are currently working with in the medium term?
Volume is inversely proportional to the frequency of trades per unit time, all other things being equal.
 
AlexGrin:

How can you argue about something you have no idea about?

Well, we are all colleagues here, even though we trade in different timeframes. I apologize for my slight misunderstanding and lack of familiarity with the details of an entirely new area for me. Of course I've heard about HFT on the fund, not on FOREX, only about the pipsips, about which the pros have a negative attitude.

I'm not a programmer unfortunately, but if it will be profitable, I'll study this craft, I wish someone from the FOREX-HFT professionals showed the dynamics of orders sending by the robot on the chart. I am interested in the logic of the process, the calculation itself can not reveal, just animation of pending orders on the chart, which as the price moves, emerging, executed or deleted.

Would really appreciate it and I'm not the only one.

 
m.butya:

...

I would really appreciate it and I'm not the only one.

Yes. The visualisation of the process sometimes says more than a few pages of writing. )
 
Renat:

The new build of MT4 allows up to 8 simultaneous trades from different EAs on the same terminal. The probability of catching Trade context busy is now reduced to almost zero.

Right now you can download the updated MetaTrader 4 build 470 from demo.metaquotes.net:443 and see how it works. Until the servers are updated, you can make trades in 3 threads, but in a week the limit will be raised to 8 as soon as the brokers' servers are updated.

Thank you.

P.S. For asynchrony it will be enough to write only once OrderSendVirtualAsync(OrderModifyVirtualAsync, OrderCloseVirtualAsync,OrderDeleteVirtualAsync,OrderCloseByVirtualAsync) , where as an executor to hang the required number of charts of looped simple EAs. This was done before, but the executors had to be run on each terminal and information had to be sent there through the named channels. Now, we will be able to do it simply via global variables of one terminal.

P.P.S. It is clear that the developers need this innovation first of all to optimize the Signals service that is currently operating only on the client model of trade order sending. The reduction of the full cycle of processing trade orders would also be helpful.

 
Renat:

The new build of MT4 allows up to 8 simultaneous trades from different EAs on the same terminal. The probability of catching Trade context busy is now reduced to almost zero.

You can already download the updated MetaTrader 4 build 470 from demo.metaquotes.net:443 and see how it works. While servers are not updated, you can make trades in 3 threads, but in a week the limit will be raised to 8, as soon as the brokers' servers will be updated.

I am happy about it! This is really a big step forward to MT4 algotrading! Thank you.