記事"MQL5でExpert Advisorを書くための初心者向けステップバイステップガイド"についてのディスカッション - ページ 3

 

いくつかの困難の後、テスターは完全に機能し、記事に記載された結果と一致する結果を出した。

困難について。履歴のダウンロードに非常に時間がかかり(8Mbpsで55分)、何度か中断したため、テスターを2回再起動しなければならなかった。最後にはテスターがフリーズしました。MT 5を閉じたが、再び開くことはできなかった。システムを完全に再起動しなければならなかった。その後、MT5は静かに起動し、驚くべきことに、テスターは完全に動作し(約2分)、記事に記載されているすべての結果が得られました(記事の記載通りにテストパラメータを指定しました)。そして、異なるタイムフレームでのさらなるテストも問題なく続きました。

まとめ。記事はクールだ。エキスパート・アドバイザーは使える。もっと調べてみよう。

 
ArraySetAsSeriesコールが OnInit()ではなくOnTick()のボディにあるのはなぜでしょうか?
Документация по MQL5: Операции с массивами / ArraySetAsSeries
Документация по MQL5: Операции с массивами / ArraySetAsSeries
  • www.mql5.com
Операции с массивами / ArraySetAsSeries - Документация по MQL5
 
Также это лучшее место для получения хэндлов технических индикаторов, которые будут использоваться (в нашем случае это индикаторы ADXと移動平均)。

テクニカル・インジケータのハンドルネームは 何ですか?

インジケーターの識別子?

 
vas:

テクニカル・インジケータのハンドルネームは 何ですか?

インジケーターの識別子とは何ですか?

インジケーターのハンドルは、インジケーターが計算されるスレッドの識別子であり、ハンドルを呼び出すとデータストリームにアクセスします。

ハンドルを返す関数は、まさにこのスレッドを作成(開始)します。そのため開発者は、作成直後のストリームにアクセスすることを推奨していません。

 

素晴らしい記事だ!明快な構成で理解しやすい。

OnInit() "の最初の "if "条件におけるreturn式に疑問を感じます。おそらく、パラメータは-1か、0でなく何でも良いのだろう。

 

https://www.mql5.com/ja/articles/100 の記事のエキスパートを標準ライブラリーのクラスで 実装してみた。

私が得たものを掲載する。

残念ながら、記事のコードにはエラーがあるため、同じトレードはうまくいきませんでした。

ExpertADX-MA.mq5 ファイルは ExpertsAdvisors に置く必要があります。 - これがExpert Advisorです。

SignalADX-MA.mqh ファイルは、IncludeExpertSignalに置くべきである。

TrailingFixedPips.mqhファイルを IncludeExpertTrailing(with replacement)置く

Expert.mqhファイルは、 IncludeExpert (置換あり)に配置する必要があります - このファイルは、標準納品物のファイルです。標準デリバリーのファイルにマイナーな変更を加えたものです。

標準配信の変更は、次のビルドで行われる。

追記: ExpertではTrawlが「ネジ止め」されている(作業員の要望による)。

これを「解除」するには、次の行をコメントする必要があります:

      if(!ExtExpert.InitTrailing(new CTrailingFixedPips)) return(-3);

という 行をコメントする 必要があります

Пошаговое руководство по написанию MQL5-советников для начинающих
Пошаговое руководство по написанию MQL5-советников для начинающих
  • 2010.06.09
  • Samuel
  • www.mql5.com
Написание советников на MQL5 проще чем кажется, вы легко можете этому научиться. В этом руководстве вы познакомитесь с основными моментами, необходимыми для написания простого советника на основе конкретной торговой стратегии. Рассмотрена структура советника, использование встроенных технических индикаторов и торговых функций, вопросы отладки и тестирования советника на исторических данных.
ファイル:
 

初心者のためのMQL5エキスパートアドバイザーの書き方ステップバイステップガイドの 記事中のEAコードの誤りを修正しました。

エキスパートアドバイザーのコードの更新版をダウンロードしてください。
 

上記のEAコードでは

動的配列 double maVal[] はグローバル・スコープで宣言されています。

で宣言されており、void OnTick() 関数領域では宣言されていません。

エキスパートアドバイザーが24時間稼働しているとします。

質問:動的配列に割り当てられたメモリはどうなるのでしょうか? どれくらいの速さでゴミで詰まってしまうのでしょうか?

言い換えると、「この場合、メモリ・リークはあるのでしょうか?

 

記事をありがとう!

 
この記事には大変感謝しています。私のEAのコードを書いた後、デバッグボタンを押したら、10個のエラーがあると言われました。どうすればこの問題を解決できるでしょうか?