How to use MQL4 to retrive data outside of the platform?

 

I have a program written in VB.NET that can generate buy/sell signal, but I don't know how to SECURELY transfer these information into the trade platform using MQL4.

For the time being, I can ask the VB.NET program to write these signals into a TXT file and use MQL4 to read from it. However, since I am planning to publish this application, I believe this is not a very secure approach. So I am just wondering if there is any other approaches that is available to inport these data into the trading platform?

Any information provided regards to this approach is appreciated.

Thanks.

Tom

 

Dear Tom,

I think your possible answer is write you program as DLL and use MQL4 import your DLL into your EA.

Thanks.

 

Actually. My program takes a lot of computer resources while getting these signals. So for now, I use a separate workstation to constantly doing the calculation and store the result into database. Then an agent would retrive data from that database and write into txt files.

Therefore, I don't think it is possible to write the program as DLL, but maybe I can write the agent into a DLL.

On the other hand, I am little bit worried about the authentication of the access to the database since generally I use plain text to do the authentication which is very likely to be caputured by a sniffer.

It seems to be a great deal of problems ahead, but I really appreciate your contribution, brother3th.

 

of use?

.
Microsoft Help and Support

DLL Help Database
http://support.microsoft.com/dllhelp/Default.aspx?dlltype=file&l=55&alpha=*esent*&S=1&x=0&y=0&start=0

.

this in particular (#)
ESENT (Extensible Storage Engine) API in the Windows SD
http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx

.

Welcome to the Microsoft® Windows® Software Development Kit (SDK)
http://msdn.microsoft.com/en-us/library/ms717358.aspx

.

(#)

I’m not sure how many people know that Windows comes with an embeddable, transactional database engine which is available to developers through the Windows SDK. The ESENT database engine can be used whenever an application wants high-performance, low-overhead storage of structured or semi-structured data. This can range from something as simple as a hash table which is too large to store in memory to a complex application with many tables, columns and indexes. ESENT is used by the Active Directory, Windows Desktop Search, Windows Mail and several other Windows services and a slightly modified version of the code is used by Microsoft Exchange to store all its mailbox data. The ESENT API is available through the SDK and can be used on all versions of Windows from Windows Server 2000 on up.

The significant technical features of ESENT include:

· ACID transactions with savepoints, lazy commits and robust crash recovery.

· Snapshot isolation.

· Record-level locking — multi-versioning provides non-blocking reads.

· Highly concurrent database access.

· Flexible meta-data (tens of thousands of columns, tables and indexes are possible).

· Indexing support for integer, floating point, ASCII, Unicode and binary columns.

· Sophisticated index types including conditional, tuple and multi-valued.

· Individual columns can be up to 2GB in size. A database can be up to 16TB in size.

· Can be configured for high performance or low resource usage.

· No administration required (even the database cache size can adjust itself automatically).

· No download. Your application uses the esent.dll which comes with the operating system.

 

You can use IIS on server side(simple convert project to Web Service) and Http Client on cliend side...

For more security you can use https protocol for data exchange.

Reason: