MT5 For those who care about speed. - page 18

 
shelandr:

A good question...I will try to give an appropriate answer.

1 I am not talking about microseconds = milliseconds are enough.

2 Maybe the variant you suggest is not bad, but I am not familiar with it, and it requires a lot of effort to master and use, but as I understand it, we are talking about programming in the MQL system... In my opinion, it is an upside-down ideology, when not MQL is included into standard programming tools, but looks for solutions for your own language - a very specific one, by the way.

But the main thing is not the point, there are plenty of very fast NICs after all.

The problem is that no matter how we program, the system structure remains the same.

The only way to gain is to change the configuration of the system. For example, processing of exchange signals can be done in a router, if we add a bit of processing software to its processor, and then the branch from router to the computer disappears at all, everything happens in the router.

And instead of a router can be a server and the processing takes place in the server. ( continued)

In addition, I could host this program on an external server and get rid of torrent neighbours and his son, who is already sick of them.)

But for this, I need to communicate with the server broker directly and not through slow mediators.

There is another problem-programming exchange over the Internet, I can only through standard procedures or commands provided in the library, such as MSDN - I'm not very convenient because they are also written and what they do and how nobody knows ...

If I was able to program at the physical terminal level I could set priorities and get what I need when I need it... plus the current control of the connection to the broker server would not hurt at all.

 
shelandr:

Let's say the processing of exchange signals can be done in the router if you add a little processing program to its processor and then the branch from the router to the computer disappears at all, everything happens in the router.

To be more precise from the input stream of exchange signals 2 streams are formed, one fast-processes the input signals and if necessary communicates with the broker and the second stream which is directed to the client so he can watch the monitor.
 

A funny thing has been invented:

About.

Stock# is a program library for SmartCOM, for creating on .NET platform trading robots, analytical programs and MTS.
Stock# allows you to automate trading, create absolutely any strategy: from fast scalper to long positional, to develop any analytical programs, indicators and advisors.

Features of a library:

  1. It is a library, not a program. It does not impose any restrictions.
  2. Direct work with trading systems.
  3. Complete independence from third-party programs.
  4. Ability to transfer the robot to a direct connection to a gateway without changing the logic.
  5. Easy-to-use market model, based on the approach of the world's exchanges.
  6. Fast processing of strategies. No synthetic seconds delays.
  7. Running hundreds of strategies simultaneously on any instrument and time frame.
  8. Ability to implement scalper strategies with a time frame of less than a second.
  9. Modern .NET platform with powerful functionality. No restrictions present in scripting languages.
  10. Totally free.

You can ask questions to the author, discuss features on our forum

More information about the library, as well as to download the latest version can be found on the site of the author

Enthusiasts... See WHAT they've done - a lot of graphical stock applications...

But they forgot that it takes a very long time to run them... They have a lot of brakes to draw the screen instead of transferring the functions of analysis to the robot...

This is understandable the author is a programmer, not a trader, he does not know himself what someone needs... I will have to call to talk - maybe I do not understand something...

 

No...dig a little deeper...look at the reference:

Generating machine code

Most compilers translate a programme from some high-levelprogramming language intomachine code which can be directly executedby the processor. As a rule this code is also oriented to execution in the environment of a particularoperating system as it uses the facilities it provides(system calls, function libraries). The architecture (the set of software and hardware) for which compilation is performed is calledthe target machine.

The result of compilation is an executable module with the maximum possible performance, but tied to a specific operating system and processor (and will not run on others).

Decompilation is the process of recreating the source code with a decompiler.

Decompilation, in particular, is used inreverse engineering of programs.

Successful decompilation depends on the amount of information present in the decompiled code;bytecode used by most virtual machines (such asJava Virtual Machine or .NET FrameworkCommon Language Runtime) often contains extensive metadata, making decompilation feasible, whilemachine code is more sparse and difficult to decompile. Subroutine or function calls with indirect addresses are particularly difficult to decompile.

Bytecode generation

The result of compiler's work can be a program in a specially createdlow-level language to beinterpretedby a virtual machine. Such language is called pseudocode orbytecode. As a rule it is not machine code of any computer and programs written into it can be executed on various architectures that have corresponding virtual machine but in some cases hardware platforms are created to directly support pseudocode of any language. For example, Java pseudocode is calledJava bytecode and is executed in the JavaVirtual Machine; thepicoJava processor specification was created for direct execution. For the.NET Framework, the pseudocode is called CommunonIntermediate Language(CIL) and the runtime is called Common Language Runtime (CLR).

I should try to decompile something...

Компилятор — Википедия
  • ru.wikipedia.org
Компиля́тор — программа или техническое средство, выполняющее компиляцию.[1][2][3] Компилировать — проводить трансляцию машинной программы с проблемно-ориентированного языка на машинно-ориентированный язык.[3] Векторизующий. Транслирует исходный код в машинный код компьютеров, оснащённых векторным процессором. Гибкий. Сконструирован по...
 

Interesting gizmos:

Ethernet module...Nomber2...

can program them quickly and functionally... I can't put them on a VPS, but they'll do for home...

I would like it to be more powerful, of course, but it's necessary to look at these features as well... It is possible to hang onto the bus Comp-Router in parallel and will communicate with both the computer and the broker's server... Software tools are attached to them... The main thing is that there is no need to solder anything.

It's quite modern:

Tibbohas released new firmware called "Serial Over IP" (SOI) firmware that works like a standard RS/ethernet converter!

This application isopen source and distributedfor free. You can freely use the application "as is" or modify it for your own development.
Программируемый контроллер с ethernet
Программируемый контроллер с ethernet
  • www.tibbo.ru
На данный момент устройство поставляется c уже распаянным разъемом RJ203. EM1206 - миниатюрный BASIC-программируемый встраиваемый модуль. В комбинации с RJ203 (jack/magnetics) разъемом, EM1206 занимает всего лишь 34.5x19мм пространства печатной платы. EM1206 может быть использован с любым подходящим ethernet разъемом. Модуль включает 100Base/T...
 

Improved socket performance in version 3.5


.NET Framework 4.5
This topic has not yet been rated-Rate this topic

TheSystem.Net.Sockets::Socket class has been enhanced in version 3.5 for use by applications that use asynchronous I/O networking to achieve high performance.A number of new classes have been added as part of a set of enhancements to theSocket class that provide an alternative asynchronous model that can be used by specialized high performance socket applications.These enhancements are specifically designed for network server applications that require high performance.An application can use the asynchronous model enhancement exclusively or only in targeted active areas of its application (when receiving large amounts of data, for example).

Улучшения производительности сокетов в версии 3.5
Улучшения производительности сокетов в версии 3.5
  • msdn.microsoft.com
Основной особенностью этих расширений является исключение повторных размещений и синхронизация объектов во время выполнения на сокете асинхронных операций ввода-вывода большого объема. Шаблон разработки/элемент в данный момент реализованный классом для асинхронного ВВОДА-ВЫВОДА сокета требуется объект был выбрать для каждой асинхронной...
 
Who are you talking to now?
 
FAQ:
who are you talking to now?
Bored :) I'm racking my brains over the lofty goals of Sehelandr, what he wants to convey to the forum after all :)
 
server:
Bored man :) I racked my brains about Seheland's lofty goals, but in the end what does he want to bring to the forum :)

That's the kind of man he is... Nothing can stop him from admiring himself.

 
What a long branch. This is where smart people hang out)