著者: アンドレイ・N・ボルコンスキー
ストキャスティクスインジケーター(スムーズ済みq期間ストキャスティクス)は、ウィリアム・ブラウによって開発されたもので、ストキャスティクスインジケーターに基づいています(詳細はMomentum, Direction, and Divergence: Applying the Latest Momentum Indicators for Technical Analysisを参照)。
このインジケーターは、qバーの終値と最安値の距離を示します。ストキャスティクスの数値は、期間(qバー)の最安値に対する価格位置を示し、その値は0以上です。

- WilliamBlau.mqhをterminal_data_folder\MQL5\Include\に配置してください。
- Blau_TStoch.mq5をterminal_data_folder\MQL5\Indicators\に配置してください。

ストキャスティクスインジケーター Blau_TStoch
計算方法:
q期間のストキャスティクスの計算には、以下の式が用いられます:
stoch(price,q) = price - LL(q)
ここで:
- price - 現在の時間枠の終値;
- q - ストキャスティクスの計算に使用するバーの数;
- LL(q) - qバーの最安値。
スムーズ済みq期間ストキャスティクスの計算は次のように行います:
TStoch(price,q,r,s,u) = EMA(EMA(EMA( stoch(price,q) ,r),s),u)
ここで:
- price - 終値;
- q - ストキャスティクスの計算に使用するバーの数;
- stoch(price,q)=price-LL(q) - q期間のストキャスティクス;
- EMA(stoch(price,q),r) - ストキャスティクスに適用される1回目のスムージングのための指数平滑移動平均(期間r);
- EMA(EMA(...,r),s) - 2回目のスムージング - 1回目のスムージングの結果に適用されるEMA(期間s);
- EMA(EMA(EMA(...,r),s),u) - 3回目のスムージング - 2回目のスムージングの結果に適用されるEMA(期間u)。
入力パラメータ:
- q - ストキャスティクスの計算に使用する期間(デフォルトはq=5);
- r - ストキャスティクスに適用される1回目のEMA期間(デフォルトはr=20);
- s - 1回目のスムージング結果に適用される2回目のEMA期間(デフォルトはs=5);
- u - 2回目のスムージング結果に適用される3回目のEMA期間(デフォルトはu=3);
- AppliedPrice - 価格タイプ(デフォルトはAppliedPrice=PRICE_CLOSE)。
注意:
- q>0;
- r>0, s>0, u>0。もしr, sまたはuが1の場合、スムージングは使用されません;
- 最小レート=(q-1+r+s+u-3+1)。