Overview
Photon is the Marketcetera Automated Trading Platform UI client. Photon is what's know as a fat client, meaning it is a standalone native executable as opposed to a thin client, which is typically made available via a web browser. To use Photon, you must install the Photon component for your platform and architecture. See the installation guide for more information on installing Photon.
Launching Photon
Photon uses the Eclipse Rich Client Platform. If you're familiar with the Eclipse IDE, Photon will look very familiar to you. On Windows, an entry for Photon will have been added to your Start menu or Desktop, as you requested during installation. On Linux, to start Photon:
$ cd marketcetera-2.2.1 $ . ./setEnv.sh $ cd photon $ ./photon
On OSX, there is a Photon.app which you can add to your toolbar or Applications folder.
Logging In
Photon can run by itself, however, most of its utility comes from connecting to other components in the Marketcetera Automated Trading Platform stack, like the Order Routing System and one or more Strategy Agents. Upon start, Photon prompts you to log in to an Order Routing System.
The default credentials for the Order Routing System are admin/admin.
Once you've entered the credentials to connect to the Order Routing System, you can tell if Photon has successfully connected by the status icons at the bottom. The icons will change from
to
(the left light is for the connection to the Order Routing System, the right light is for the connection to a market data adapter, more on that later)
After connecting, some views that require a connection to the Order Routing System are populated, like the Open Orders View and the Positions View. More on these and other views later.
By default, Photon is configured to connect to an Order Routing System running on the same host. However, if you've installed your Order Routing System on another host, you can configure Photon to connect to that host instead. Select Cancel from the login dialog and then Edit->Preferences. Select Connections in the left pane.
You can enter a new IP address (in place of 127.0.0.1) for the IP address of your Order Routing System. Select OK and then File->Reconnect Server to resume the login process. There is also a menubar icon for Reconnect Server, for your convenience. If you are already connected to the server when you select Reconnect Server, your current connection will be closed and a new connection established. This is harmless, though there may be a small delay depending on the amount of trading activity that's occurred today as Photon downloads today's activity from the Order Routing System.
Views
A View in Photon is one of the dockable and resizeable tabs with a title and a menubar. Views may be maximized, minimized, closed, and moved. In addition to some common Eclipse Views, Photon provides the following custom Views:
Console View
The Console View is a standard Eclipse View with some Photon-specific customizations.
There are three sub-views: Main, Sink Console, and Notifications. The Main Console provides basic information from Photon. The default message level is INFO. This can be changed at Edit->Preferences->Photon.
The Sink Console displays messages from connected Strategy Agents. There aren't any Strategy Agent connections yet, more on that later.
The Notifications Console displays messages from Photon that correspond to pop-up messages, like server disconnect and reconnect messages, for example.
Market Data View
Photon provides market data for display and also for consumption by running strategies. More on strategies later, for now, let's focus on the display of market data. The Marketcetera Automated Trading Platform divides market data into content types:
- Top of Book - best bid and offer
- Latest Tick - most recent trade
- Marketstat - statistics, including OHLC (open price, high price, low price, and close price)
- NASDAQ Level 2 (NQDS) - top-of-book for NASDAQ exchange participants
- NASDAQ TotalView (ITCH) - full order book depth for NASDAQ market participants
- NYSE OpenBook - limit-order book for all NYSE-traded securities
- Aggregated Depth - generic depth data with order sizes aggregated at each price level
- Unaggregated Depth - generate depth data no price level aggregation
In Photon, top-of-book, latest tick, and marketstat are displayed in the Market Data View:
To display market data in the Market Data View, enter a symbol in the Market Data View menubar and press the green plus button or press enter. The symbol you enter will be submitted to all the active market data adapters. Each adapter will interpret the symbol according to its nature and return market data accordingly. If more than one market data adapter is active and returning data for the same symbol, the market data displayed will come from the most recently supplied market data event. Note that, in the above image, there are two equities and one future instrument displayed. Market data can be displayed for multiple instruments at the same time.
It is important to note that Marketcetera, Inc. does not itself supply market data. Market data comes to the platform via a market data adapter from an external source, like Thompson Reuters or Lime. You will need an account with one of these providers in order to view market data. More on market data adapters later.
If the market data event displayed in the Market Data View comes from a market data adapter that supports depth-of-book, you can select a row in the Market Data View and open the Market Depth View.
The available depth views are displayed in the right-click menu for a given row in the Market Data View. Selecting one of the available market data depth types will open the Market Depth View.
You can select buy or sell from the right-click menu from either the Market Data or the Market Depth Views. Doing so will open the appropriate Order Ticket View populated with the bid or ask from the selected row depending on whether you selected buy (ask) or sell (bid).
Order Ticket Views
The Order Ticket Views are used to place new orders and cancel replace order requests. There is a specialized Order Ticket View for each supported asset class.
Field | Type | Required | Default | Equity | Option | Future | Currency | Message Field |
---|---|---|---|---|---|---|---|---|
Broker | Dropdown | Yes | Auto Select | Yes | Yes | Yes | Yes | Special1 |
Side | Dropdown | Yes | Yes | Yes | Yes | Yes | Side (54) | |
Quantity | Decimal | Yes | Yes | Yes | Yes | Yes | OrderQty (38) | |
Symbol | String2 | Yes | Yes | Yes | Yes | Yes | Symbol (55) | |
Order Type | Dropdown | Yes | Yes | Yes | Yes | Yes | OrdType (40) | |
Price | Decimal | Conditional3 | Yes | Yes | Yes | Yes | Price (44) | |
TIF | Dropdown | Yes | Day | Yes | Yes | Yes | Yes | TimeInForce (59) |
Account | String | No | Yes | Yes | Yes | Yes | Account (1) | |
Iceberg | Decimal | No | Yes | Yes | Yes | Yes | MaxFloor (111) | |
Algo | Dropdown | No | Yes | Yes | Yes | Yes | Varies4 | |
Custom Fields | Table | No | Yes | Yes | Yes | Yes | Varies5 | |
Expiration Year | Number: YYYY | Future | No | No | Yes | No | MaturityMonthYear (200) | |
Expiration Month | Dropdown | Future | No | No | Yes | No | MaturityMonthYear (200) | |
Expiry | Number: YYYYMMDD | Option | No | Yes | No | No | MaturityMonthYear (200), MaturityDay (205) | |
Strike | Decimal | Option | No | Yes | No | No | StrikePrice (202) | |
Type | Dropdown | Option | No | Yes | No | No | PutOrCall (201) | |
Open/Close | Dropdown | No | No | Yes | No | No | OpenClose (77) | |
Capacity | Dropdown | No | No | Yes | No | No | OrderCapacity (528) | |
Near Tenor | Number: YYYYMMDD | No | No | No | No | Yes | FutSettDate (64) | |
Far Tenor | Number: YYYYMMDD | No | No | No | No | Yes | SettDate2 (193) | |
Base Currency | Radio Button | Yes | CCY1 | No | No | No | Yes | Special6 |
The list of available brokers is provided by the Order Routing System. An order may be targeted to a specific broker or the default or "auto-selected" broker may be selected.
- The symbol entered is provided to the broker as-is. There is no official symbology for instruments that is respected by all brokers, exchanges, and market data providers. Some providers accept numeric codes, others use OSI for options, and others use proprietary symbology. This is exacerbated by symbology of market data providers. In the next major release, the Marketcetera Automated Trading Platform will provide a symbol standardization system that will make this easier to manage. For now, keep in mind that the symbol in the order ticket has to be something understood by the broker to which you send the order.
- Price is required for non-market orders
- The algo dropdown and table allows you to target an order to a broker-specified algorithm. These algorithms are defined in the Order Routing System configuration. For example, the broker may offer a special VWAP or TWAP algorithm with parameters that specify participation or start and end times. These algorithm specifications are part of the broker configuration provided by Marketcetera, Inc. to subscription customers. For non-subscription customers, you may research and define these algorithms yourself depending on what your broker offers.
- The custom fields table allows you to specify FIX fields and values on outgoing orders that are not covered by existing widgets on the order ticket.
- Specifies whether to use the left currency as the base or the right. For example, for the symbol, USD/EUR, CCY1 is USD and CCY2 is EUR. You may swap these by setting the radio button value to CCY2.
outline
- Logging in
- Local host
- Another host
- Default credentials
- Views
- Opening a View
- General
- Console
- Market Data
- Market Data
- Market Depth
- Photon
- Average Price
- Currency Order Ticket
- FIX Message Details
- FIX Messages
- Fills
- Future Order Ticket
- Open Orders
- Option Order Ticket
- Stock Order Ticket
- Positions
- Positions
- Strategy Category
- Project Explorer
- Strategy Engines
- Trade Suggestions
- Perspectives
- Equity
- Option
- Future
- Currency
- Strategy
- Custom
- Market Data Adapters
- Marketcetera
- Bogus
- Yahoo
- CSV
- Commercial Adapters
- Activ Financial
- Thompson Reuters
- Lime
- NYSE
- ICE
- Nordpool
- Configuration