見出し画像

MT4/MQLソースサンプル:曜日によって稼働/停止を制御する

処理内容

曜日ごとに処理の内容を変えたい場合に本ソースを適用ください。
例えば… 日曜日と土曜日は稼働停止させたい。とか
月曜日のみ稼働させたいとかです。

ソースコード

変数・関数側
呼び出し側の前に記述されている必要があります。

//稼働対象曜日 true:可能、false-:不可
input bool Entry_Mon=true;
input bool Entry_Tue=true;
input bool Entry_Wed=true;
input bool Entry_Thu=true;
input bool Entry_Fri=true;
input bool Entry_Sat=false;
input bool Entry_Sun=false;

//稼働対象曜日判定
int EntryWeekdayRunCheck()
 {
  int ret=-1;
  int weekday = DayOfWeek();

  if(Entry_Mon==true && weekday == 1)
     ret = 1;
  if(Entry_Tue==true && weekday == 2)
     ret = 1;
  if(Entry_Wed==true && weekday == 3)
     ret = 1;
  if(Entry_Thu==true && weekday == 4)
     ret = 1;
  if(Entry_Fri==true && weekday == 5)
     ret = 1;
  if(Entry_Sat==true && weekday == 6)
     ret = 1;
  if(Entry_Sun==true && weekday == 0)
     ret = 1;
  return(ret);//-1は禁止、1は許可
 }

呼び出し側
呼び出したいタイミングに合わせてOnTick()、OnInit()とかOnTimer()の中で記述してみてください。
↓こちらは設定した曜日に対して稼働停止するコードサンプルです。

if(-1 == EntryWeekdayRunCheck())
{
void  ExpertRemove();
}

以上です。

この記事が気に入ったらサポートをしてみませんか?