Hotspot FX Trading System Adapter Sample

This sample demonstrates the use of the StreamBase Hotspot FX Trading System Adapter. See Hotspot FX Trading System Adapter for details on the use and structure of this three-part adapter.

Importing This Sample into StreamBase Studio

In StreamBase Studio, import this sample with the following steps:

  • From the top menu, click FileLoad StreamBase Sample.

  • Select this sample from the Embedded Input Adapters list.

  • Click OK.

StreamBase Studio creates a project for this sample.

Sample Location

By default, the sample files are installed in:

On Windows

C:\Program Files\StreamBase Systems\StreamBase.n.m\sample\adapter\embedded\hotspot-fx\

On UNIX

/opt/streambase/sample/adapter/embedded/hotspot-fx/

When you load the sample into StreamBase Studio, Studio copies the sample project's files to your Studio workspace. StreamBase Systems recommends that you use the workspace copy of the sample, especially on UNIX, where you may not have write access to /opt/streambase. In the default installation, the path to this sample in your Studio workspace is:

UNIX:       
  ~/streambase-studio-n.m-workspace/sample_adapter_embedded_hotspot-fx
Windows XP:
  C:\Documents and Settings\username\My Documents\StreamBase Studio n.m Workspace\
      sample_adapter_embedded_hotspot-fx
Windows 7 and Windows Vista:
  C:\Users\username\Documents\StreamBase Studio n.m Workspace\
      sample_adapter_embedded_hotspot-fx

Running This Sample in StreamBase Studio

  1. In the Package Explorer, double-click to open the sample application, HotspotFX.sbapp.

  2. Select the Parameters tab at the bottom of the EventFlow editor view. Change the placeholder values to your site-specific values for the Hotspot FX server, port, username, and password.

  3. Select the Editor tab.

  4. Click the Run button. This opens the Test/Debug perspective and starts the application.

  5. In the Test/Debug Perspective, open the Application Output view. Look for tuples emitted on the event streams conveying the state of the connection to the Hotspot FX server.

  6. If the connection to the Hotspot FX server is active, look for tuples being emitted on the Ticker, BBOs, and MarketBook streams.

  7. In the Manual Input view, select the ControlRequest stream. Enter subscribeToHeartbeat in the action field and click Send Data.

  8. Observe that heartbeat tuples now appear in the Heartbeats stream.

  9. In the Manual Input view, select the MarketRequest stream. Enter submitOrder in the action field and appropriate values in the currpair, buySell, amount, price, orderType, and comments fields and click Send Data.

  10. Observe a tuple from the MarketResponse stream containing the ID of the submitted order.

  11. When done, press F9 or click the Stop Running Application button.

Running This Sample in Terminal Windows

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.

  1. Use StreamBase Studio to set up the HotspotFX.sbapp application with the server, port, username, and password for your Hotspot FX account, as described in step 2 of the previous section.

  2. Open three terminal windows on UNIX, or three StreamBase Command Prompts on Windows. In each window, navigate to the directory where the sample is installed, or to your workspace copy of the sample, as described above.

  3. In window 1, type:

    sbd HotspotFX.sbapp

  4. In window 2, type:

    sbc dequeue -v

    This window will display the tuples dequeued from the adapter's output ports.

  5. Observe in window 2 that tuples are emitted from the Ticker, BBOs, and MarketBook streams.

  6. In window 3, type:

    echo subscribeToHeartbeat,null,null,null,null | sbc enqueue ControlRequest

  7. Observe in window 2 that a tuple is periodically emitted on the Heartbeats stream.

  8. In window 3, type the following command to terminate the server and dequeuer:

    sbadmin shutdown