#property strict
double double_array[][6];
MqlRates mqlrates_array[];
bool first_call;
int OnInit()
{
if( Period() != PeriodSeconds(PERIOD_M1)/60) {
Alert("1分足チャートにして下さい。");
return(INIT_FAILED);
}
first_call = true;
return(INIT_SUCCEEDED);
}
void OnDeinit(const int reason)
{
Comment("");
}
void OnTick()
{
if( first_call == true ) {
ArrayCopyRates(double_array,NULL,0);
ArrayCopyRates(mqlrates_array,NULL,0);
first_call = false;
}
Comment("double_array[][6]配列の値は変化しない (物理的にコピーしている為):\n",
"0 - 時間 : ",(datetime)double_array[0][0],"\n",
"1 - 始値 : ",double_array[0][1],"\n"
"2 - 安値 : ",double_array[0][2],"\n"
"3 - 高値 : ",double_array[0][3],"\n"
"4 - 終値 : ",double_array[0][4],"\n"
"5 - 出来高: ",DoubleToString(double_array[0][5],0),"\n",
"\n",
"mqlrates_array[]配列の値は変化する (仮想コピーし元データを参照している為):\n",
"0 - 時間 : ",mqlrates_array[0].time ,"\n",
"1 - 始値 : ",mqlrates_array[0].open ,"\n"
"2 - 安値 : ",mqlrates_array[0].low ,"\n"
"3 - 高値 : ",mqlrates_array[0].high ,"\n"
"4 - 終値 : ",mqlrates_array[0].close,"\n"
"5 - 出来高: ",mqlrates_array[0].tick_volume);
}