![]() |
MarketFactory 3.14.0 C# API
|
Public Member Functions | |
| MFClient (string _username, string _password, string _hostname1, int _port1) | |
| MFClient (string _username, string _password, string _hostname1, int _port1, string _hostname2, int _port2) | |
| new APIResult | cancelAll (int feedID, String cxlID) |
| Cancel all the orders on a feed. More... | |
| new APIResult | cancelAll (String cxlID) |
| Cancel all the orders, on all feeds. More... | |
| new APIResult | cancelOrder (String cxlID, String clOrdID) |
| Cancel a previously placed order by client order id ('clOrdID'). Return false if the order cannot be found locally, i.e., if the 'clOrdID' does not correspond to any previously placed order on this client interface. More... | |
| new APIResult | cancelOrder (String cxlID, long orderID) |
| Cancel a previously placed order by internal 'orderID'. Return false if the internal 'orderID' could not be provided. More... | |
| new APIResult | cancelOrder (String cxlID, long orderID, String clOrdID) |
| Cancel a previously placed order by providing both internal 'orderID' and clOrdID. APIResult.INVALID_ORDERID if the internal 'orderID' could not be provided. More... | |
| APIResult | close () |
| Close the connection. More... | |
| APIResult | connect () |
| Connect to the first available server with user credentials. More... | |
| APIFeed | getFeedByID (int id) |
| After a successful connection is established, you may access the server's list of _feeds, markets. More... | |
| APIFeed | getFeedByName (string name) |
| After a successful connection is established, you may access the server's list of _feeds, markets. More... | |
| APIFeed [] | getFeeds () |
| After a successful connection is established, you may access the server's list of _feeds, markets. More... | |
| string | getHostname () |
| Returns the primary/secondary server hostname (whichever one is being used). More... | |
| Queue< PingTime > | getLastPingTimes () |
| APIMarket | getMarketByID (APIFeed feed, int marketID) |
| After a successful connection is established, you may access the server's list of _feeds, markets. More... | |
| APIMarket | getMarketByName (APIFeed feed, string name) |
| After a successful connection is established, you may access the server's list of _feeds, markets. More... | |
| int | getPort () |
| Returns the primary/secondary server port (whichever one is being used). More... | |
| int | getSequenceID (int feedID) |
| Get the last received sequenceID after successful subscription. More... | |
| string | getSignature () |
| Get protocol api signature. More... | |
| bool | isConnected () |
| Return true if the _channel is _connected. More... | |
| bool | isRunning () |
| Returns true if the client is currently dispatching events (i.e., you called run()). More... | |
| bool | isStopRequested () |
| APIResult | join () |
| Block until the client has exited the dispatch loop. More... | |
| void | log (string message) |
| Logs a debug message into the Whisperer server _log file. More... | |
| void | log (string message, LogLevel level) |
| new KeyValuePair< APIResult, long > | modifyOrder (string clOrdID, string clNewID, MFFloat amount, MFFloat price, OrderParameters parameters=null) |
| Submit modification to an existing order. More... | |
| APIResult | processEvents (MFHandler handler) |
| Process all pending events in the reactor, and return as soon as reads/writes have been flushed.This can be used to integrate our API within a GUI toolkit's event processing loop without having to create a secondary thread. More... | |
| new KeyValuePair< APIResult, int > | registerMarketComb (int feedID, int[] marketIds) |
| Register for a given list of markets on a given feed. More... | |
| APIResult | replay (int feedID, int fromSequenceID, int toSequenceID) |
| Request replay of order flow events in the range [fromSequenceID, toSequenceID=-1]. More... | |
| new APIResult | requestSnapshot (int feedID, int marketID) |
| Request a market data snapshot for the feed and market ID. (Note that after connecting you should get a snapshot automatically, so this should be used rarely.) More... | |
| APIResult | run (MFHandler handler) |
| Run a loop that will continuously dispatch incoming messages to a _handler implementation. This method returns some time after a request to stop is made using stop(), or if an error occurs (e.g. the connection is broken). A zero return value indicates a normal exit via a stop request. More... | |
| void | setDebug (bool debug) |
| void | setStickySubscriptions (bool sticky) |
| Enable/Disable sticky subscriptions. More... | |
| void | setStickySubscriptions (bool sticky, bool clearSubscriptionsOnStop) |
| void | setUseHeartbeat (bool use) |
| APIResult | stop () |
| Request to stop the event dispatch loop, does not disconnect the client from the server. More... | |
| new KeyValuePair< APIResult, long > | submitOrder (string clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, OrderType ordType, TimeInForce tif) |
| new KeyValuePair< APIResult, long > | submitOrder (string clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, MFFloat stopPrice, MFFloat maxShowAmt, OrderType ordType, TimeInForce tif) |
| new KeyValuePair< APIResult, long > | submitOrder (string clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, MFFloat stopPrice, MFFloat maxShowAmt, MFFloat minFillAmt, OrderType ordType, TimeInForce tif, List< KeyValuePair< string, string >> parameters) |
| new KeyValuePair< APIResult, long > | submitOrder (string clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, MFFloat stopPrice, MFFloat maxShowAmt, MFFloat minFillAmt, OrderType ordType, TimeInForce tif, OrderParameters parameters=null) |
| Submits the order. Use an OrderParametersBuilder to construct a reusable OrderParameters object. Offers better performance if the you want to reuse the same order parameters for multiple submitOrder calls. More... | |
| new APIResult | subscribeAllMD () |
| new APIResult | subscribeMD (int feedID, int marketID, string clSubID) |
| new APIResult | subscribeMD (int feedID, int marketID) |
| new APIResult | subscribeOF (int feedID, String clSubID) |
| new APIResult | subscribeOF (int feedID) |
| void | test (APITest test) |
| Internal testing function. More... | |
| new APIResult | unregisterMarketComb (int batchDefID) |
Unregister for a given list of markets on a given feed using id.
| |
| APIResult | unsubscribeAll () |
| Unsubscribe all market data and trading subscriptions. More... | |
| new APIResult | unsubscribeMD (int feedID, int marketID, String clSubID) |
| new APIResult | unsubscribeMD (int feedID, int marketID) |
| new APIResult | unsubscribeOF (int feedID, String clSubID) |
| new APIResult | unsubscribeOF (int feedID) |
Static Public Member Functions | |
| static MFClient | open (string user, string pass, string host, int port) |
| A convenience method which creates a new client object, attempts to connect to Whisperer, and cleans up and throws an exception if we could not connect. More... | |
| static MFClient | open (string user, string pass, string _hostname1, int _port1, string _hostname2, int _port2) |
| A convenience method which creates a new client object, attempts to connect to Whisperer, and cleans up and throws an exception if we could not connect. More... | |
Protected Member Functions | |
| APIResult | cancelAll (int feedID, string cxlID) |
| Cancel all the orders on a feed. More... | |
| APIResult | cancelAll (string cxlID) |
| Cancel all the orders, on all feeds. More... | |
| APIResult | cancelOrder (string cxlID, string clOrdID) |
| Cancel a previously placed order by client order id ('clOrdID'). Return false if the order cannot be found locally, i.e., if the 'clOrdID' does not correspond to any previously placed order on this client interface. More... | |
| APIResult | cancelOrder (string cxlID, long orderID) |
| Cancel a previously placed order by internal 'orderID'. Return false if the internal 'orderID' could not be provided. More... | |
| APIResult | cancelOrder (string cxlID, long orderID, string clOrdID) |
| Cancel a previously placed order by providing both internal 'orderID' and clOrdID. APIResult.INVALID_ORDERID if the internal 'orderID' could not be provided. More... | |
| virtual APIResult | connectOne (String host, int port) |
| override void | onBatchComplete (int msg) |
| override void | onConnect () |
| override void | onDateRollover (DateRollover msg) |
| override void | onDisconnect () |
| override void | onDropCopy (DropCopy msg) |
| override void | onEventReport (EventReport msg) |
| override void | onHeartbeat (Heartbeat msg) |
| virtual void | onJsonFromServer (JsonFromServer msg) |
| virtual void | onLockResponse (LockResponse lockResponse) |
| override void | onMarketData (MarketView msg) |
| virtual void | onMassQuoteAck (MassQuoteAck msg) |
| virtual void | onNewOrder (NewOrder msg) |
| override void | onOrderCanceled (OrderCanceled msg) |
| override void | onOrderCancelRejected (OrderCancelRejected msg) |
| override void | onOrderDone (OrderDone msg) |
| override void | onOrderReceived (OrderReceived msg) |
| override void | onOrderRejected (OrderRejected msg) |
| override void | onOrderSubmitted (OrderSubmitted msg) |
| virtual void | onOrderTimeout (OrderTimeout msg) |
| virtual void | onQuoteRequest (QuoteRequest msg) |
| override void | onReplayDone (ReplayDone msg) |
| virtual void | onRiskResponse (RiskResponse riskResponse) |
| override void | onStart () |
| override void | onStop () |
| override void | onSubscriptionEvent (SubscriptionEvent msg) |
| override void | onTradeCapture (TradeCapture msg) |
| virtual void | onTradeCaptureAck (TradeCaptureAck msg) |
| APIResult | run (MFBaseHandler _handler, bool loop) |
| APIResult | send (IMessage msg) |
| APIResult | subscribe (APIType apiType, int feedID, int marketID, String clSubID) |
| APIResult | subscribeMD (int feedID, int marketID, String clSubID) |
| Subscribe to market data updates for a specific feed. onSubscriptionEvent() will be called to notify that the flow of updates is ready. If the subscription is valid, onMarketData() will be called later on. The client subscription ID allows one-to-one message matching. More... | |
| APIResult | unsubscribe (APIType apiType, int feedID, int marketID, String clSubID) |
Protected Attributes | |
| string | _hostname1 |
| string | _hostname2 |
| Logger | _log = Logger.getLogger("com.marketfactory.api") |
| string | _password |
| int | _port1 |
| int | _port2 |
| string | _username |
| MFClient | ( | string | _username, |
| string | _password, | ||
| string | _hostname1, | ||
| int | _port1 | ||
| ) |
| MFClient | ( | string | _username, |
| string | _password, | ||
| string | _hostname1, | ||
| int | _port1, | ||
| string | _hostname2, | ||
| int | _port2 | ||
| ) |
Run a loop that will continuously dispatch incoming messages to a _handler implementation. This method returns some time after a request to stop is made using stop(), or if an error occurs (e.g. the connection is broken). A zero return value indicates a normal exit via a stop request.
If the connection is broken and the client succesfully fails over to a secondary server, this dispatcher does not return; onDisconnect() and onConnect() are invoked to let the handler know that this occurred. If the reconnection attempt is not successful, the dispatcher will return an error code.
Every call to run() must be preceded by a successful connect() – this call is made for you, but only once, when a client is obtained via open().
Note: this should not be invoked by _handler. /summary>
Process all pending events in the reactor, and return as soon as reads/writes have been flushed.This can be used to integrate our API within a GUI toolkit's event processing loop without having to create a secondary thread.
| new APIResult subscribeMD | ( | int | feedID, |
| int | marketID, | ||
| string | clSubID | ||
| ) |
| new APIResult subscribeMD | ( | int | feedID, |
| int | marketID | ||
| ) |
| new APIResult subscribeOF | ( | int | feedID, |
| String | clSubID | ||
| ) |
| new APIResult subscribeOF | ( | int | feedID | ) |
| new APIResult subscribeAllMD | ( | ) |
| new APIResult unsubscribeMD | ( | int | feedID, |
| int | marketID, | ||
| String | clSubID | ||
| ) |
| new APIResult unsubscribeMD | ( | int | feedID, |
| int | marketID | ||
| ) |
| new APIResult unsubscribeOF | ( | int | feedID, |
| String | clSubID | ||
| ) |
| new APIResult unsubscribeOF | ( | int | feedID | ) |
| new KeyValuePair<APIResult, int> registerMarketComb | ( | int | feedID, |
| int [] | marketIds | ||
| ) |
Register for a given list of markets on a given feed.
| new APIResult unregisterMarketComb | ( | int | batchDefID | ) |
Unregister for a given list of markets on a given feed using id.
| new APIResult requestSnapshot | ( | int | feedID, |
| int | marketID | ||
| ) |
Request a market data snapshot for the feed and market ID. (Note that after connecting you should get a snapshot automatically, so this should be used rarely.)
| new KeyValuePair<APIResult, long> submitOrder | ( | string | clOrdID, |
| int | feedID, | ||
| int | marketID, | ||
| Side | side, | ||
| MFFloat | amount, | ||
| MFFloat | price, | ||
| OrderType | ordType, | ||
| TimeInForce | tif | ||
| ) |
| new KeyValuePair<APIResult, long> submitOrder | ( | string | clOrdID, |
| int | feedID, | ||
| int | marketID, | ||
| Side | side, | ||
| MFFloat | amount, | ||
| MFFloat | price, | ||
| MFFloat | stopPrice, | ||
| MFFloat | maxShowAmt, | ||
| OrderType | ordType, | ||
| TimeInForce | tif | ||
| ) |
| new KeyValuePair<APIResult, long> submitOrder | ( | string | clOrdID, |
| int | feedID, | ||
| int | marketID, | ||
| Side | side, | ||
| MFFloat | amount, | ||
| MFFloat | price, | ||
| MFFloat | stopPrice, | ||
| MFFloat | maxShowAmt, | ||
| MFFloat | minFillAmt, | ||
| OrderType | ordType, | ||
| TimeInForce | tif, | ||
| List< KeyValuePair< string, string >> | parameters | ||
| ) |
| new KeyValuePair<APIResult, long> submitOrder | ( | string | clOrdID, |
| int | feedID, | ||
| int | marketID, | ||
| Side | side, | ||
| MFFloat | amount, | ||
| MFFloat | price, | ||
| MFFloat | stopPrice, | ||
| MFFloat | maxShowAmt, | ||
| MFFloat | minFillAmt, | ||
| OrderType | ordType, | ||
| TimeInForce | tif, | ||
| OrderParameters | parameters = null |
||
| ) |
Submits the order. Use an OrderParametersBuilder to construct a reusable OrderParameters object. Offers better performance if the you want to reuse the same order parameters for multiple submitOrder calls.
| new KeyValuePair<APIResult, long> modifyOrder | ( | string | clOrdID, |
| string | clNewID, | ||
| MFFloat | amount, | ||
| MFFloat | price, | ||
| OrderParameters | parameters = null |
||
| ) |
Submit modification to an existing order.
return KeyValuePair The first member is APIResult.OK if the order has been sent. The second member is the orderID.
| new APIResult cancelOrder | ( | String | cxlID, |
| String | clOrdID | ||
| ) |
Cancel a previously placed order by client order id ('clOrdID'). Return false if the order cannot be found locally, i.e., if the 'clOrdID' does not correspond to any previously placed order on this client interface.
| new APIResult cancelOrder | ( | String | cxlID, |
| long | orderID | ||
| ) |
Cancel a previously placed order by internal 'orderID'. Return false if the internal 'orderID' could not be provided.
| new APIResult cancelOrder | ( | String | cxlID, |
| long | orderID, | ||
| String | clOrdID | ||
| ) |
Cancel a previously placed order by providing both internal 'orderID' and clOrdID. APIResult.INVALID_ORDERID if the internal 'orderID' could not be provided.
| new APIResult cancelAll | ( | int | feedID, |
| String | cxlID | ||
| ) |
Cancel all the orders on a feed.
| new APIResult cancelAll | ( | String | cxlID | ) |
Cancel all the orders, on all feeds.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
protectedvirtual |
Reimplemented from MFBaseClient.
|
static |
A convenience method which creates a new client object, attempts to connect to Whisperer, and cleans up and throws an exception if we could not connect.
Otherwise the new client object is returned;
|
static |
A convenience method which creates a new client object, attempts to connect to Whisperer, and cleans up and throws an exception if we could not connect.
Otherwise the new client object is returned;
|
inherited |
|
inherited |
|
inherited |
Enable/Disable sticky subscriptions.
Set clearSubscriptionsOnStop=false if subscriptions should persist on disconnect/stop/start.
|
inherited |
|
inherited |
Return true if the _channel is _connected.
|
inherited |
Connect to the first available server with user credentials.
Returns 0 if the connection attempt succeeded; returns a negative number if on failure.
Note: this should not be invoked by _handler.
|
protectedvirtualinherited |
Reimplemented in MFAdmin.
|
inherited |
Close the connection.
(This can only be called this when you're not dispatching.)
Note: this should not be invoked by _handler.
|
inherited |
Returns true if the client is currently dispatching events (i.e., you called run()).
|
inherited |
Request to stop the event dispatch loop, does not disconnect the client from the server.
|
inherited |
|
inherited |
Block until the client has exited the dispatch loop.
Note: this should not be invoked by _handler.
|
protectedinherited |
_log.info("Attempting reconnect...");
|
protectedinherited |
|
inherited |
Get protocol api signature.
|
inherited |
Get the last received sequenceID after successful subscription.
Returns -2 if not subscribed. Returns -1 if there are no OF messages for the client on the feed.
|
inherited |
After a successful connection is established, you may access the server's list of _feeds, markets.
If you have not yet _connected to the server this will return empty.
|
inherited |
After a successful connection is established, you may access the server's list of _feeds, markets.
This method will return a pointer to the feed of a given name if it exists and NULL if it does not. (this class maintains ownership to the object so do not delete it).
|
inherited |
After a successful connection is established, you may access the server's list of _feeds, markets.
This method will return a pointer to the feed of a given id if it exists and NULL if it does not. (this class maintains ownership to the object so do not delete it).
After a successful connection is established, you may access the server's list of _feeds, markets.
This method will return a pointer to the market with a given name within the specified feed if such market exists or NULL if there is no market with the same name.
After a successful connection is established, you may access the server's list of _feeds, markets.
This method will return a pointer to the market with a given id within the specified feed if such market exists or NULL if there is no market with the same id.
|
inherited |
Returns the primary/secondary server hostname (whichever one is being used).
Does not indicate whether a connection is in progress or successfully established.
|
inherited |
Returns the primary/secondary server port (whichever one is being used).
Does not indicate whether a connection is in progress or successfully established.
|
inherited |
|
inherited |
Request replay of order flow events in the range [fromSequenceID, toSequenceID=-1].
Only open-ended requests are accepted by the server.
|
protectedinherited |
Subscribe to market data updates for a specific feed. onSubscriptionEvent() will be called to notify that the flow of updates is ready. If the subscription is valid, onMarketData() will be called later on. The client subscription ID allows one-to-one message matching.
summary> Subscribe to market data updates for a specific feed. onSubscriptionEvent() will be called to notify that the flow of updates is ready. If the subscription is valid, onMarketData() will be called later on.
|
protectedinherited |
|
protectedinherited |
|
inherited |
Unsubscribe all market data and trading subscriptions.
Call this if you want to stop receiving callbacks but don't want to disconnect.
|
protectedinherited |
Cancel a previously placed order by client order id ('clOrdID'). Return false if the order cannot be found locally, i.e., if the 'clOrdID' does not correspond to any previously placed order on this client interface.
|
protectedinherited |
Cancel a previously placed order by internal 'orderID'. Return false if the internal 'orderID' could not be provided.
|
protectedinherited |
Cancel a previously placed order by providing both internal 'orderID' and clOrdID. APIResult.INVALID_ORDERID if the internal 'orderID' could not be provided.
|
protectedinherited |
Cancel all the orders on a feed.
|
protectedinherited |
Cancel all the orders, on all feeds.
|
protectedvirtualinherited |
Reimplemented in MFAdmin.
|
protectedvirtualinherited |
Reimplemented in MFAdmin.
|
protectedvirtualinherited |
Reimplemented in MFMarketMaker.
|
protectedvirtualinherited |
Reimplemented in MFMarketMaker.
|
protectedvirtualinherited |
Reimplemented in MFMarketMaker.
|
protectedvirtualinherited |
Reimplemented in MFMarketMaker.
|
protectedvirtualinherited |
Reimplemented in MFMarketMaker.
|
protectedvirtualinherited |
|
inherited |
Logs a debug message into the Whisperer server _log file.
(We use this for inserting markers for automated testing and debugging.)
|
inherited |
|
inherited |
Internal testing function.
Do not use this.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |