以下代码将计算事件发生时某些柱的高低范围百分比,并计算高低范围的平均值。
event_up = get_event_up();
event_down = get_event_low();
num_events_in_range = get_num_events_in_range();
sum_pct_updown_dist = 0;
for (i=1;i<num_events_in_range; i++) //for cannot accept array type
{
event_up_high_i = ValueWhen(event_up, High, i);
event_down_low_i = ValueWhen(event_down, Low, i);
pct_updown_dist_i = (event_up_high_i-event_down_low_i)/event_up_high_i*100;
sum_pct_updown_dist = sum_pct_updown_dist + pct_updown_dist_i;
}
avg_pct_updown_dist = sum_pct_updown_dist/num_events_in_range;
该代码在 Amibroker 中不起作用,因为该行(i=1;i<num_events_in_range; i++)
违反了 Amibroker 语法。For 循环不接受数组类型。num_events_in_range
是一个数组。
如何修改此代码以解决此问题?