StringToInteger

整数表現を含む文字列を整数型データに変換します

StringToInteger

関数書式

long  StringToInteger(
   string  value      // 文字列
   );

  • 引数
引数名初期値I/O詳細
value-IN数値表現を含む文字列
  • 戻り値

変換されたlong型データ

  • その他

なし

  • サンプルソース
#property strict

string ArrMarketHour[3] ;

extern string MT4_HOUR_JAPAN = "23,0,1,2,3,4,5,6" ;            // 日本時間(MT4)カンマで区切ってください
extern string MT4_HOUR_LONDON = "7,8,9,10,11" ;                // ロンドン時間(MT4)カンマで区切ってください
extern string MT4_HOUR_NEWYORK = "12,13,14,15,16,17,18,19,20" ;// ニューヨーク時間(MT4)カンマで区切ってください

int OnInit(){
    // パラメータから配列に各タイムゾーンの時間帯を設定する
    ArrMarketHour[0] = MT4_HOUR_JAPAN;
    ArrMarketHour[1] = MT4_HOUR_LONDON;
    ArrMarketHour[2] = MT4_HOUR_NEWYORK;

    // 10本前の足がどのマーケットか確認
    bool isJapan = isMarket(10, 0):
    if (isJapan) Print("日本市場");
    bool isLondon = isMarket(10, 1):
    if (isLondon) Print("ロンドン市場");
    bool isNewYork = isMarket(10, 2):
    if (isNewYork) Print("ニューヨーク市場");
}
/* 
現在足が対象のマーケットか確認する 
戻り値 true:対象のマーケット false:対象のマーケットではない
aMarket 0:日本時間 1:ロンドン時間 2:ニューヨーク時間
*/
bool isMarket(int shift, int aMarket){

   bool isExist = false;
   int MT4_HOUR = TimeHour(iTime(NULL, PERIOD_M1, shift));
   
   string arrZone[];
   int cnt;
   cnt = StringSplit(ArrMarketHour[aMarket] , ',' , arrZone);
   for (int i = 0; i < cnt; i++ ) {
       if ( MT4_HOUR ==  StringToInteger(arrZone[i]) ) {
           isExist = true;
           break;
       }
   }
   
   
   return(isExist);

}

Twitterでフォローしよう

おすすめの記事