記事"初心者のためのMQL5: Expert Advisorでのテクニカルインディケーター使用ガイド"についてのディスカッション - ページ 2

 
初心者には、この記事でインジケーターの使い方を説明すれば十分だ。
 
インジケーターの中で、例えば、次のような使い方を教えてください。
Bands_handle=iBands(NULL,0,144,0,2,PRICE_CLOSE);


ターミナルでは選択できるのですが、コードにどのように書くのかがわかりません。
マニュアルにはHandleが必要と書いてあるのですが、バッファしかありません。
よろしくお願いします。

 
Григорий Муратов #:
インジケーターのPRICE_CLOSEを変更する方法を教えてください。


ターミナルでは選択できるのですが、コードにどのように書くのかがわかりません。
マニュアルにはHandleが必要と書いてあるのですが、バッファしかありません。
よろしくお願いします。

https://www.mql5.com/ru/articles/15 の記事を見てください。

Индикатор от индикатора в MQL5
Индикатор от индикатора в MQL5
  • www.mql5.com
При написании индикатора, который использует краткую форму вызова функции OnCalculate(), можно упустить то обстоятельство, что индикатор может рассчитываться не только на ценовых данных, но и на данных другого индикатора (встроенного или пользовательского - не имеет значения). Вы хотите улучшить индикатор, чтобы он правильно считался не только на ценовых данных, но и значениях другого индикатора? В этой статье мы по шагам пройдем все необходимые этапы такой модификации и выведем дополнительные полезные правила для правильного написания индикатора.
 
Rashid Umarov #:

https:// www.mql5.com/ru/articles/15

リンクありがとうございます。しかし、そのコメント欄にはコードが古いと書かれています。調べてみます。
 

Григорий Муратов #:
Подскажите пожалуйста, как в индикаторе, например в 

Bands_handle=iBands(NULL,0,144,0,2,PRICE_CLOSE);


ターミナルでは選択できるのですが、コードにどう書けばいいのかわかりません。
マニュアルにはHandleが必要と書いてあるのですが、バッファしかありません。
よろしくお願いします。

https://www.mql5.com/ru/docs/indicators/ibands ドキュメントを見ると -- 仕様が書いてあります:

int  iBands(
   string              symbol,            // キャラクター名
   ENUM_TIMEFRAMES     period,            // 期間
   int                 bands_period,      // 平均ラインの計算期間
   int                 bands_shift,       // インジケータを水平方向にオフセット
   double              deviation,         // 標準偏差の数
   ENUM_APPLIED_PRICE  applied_price      // 価格タイプまたはハンドル
   );

-- ここでPRICE_CLOSEの代わりにカスタムインジケーターのハンドルを書くことができます。

例えば

MA_Custom_handle=iCustom(NULL,0,"Examples\\Custom Moving Average",
                     MA_Period,
                     MA_Shift,
                     MA_Method,
                     PRICE_CLOSE
                     );
Bands_handle=iBands(NULL,0,144,0,2, MA_Custom_handle );