Set time for displaying closing price for intra-day charts

Dear Amibroker experts,

I have 1-hour intra-day chart displaying Nasdaq100 futures. When I zoom in to daily time frame, the closing price for each bar is displayed at time 00:00:00. How can I display the closing price for each bar at time 16:00:00 in the daily time frame?

It does NOT show closing price of 00:00:00 in daily TF. In daily TF it shows last close price of day.
5

4

It only shows start time of interval since you have set it in preferences.
3

Now if you want to show 16:00:00 in daily TF instead of 00:00:00 then you may do like so

if ( Interval() == inDaily )
   dt_16 = DateTimeConvert(2, DateNum(), 160000);
else
   dt_16 = DateTime();
   
_N( Title = StrFormat( "{{NAME}} - {{INTERVAL}} - %s Open %g, Hi %g, Lo %g, Close %g (%.1f%%), Vol %g {{VALUES}}", DateTimeToStr(SelectedValue(dt_16)), O, H, L, C, SelectedValue( ROC( C, 1 ) ), V ) );

Or if in explorer

if ( Interval() == inDaily )
   dt_16 = DateTimeConvert(2, DateNum(), 160000);
else
   dt_16 = DateTime();
   
SetOption( "NoDefaultColumns", True );

Filter = 1;

AddTextColumn( Name(), "Ticker", 1 );
AddColumn( dt_16, "Date/Time", formatDateTime );

Alternatively you may remove time information of intra-day data completely if in daily TF.

if ( Interval() == inDaily )
   dt = DateTimeConvert(2, DateNum());
else
   dt = DateTime();
   
SetOption( "NoDefaultColumns", True );

Filter = 1;

AddTextColumn( Name(), "Ticker", 1 );
AddColumn( dt, "Date/Time", formatDateTime );

Setting to "End time of interval" will remove time information of intra-day data in daily TF too (e.g. in explorer).

5

2 Likes