記事"かずかずのインスツルメントで取引を行うExpert Advisorの作成"についてのディスカッション

 

新しい記事 かずかずのインスツルメントで取引を行うExpert Advisorの作成 はパブリッシュされました:

ファイナンシャルマーケットにおける資産の多様性概念はかなり古いもので常に初心者のトレーダーを魅了してきました。本稿では、複数通貨対応Expert Advisorの構築をトレード戦略を扱う最初の導入として最大限にシンプルな手法で行います。

図9 MultiStochasticインディケータ

作者: Nikolay Kositsin

 
  1. 記事を書いてくれた著者に感謝します。

  2. Expert Advisorのパラメータやその他のテスト条件が変更されていない状態で、テスターでインストゥルメントを選択すると、テスト結果に影響が出るのはなぜですか?

EURUSD

GBPUSD

USDJPY

    3.Expert Advisorの結果は、Expert Advisorのアタッチメントチャートの選択と期間に依存しますか。

    4.なぜ

    dtema2 = NormalizeDouble(TEMA[2] - TEMA[3], _Digits + 4);
    dtema1 = NormalizeDouble(TEMA[1] - TEMA[2], _Digits + 4);

    の代わりに

    _Digits

を使用しないのか。

SymbolInfoInteger(Symbol_, SYMBOL_DIGITS)

また、 なぜ_Digitsの値が+4されるのですか?

 
ias:
  1. EAのパラメータやその他のテスト条件が変更されていない状態で、テスターでツールを選択すると、なぜテスト結果に影響が出るのでしょうか?

ティック生成アルゴリズムに関係しているとしか考えられません。https://www.mql5.com/ru/forum/1031 をお読みください。

私はそこで、始値でテストするモードだけは信用できるという結論を出しました。

Обсуждение статьи "Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5"
Обсуждение статьи "Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5"
  • www.mql5.com
Обсуждение статьи "Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5".
 
ias:

2.何とも言えない!私自身、とても興味があります!

3.まあ、チャートの期間にもよるでしょう!しかし、Expert Advisorが置かれているチップによる深刻な違いはないはずです。実生活では、すべてのチップ上のティックが異なるOnTick()関数を フックしますが、それでも大きな時間枠で違いは小銭のはずです。

4.検出された失言に感謝します!dtema1とdtema2の値がゼロに等しくなる可能性を排除するため、精度を4桁上げました。誰が何を好むかは好みの問題だ。

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 

5.次の使用は許されるか?

ENUM_TIMEFRAMES timeframe=0
в
if (IsNewBar(Number, Symbol_, 0) || Recount[Number])
を使うことは許されるか?
 
ias:

テストでの使用は許されるか?

テストでの使用は許されますか?
問題ありません!
 
ias:

Expert Advisorのパラメータやその他のテスト条件を変更せずに、テスターでツールを選択すると、なぜテスト結果に影響するのですか?

MT5は不具合が多いからです!

例えば、EURUSDチャートに別の商品のカーブが重なっている場合。

#property indicator_separate_window ....

copied=CopyClose(InstrumentName,0,0,CountsBars,Buffer);

EURJPYの場合はすべて正常ですが、EURCADの場合はデータがエラーになることがあります。

EURCADでEURCADの場合、すべて問題ありません。

Alpariでは90%、他のプラットフォームではそれ以下です。

要するに、いくつかの楽器は結合されていません!

 
マルチカレンシー・システムでは、メイン・アルゴリズムをタイマーで処理する方が、(Expert Advisorが "ハング "する)メイン商品のティック・フローの強度に依存しないため、より論理的です。 この場合のみ、マルチカレンシー・テストの結果は、テスト中に選択されたどの商品でも同じになります。
 
Kos:

マルチカレンシー・システムでは、メイン・アルゴリズムをタイマーで処理する方が、(Expert Advisorが "ハング "する)メイン商品のティック・フローの強さに依存しないため、より論理的です。 この場合のみ、マルチカレンシー・テストの結果は、テスト中に選択されたどの商品でも同じになります。
MQL4ではタイマーがなくてもすべてが正常に動作します。
削除済み  
Kos:

マルチカレンシー・システムがメイン・アルゴリズムをタイマーで処理するのは、(Expert Advisorが "ハング "する)メイン商品のティック・フローの強さに依存しないようにするためです。 この場合のみ、マルチカレンシー・テストの結果は、テスト中に選択されたどの商品でも同じになります。

私は長い間、このことを言い続けてきました。:)

現在存在するExpert Advisorでは、タイマーはあるべき姿の10%も関与していません。

パラメータに基づいて特定の商品で取引する可能性を管理する必要性というアイデアは非常に良い(私自身はMT4からそのようなものを使っている)のですが、実装は率直に言ってお粗末です。

私の意見では、通貨は何らかの属性でグループに集め、パラメータでグループ全体を管理し、各商品に対する最終的な作業は、変数または配列のレベルで(実装によりますが)すでに個別に行うべきです。

削除済み  
gisip:
MQL4ではタイマーなしですべてうまくいきます。

MQL4には存在しないし、構造体やクラスも存在しない。


IMHO

標準ライブラリを 使うか使わないかは人それぞれだが(最悪、自分のコードしか使えない)、MT4で使えないからといって、すべての利点を放棄するのはあまり合理的ではない......。