Disable or programmatically flush in-memory cache?

No, AmiBroker does not prevent updated data from being loaded.

You just did not tell AmiBroker that you have new data inside your plugin.

To tell AmiBroker that you have new data you need to send a message to AmiBroker (WM_USER_STREAMING_UPDATE) as shown in QuoteTracker example sources,

// this tells AmIBroker that you have fresh data for given Ticker
::SendMessage( g_hAmiBrokerWnd, WM_USER_STREAMING_UPDATE, (WPRAM) Ticker, (LPARAM) &recentInfoStructureForGivenTicker );

If you just make AmIBroker aware that you have new data, it will call GetQuotesEx once again and you will get opportunity to fill the array with your updated quotes.

1 Like