iStochastic()

 iStochastic()関数は、ストキャスティクスの値を取得するために使用します。

 なお、MetaTrader4(MT4)におけるストキャスティクスの値は、多くの書籍やwebページで紹介されている計算式とは異なった計算式によって算出されています。

 MT4におけるストキャスティクスの値を算出する計算式は、以下のとおりです。

Stochastics MT4 Formula
MT4のストキャスティクスの計算式
Stochastics MT4 Lines
MT4におけるストキャスティクスの表示

 多くの書籍やwebページで紹介されているストキャスティクス(以下「通常のストキャスティクス」という。)の計算式については、「こちら」(作成方法については「こちら」)を参照してください。

 iStochastic()関数は、以下のように定義されています。

double iStochastic(
string symbol,
int timeframe,
int Kperiod,
int Dperiod,
int slowing,
int method,
int price_field,
int mode,
int shift
);

 各引数の意味は、以下のとおりです。

  • string symbol
    ストキャスティクスの値を計算する通貨ペア名を指定します。
    通貨ペア名は、「気配値表示ウィンドウ」に表示されているとおりに記述します。
    特定の通貨ペア名を指定せず、EA等を適用したチャートの通貨ペアのストキャスティクスの値を取得したい場合は、「NULL」と記述します。
  • int timeframe
    以下の表に従って、ストキャスティクスの値を計算する時間軸を指定します。

    timeframeの種類

    種 類
    定 数
    内 容
    PERIOD_CURRENT
    現在の時間足
    PERIOD_M1
    1分足
    PERIOD_M5
    5分足
    PERIOD_M15
    15
    15分足
    PERIOD_M30
    30
    30分足
    PERIOD_H1
    60
    1時間足
    PERIOD_H4
    240
    4時間足
    PERIOD_D1
    1440
    日 足
    PERIOD_W1
    10080
    週 足
    PERIOD_MN1
    43200
    月 足
  • int Kperiod
    %K期間を指定します。
  • int Dperiod
    %D期間を指定します。
  • int slowing
    スローイング期間を指定します。
    」と指定すると、メインラインは通常のストキャスティクスの%Kラインとなり、シグナルラインは%Dラインとなります(いわゆる「ファーストストキャスティクス」。)。
    2以上」に指定すると、メインラインは%Dラインとなり、シグナルラインはSDラインとなります(いわゆる「スローストキャスティクス」。ただし、上述のように、MT4のストキャスティクスの計算式は通常のストキャスティクスの計算式とは異なるので、通常のストキャスティクスの%Dライン及びSDラインの値とは異なる値が算出されます。)。
  • int method
    以下の表に従って、シグナルラインを算出する移動平均の種類を指定します。

    移動平均線の種類

    種 類
    定数
    内 容
    MODE_SMA
    単純移動平均線
    MODE_EMA
    指数移動平均線
    MODE_SMMA
    平滑移動平均線
    MODE_LWMA
    線形加重移動平均線
  • int price_field
    ストキャスティクスの値の計算に使用する価格データを指定します。
    高値・安値を基にしてストキャスティクスの値を計算したい場合は「」と記述します。
    終値を基にしてストキャスティクスの値を計算したい場合は「」と記述します。
  • int mode
    ライン番号を指定します。
    メインラインの値を取得したい場合は「」と記述します。
    シグナルラインの値を取得したい場合は「」と記述します。
  • int shift
    ストキャスティクスの値を取得したいバーの位置を指定します。
    ストキャスティクスの値を取得したいバーが現在のバーであれば「」、1本前のバーであれば「」、2本前のバーであれば「」……と記述します。

具体例

 2本前のバーの%Kの値が2本前のバーの%Dの値以下で、かつ、1本前のバーの%Kの値が1本前のバーの%Dの値よりも大きい場合であれば、買いエントリーしたい場合は、以下のように記述します。


double K_Line_1 = iStochastic(NULL,0,5,3,1,0,0,0,1);
double K_Line_2 = iStochastic(NULL,0,5,3,1,0,0,0,2);
double D_Line_1 = iStochastic(NULL,0,5,3,1,0,0,1,1);
double D_Line_2 = iStochastic(NULL,0,5,3,1,0,0,1,2);

if(K_Line_2 <= D_Line_2 && K_Line_1 > D_Line_1)
  {
   int Ticket
   = OrderSend(Symbol(),OP_BUY,0.1,Ask,10,0,0,
               NULL,1459,0,Magenta);
  }
  • OrderSend()関数の詳細については「こちら」を参照してください。
  • Symbol()関数の詳細については「こちら」を参照してください。
  • Askの詳細については「こちら」を参照してください。

関連インジケーター

全通貨ペアと8通貨の最強通貨 音声とメールで通知
通貨強弱Stochastic 一目瞭然 全通貨ペア・8通貨・全時間足 強さランキング
通貨強弱Stochastic 一目瞭然 全通貨ペア・8通貨・全時間足 強さランキング | fx-on.com

通貨強弱Stochastic 一目瞭然 全通貨ペア・8通貨・全時間足 強さランキング
通貨強弱Stochastic 一目瞭然 全通貨ペア・8通貨・全時間足 強さランキング | fx-on.com

 上記インジケーター(通貨強弱Stochastic 一目瞭然 全通貨ペア・8通貨・全時間足 強さランキング通貨強弱Stochastic 一目瞭然 全通貨ペア・8通貨・全時間足 強さランキング | fx-on.com)の詳細については「こちら通貨強弱Stochastic 一目瞭然 全通貨ペア・8通貨・全時間足 強さランキング | fx-on.com」を参照してください。

時間を味方に短期と長期の動きはどう関連するのか!?
マルチタイムフレーム ストキャスティスク/FXも225も使用可能 インジケーター
マルチタイムフレーム ストキャスティスク/FXも225も使用可能 インジケーター | fx-on.com

マルチタイムフレーム ストキャスティスク/FXも225も使用可能 インジケーター
マルチタイムフレーム ストキャスティスク/FXも225も使用可能 インジケーター | fx-on.com

 上記インジケーター(マルチタイムフレーム ストキャスティスク/FXも225も使用可能 インジケーターマルチタイムフレーム ストキャスティスク/FXも225も使用可能 インジケーター | fx-on.com)の詳細については「こちらマルチタイムフレーム ストキャスティスク/FXも225も使用可能 インジケーター | fx-on.com」を参照してください。

関連書籍

ストキャスを間違って使わないための教本
円心流テクニカル教本パート6 ストキャスティックス編
円心流テクニカル教本パート6 ストキャスティックス編 | fx-on.com

円心流テクニカル教本パート6 ストキャスティックス編
円心流テクニカル教本パート6 ストキャスティックス編 | fx-on.com

 上記書籍(円心流テクニカル教本パート6 ストキャスティックス編円心流テクニカル教本パート6 ストキャスティックス編 | fx-on.com)の詳細については「こちら円心流テクニカル教本パート6 ストキャスティックス編 | fx-on.com」を参照してください。


MT4の使い方からプログラミングまで、わかりやすく解説