Contents
This sample demonstrates the use of the TIBCO StreamBase® Adapter for CME Market Data. See CME Market Data Platform FIX/FAST Input Adapter for details on the use and structure of this adapter.
This sample use one instance of the CME FAST Input Adapter to connect to the CME Market Data Platform FIX/FAST market feed and provide market data. In order to run this sample, you must have access to one of CME's market data feeds for the adapter to use.
Once the application has started, you can use the adapter to subscribe to one or more instruments to obtain instrument definition, initial snapshot, incremental updates and other FAST messages for those instruments as they are issued by the market feed.
-
In the Project Explorer, double-click to open the sample application,
cmefast.sbapp
. -
Be sure to obtain an up-to-date version of the CME FAST channel definition file (called
config.xml
in the sample) from CME and place it in the sample's top-level directory. Make sure the adapter's FAST Channel Definition File property points to this file. -
Be sure to obtain an up-to-date version of the CME FAST templates definition file (called
templates.xml
in the sample) from CME and place it in the sample's top-level directory. Make sure the adapter's FAST Template File property points to this file. -
Click the
Run button. This opens the SB Test/Debug perspective and starts the application.
-
In the Manual Input view, select the Subscriptions stream. Enter the following values and click
:-
Command:
Subscribe
-
ChannelID:
MyChannel
-
SymbolID:
SomeSymbol
where
MyChannel
is the value specified in theconfig.xml
file's<channel id="MyChannel">
attribute, andMySymbol
is the name of a valid instrument handled by this CME feed. -
-
After you have sent the command, the adapter connects to the configured Instrument Definition stream and obtains the definition for the specified symbol. Once received, the adapter issues a tuple on the InstrumentDefinitions output port that contains the contents of the received FAST message.
Note
This step happens only the first time you subscribe to this symbol in the lifetime of the application. If you later unsubscribe and resubscribe, this tuple is not generated.
-
The adapter next sends a tuple on the Events port to indicate the subscription to the symbol has succeeded.
-
The adapter connects to the configured CME Recovery stream to obtain the current state of the book for this instrument. Once the snapshot is obtained, a tuple is emitted on the Snapshots output port with the information.
-
At this point the adapter starts emitting tuples on the IncrementalRefreshes port as updates become available.
-
You can also periodically observe messages of type News and others being generated on the OtherMessages port as they are received.
-
When done, press F9 or click the
Stop Running Application button.
This section describes how to run the sample in UNIX terminal windows or Windows command prompt windows. On Windows, be sure to use the StreamBase Command Prompt from the Start menu as described in the Test/Debug Guide, not the default command prompt.
-
Open three terminal windows on UNIX, or three StreamBase Command Prompts on Windows. In each window, navigate to your workspace copy of the sample, as described above.
-
Make sure you have obtained a fresh copy of
config.xml
andtemplates.xml
as described in steps 2 and 3 in the previous section. -
In window 1, type:
sbd cmefast.sbapp
-
In window 2, type:
sbc dequeue -v
This window will display tuples dequeued from the adapter's output ports.
-
In window 3, type:
echo MyChannel,Subscribe,MySymbol | sbc enqueue Subscriptions
Take care to replace
MyChannel
andMySymbol
as described in the previous section's step 5. -
Observe in window 2 that tuples are emitted from the
,InstrumentDefinitions
Events
,Snapshots
andIncrementalRefreshes
streams, successively. -
In window 3, type the following command to terminate the server and dequeuer:
sbadmin shutdown
In StreamBase Studio, import this sample with the following steps:
-
From the top menu, select
→ . -
Select
CME Market Data Platform FIX/FAST Input adapter
from the StreamBase Market Data Adapters category. -
Click OK.
StreamBase Studio creates a single project containing the sample files.
When you load the sample into StreamBase Studio, Studio copies the sample project's files to your Studio workspace, which is normally part of your home directory, with full access rights.
Important
Load this sample in StreamBase Studio, and thereafter use the Studio workspace copy of the sample to run and test it, even when running from the command prompt.
Using the workspace copy of the sample avoids permission problems. The default workspace location for this sample is:
studio-workspace
/sample_adapter_embedded_cme-fast
See Default Installation Directories for the location of studio-workspace
on your system.
In the default TIBCO StreamBase installation, this sample's files are initially installed in:
streambase-install-dir
/sample/adapter/embedded/cme-fast
See Default Installation Directories for the default location of studio-workspace
on your system.