StreamingProvider development various topics
Author: skaarr
Creation Date: 3/2/2013 4:29 AM
profile picture

skaarr

#1
Can you please explain one thing. This page have next description:

QUOTE:
Return a list of native supported streaming bar intervals:

public virtual List<int> StreamingBarIntervals


What is default scale for this intervals list? As I seen before in static provider, intervals used with Second and Minute scale. I not found any BarScale property in StreamingDataProvider.
profile picture

skaarr

#2
And seems NamedSeries data is not supported for now in StreamingDataProvider? Will you add this support in future?
profile picture

Eugene

#3
There is no default list of supported intervals as Streaming providers do not have the concept of bar scale at all. The purpose of any streaming provider is delivering streaming tick updates (or partial bars) once a new tick is received for a symbol.

It's important to understand that Streaming providers do not have an idea about the bar scale of the symbol. Like I showed before in a previous conversation, it's possible to determine it with the Reflection trick.

QUOTE:
And seems NamedSeries data is not supported for now in StreamingDataProvider?

That's right, NamedSeries are not supported in principle in streaming providers. There are no plans to add support for that.

QUOTE:
public virtual List<int> StreamingBarIntervals

Note: StreamingBarIntervals exclusively applies to the specific use case: providing streaming updates to the Strategy Monitor instead of the more traditional OHLCV snapshot quotes.
profile picture

skaarr

#4
So streaming provider only notify wealth-lab about new data received, and after that wealth-lab execute strategy using data from static provider? Can you explain this item or provide link to wiki with details how this two providers works together?
profile picture

Eugene

#5
A static provider in this case is used as the historical backfill source. Enter Streaming provider: Quote windows and Paper trading aside, active Streaming provider delivers tick-based data updates that Wealth-Lab uses to build new OHLC bars from. For more details, refer to "Specifying a source of Historical Data" in the API document.
profile picture

skaarr

#6
I see. So NamedSeries in realtime is impossible for now.
profile picture

skaarr

#7
I think some issue exists with next section in API:
QUOTE:
Publishing an Extension that supports Market Manager
If you'll be publishing this extension on our site, you will have to distribute the Market Manager DLL along with your extension's files. In this case, one more step is required: specify "WealthLab.DataProviders.MarketManager.dll" in the ExtensionInfo attribute as per this instruction. Example.

When I specify WealthLab.DataProviders.MarketManager.dll in extension info, as I see this string added to
QUOTE:
DeleteFiles - String array containing file names to be deleted when the Extension is uninstalled.
.
So for example I uninstall Google Extension, it also removes MarketManager, and all other extensions which required MarketManager can't use it anymore.
profile picture

Eugene

#8
QUOTE:
So for example I uninstall Google Extension, it also removes MarketManager, and all other extensions which required MarketManager can't use it anymore.

This is well known, and is reflected on our FAQ or Errors pages somewhere. My suggestion would be: just don't mention the Market Manager on DeleteFiles.
profile picture

skaarr

#9
CODE:
Please log in to see this code.

Can you please explain how it works, API is not very clear:
- should it be 1 min bar scale or possible using any bar scale? May be DataSource default barScale?
- in Google Streaming update interval is set to 10 seconds, how it will works if I call 6 times per minute this method with last 1(5 etc.) min bar data?

- should I use MarketManager.IsFilteredQuote before call UpdateMiniBar?
CODE:
Please log in to see this code.


- does still need method for PaperTrading
CODE:
Please log in to see this code.

it is not override, so how WealthLab will know that if my adapter have this method?
profile picture

Eugene

#10
QUOTE:
- should it be 1 min bar scale or possible use any bar scale?

At the risk of repeating myself,

QUOTE:
There is no default list of supported intervals as Streaming providers do not have the concept of bar scale at all. The purpose of any streaming provider is delivering streaming tick updates (or partial bars) once a new tick is received for a symbol.


The choice is entirely up to you. Since that Google's data feed provides rather snapshot quotes, 10 seconds were chosen as the polling interval. And if your streaming data provider is event-based (unlike Google), there should be no polling interval at all in my understanding.

QUOTE:
- in Google Streaming update interval 10 seconds, how it works if I 6 times per minute call this method with last 1(5 etc.) min bar data?

It's recognized as a new tick with price remaining unchanged. The partial bar's volume might increase.

QUOTE:
- should I use MarketManager.IsFilteredQuote before call UpdateMiniBar?
- does still need method for PaperTrading

Up to you.
profile picture

skaarr

#11
QUOTE:
The partial bar's volume might increase.

So each call UpdateMiniBar or UpdateQuote volume will increased, correct?
profile picture

Eugene

#12
If you choose to increase it, it would.
This website uses cookies to improve your experience. We'll assume you're ok with that, but you can opt-out if you wish (Read more).