*

[FX] 4TFStochBars というインジケータ

公開日: : 最終更新日:2019/11/18 マネー

4TFStochBars.mq4 というストキャスティクスを4つの時間足でバー表示するインジケータがあるのですが、ダウンロードサイト から落とすと

のようにサブウィンドゥに表示されます(USDJPY30分足)。

4本(一番下のバーは無視してください)のバーのうち、一番上が現在の時間足。30分足だとすると、その下に 1時間足、4時間足、日足が表示されます。

ライム色(明るいグリーン)はストキャスの%Dが%Kより大きい場合、赤色はその逆を示します。

特に現在の時間足では高値圏での「%D>%K」、低値圏での「%D<%K」には注意が必要なので、現在の時間足の普通の2本線表示のストキャスも表示させて用いるのがいいと思います。

使い方は、

  • 4つのバーがすべてライムになれば買いシグナル
  • すべて赤なら売りシグナル
  • エントリしていて一番上のバーのみ色が変われば利確のチャンス

というものですが、高値圏での「%D>%K」、低値圏での「%D<%K」には注意が必要と書いたとおり、利確には通常の2本線表示のストキャスで判断してください。

ただし、これのみの売買シグナルはダマシが多いため、ほかのものとの併用は必須です。

で、プログラムのバグを見つけました。

概念のミス

183行目からの

   percentD = iStochastic(NULL,prd,KPeriod,DPeriod,Slowing,MAMethod,PriceField,MODE_MAIN,yy);
percentK = iStochastic(NULL,prd,KPeriod,DPeriod,Slowing,MAMethod,PriceField,MODE_SIGNAL,yy);

switch (tf)
{  case 4: buf4_down[i]=EMPTY_VALUE;buf4_up[i]=EMPTY_VALUE;  if (percentK>=percentD)  buf4_down[i] = 1;           else buf4_up[i] = 1;           break;
case 3: buf3_down[i]=EMPTY_VALUE;buf3_up[i]=EMPTY_VALUE; if (percentK>=percentD)  buf3_down[i] = 1 + Gap * 1; else buf3_up[i] = 1 + Gap * 1; break;
case 2: buf2_down[i]=EMPTY_VALUE;buf2_up[i]=EMPTY_VALUE; if (percentK>=percentD)  buf2_down[i] = 1 + Gap * 2; else buf2_up[i] = 1 + Gap * 2; break;
case 1: buf1_down[i]=EMPTY_VALUE;buf1_up[i]=EMPTY_VALUE; if (percentK>=percentD)  buf1_down[i] = 1 + Gap * 3; else buf1_up[i] = 1 + Gap * 3; break;
}

これを

   percentK = iStochastic(NULL,prd,KPeriod,DPeriod,Slowing,MAMethod,PriceField,MODE_MAIN,yy);
percentD = iStochastic(NULL,prd,KPeriod,DPeriod,Slowing,MAMethod,PriceField,MODE_SIGNAL,yy);

switch (tf)
{  case 4: buf4_down[i]=EMPTY_VALUE;buf4_up[i]=EMPTY_VALUE;  if (percentK<percentD)  buf4_down[i] = 1;           else buf4_up[i] = 1;           break;
case 3: buf3_down[i]=EMPTY_VALUE;buf3_up[i]=EMPTY_VALUE; if (percentK<percentD)  buf3_down[i] = 1 + Gap * 1; else buf3_up[i] = 1 + Gap * 1; break;
case 2: buf2_down[i]=EMPTY_VALUE;buf2_up[i]=EMPTY_VALUE; if (percentK<percentD)  buf2_down[i] = 1 + Gap * 2; else buf2_up[i] = 1 + Gap * 2; break;
case 1: buf1_down[i]=EMPTY_VALUE;buf1_up[i]=EMPTY_VALUE; if (percentK<percentD)  buf1_down[i] = 1 + Gap * 3; else buf1_up[i] = 1 + Gap * 3; break;
}

のように書き換えてください(赤字が変更箇所)。表示は変わりません。

テキストのズレ

151行目の

case 4: txt = tf2txt(Period_4);  gp = 1.5 + shift; break;

も謎で、

case 4: txt = tf2txt(Period_4);  gp = 1.0 + shift; break;

であるべきかと思います。

テキストの色

あと、好みで 40行目の

extern color TextColor = Blue;

ですが、黒地のチャートをつかっていると暗くて見えにくいのでもっと明るい色

extern color TextColor = Aqua;

とかに変えておくとベターかと思います。

上記で示したようにもっと奇妙な「バグ」がいるのですが、それはまだ取れていないので次の機会に。

関連記事

[FX] 4TFStochBars というインジケータ(2)

###

関連記事

[FX] PRICE_MEDIAN を使う

以前作った ADX 指標を使った EA の yasciiADXcross02 は何度か改良して試

記事を読む

[FX] ハル平均線システム+フィボナッチ・トレーリングストップ

前回の記事「フィボナッチ・トレーリングストップ(初期型)」で発表した機能を ハル平均線システムに

記事を読む

FXシステムトレード 年率200%儲ける投資術 / 池田 悟

FXシステムトレード 年率200%儲ける投資術 池田 悟 日本実業出版社 2

記事を読む

[FX] 2015/5/15 途中経過

別のPCでのデモ口座で動かしていた 15分足EA の MACD_MTF システムですが、EU

記事を読む

ディナポリ手法で利用するDMA (4) ATRトレイリングストップ

前回の記事「ディナポリ手法で利用するDMA (3) HLバンドトレイリングストップ」で、ディナポリ移

記事を読む

[FX] 2015/5/11 今週の戦略

PC のメモリ不足が露見したのですが、ちょっと忙しくて新しいマシンを用意できず、以前と同じ PC

記事を読む

ビットコインについて考えてみた

ビットコインは数ある電子通貨の一つですが、ほかのも似たようなものなので ビットコインについて

記事を読む

超シンプルな自動売買プログラム(5) MACD&RSI(続き)

稼ぐ人のFX 儲けの流儀 (超トリセツ) バウンド インターナショナル・ラグ

記事を読む

医療費39兆2千億円 過去最高(4)

こちらは毎日新聞 2014年10月08日の記事ですが、 厚生労働省は8日、2012年度の国

記事を読む

関東と関西

* 関西人はいかに安く買ったかを自慢し、関東人はいかに高く買ったかを自慢すると言われていますが

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP ↑