iRSI()の使い方
MQL4 (MT4)のiRSI()の使い方をChatGPTに確認しました。
賢いですね。きちんとした回答を詳しくもらえました。
使用GPTs:EA Creator
MT4 MQL4のAPIのiRSIの使い方を実装例を交えて教えて下さい。補足で気を付ける点なども教えて下さい。
使い方
iRSI関数は、MetaTrader 4 (MT4) プラットフォームのMQL4言語で使用される、相対力指数 (Relative Strength Index, RSI) の値を計算します。RSIは、価格の変動速度と変動の大きさを基にして、オーバーバイト(買われ過ぎ)やオーバーソールド(売られ過ぎ)の市場状況を評価するモメンタムオシレーターです。RSIは0から100の範囲で動き、一般にRSIが70以上の場合はオーバーバイト、30以下の場合はオーバーソールドと見なされます。
関数の基本形式
double iRSI(
string symbol, // シンボル名
int timeframe, // 時間枠
int period, // 期間
int applied_price, // 適用価格
int shift // シフト
);
- symbol: 分析したい通貨ペアまたは市場のシンボル。
- timeframe: 使用する時間枠。
- period: RSIを計算するための期間。
- applied_price: 計算に使用する価格(例:
PRICE_CLOSE、PRICE_OPENなど)。 - shift: 指定したバーからのシフト量。
0は最新のバーを指します。
使用例
EURUSDの1時間足で、14期間のRSIの最新バーの値を取得する例:
double rsiValue = iRSI("EURUSD", PERIOD_H1, 14, PRICE_CLOSE, 0);
Print("The RSI value of the latest bar is: ", rsiValue);
注意点
- データの利用可能性: 指定したシンボルと時間枠でのデータがMT4クライアントにダウンロードされていることを確認してください。データが不足している場合、正確な計算結果を得ることができません。
- 期間の適切な選択: RSIの感度は、計算に使用する期間に依存します。期間が短いほど感度が高まり、より早く市場の変化に反応しますが、ノイズも増加します。期間を調整して、取引戦略に最適な設定を見つけてください。
- 適用価格の選択:
applied_priceパラメータでは、計算に使用する価格タイプを選択します。適用価格は、分析に最適な価格タイプを選択してください。 - オーバーバイト/オーバーソールドレベルの解釈: RSIのオーバーバイトまたはオーバーソールドのレベルは、市場や取引戦略によって異なる解釈が可能です。一般的な基準(70と30)をガイドラインとして使用しつつも、具体的な状況に応じて調整を検討してください。
- ダイバージェンスの監視: 価格が新しい高値や低値を記録しているにもかかわらず、RSIがそれを確認できない場合、市場の転換点が近いことを示すダイバージェンスが発生している可能性があります。このようなシグナルに注意を払うことで、有益な取引機会を見つけることができます。
相対力指数(Relative Strength Index、RSI)について

MQL4リファレンス
正式な仕様は”MQL4 Reference“をご確認下さい。上記内容を確認しておくとより分かりやすいかと思います。
リンク:https://docs.mql4.com/indicators/iRSI
他のテクニカルインディケータ関数の利用方法
以下のそれぞれのリンク先で確認していますので、ご参照ください。
| 関数名 | 概要 |
|---|---|
| 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インディケータの値を計算します。 |


