2台のMT4端末間のデータ交換?

 

こんにちは。


証券会社ごとの相場の違いでフォークを する」という作戦を実行したいのですが。

戦略は非常に簡単ですが、あなたは2つの証券会社の同じツールに反対のレートを入れて、正しい方向に引用符の発散を待つことができるということです、あなたは両方の賭けを閉じて、合計で利益を上げることができます(矛盾の引用符の値は、2つの証券会社の合計手数料よりも大きくなければなりません)。


この戦略は昔から新しいものではありませんが、まだ見たことがありません。使ってみたいです。


主な問題は、両方の証券会社の気配値を同時にいつでも知る必要があり、Expert Advisorは1つの端末(1つの証券会社)でしか動作しないことです。

つまり、MT4端末のそれぞれでExpert Advisorが実行されており、このExpert Advisorは自分の相場と隣の端末の相場を知っているだけで、私たちはその相場を知らないのです!

両方のEAが互いの相場を知る、つまりデータを交換 できるようにしなければなりません。


知っていることをシェアしてほしい。また、いくつかのフィードバックを得たい。


データのやり取りをするために、2つの方法を考えました。


1) 最も単純な方法:データをファイルに書き込み、このファイルを別のExpert Advisorで読み込む。基本的には、とても簡単です。ただ、Expert Advisorは「自分のディレクトリ」のファイルしか読み書きができないのが難点です。しかし、すべてはdllで解決できるのです。

もう一つ、交換速度が遅いという良いデメリットがあります。メモリへの書き込み、読み出しの速さにはかないません((


2) 何ができるかはわかりませんが(私はあまりプログラマーではないので)、ここでは、そのようなプログラマーから学びたいと思います。

メモリ上に場所を確保し、そこに引用符を書き込みます。この場所のアドレスは両方のEAに知られているので、この場所への読み書きが可能です。

もちろん、この技術はすべてDELLによって実現されています。

3) GlobalAddAtomも見つけたのですが、これを使ったDLLはどのように書けばいいのでしょうか?


もし誰かが戦略に興味を持ち、またそれを実行したいのであれば、私に連絡してください!私は喜んで私の仕事を共有します。

 
そんな戦略の悲しい結末が起こるかもしれないhttp://www.kroufr.ru/forum/index.php/topic,6265.0.html
 
また、DLLを使ったこのような作業はどのように想定していますか?
 
geopoint:
そんな戦略の悲しい結末が起こるかもしれないhttp://www.kroufr.ru/forum/index.php/topic,6265.0.html
よくわからないんですよね。DCにバレたら消えればいいってことなんだろうな?
 
D500_Rised:
また、DLLを通じて、このような作業をどのようにイメージしていますか?

MQL4の標準的な手段では、交換は無理だと思うんです。でも、その方法をご存知の方は、ぜひ教えてください。

そして、DLLを通じて、例えば、1つのディレクトリからだけでなく、任意のディレクトリからファイルを読み込むことができる関数を接続することができます。

 

は、各端末から同じ共通ファイルを参照することに変わりはありません。そうすると、いろいろなバグが発生し、動作が不安定になるような気がします。IMHO

マルチターミナルはご覧になりましたか?異なるサーバーに同時に接続することは可能ですか?

ふと思ったのですが、multiterminalに複数のアカウントで動作する機能があるのなら、おそらくリアルサーバーとデモサーバーを同時に動作させることができるのではないでしょうか?デモサーバーのアドレスを他の証券会社のリアルサーバーのアドレスに置き換えるとどうなりますか?

 
D500_Rised:

は、各端末から同じ共通ファイルを参照することに変わりはありません。そうすると、いろいろなバグが発生し、動作が不安定になるような気がします。IMHO

マルチターミナルはご覧になりましたか?異なるサーバーに同時に接続することは可能ですか?

もし、multiterminalが複数のアカウントを扱えるのであれば、リアルサーバーとデモサーバーを同時に操作することも可能ではないか、と思いつきました。デモサーバーのアドレスを他の証券会社のリアルサーバーのアドレスに置き換えるとどうなりますか?

すでにこの方法でファイルを作成したため、エラーはありません。ファイルは2つです。つまり、各EAが引用符を保存するファイルを持ち、EAが互いのファイルを読み取ります。主なポイントは、正しい読み込みと書き込みを行うことです(Expert Advisorは常に同じファイルを読み込み、常に同じファイルに書き込みます)。メモリを参照するよりも安定性が悪くなるのは同意です。


マルチターミナルにはそのようなオプションはありませんし、あったとしてもそこでEAを実行することはできません。そのようなスキームを手動で実装しますか?(しない)

 
D500_Rised:

マルチターミナルはご覧になりましたか?異なるサーバーに同時に接続することは可能ですか?


ノー
 

write_1---read_2、write_2---read_1を時系列に並べることが可能かどうか疑問です。

EAが同じファイル上で出会わないように、どのようにプロセスを順序付けるか、以前に読み込んだデータと新しいデータを区別できるか(識別に追加時間がかかる)

また、一般的に、このゲームは努力する価値があるのでしょうか?引用に差が出るとすれば、このゲームにはいくつかの不利な点が同時に存在します。

1- 2スプレッド(2*2-4 pips)

2- スリッページ。

3-注文執行の 実質的なスピードが遅い(ディーラーの注文処理中に価格が変動し、プラスの差額がマイナスになる可能性がある)+リクオート

など

 
D500_Rised:

write_1---read_2、write_2---read_1を時系列に並べることが可能かどうか疑問です。

EAが同じファイル上で出会わないように、どのようにプロセスを順序付けるか、以前に読み込んだデータと新しいデータを区別できるか(識別に追加時間がかかる)

また、一般的に、このゲームは努力する価値があるのでしょうか?引用に差が出るとすれば、このゲームにはいくつかの不利な点が同時に存在します。

1- 2スプレッド(2*2-4 pips)

2- スリッページ。

3- 注文執行の実質的なスピードが遅い(ディーラーの注文処理中に価格が変動し、プラスの差額がマイナスになる可能性がある)+リクオート

など

これは、一方のEAがファイルに常時書き込み、もう一方のEAがこのファイルから常時読み込んでおり、それがどのような順序で行われるかは問題ではありません。データの関連性をチェックするために、ローカルタイムを使用しました。つまり、引用符は100ミリ秒ごとに書き込まれ、ローカルタイムで関連性をチェックするのです。


ローソク足について:正確な答えが分からないからこそ、確認したいのです。定量的なデータの方が納得できる。総スプレッドが4pipsで乖離幅が10pipsなら、悪い条件でも半分の6pipsは利益が出るかもしれませんが、どうでしょう?

 
D500_Rised:

write_1---read_2、write_2---read_1という時間的に正しい順序が可能かどうか疑問です。

ここではファイルを通しての方法のみを説明していますが、もっと高度な方法として、メモリを通しての方法もあります。