NOW to AmiBroker (YA)

Status
Not open for further replies.
#45
For others who may see this as an issue, a little explanation is in order.

But, before that, a little background: Now2Ami aggregates data into M1 intervals. While each quote is shown in AmiBroker graphs as it is captured, AmiBroker eventually stores only 1 minute OHLC data. This was a design decision, as there may be upto 6.5 hrs x 60 min x 30 = 11700 quotes per symbol if they are captured every 2 seconds. AmiBroker can get sluggish with few days of data. Comparatively, with M1 data, Ami has about 390 quotes per symbol per day.

When you see the Quotes Editor in Ami, you will see data for 09:16:00, 09:17:00, ... etc. This date time stamp is the end of the M1 interval. How this time is reflected in an AmiBroker chart depends on the periodicity (M1, M5, etc), the setting in Preferences -> Intraday (time of LAST tick inside bar, END of time interval). In case you want the first M5 bar to show as 09:20 (and not as 09:19), you may even have to change Trading hours to start at 09:16.

Bottomline: do not confuse data with its representation.

There is also a matter of the M1 bar after 15:30. There should be none for F&O scrips (that is not entirely true as I as have seen volumes changing after 15:30). However, those who use the backfill feature based on the Hourly Statistics data should note that there will be one, it is a peculiarity of that data source. Read the para marked as "Important Note" under the Backfill section in the Help file.
I think if we change the start time to 9:16 we might lose some data and the bars would look different (I have had this issue with a data vendor). It would be better to start at 9:15, but understand that when the bar says 9:19 (when we choose last tick inside bar in preferences) the actual end time of the bar is 9:19:59 which it shows as 9:19. Please correct me if wrong.

to avoid M1 bar after 15:30, please change end time of database to 15:29 (this is the same issue as for first bar). Also choose Show day session only option

re: storing data as 2 secs vs. 1 min, is it possible for you to let the user choose this. Personally I would prefer the 2 second option. I can always limit the size of data in my db if I want ami to run faster, but it would be great to have the option to be able to store 2 second data. .

Thanks again for this very nice initiative.
 

yusi

Well-Known Member
#46
I think if we change the start time to 9:16 we might lose some data and the bars would look different (I have had this issue with a data vendor). It would be better to start at 9:15, but understand that when the bar says 9:19 (when we choose last tick inside bar in preferences) the actual end time of the bar is 9:19:59 which it shows as 9:19. Please correct me if wrong.

to avoid M1 bar after 15:30, please change end time of database to 15:29 (this is the same issue as for first bar). Also choose Show day session only option

re: storing data as 2 secs vs. 1 min, is it possible for you to let the user choose this. Personally I would prefer the 2 second option. I can always limit the size of data in my db if I want ami to run faster, but it would be great to have the option to be able to store 2 second data. .

Thanks again for this very nice initiative.
The key question that one has to answer is: if there is a snapshot quote with a time stamp of 09:20, should the quote be included in the first M5 bar or the second? If handled in the first bar, it would be the close price of the bar; if the second, it would be the open price of the next bar. A similar consideration would apply to the volume value of that quote. I am fairly certain that different graphing software would handle this differently by default, and their settings would have to be adjusted to meet your decision. Certain data providers, investbulls comes to mind, timestamp their M1 data as 09:15:59, 09:16:59, etc., and as you mentioned it caters well to Ami's default handling of time-stamps.

In my view, with a market start time of 09:15, the first M1 quote covers the range > 09:15 to <= 9:16, and the first M5 quote covers > 09:15 to <= 09:20. It would be more definitive, if you could hand-craft some data, and check how Ami handles the display under various configuration settings and display intervals.

Your suggestion to optionally feed Ami with pure snapshot data, without aggregating as M1, is excellent. However, you should reconfirm that it would not cause problems when merged with backfill data that is only available as M1 from the NOW/Nest source. Also, unless you are using constant volume bars or 89 tick charts (the term tick being very misued), I would love to hear the reason behind your need/preference.
 
#47
The key question that one has to answer is: if there is a snapshot quote with a time stamp of 09:20, should the quote be included in the first M5 bar or the second? If handled in the first bar, it would be the close price of the bar; if the second, it would be the open price of the next bar. A similar consideration would apply to the volume value of that quote. I am fairly certain that different graphing software would handle this differently by default, and their settings would have to be adjusted to meet your decision. Certain data providers, investbulls comes to mind, timestamp their M1 data as 09:15:59, 09:16:59, etc., and as you mentioned it caters well to Ami's default handling of time-stamps.

In my view, with a market start time of 09:15, the first M1 quote covers the range > 09:15 to <= 9:16, and the first M5 quote covers > 09:15 to <= 09:20. It would be more definitive, if you could hand-craft some data, and check how Ami handles the display under various configuration settings and display intervals.

Your suggestion to optionally feed Ami with pure snapshot data, without aggregating as M1, is excellent. However, you should reconfirm that it would not cause problems when merged with backfill data that is only available as M1 from the NOW/Nest source. Also, unless you are using constant volume bars or 89 tick charts (the term tick being very misued), I would love to hear the reason behind your need/preference.
You are correct, tick data is beneficial for me because it is preferable for constant volume bars and I am trying those. I am not sure what would happen if it is merged with backfill data. Currently I am using GFDL data and it comes in as tick but gets saved as 1 minute..what I need is data getting saved in tick format locally. Aggregated backfill could pose a problem, but I wouldnt mind living without backfill intraday if the option to get tick data is made available. I can always manually fill in any missing data (due to net interruption or for any other reason) eod.

With GFDL I was trading for a little while with database starting at 9:16 but it skewed my candles, i.e., I was missing the first minute of data. What we are looking at is to capture data from the start at 9:15, if we start the db at 9:16 it only captures from 9:16, that has been my experience with GFDL.
 
Status
Not open for further replies.

Similar threads