最小変動レートを返す 定義済み _Point変数(MQL4)

定義済み変数 _Point

書式

double  _Point;

戻り値(返り値)

通貨ペアの最小レート単位を返す(1Pointを返す)
例えば

USDJPYの場合

少数点以下2桁を返す業者と少数点以下3桁を返す業者がある。

0.01と0.001だ。どちらも1pointになる。
pipsに直すと前者が1pipsで後者が0.1pipsになる。
※100銭が1円なので1銭=1pipsとなります。

1pipsで揃える場合(elseでpipsPointに_Pointを代入しないといけません)

if(_Point==0.001){
	double pipsPoint=_Point*10; //0.001(=1point)の×10pointだから0.010になる。
}

0.1pipsで揃える場合(elseでpipsPointに_Pointを代入しないといけません)

if(_Point==0.01){
	double pipsPoint=_Point/10; //0.01(=1point)の÷10pointだから0.001になる。
}

EURUSDの場合

少数点以下4桁を返す業者と少数点以下5桁を返す業者がある。
0.0001と0.00001でこちらも両方1pointとなり、
pipsに直すとUSDJPYと同様、1pipsと0.1pipsになる。

1pipsで揃える場合(elseでpipsPointに_Pointを代入しないといけません)

if(_Point==0.00001){
	double pipsPoint=_Point*10; //0.00001(=1point)の×10pointだから0.00010になる。
}

0.1pipsで揃える場合(elseでpipsPointに_Pointを代入しないといけません)

if(_Point==0.0001){
	double pipsPoint=_Point/10; //0.0001(=1point)の÷10pointだから0.00001になる。
}

サンプルコード

double pipsPoint = _Point;

//1pipsで揃える場合
//if(1point = 0.1pips)の時
if(_Point==0.001 || _Point==0.00001){
	pipsPoint=_Point*10;//0.001(=1point)の×10pointだから0.01になる。
}
//このpipsPointに整数をかけてやればレート上での1pipsになる
pipsPoint*3;//=0.03=3pips
pipsPoint*3;//=0.0003=3pips


//0.1pipsで揃える場合
//if(1point = 1pips)の時
if(_Point==0.01 || _Point==0.0001){
	pipsPoint=_Point/10;//0.01の÷10pointだから0.001になる。
}
//このpipsPointに整数をかけてやればレート上での0.1pipsになる
pipsPoint*3;//=0.003=0.3pips
pipsPoint*3;//=0.00003=0.3pips

関数化

1pipsで揃える

double GetRatePipsUnit(){
	double pipsPoint=_Point;
	if(_Point==0.001 || _Point==0.00001){
		pipsPoint=_Point*10;//0.001(=1point)の×10pointだから0.01になる。
	}
	Print(Symbol(),pipsPoint);
	return(pipsPoint);
}

//double ratepips = GetRatePipsUnit();
//ratepips*3=0.03又は0.0003となり3pips換算となる

関連記事一覧:関数Symbol(),関数OrderSend()

シェアする

  • このエントリーをはてなブックマークに追加

フォローする