無料でロボットをダウンロードする方法を見る
Twitter上で私たちを見つけてください。
私たちのファンページに参加してください
興味深いスクリプト?
それではリンクにそれを投稿してください。-
他の人にそれを評価してもらいます
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
ライブラリ

MQL5でのソケット操作 - MetaTrader 5のためのライブラリ

ビュー:
1050
評価:
(51)
パブリッシュ済み:
2016.03.16 14:08
アップデート済み:
2016.11.22 07:34
socket.zip (506.46 KB)
このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動

内容

この例では、リアルタイムのティックでの外部サーバーアプリケーションへの MetaTrader 5 クライアント端末からの転送を実装する方法を紹介します。

使用されているTCPプロトコルは、ローカルのみでなく、全世界のインターネットを介してデータを転送します。

Winsock2ライブラリ(ws2_32.dll)はソケット操作に使われます。MQL5はポインタ操作やDLL関数のパラメータとして複雑なデータ構造を渡すことができないので、ライブラリ関数の直接呼び出しは不可能です。C++で書かれたsocket_mql5.dllライブラリはエキスパートアドバイザーとソケットをつなげる中間ラッパーです。

外部サーバアプリケーションと MetaTrader 5 の相互作用は、図1に示されています。

MetaTrader 5 クライアント端末との相互作用のスキーム

図1外部サーバアプリケーションと MetaTrader 5 の相互作用

一方向転送のための関数(SocketOpen、SocketWrite、SocketClose)の最小セットはsocket_mql5.dllライブラリに実装されています。

サーバに接続され、外部のサーバアプリケーションにリアルタイムティックデータを転送するのに使用されるエキスパートアドバイザーの例は、図2に示されています。

MetaTrader 5 からサーバアプリケーションへのデータ転送

図2MetaTrader 5 クライアント端末からの外部サーバーアプリケーションへのティックデータのエクスポート

アーカイブには下記が含まれています。

  • エキスパートアドバイザー
  • socket_mql5.dllライブラリ(C++ソースコードはVisual Studio 2008で書かれました)
  • TCPサーバとTCPクライエント(Delphi7ソース)

MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/169

MQL5のキーワードとエイリアス MQL5のキーワードとエイリアス

自動変換に使われるMQL5キーワードとエイリアスが提示されています。

i-ImpulseSystem i-ImpulseSystem

このインディケータは Elder's Impluse system に基づいています。

ZeroLag MACD ZeroLag MACD

ラグなしMACDオシレータ

AlfOs AlfOs

これは、可変インデックスダイナミック平均を持ったOsMA に似たオシレータです。