![【MQL4】ローソク足実体の割合を求めるには!?](https://celebpanda.com/wp/wp-content/uploads/2021/05/セレブパンダブログ用.jpg)
中学性の時、STOPを習い使いたくて、止まれをDon't STOPと言って、一斉にみんなに走りさられたセレブパンダだお。(止まるなですから、当然いくよね)
1本のローソク足の次足が反発するかしないかをみる指標の1つとして、ローソク足実体の割合があります。
今回は、具体的にどうやって、割合を求めるのって話です。
この記事の目次
こんな人が対象です。
- ローソク足実体の割合をどうやって求めるのか知りたい人。
この制御、バイナリーオプションでは有効な制御なので、知っていた方がよいと思いますよ(*^▽^*)
実体足の割合とは
ローソク足の実体は、始値と終値の値です。陽線なら終値 - 始値、陰線なら始値 - 終値で求めれます。
絶対値を使えば、陽線、陰線関係ないので、以下のようにすると便利です。
MathAbs(iClose(NULL, aTimeframe, k) - iOpen(NULL, aTimeframe, k));
実体の割合は、髭に対する、実体の割合を言います。
陽線なら、上髭+実体に対する、実体の割合を言います。
陰線なら、下髭+実体に対する、実体の割合を言います。
サンプル
関数として利用すると便利です。
//==============================================================
// 陰線の下髭に対しての実体割合を求める。(%で返す)
//==============================================================
bool getInsenSitaHigeWariai(int aTimeframe,int aShift)
{
double open = iOpen (NULL,aTimeframe,aShift);
double close = iClose(NULL,aTimeframe,aShift);
double low = iLow (NULL,aTimeframe,aShift);
if(
open > close
&& MathAbs(low - open) > 0)
{
double c = NormalizeDouble(MathAbs((close - open)) / MathAbs((low - open))*100, 5);
return c;
}
return 0;
}
//==============================================================
// 陽線の上髭に対しての実体割合を求める。(%で返す)
//==============================================================
bool getYousenUwaHigeWariai(int aTimeframe,int aShift)
{
double open = iOpen (NULL,aTimeframe,aShift);
double close = iClose(NULL,aTimeframe,aShift);
double high = iHigh (NULL,aTimeframe,aShift);
if(
open < close
&& MathAbs(high - open) > 0)
{
double c = NormalizeDouble((MathAbs((close - open)) / MathAbs((high - open)))*100, 5);
return c;
}
return 0;
}
利用方法
double uwahigeWariai = getInsenSitaHigeWariai(1, 1);
double sitahigeWariai = getInsenSitaHigeWariai(1, 1);
引数は、左から、時間足、計算位置です。
この場合だと、1分足の1本目の陽線の実体割合。1分足の1本目
では、まただお。