ライブラリ: MT4Orders

 

MT4Orders:

MetaTrader 4とMetaTrader 5の注文システムの並列使用。

作者: fxsaber

 
何か信じられないような...どうもありがとうございました...これを使用する最良の方法は、おそらくMT5のヘッジです....そうですね、まだMT5をやっているトレーダーは少ないですから...))))
 
多くの注文言語システム(NinjaTrader、TradingStation、MetaStock、WealthLab、Dukascopy JForex、FXCM ForexConnect、LMAX API、IB TWS、MT4/5など)を見てきて、私は明確な結論に達しました:MT4はOJSのベンチマークです。最も便利なOJSであり、傑作である!

もし誰かが他のNMC用のExpert Advisorを書く必要がある場合、私は熊手を踏んですぐにそのようなMT4-NMCへのアダプターを書き始めないことをお勧めします。最初のうちは時間をかけたほうがいいが、その後、Expert Advisorを 書いたり、デバッグしたり、テストしたりする ときに、その時間を取り戻せるだろう。

政治的な正しさから、私はメタトレーダーについてのみ話し続けます。MT5-OSに慣れる必要があるだけだと言う人がいるでしょう。ここで反対することはできない。人は何にでも慣れることができる。NFCの便利さについて言えば、私は違うことを言いたかった。

MQ4-advisorを手にすれば、コードから何をどこでするのかを理解するのは非常に簡単だ。変更を加える。コードについて質問されたら、その人を助けるため、など。これは例えば、ほとんどすべてのコードベースアドバイザーに言えることです。その理由は、ほとんどすべてが手続き型で書かれているからではありません(ちなみにOOPのMQ4-advisorの方が理解しやすいです)。

MQ5アドバイザーを例にとると(貧弱なコードベースを見てほしい)、その取引アルゴリズムの部分を理解するには、より深刻な精神的努力が必要になる。違和感さえ感じる。そして、それはまさにSNFの場合である。理解は常に得られるが、より多くの時間と労力を要する。

もちろん、自分のコードだけを読んだり、編集したり、追加したりするのであれば、MT4とMT5-NFCの間に大きな違いは感じないでしょう。しかし、これはあなた自身のためだけです。他人のコードに遭遇すれば、冷たいシャワーを浴びることになるでしょう。そして残念なことに、開発者からの標準ライブラリは、あなたが不快ゾーンから抜け出すのを助けてはくれない。

このため、MQL4では長い間さまざまなトレーディング・コミュニティで実践されてきたように、MQL5でトレーディング・アイデアを建設的に議論/洗練させることは極めて難しい。そして、この点でMT5に乗り換えたいという意欲は輝かない。

MT5-Hedgeに追加されるこの作業によって、最終的に、優れた取引アイデアが強力なMT5テスターでテスト(および議論)されるようになり、MT4とMT5の違いに関する会話が大幅に減ることを信じたい。EAのトレーディングコンポーネントが、テクニカルプログラミングコンポーネントに対する議論の主導権を取り戻すことができるようになります。

MT5-NFCを擁護するために、私はこのNFCがMT4よりもはるかに多くの可能性を与えることを言いたい。これは特に株式取引に当てはまります。しかし、FOREXでも、たとえば、MT5-NFCを通じて、未決注文の執行品質に関する重要な統計を得ることができます。したがって、利便性と機会の黄金律は、両方のNFCを並行して使用することです。これが、今回の作業で可能になったことです。

同じコード(MQL4)が両方のNFC上で実行されます。MT5テスターの方が単回実行でのパフォーマンスが低いことに気づくのは難しいことではないでしょう。MT5-testerの指値注文とTPレベルは、非現実的な高い正のスリッページで実行されます。自分自身の履歴や他の何か(時には不可欠なもの)でテストする可能性はありません。しかし、これらは一時的な誤解だと信じたい。クラウド、内蔵のリアルティック、多通貨、その他多くのプラス要素がある。クラウドとリアルティックが古いテスターでもエミュレートできるのであれば、多通貨は新しいテスターの決定的な利点である。

説明の例では、特に、特定のサークルで長い間知られているティック取引のアイデアであるラッキー(原形)を紹介しています。そして、指値注文(ビルド1368)によるMT5-テスターの不正確さのために、「実際のティックに基づくすべてのティック」モードであっても、このシステムの明確な評価を与えることは不可能である。MT4-OJASのおかげで)MQ4-advisor Spreader(例参照)という形でコード化されたシンプルな多通貨のアイデアは、MT5-testerで新たな生命を見出しました。

以前はMT4-testerでテストすることが困難/不可能であった多くの古いアイデアが、今では簡単に蘇生し、ほぼ元のバージョンで生産的に探索することができる。
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии ( советники ) перед началом использования их в реальной торговле. При...
 
Сергей Криушин:
何か信じられないような......ありがとうございました......これを使う最良の方法は、おそらくMT5ヘッジでしょう......。そうですね、まだMT5を使っているトレーダーはあまりいませんね...))))
変更なしで4や5でコンパイルされるシステムを書くためでしょう。
 
歴史では通用しない。だから奇跡はあまりない。
 
Dmitry Fedoseev:
歴史では通用しない。だから奇跡的なことはあまりない。
詳細はありがたく受け取ります。それがないと「動かない」を再現できない。
 
fxsaber:

MT5-NFCを擁護するために、私はこのNFCがMT4よりもはるかに多くの可能性を提供していることを言いたい。これは特に株式取引に当てはまります。しかし、FOREXでも、例えば、MT5-NFCを通じて、未決注文の執行の質に関する重要な統計を得ることができます。

https://www.mql5.com/ja/code/16134

SlipPage
SlipPage
  • 2016.08.25
  • fxsaber
  • www.mql5.com
Расчет проскальзываний совершенных сделок в валюте счета.
 
fxsaber:
私は感謝の気持ちを持って、あなたからの詳細を受け入れます。それがなければ、"機能しない "ことを再現できない。
そして、どのようにそれを再現しようとしたのですか?
 
Dmitry Fedoseev:
また、どのように「再現」しようとしたのですか?

多くのMT4スクリプト/アドバイザーを実行し、それらの動作の正しさを分析しました。

また、ライブラリを書きながら独自のテストも作成しました。

 
fxsaber:

私は多くのMT4スクリプト/アドバイザーを実行し、それらの動作の正しさを分析した。

また、ライブラリを書いている間に独自のテストも作成しました。

履歴を扱うテストはどのようなものでしたか?
 

履歴を扱う初歩的なことがいくつか検出される:

   static int MT4OrdersHistoryTotal(void)
     {
      int Res=0;

      if(::HistorySelect(0,::TimeCurrent()))
        {
         const int TotalDeals=::HistoryDealsTotal();

         for(int i=0; i<TotalDeals; i++)
            if(MT4ORDERS::IsMT4Deal(::HistoryDealGetTicket(i)))
               Res++;

         const int TotalOrders=::HistoryOrdersTotal();

         for(int i=0; i<TotalOrders; i++)
            if(MT4ORDERS::IsMT4Order(::HistoryOrderGetTicket(i)))
               Res++;
        }

      return(Res);
     }

OrdersHistoryTotal()が呼び出されるたびに、勘定科目の全履歴をたくさんのチェックとともにジョグする。

インデックスによる履歴の選択もまた、履歴全体を走査する。