[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] 久々に書いた自動売買プログラム ysHAOMA01b.ex4
昨日の記事「EMA5-10-34_Signal というインジケーター」でちょっと触れた、久々
-
-
[FX] FX マイニング第2週後半
以前の記事「FX マイニング第2週前半」の続きです。 FX で自分はなにもしないで自動売買プロ
-
-
【FX】IS White という EA(2) デモの結果
以前紹介した EA です。 Exness でデモを開始しましたが、あまりかんばしくない
-
-
[FX]タイムフィルター(4)
タイムフィルターのさらなる検証です。 通貨ペアごとに最適な時間帯を調整してみると以下のとおりに
-
-
[FX] こんな自動売買プログラムはどう?
Gogojungle というサイトで FX用の自動売買プログラムがいろいろ売られています。 す
-
-
[FX] FX マイニング第7週 8/2~8/6
以前の記事「FX マイニング第6週」の続きです。 第7週分(先週分)は、 8/2 +
-
-
FX 裁量トレード 現在の方法
(↑クリックすれば拡大) FX の裁量トレードはキライなので、一番ラクチンな方法を模索していま
-
-
新生銀行 ATM使用料無料
* みなさんのお住まいのところは銀行は近いのでしょうか。 もし遠ければ新生銀行の口座でも作られてはい
-
-
簡単な平均足システム
平均足(コマ足)という価格表示の方法があります。 ローソク足の代わりに使うもので、トレンドがわ
-
-
[FX] 2015/5/11-18 リアル口座結果
5/11 10:30:00 sell 0.1 eurusd-a01 1.11