興味深い記事でした!
このような質問ですが、どのシンボルでポジションを建てた/注文を変更 したという事実について、迅速に情報を得ることは可能ですか?
現在のポジションと仮想ポジションのデータベースを作成する必要があります - それは、1つのシンボルで多くのExpert Advisorが動作するときにネットワーキングのために必要です。
それとも各EAにコードを埋め込む方が良いのでしょうか?
多くのExpert Advisorが1つのシンボルで動作する場合、現在のポジションと仮想ポジションのデータベースを作成する必要があります。
それとも、各EAにコードを埋め込む方が良いのでしょうか?
アレクセイ、それはうまくいきません。結局のところ、サービスはスクリプトのようなもので、唯一の違いはターミナル起動と同時に起動することです。
ターミナルを起動すると、サービスが飛び出してきて、動いて、下に行く......。
もちろん、無限ループで実行することもできるが、どの程度の効果があるかは、自分で判断してほしい。
アレクセイ、うまくいかないよ。結局のところ、このサービスはスクリプトのようなもので、ターミナル起動と同時に起動するという違いだけなんだ。
ターミナルを立ち上げると、サービスが飛び出してきて、動いて、一番下に行く......。
もちろん、無限ループで実行することもできるが、どの程度の効果があるかは、自分で判断してほしい・・・。
一方では、OnTrade()が欠けている。一方では、サービスが単に注文を要約し、許可された操作をデータベースに書き込むだけなら、うまくいくかもしれない。しかし、ここでも同期の問題が関係してくる。遅延が重要でなく、バーのオープンで動作するストラテジーの場合、そうするのが現実的だと思われます。サービスを通じて取引することは可能ですか?特に制限はないと思います。それなら、エキスパートから注文を受け取り、それらを集約し、指定された頻度で独立して取引することが可能です。
多くのExpert Advisorが1つのシンボルで動作する場合、現在のポジションと仮想ポジションのデータベースを作成する必要があります。
それとも、各EAにコードを埋め込む方が良いのでしょうか?
アレクセイ、ご意見ありがとう!
良い質問ですね。ここでは、すべての長所と短所を比較検討する必要があります。一方では、私の同僚であるアレクセイ・ヴィクトロフが 指摘したように、そのようなタスクのサービスは無限ループで起動する必要があります。しかし一方で、サービスはバックグラウンドで動作し、データベース自体から書き込み/読み込みを行う。各ロボットにデータベースを操作する機能を追加する場合、同期の衝突が発生する可能性があることを理解する必要がある。ミューテックスのようなものが、おそらくここで役立つでしょう。
また、EAは取引イベントを即座に処理できますが、サービスはできません。
多くのExpert Advisorが1つのシンボルで動作する場合、現在のポジションと仮想ポジションのデータベースを作成する必要があります。
それとも、各EAにコードを埋め込む方が良いのでしょうか?
各ロボットは仮想ポジションを考慮します。原則的に、ロボットは実際のポジションを知りません。MMの唯一の問題はロットの定義ですが、私はパラメータで固定ロットを設定しています。固定ロットに代わる唯一の方法は、各ロボットに保証金の何パーセントかを割り当てることです。
アレクセイ、ご意見ありがとう!
いい質問だね。ここでは、すべての長所と短所を天秤にかける必要がある。一方では、私の同僚Alexey Viktorovが 指摘したように、そのようなタスクのサービスは無限ループで起動されるべきです。しかし一方で、サービスはバックグラウンドで動作し、データベース自体から書き込み/読み込みを行う。各ロボットにデータベースを操作する機能を追加する場合、同期の衝突が起こる可能性があることを理解する必要がある。ミューテックスのようなものがあれば、おそらく役立つでしょう。
また、EAは取引イベントを即座に処理できますが、サービスはできません。
SQLiteはトランザクション・キューの扱い方を知らないのですか?私はこの問題を扱ったことはありませんが、あなたは記事を書いています。)
ベースの各セクション(別のテーブル)に書き込むことができますし、各アドバイザーが独自のベースを作成することもできます。
もちろん、問題は遅延ですが、一方でそれは節約されたスプレッドによって補われます。
私の場合、各ロボットは自分で仮想位置を考慮する。原則的に、ロボットは現実のポジションを知りません。MMの唯一の問題はロットの定義ですが、私はパラメータで固定ロットを設定しています。固定ロットに代わる唯一の方法は、各ロボットに保証金の何パーセントかを割り当てることです。
異なるロジックを持つExpert Advisorのバスケットを作成できるように、私は普遍的でありたいと思っています。もしExpert Advisorがそれ自体で沸騰しているのであれば、そうです - それは少し簡単です - 私はそれを自分でやりましたが、実験的に - ファイル/データベースにデータを保存せずに。
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事「MQL5クックブック - サービス」はパブリッシュされました:
この記事では、チャートへの結合を必要としないMQL5プログラムである「サービス」の多彩な機能について説明しています。また、他のMQL5プログラムとのサービスの違いをハイライトし、開発者がサービスで作業する際の微妙な違いを強調しています。例として、読者にはサービスとして実装できる幅広い機能をカバーするさまざまなタスクが提供されます。
次のタスクに直面していると想像してみましょう。ターミナルには、現在取引されている銘柄、つまりポジションを特徴とする銘柄のチャートが表示されます。
チャートを開くためのルールは非常にシンプルです。銘柄の1つにポジションがある場合は、この銘柄のチャートを開きます。ポジションがない場合、チャートは開かれません。1つの銘柄に複数のポジションがある場合、1つのチャートのみが開かれます。
色もいくつか追加しましょう。チャートの背景色は、ポジションが利益を出している場合は水色になり、損失の場合は薄ピンクになります。ゼロ利益ではラベンダー色を使用します。
作者: Denis Kirichenko