*

[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]ロブ・ブッカーのNY Box 検証

下の本に推奨されている NY Box (ニューヨークボックス)というトレード方法についての検証で

記事を読む

東京帝大教授が教えるお金・仕事に満足し、人の信頼を得る法 / 本多静六(2)

一昨日の記事「東京帝大教授が教えるお金・仕事に満足し、人の信頼を得る法 / 本多静六(1)」

記事を読む

【FX】さらばOANDA

FX の話です。 最初は独自ツールしか使えない不便な業者(LionFX)を使っていた私が MT

記事を読む

超シンプルな自動売買プログラム(9) RSI クロス

超シンプルな自動売買プログラム として RSI とそのシグナル(直前3本の平均値)とのクロスを考

記事を読む

【FX】2024年4月第1,2,3週総括

FX トレード記録「【FX】2024年4月第1,2週総括」の続きです。第3週が終わりました。

記事を読む

[FX] タイムフィルタについてのまとめ

タイムフィルタ開発の経緯 タイムフィルタは私の造語です。 以前、時刻をトリガーにした「時の旅

記事を読む

平均足システムの別種 / Heiken_Ashi_Realで平均足の移動平均線クロス(2)

前回の記事「平均足システムの別種 / Heiken_Ashi_Realで平均足の移動平均線クロス

記事を読む

[FX] ボリンジャーバンド順張りシンプル版

昨日読んだ本「FX ボリンジャーバンド常勝のワザ / 山中康司」に触発されて、もっともシンプルなボリ

記事を読む

FX マイニング

以前、「FX マイニング」という造語を作ったことを思い出しました。 仮想通貨のうちのビットコイ

記事を読む

【FX】ボリンジャーバンドを逆張りで(2)

昨日の記事「【FX】ボリンジャーバンドを逆張りで」の続きです。 本日、バグをつぶして、少し改良

記事を読む

Message

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

HDMI EDIDエミュレーター パススルー ドングル

現在、4台の PC の HDMI端子から KVM切替機を通して 1台の

SWIMMIN’ / 村松健

村松健の CD アルバム「SWIMMIN'」です。 BOOK

M.2 NVMe to PCI-e 変換アダプタ 拡張カード

M.2 NVMe to PCI

【ふるさと納税】河内晩柑 / 愛媛県愛南町

【ふるさと納税】 【高評価★4

Apacer SSD 256GB(M.2 NVMe)

Apacer アペイサー SS

→もっと見る

  • アクセスカウンター
PAGE TOP ↑