Real Time Data Now / Nest Trader to Amibroker, Fcharts

shankar4kv

Well-Known Member
let me check when I reach home

Edit: File is opening at my end Can you tell what error it is showing ?
Anyone else having problem opening Help file which i upload 2 post above?
file is opening, only header available no content displayed
 

rmike

Well-Known Member
Wow! This thread sure seems to have caught fire all of a sudden! :)

There were frequent network interrupts. Backfill after that would take longer time especially in case of open charts, since Amibroker would have to delete 60 bars per minute of bars replaced. Backfill is much faster for 1 bar per minute. Comparing with Data Table / Vwap Stats also became easy. Database becomes compact, 375 bars per day.
Now my charts are refreshed every second. Last minute bar changes shape every second as per H,L and C.
Makes sense if in case you are employing backfill with the backfill tool, in which case it would be more efficient with 1 min bars. I personally employ the format file controls in conjunction with g-fin downloader (as discussed previously) for backfill and let amibroker do the heavy lifting. Takes about 3 - 4 secs to erase, backfill & re-save 50 ticker data for the complete day. After trading is done for the day, I overwrite the complete day's data for the 50 tickers as well as backfill 150 more (in ami watchlist) with 1 min bars from g-fin via the same method. Takes about 10 - 11 secs. Once a quarter, the complete data is re-compacted to 3 min bars so as to not compromise historical charting speed
You have not read my new code :)
:) Don't need to!!! If experience is anything to go by, yours, TB's & Yusi's coded offerings are implicitly trusted & appreciated :) The only major enhancement (apart from data interrupt warning incorporation by TB) I can suggest in GUI avatar of the utility would be to incorporate auto ticker pick up from the NOW/ NEST watchlist (BTW I have yet to make acquaintance with the GUI avatar)
If you give me the line as it appears in settings.ini, I shall incorporate it.
The mod was not in settings.ini but was in the main code itself. If I remember correctly, both the worker cpp's were coded to multiply volume by a factor of 100, if the ticker happened to be 'Nifty'

P.S - Do let me know if you have already incorporated something like this your code too. Would then like to test the new utility with NOW, for Index spot pick up
 
Last edited:

rmike

Well-Known Member
May i know reason for second instance has blank charts?
Force closure will prevent saving of 'last default state' like ticker in use, chart formulas (and their paths thereof), studies etc. Hence the blank chart phenomena upon next launch

As already suggested by Josh, create & save a default template so that it can be reinstated any such time and during such occasions, in particular (studies would have to be redrawn though)

In my personal opinion, auto opening & force closure are both 'glitch inducing' paths to tread and such options ought to be avoided for incorporation. The correct procedure would be to start ami, switch to desired database & ticker and then start the data feeding app

Regards,
 
Last edited:

josh1

Well-Known Member
Makes sense if in case you are employing backfill with the backfill tool, in which case it would be more efficient with 1 min bars. I personally employ the format file controls in conjunction with g-fin downloader (as discussed previously) for backfill and let amibroker do the heavy lifting. Takes about 3 - 4 secs to erase, backfill & re-save 50 ticker data for the complete day. After trading is done for the day, I overwrite the complete day's data for the 50 tickers as well as backfill 150 more (in ami watchlist) with 1 min bars from g-fin via the same method. Takes about 10 - 11 secs. Once a quarter, the complete data is re-compacted to 3 min bars so as to not compromise historical charting speed
rmike,
You have not understood my point. I am not talking about backfill at the EOD. That is very easy with $tickmode 1. And we learnt it from you. This is backfill of gaps.
Suppose you are watching live market and suddenly there is network disruption for 5-10 minutes. You can do nothing but sit on hands.

When network returns you have to fill the data for those 5-10 minutes gap into Amibroker to synchronise your charts. RTDMan starts pumping data into Amibroker. You cannot depend on format controls. $tickmode 1 cannot be used because it erases subsequent data also. Hence, say my network went off at 12:05:30 and returned at 12:11:02, I have to backfill from 12:05:00 to 12:11:59. With 1 min. bar period, it has to erase just 2 bars per scrip 12:05 and 12:11. With 1 sec bar period, Amibroker has to erase 88 bars per scrip (12:05:00 to 12:05:30 = 30 bars plus 12:11:02 to 12:11:59 = 88 bars).

Amibroker does not offer any API for bulk erase of bars though you can do it in quote editor. It has to be done in loop while programming. Therefore I shifted to one minute bars. I do not look at 1 sec. time intervals as I cannot trade so quickly. However, I kept it optional for backwards compatibility.
Recently, I changed my ISP and fortunately, I am getting uninterrupted network 24 hours. With the accuracy of RTDMan for 1 min. bar period, I do not feel any need to backfill at EOD.
What about those have frequent network interruptions?
Edit-
Don't need to!!! If experience is anything to go by, yours, TB's & Yusi's coded offerings are implicitly trusted & appreciated
Thank you. It was Yusi's code that inspired me to develop this. He was gracious to give me his utility without any expectation in return. Knowing that I am his competitor.
The only major enhancement (apart from data interrupt warning incorporation by TB) I can suggest in GUI avatar of the utility would be to incorporate auto ticker pick up from the NOW/ NEST watchlist (BTW I have yet to make acquaintance with the GUI avatar)
GUI Avtar is done in Autoit. It consumes RTDMan. Yes. It does pick up tickers as well as indexes from watchlist and saves them to settings.ini. Thereafter, it fires RTDMan.

The mod was not in settings.ini but was in the main code itself. If I remember correctly, both the worker cpp's were coded to multiply volume by a factor of 100, if the ticker happened to be 'Nifty'
I have not done it yet. I do not know what is its exact name in CDS segment. If I get it, it is 2 minutes job to incorporate.
 
Last edited:

josh1

Well-Known Member
Force closure will prevent saving of 'last default state' like ticker in use, chart formulas (and their paths thereof), studies etc. Hence the blank chart phenomena upon next launch

As already suggested by Josh, create & save a default template so that it can be reinstated any such time and during such occasions, in particular (studies would have to be redrawn though)

In my personal opinion, auto opening & force closure are both 'glitch inducing' paths to tread and such options ought to be avoided for incorporation. The correct procedure would be to start ami, switch to desired database & ticker and then start the data feeding app

Regards,
That is right.
However, template are different from layout. You can save templates by right-click on chart. In addition, you can create your own layout. There will be a Default lay out in the layout tab which is on the left side of Amibroker. Right-click on that and save as your name. If blank charts happen, you can double-click on that layout and save it as default. Studies up to last save remain intact.
 

Similar threads