iEnvelopes()の使い方
MQL4 (MT4)のiEnvelopes()の使い方をChatGPTに確認しました。
賢いですね。きちんとした回答を詳しくもらえました。
使用GPTs:EA Creator
MT4 MQL4のAPIのiEnvelopesの使い方を実装例を交えて教えて下さい。補足で気を付ける点なども教えて下さい。
使い方
iEnvelopes
関数は、MetaTrader 4 (MT4) プラットフォームのMQL4言語で使用される、エンベロープ (Envelopes) インディケータの値を計算します。エンベロープは、移動平均線を中心にして、上下に一定のパーセンテージでシフトした2本のライン(バンド)で構成されます。このインディケータは市場のボラティリティを示し、価格がこれらのバンドの外に出ると、オーバーバイトまたはオーバーソールドの条件を示唆します。
関数の基本形式
double iEnvelopes(
string symbol, // シンボル名
int timeframe, // 時間枠
int ma_period, // 移動平均の期間
int ma_method, // 移動平均の計算方法
int ma_shift, // 移動平均のシフト
int applied_price, // 適用価格
double deviation, // 偏差(パーセント)
int mode, // ラインインデックス(MODE_UPPER、MODE_LOWER、MODE_MAIN)
int shift // シフト
);
- symbol: 分析したい通貨ペアまたは市場のシンボル。
- timeframe: 使用する時間枠。
- ma_period: 移動平均を計算する期間。
- ma_method: 移動平均の計算方法(例:
MODE_SMA
、MODE_EMA
)。 - ma_shift: 移動平均のシフト量。
- applied_price: 計算に使用する価格(例:
PRICE_CLOSE
、PRICE_HIGH
)。 - deviation: バンドの偏差(パーセント)。
- mode: 取得するバンドの種類(
MODE_UPPER
、MODE_LOWER
、MODE_MAIN
)。 - shift: 指定したバーからのシフト量。
0
は最新のバーを指します。
使用例
EURUSDの1時間足で、14期間のSMAに基づき、0.5%の偏差を持つエンベロープの上部バンドの最新バーの値を取得する例:
double envelopeUpper = iEnvelopes("EURUSD", PERIOD_H1, 14, MODE_SMA, 0, PRICE_CLOSE, 0.5, MODE_UPPER, 0);
Print("The upper Envelope value of the latest bar is: ", envelopeUpper);
注意点
- データの利用可能性: 指定したシンボルと時間枠でのデータがMT4クライアントにダウンロードされていることを確認してください。データが不足している場合、正確な計算結果を得ることができません。
- 偏差の選択: 偏差のパーセント値は、市場やシンボルによって異なります。適切な偏差値を選択することで、インディケータの有効性が向上します。
- 移動平均の方法: 移動平均の計算方法(
ma_method
)は、インディケータの形状に影響を与えます。使用する計算方法を選択する際は、取引戦略に合わせて検討してください。 - 適用価格の選択:
applied_price
パラメータで指定する価格タイプによって、計算結果が異なります。使用する価格タイプを正しく選択してください。 - マルチタイムフレーム分析: 異なる時間枠でエンベロープを分析することで、市場のボラティリティに対するより幅広い視点を得ることが可能です。
MQL4リファレンス
正式な仕様は”MQL4 Reference“をご確認下さい。上記内容を確認しておくとより分かりやすいかと思います。
リンク:https://docs.mql4.com/indicators/iEnvelopes
他のテクニカルインディケータ関数の利用方法
以下のそれぞれのリンク先で確認していますので、ご参照ください。
関数名 | 概要 |
---|---|
iAC | Accelerator Oscillatorの値を計算します。 |
iAD | Accumulation/Distributionインディケータの値を計算します。 |
iADX | 平均方向移動指数 (Average Directional Movement Index) の値を計算します。 |
iAlligator | ビル・ウィリアムズのアリゲーターインディケータの値を計算します。 |
iAO | Awesome Oscillatorの値を計算します。 |
iATR | 平均真の範囲 (Average True Range) の値を計算します。 |
iBearsPower | ベアパワーインディケータの値を計算します。 |
iBands | ボリンジャーバンドの値を計算します。 |
iBandsOnArray | 配列データに基づいてボリンジャーバンドの値を計算します。 |
iBullsPower | ブルパワーインディケータの値を計算します。 |
iCCI | 商品チャネル指数 (Commodity Channel Index) の値を計算します。 |
iCCIOnArray | 配列データに基づいて商品チャネル指数の値を計算します。 |
iCustom | カスタムインディケータの値を計算します。 |
iDeMarker | DeMarkerインディケータの値を計算します。 |
iEnvelopes | エンベロープインディケータの値を計算します。 |
iEnvelopesOnArray | 配列データに基づいてエンベロープインディケータの値を計算します。 |
iForce | フォースインデックスの値を計算します。 |
iFractals | フラクタルインディケータの値を計算します。 |
iGator | ゲーターオシレータの値を計算します。 |
iIchimoku | 一目均衡表の値を計算します。 |
iBWMFI | 市場係数インディケータ (Market Facilitation Index) の値を計算します。 |
iMomentum | モメンタムインディケータの値を計算します。 |
iMomentumOnArray | 配列データに基づいてモメンタムインディケータの値を計算します。 |
iMFI | 資金流量指数 (Money Flow Index) の値を計算します。 |
iMA | 移動平均の値を計算します。 |
iMAOnArray | 配列データに基づいて移動平均の値を計算します。 |
iOsMA | 移動平均のオシレータ (OsMA) の値を計算します。 |
iMACD | 移動平均収束発散 (MACD) の値を計算します。 |
iOBV | オンバランスボリューム (On Balance Volume) の値を計算します。 |
iSAR | パラボリックSARの値を計算します。 |
iRSI | 相対力指数 (Relative Strength Index) の値を計算します。 |
iRSIOnArray | 配列データに基づいて相対力指数の値を計算します。 |
iRVI | 相対活性指数 (Relative Vigor Index) の値を計算します。 |
iStdDev | 標準偏差インディケータの値を計算します。 |
iStdDevOnArray | 配列データに基づいて標準偏差インディケータの値を計算します。 |
iStochastic | ストキャスティクスオシレータの値を計算します。 |
iWPR | ウィリアムズ%Rインディケータの値を計算します。 |