###やりたいこと
0. 指定した時間になったら
0. 乱数を生成してPrint
とりあえずざっくりこれだけです。
###やってみたこと
MQL
1int select_hour = 10; // 判定に使いたい時間 2 3int OnInit() 4 { 5 MathSrand(GetTickCount()); 6 return(INIT_SUCCEEDED); 7 } 8 9void OnTick() 10 { 11 datetime tm = TimeCurrent(); 12 MqlDateTime stm; 13 TimeToStruct(tm, stm); 14 15 if(select_hour == StringToInteger(stm.hour)) 16 { 17 int rand_index = MathRand() % 2 + 1; 18 Print(rand_index); 19 } 20 }
というコードを書いてみました。
過去参照のデバックってのをすると、10時代に1又は2がひたすらprintされているような状況。
###次にやりたいこと
指定した時間に一回しかしなくていいんです。
そこで、とりあえず細かく10:00:00みたいな感じにしたらどうかな?って思って
MQL
1int select_hour = 10; 2int select_min = 00; 3int select_sec = 00; 4 5if( 6 select_hour == stm.hour && 7 select_min == stm.min && 8 select.sec == stm.sec 9) { 10 int rand_index = MathRand() % 2 + 1; 11 Print(rand_index); 12}
という感じで遠回りかもですが、書いてみましたが、、、、
一日の10:00:00っていうのが代替2~3個くらいある感じで、、、、
これだと表示が3回ずつとかなんですよね。
そうじゃなくて、
2020.08.04 10:00:00 1
2020.08.05 10:00:00 2
みたいな感じで10時の足の始値のタイミングだけやりたいのですが、ここからあと一つ、、、その判定の出し方はどのようになりますか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。