TracNav menu
-
Marketcetera
-
Overview
- Photon
- ORS
- Tradebase
- OrderLoader
- Virtual Appliance
- User Mailing List
- Download
- License
- Reporting Bugs
-
Documentation
- Marketcetera Platform Configuration
- ORS Guide
- Photon Installation and Configuration
- Photon Guide
- Photon Scripting
- Tradebase Guide
- OrderLoader Guide
- Configuration Files Guide
- Configuring Market Data Feeds
- Order Limits
- Excel Integration
- .NET Support
-
Support
- Support
- User FAQ
- Developer FAQ
-
For Developers
- Architecture
- Building Marketcetera Platform
- Building Photon
- Building Tradebase
- Building Appliance
- Building MarketceteraCOM
- FIX Overview
- Developer Mailing List
- Developer Notes
- Contribute!
- Reading List
- Third-party Dependencies
- Exchange Simulator
- JavaDoc
- Blog
Table of Contents
Release Notes
Version 0.5.0
- Added Windows installer that installs all Marketcetera components on a single box
- Added Authentication
- Tradebase now installs and runs on Windows
- Restructured our code repository and simplified the process of building the Marketcetera from source (details to follow)
Known Issues
- In Photon, when you enter an option symbol in the Option Market Data window and Option Order Ticket no market data is displayed.
- In Photon, when you enter an equity symbol in the Stock Order Tick window, no market data is displayed.
- In Photon, if user login fails in ORS Login screen, the following message is displayed in Photon's console:
15:14:46,649 ERROR - Error connecting to ORS (JMS connect failed) Error creating bean with name 'scriptingControllerContainer' defined in class path resource [jms.xml]: Invocation of init method failed; nested exception is org.springframework.jms.UncategorizedJmsException: Uncategorized exception occured during JMS processing; nested exception is javax.jms.JMSException: User name or password is invalid.
- In Tradebase, Server Diagnostics always reports this error:
/etc/hosts does not contain valid IP for 'marketcetera'
and also the following warning:
WARNING: /etc/hosts does not appear to have a valid IP address for host 'marketcetera'. Please check and modify if necessary.Both of those do not indicate a real problem with the installation or the server and can be ignored.
- View current open tickets here
Bugs Fixed (12):
- #510: Improve logging in QuickfixApp in case we get an exception in !fromAdmin
- #454: Strategy object does not have any lifecycle callbacks
- #481: Side "SS" should not be available for Option Orders
- #501: OMS doesn't output errors in case of bad incoming JMS->FIX message conversion
- #437: "RejectReason" Column in FIX Message views blank
- #482: Retire 2007 Options
- #494: Photon barfs on receving an ExecutionReport from OMS when OMS is not logged on to a destination
- #397: Need to switch to version of QFJ that uses BigDecimals instead of Doubles for fields
- #488: Execution report coming back from OMS should be "Pending New" and not "NEW" to avoid confusion
- #486: OptionSplitter modifier needs to only apply to New Order Single orders
- #479: Use internationalization for abbreviations of field value constants.
- #438 Cancel / Replace should immediately activate "Price" field on Replace Equity Order ticket
Version 0.4.2
- Added Currency support to Tradebase P&L
- Added usability improvements to Appliance
- Automatic trade recording of OMS trades into Tradebase
- Republish incoming trade orders on a separate JMS topic
Bugs Fixed (43):
- #466: Add documentation for Forex use in Tradebase
- #467: Update docs for new P&L
- #468: Add documentation for Stomp and incoming execution report subscriptions
- #472: Add documentation for message routing in message-modifiers.xml
- #464: Fix NTP clock drift on VMWare appliance
- #476: OMS should send a copy of outgoing rejects to JMS topic
- #477: Positions should be as of "now" not "this morning"
- #475: NPE in JRuby engine in Photon when running scripts
- #474: Make it easier to update senderCompID from Tradebase on Appliance
- #445: Trade lists in Trade Database are sorted by date but not by time
- #364: Provide method for uploading log files from the appliance
- #404: Shorten values of Side column in message views in Photon
- #431: Shorten values of OrdType column in message views in Photon
- #421: Cancel / Replace options should be limited
- #429: Order Ticket should activate "Side" field after sent order
- #427: One-button trade imports for Trade Database
- #433: Cancel Orders is flawed when OMS is logged off
- #439: "Short Sell Exempt" no longer exists
- #463: P&L for Account doesn't display the name of account correctly
- #449: Augment Cancel/Replace request messages with same logic as new order
- #471: Message Route Manager should handle field DeliverToCompID (128)
- #456: Have appliance automatically start up the JMS poller for Tradebase
- #470: Republish incoming OMS command messages on a separate topic
- #469: P&L by account shows errors for marks missing in trades in other accounts
- #406: P&L calculation should not ask for a mark if trade occurred on one of the start/end dates
- #465: OrderLoader doesn't correctly insert header/trailer fields into the message
- #462: Deleting existing trades in Tradebase fails with an exception
- #376: Sanity Check/Diagnostic scripts don't adjust correctly for time zone offset for clock sync checks
- #460: Add check for STOMP and Tradebase JMS poller to sanity check scripts
- #319: NullPointerException from quickfixj when OMS fails to connect to exchange
- #426: Stay in Import Trades section of Trade Database after importing some trades
- #434: AvgPx field in Trade Database's Import Trades function blank for some orders
- #457: Modify sanityCheck.rb and Tradebase status script to checl /etc/hosts file for valid local IP address
- #366: Enable Stomp connections in OMS JMS configuration
- #455: Enable direct trade recording from JMS
- #452: GTC orders to NYSE / ARCA rejecting
- #442: Message modifiers are not applied to outgoing Logon messages
- #448: Price field (40) is not cleared when switching to market order
- #419: Price field should accept lower-case values
- #424: Specifying a TIF of CLO during cxl/replace does not work in Photon
- #416: FIX Messages with Yesterday's Date and 18:00:00 and 18:00:01 "SendingTime"
- #408: Photon doesn't handel cancel/replace for orders with + as route symbol
- #403: TIF field not handled correctly in outgoing orders in Photon
Version 0.4.1
- Integration of Quickfix/J 1.3.0
- Bug fixes for OpenFIX and Merrill Lynch PAX Clearing Certification
- Added message modifiers to duplicate fields and split option symbols in orders
Bugs Fixed (22):
- #401: Add preference setting to Photon to specify ClOrdID prefix
- #395: OpenFIX certification test: 18 - Support Third-Party Addressing fails
- #384: Photon sends incorrect MaturityMonthYear when underlying option chain is not loaded from quote feed
- #381: Photon does not correlate "cancelled" execution reports correctly from some brokers
- #392: OrdStatus not correct after OrderCancelReject
- #394: Order state "Replaced" is an "open" order state
- #368: Execution reports that are rejected by QFJ end up logged in database and show up in Tradebase
- #393: Order quantity contains comma in cancel/replace workflow
- #388: Going from command-line to option order ticket loses the Open/Close field
- #385: Photon needs to send OrderID in the OrderCancelReplaceRequest message
- #370: Add a general-purpose field-copy order modifier
- #363: Remove FIX4x-Marketcetera.xml files from core
- #362: OMS should send all "valid" fields from order route mgr/order modifiers back in immediate execution report
- #387: OrderCancelRequest was not preserving all fields from initial order
- #383: Phtoon doesn't send OpenClose field for options under FIX.4.2
- #377: Photon should specify SecurityType (167) when sending orders
- #361: OMS should have separateSuffix config turned off by default
- #382: OrderRouteManager does not route CancelReplace orders correctly
- #380: Photon does not correlate "cancelle" execution reports correctly from some brokers
- #367: Photon sends incorrect TransactTime in orders sent from stock/option order ticket
- #365: OMS should forward Logon/Logout messages to JMS topic subscribers
- #360: OMS should send immediate execution reports after doing route modification not before
Version 0.4.0
Major Features:
- Equity options support in Photon
- Improved algorithmic scripting support
- Marks import in Tradebase
- SSL support in OMS
- FIX message detail view in Photon
- Improved exchange and market data simulators
Bugs Fixed (81):
- #359: Switching from "Bogus" to another Marketcetera feed with existing outstanding option subscriptions results in IllegalArgumentException
- #304: Port to Eclipse 3.3
- #357: Quotefeed doesn't send out a quote when it receives a cancel
- #315: Some option order ticket combos turn red (fail validation) when clicking on the drop down for the first time
- #345: Improve sanity checking script in appliance
- #283: Audit Glazed Lists synchronization code in Photon
- #58: Title of first entry in Ruby menu is incorrect
- #354: Specifying pre-existing custom field in Photon order ticket does not provide enough feedback when order is rejected
- #349: Eclipse 3.2 -> 3.3 upgrade functionality broken
- #340: Photon doesn't update quote when last position has ben closed
- #240: host-ip script may be causing problems for static IP users
- #241: Appliance and NTP don't appear to be playing nicely
- #352: Photon "leaks" listeners
- #284: Upgrade the appliance to Ubuntu Feisty
- #227: (Mac-only) Market Data view doesn't allow for shift-up/down arrow selection of symbols
- #350: Option subscriptions are not unsubscribed properly_ resulting in very heavy quote feed load.
- #344: Custom fields in the wrong place on the option order ticket
- #248: User should be able to enter option contract symbols in the order ticket
- #185: Need to verify FIX mapping for OrderCapacityImage (in options branch)
- #332: Need a way to retrieve the underlying when the user enters the option root or the specific option contract.
- #338: Strike prices sort improperly
- #341: Strike combo is too small in OptionOrderTicket
- #331: Option order ticket's market data only works once
- #278: (Mac-only) Sorting of FIX message view in Photon is abysmally slow
- #318: Need to re-wire up option contract market data in the option market data view and option ticket.
- #323: Option order ticket truncates "Option Symbol"
- #320: Tab order incorrect in option order ticket
- #322: Photon option orders are rejected by exchange simulator due to wrong tag OrderCapacity (528)
- #306: (Mac-only) Wrong size for combo boxes for Option and Order tickets
- #316: Blue text in option market data view show up on resize
- #274: Missing i18n messages from bundle causes errors on startup
- #292: OptionOrderTicket BindingException caused by use of PutOrCall (Integer) instead of CFICode in FIX4.4
- #299: Unable to place option orders: Tag not defined for this message type
- #276: Command parser needs update for option orders
- #231: P&L not calculated correctly when there's no mark on to_date and last txn is on to_date
- #243: Need to be able to upload a CSV of marks into tradebase
- #311: Enabling Photon extension registry prevents application from starting
- #313: Order ticket occasionally doesn't set side field.
- #314: When market data comes back for the option order ticket_ fields get cleared
- #307: Finish OptionOrderTicketViewTest test cases
- #305: Send button doesn't get enabled for OptionOrder Ticket even if all values are valid
- #184: Extra fields are discarded on trade import
- #297: OptionOrderTicketViewTest fails in setup() due to system color being "Disposed"
- #277: Photon should stop executing script after it's been unregistered even if it has callbacks
- #301: Provide a way to generate the SQL without having to actually run rake migration against a live database
- #300: Right-click no longer works in Photon FIX message views
- #298: Modifying photon_customization.ini file in installed Photon doesn't change FIX version
- #296: Need to audit use of validators in databinding code
- #282: Make options orders work with FIX 4.2 - PutOrCall / CFICode needs to be abstracted.
- #217: (Mac-only) Empty custom fields section doesn't get auto-refreshed after addding fields
- #271: OrderQty not showing correctly for multiple buys of same equity in Average Price view
- #289: Data bindings omit option symbol in OptionTicket - see failing OptionOrderTicketViewTest
- #291: Options quote display should display better error in case quote comes back with 560=2 error
- #269: The sort arrow on market data views does not show after restarting the application.
- #252: Context menu Cancel/Replace order should not be shown for the Fills view
- #256: FIX messages view Replace order context menu item should not be enabled
- #275: Edit->Select All functionality in FIX message views
- #272: Need a "Panic Button" to cancel all open orders
- #254: Market data view should remember the column width
- #279: Photon does not remember size of columns after restarting it
- #285: Only the equity perspective shows up in the perspective toolbar.
- #169: Copy nightly builds
- #160: Alert user in the case of Reject or Business Message Reject
- #286: OMS chokes on undexpected message types
- #264: When Photon fails to reconnect to the market data feed the user won't know why
- #258: Failure canceling order without any feedback to the user
- #281: Expose JRuby stack traces to user
- #136: Search menu has been removed from Photon product
- #280: Photon gets delayed processing incoming execReports under heavy load
- #229: Cancel/Replace doesn't copy all values when right clicking on execution report
- #71: Need visual cues for current sorting direction
- #267: Deleting symbols from market data does not unregister market data quote requests
- #244: cVol field appears twice
- #245: pVol field missing
- #186: Assigning controllers for data bindings in postWindowOpen and having a singleton controller on Plugin prevents multiple bound views for StockOrderTicket
- #213: Reconnecting to the data feed stops the old quotes from being updated in the marketdata feed
- #239: Unify the P&L query page same way as Trade query
- #179: "Download. Run. Trade." image sizing problem
- #232: Stock order ticket doesn't recognize lowercase 'day' or other TIF options
- #224: The Custom Fields preferences allows users to enter non-integer keys but CustomFieldsViewPieces.addCustomFields only allows integer keys.
- #215: Unsafe cast of IToggledValidator from EnumStringConverterBuilder
Version 0.3.1
- Added P&L to Tradebase
- New quote feed and data binding infrastructure in Photon
- Better UI for invalid order checking in Photon
- Better JMX integration
Bugs Fixed:
- #176: Need to check Text and EncodedText for reject text
- #230: Copying invalid order to order ticket still allows sending
- #188: Add MOTD to appliance
- #221: Messages sent from StockOrderTicket don't add HandlInst to outgoing orders
- #226: Typo in MarketDataColumns constructor for bid price/size MDEntry fields.
- #228: Tradebase doesn't work with Apache -> Mongrel proxy redirect
- #167: Photon command-line does not support decimal order quantities
- #198: Order ticket quantity field should not allow decimal/fractional values
- #182: Add LD_LIBRARY_PATH to marketcetera login environment on appliance
- #181: Create symlink to irb1.8 on the appliance
- #163: Appliance needs to get a newer verison of Ruby Gems
- #218: Custom Order fields in Prefrences should not allow duplicate keys
- #220: Photon doesn't add Custom Fields when orders are sent through Order Ticket
- #223: Stock order ticket "send" button is not enabled after pressing Ctrl-T on valid order in command-line area
- #222: Unclearable error in StockOrderTicket
- #216: Pressing "space" or "enter" on the send/cancel buttons should result in actions in Stock Order ticket
- #211: LastPx in Market Data view shows up with 1 decimal if the field ends in 0
- #214: Invalid input fieds are not cleared of color background on Mac after errors are corrected
- #204: Dividend info in Option Market Data view is not displaying properly on Mac
- #130: "About Photon" shows up in the middle of the Help menu
- #212: Deletion of symbols in Market Data view is broken
- #210: Market Data duplication check is not case-sensitive in Photon
- #206: P&L reports aren't paginated
- #207: Create a unified "search trades" report that combines symbol_ account and dates
- #117: Connecting to OMS with multiple instances of Photon doesn't work
- #30: Order History sort "configuration" needs to be saved and restored
- #178: Numeric columns in Photon should be right- (or decimal-) aligned
- #177: Audit use of HTTP POST and HTTP GET in forms on Tradebase
- #179: "Download. Run. Trade." image sizing problem
- #180: All positions should list positions including todays trades.
- #189: List trades page in Tradeabase should start with date and be sorted by date_ then symbol
- #190: Audit date creation for handling invalid dates - currenlty not handled
- #205: Reorder fields in "New Trade" to reflect the order of the stock order ticket in Photon
- #203: Reports in Tradebase should be "GET" not "POST" requests to make them bookmarkable
- #168: Implement P&L functionality in Tradebase
- #192: Error message label needs padding and possibly icon
- #191: Phantom blue lines in market data in StockOrderTicket
- #193: Order ticket validation does nothing at app startup
- #173: Get rid of FixDataDictionaryManager.isAdminMessageType42 method or refactor it
- #138: MsgType not displayed as human readable in FIXMessagesView
- #174: Photon plugin build.properties file refer to non-existent jars
- #175: Tradebase throws an exception when listing trades to import if Quickfix message is malformed
- #170: Disable heartbeat logging in OMS in JDBC logger
- #59: Repeated exception upon database error
- #159: Get rid of FIXDataDictionaryManager in "core"
- #128: Utilize yet-unpublished QuickFIX/J JMX functionality
- #171: Nightly copy of photon builds is broken
- #165: Order loader parses custom fields into doubles.
- #166: OMS has floating-point number problems when calculating leavesQty for immediate exec reports
- #133: Bid and Ask column headers don't reverse sort direction of Market Data view contents when clicked
Version 0.3
Major Changes
- Made OMS FIX-version-agnostic
- Introduced Order Limits
- Support for .NET integration
- Pretty alignment of decimals in Tradebase
The following bugs were fixed:
- #117: Connecting to OMS with multiple instances of Photon doesn't work
- #151: "Send Time" field sometimes missing from "open orders" display
- #154: Photon doesn't handle reconnection to bounced OMS correctly
- #141: Account text area not displaying correctly on Linux/GTK
- #150: Heartbeats show up even though "don't show hearbeats" setting was remembered
- #155: Add un-editable field with FIX version to Photon preferences page
- #143: Photon should have better feedback when OMS has login problems
- #124: Market Data view updates displayed in a "rolling" fashion
- #145: "Tighten up" the tables in Tradebase
- #83: Need to handle validation creation of a new quickfix message in JMSFixMessageConverter
- #146: Right justify numbers in tradebase
- #142: Create a Parallels virtual appliance for MacOS users
- #144: Add a "trades on X" report to Tradebase
- #148: OMS does not handle incoming BytesMessage correctly
- #152: Appliance OMS can't log on to exchange simulator b/c of time synchronization problems
- #156: Implement Order Limits in the OMS
- #131: Add multiple FIX version support to the OMS
- #110: MarketData: entering muliple symbols separated by space should parse them out to multiple quotes
- #149: FIX Data dictionaries are not initialized during OMS startup
- #157: Photon command-line accepts invalid values for time-in-force (TIF) field in orders
- #31: Order History column arrangement "configuration" needs to be saved and restored
- #147: Existing custom fields' checked state gets reset when custom fields are modified in preferences
- #153: Photon does not show immediate execution reports when OMS not connected to Simulator
- #122: Enabled/disabled state of Cusom Fields not preserved between Photon runs
Version 0.2.1
- Improvements to Ruby scripting functionality in Photon
- Real decimal support using BigDecimal in the Tradebase application (thanks to a switch to Rails 1.2)
- Rudimentary visibility into the OMS via JMX and jconsole
- The following bugs were fixed:
- #140: Photon incorrectly displays "initial" ExecutionReport for filled orders
- #139: Immediate execution report sent by OMS contains an invalid ExecTransType
- #91: photon.ini not getting populated correctly in MacOS autobuild
- #123: Enabled/disabled state of "Show heartbeats" not preserved between Photon runs
- #137: OMS needs to print the FIX connection destination info at startup
- #96: Write sanity checking script for appliance/server
- #116: OMS->Exchange connection error log messages are being swallowed
- #39: Menu issues on a Mac
- #135: Date Range subset jumps visually on IE7 in Import Trades view (messages/logs/list)
- #29: Need to be able to rearrange Order History columns by dragging
- #27: Keyboard shotcuts can stop working in the Command entry area
- #129: Multiple delete in the MarketData view fails the first time.
- #90: Create a set of integration tests that starts the OMS to verify spring config is correct
- #114: Only scripts in ActiveScripts should be available for register
- #109: MarketData: entering duplicate symbols adds rows to marketData view
- #103: Scripts with the same name in different projects conflict
- #102: Get rid of use of ObjectMessage internally
- #63: Mac version of Photon has the preferences menu under File instead of the usual place
- #69: Photon preferences dialog lost hot-keys and Install/Update sections
- #98: It's difficult to determine the status of the OMS
- #84: AvgPx may be too wide for it's column and push the page over the edge
- #82: Splashscreen no longer displayed on application startup
- #70: The Apple-, shortcut to bring up the Preferences menu doesn't work
- #97: Log levels on OMS are incorrect
- #113: Script that fails to register still shows up in "script registry" as if it registers
- #120: FIX connection dies when OMS has problems sending OMS messages downstream to clients
- #126: View Dividend page doesn't show the currency the dividend is in
- #125: Creating a dividend with unknown currency code doesn't give error feedback
- #80: If the app starts up in the ruby perspective, the equity perspective is hard to get to
- #41: "ZZ-INTERNAL" messages appear in the Open Orders editor
- #37: MsgSeqNum's can get out of sync between Photon and OMS
- #85: Should have "positions by account" search
- #101: Reconnecting JMS connection creates multiple JMS connections
- #106: Show of individual "import trade" message is broken
- #92: Switching between Ruby and Equity perspectives messes up the bottom command toolbar
- #112: Modifying a script in Photon that's already registered doesn't reload it in Equity perspective
- #107: Moving the connection status bar (status image trimwidget) around resets the status to blank circles
- #104: New projects won't get picked up by the scripting engine
- #115: Switching to "Custom Order Fields" preference page brings up an error dialog box with "The currently displayed page contains invalid values" message
- #108: MarketData View: pressing + on empty field (or space) adds a blank row to marketdata with no data in it
- #119: Symbol link not displayed correctly in the "show equity" page
- #111: Scripts don't work on production build
- #100: Quickfixj.appctx.xml is incorrectly configured to use FIX40.xml file for all FIX versions
- #76: Tabbing in MacOSX photon UI tabs into the triangle dropdown symbol in new order ticket
- #16: Transact time is wrong in "open orders" and "messages" order history
- #86: Modify app startup to load spring config files from code instead of daisy-chaining them in XML
- #20: Stock order ticket fields don't show up properly on linux-gtk
- #45: FeedStatusLineContribution periodically throws an exception in Ruby perpective
- #52: Photon (macos) occasionally drops buy orders
- #74: Displaying empty fields shifts the field up - should just display a space instead if we have no data
- #60: Mousing over the green lights in Photon should give a tooltip explaining what they signify
- #25: JMS connectivity indicator is not showing up on gtk platform in UI
- #21: Provide better JMS exception feedback
- #95: Build Server and Buld Appliance Documentation out of sync
- #93: Eclipse classloader means trouble for Photon scripts
- #99: JMS and quote feed indicators are broken
- #88: Upgrade JRuby plugin
- #68: Photon command parser should handle pressing <enter> on empty line
- #94: Upgrade QuickFIX/J plugin
- #48: RDT logs "Invalid Menu Extension (Path is invalid)" messages on MacOS
- #87: OrderLoader doesn't quit the process after running
Version 0.2
The 0.2 version is a major architectural upgrade release:
- Made the switch from using JCyclone to a combination of embedded ActiveMQ and Spring Framework to simplify configuration and SEDA architecture
- This removes the dependency on an outside JMS setup
- Improved scripting and market data support in the Photon client
- Added pretty fonts and colors to the Tradebase application
In addition, we fixed the following bugs:
- #28: Need to be able to sort Order History by clicking on the column header
- #33: Photon build instructions need to mention RCP delta pack
- #37: MsgSeqNum's can get out of sync between Photon and OMS
- #41: "ZZ-INTERNAL" messages appear in the Open Orders editor
- #56: Refactor controllers in webapp to minimize use of native QuickFIX
- #57: Stack trace on application shutdown
- #66: OrdId column in Photon should sort numerically
- #67: Assembly script should create runXXX.xx scripts with each lib on its own line
- #72: AssertionFailedException on application shutdown
- #73: An error dialog when saving a Ruby file with a syntax error
- #75: Photon 0.1.4 download link for Mac OS X is broken
- #78: Script output goes into the host Eclipse console
- #79: Migrate to ActiveMQ 4.0.2
- #81: Need to clear queue on OMS startup with spring framework configuration
- #85: Should have "positions by account" search
- #87: OrderLoader doesn't quit the process after running
