public class MFClient
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
MFClient.OrderArgs |
class |
MFClient.PingTime |
class |
MFClient.TimeStats |
| Constructor and Description |
|---|
MFClient(java.lang.String _username,
java.lang.String _password,
java.lang.String _hostname1,
int _port1)
Create a new client object.
|
MFClient(java.lang.String _username,
java.lang.String _password,
java.lang.String _hostname1,
int _port1,
java.lang.String _hostname2,
int _port2)
Create a new client object (with failover).
|
| Modifier and Type | Method and Description |
|---|---|
APIResult |
cancelAll(int feedID,
java.lang.String cxlID)
Cancel all the orders on a feed.
|
APIResult |
cancelAll(java.lang.String cxlID)
Cancel all the orders, on all feeds.
|
APIResult |
cancelOrder(java.lang.String cxlID,
long orderID)
Cancel a previously placed order by internal 'orderID'.
|
APIResult |
cancelOrder(java.lang.String cxlID,
long orderID,
java.lang.String clOrdID)
Cancel a previously placed order by providing both internal 'orderID' and clOrdID.
|
APIResult |
cancelOrder(java.lang.String cxlID,
java.lang.String clOrdID)
Cancel a previously placed order by client order id ('clOrdID').
|
APIResult |
close()
Close the connection.
|
APIResult |
connect()
Connect to the first available server with user credentials.
|
void |
enableDebugMetrics(boolean flag) |
APIFeed |
getFeedByID(int id)
After a successful connection is established, you may access the server's
list of _feeds, markets.
|
APIFeed |
getFeedByName(java.lang.String name)
After a successful connection is established, you may access the server's
list of _feeds, markets.
|
APIFeed[] |
getFeeds()
After a successful connection is established, you may access the server's
list of _feeds, markets.
|
java.lang.String |
getHostname()
Returns the primary/secondary server hostname (whichever one is being used).
|
java.util.Queue<MFClient.PingTime> |
getLastPingTimes() |
APIMarket |
getMarketByID(APIFeed feed,
int marketID)
After a successful connection is established, you may access the server's
list of _feeds, markets.
|
APIMarket |
getMarketByName(APIFeed feed,
java.lang.String name)
After a successful connection is established, you may access the server's
list of _feeds, markets.
|
int |
getPort()
Returns the primary/secondary server port (whichever one is being used).
|
int |
getSequenceID(int feedID)
Get the last received sequenceID after successful subscription.
|
java.lang.String |
getSignature()
Get protocol api signature.
|
void |
handle(com.marketfactory.api.BatchesCompletedMessage msg) |
void |
handle(com.marketfactory.api.BatchRegisterMessage msg) |
void |
handle(com.marketfactory.api.BatchUnregisterMessage msg) |
void |
handle(com.marketfactory.api.CancelAllOrderMessage msg) |
void |
handle(com.marketfactory.api.CancelOrderMessage msg) |
void |
handle(com.marketfactory.api.ClientConnectMessage msg) |
void |
handle(com.marketfactory.api.ClientDisconnectMessage msg) |
void |
handle(com.marketfactory.api.ComplexOrderMessage msg) |
void |
handle(com.marketfactory.api.ConfigMessage msg) |
void |
handle(com.marketfactory.api.ConnectResponseMessage msg) |
void |
handle(com.marketfactory.api.DateRolloverMessage msg) |
void |
handle(com.marketfactory.api.DropCopyMessage msg) |
void |
handle(com.marketfactory.api.EventReportMessage msg) |
void |
handle(com.marketfactory.api.HeartbeatMessage msg) |
void |
handle(com.marketfactory.api.ImHereMessage msg) |
void |
handle(com.marketfactory.api.InsertLogMessage msg) |
void |
handle(com.marketfactory.api.LastSequenceIDMessage msg) |
void |
handle(com.marketfactory.api.LockResponseMessage msg) |
void |
handle(com.marketfactory.api.LockUserMessage msg) |
void |
handle(com.marketfactory.api.MktDataMessage msg) |
void |
handle(com.marketfactory.api.ModifyOrderMessage msg) |
void |
handle(com.marketfactory.api.OrderCanceledMessage msg) |
void |
handle(com.marketfactory.api.OrderCancelRejectedMessage msg) |
void |
handle(com.marketfactory.api.OrderDoneMessage msg) |
void |
handle(com.marketfactory.api.OrderReceivedMessage msg) |
void |
handle(com.marketfactory.api.OrderRejectedMessage msg) |
void |
handle(com.marketfactory.api.OrderSubmittedMessage msg) |
void |
handle(com.marketfactory.api.ReplayDoneMessage msg) |
void |
handle(com.marketfactory.api.ReplayMessage msg) |
void |
handle(com.marketfactory.api.RequestSnapshotMessage msg) |
void |
handle(com.marketfactory.api.RiskResponseMessage msg) |
void |
handle(com.marketfactory.api.RuThereMessage msg) |
void |
handle(com.marketfactory.api.SubmitOrderMessage msg) |
void |
handle(com.marketfactory.api.SubscribeMessage msg) |
void |
handle(com.marketfactory.api.SubscriptionEventMessage msg) |
void |
handle(com.marketfactory.api.TestMessage msg) |
void |
handle(com.marketfactory.api.TradeCaptureMessage msg) |
void |
handle(com.marketfactory.api.TradeLimitDataMessage msg) |
void |
handle(com.marketfactory.api.UnsubscribeAllMessage msg) |
void |
handle(com.marketfactory.api.UnsubscribeMessage msg) |
void |
handle(com.marketfactory.api.VersionMessage msg) |
boolean |
isConnected()
Return true if the _channel is _connected.
|
boolean |
isRunning()
Returns true if the client is currently dispatching events (i.e., you
called run()).
|
APIResult |
join()
Block until the client has exited the dispatch loop.
|
void |
log(java.lang.String message)
Logs a debug message into the Whisperer server _log file.
|
void |
log(java.lang.String message,
LogLevel level) |
Pair<APIResult,java.lang.Long> |
modifyOrder(java.lang.String clOrdID,
java.lang.String clNewID,
MFFloat amount,
MFFloat price)
Submit modification to an existing order.
|
static MFClient |
open(java.lang.String user,
java.lang.String pass,
java.lang.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.
|
static MFClient |
open(java.lang.String user,
java.lang.String pass,
java.lang.String _hostname1,
int _port1,
java.lang.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.
|
APIResult |
processEvents(MFHandler _handler)
Process all pending events in the reactor, and return as soon as
reads/writes have been flushed.
|
Pair<APIResult,java.lang.Integer> |
registerMarketComb(int feedID,
int[] marketIds)
Register for a given list of markets on a given feed.
|
APIResult |
replay(int feedID,
int fromSequenceID,
int toSequenceID)
Request replay of order flow events in the range [fromSequenceID, toSequenceID=-1].
|
APIResult |
requestSnapshot(int feedID,
int marketID)
Request a market data snapshot for the feed and market ID.
|
APIResult |
run(MFHandler _handler)
Run a loop that will continuously dispatch incoming messages to a
_handler implementation.
|
protected APIResult |
send(IMessage msg) |
void |
setDebug(boolean debug) |
void |
setStickySubscriptions(boolean sticky)
Enable/Disable sticky subscriptions.
|
void |
setStickySubscriptions(boolean sticky,
boolean clearSubscriptionsOnStop) |
void |
setUseHeartbeat(boolean use) |
APIResult |
stop()
Request to stop the event dispatch loop.
|
Pair<APIResult,java.lang.Long> |
submitOrder(java.lang.String clOrdID,
int feedID,
int marketID,
Side side,
MFFloat amount,
MFFloat price,
MFFloat stopPrice,
MFFloat maxShowAmt,
OrderType ordType,
TimeInForce tif)
Submit an order.
|
Pair<APIResult,java.lang.Long> |
submitOrder(java.lang.String clOrdID,
int feedID,
int marketID,
Side side,
MFFloat amount,
MFFloat price,
MFFloat stopPrice,
MFFloat maxShowAmt,
OrderType ordType,
TimeInForce tif,
java.lang.String modelID,
java.util.ArrayList<KeyValue> parameters)
Submit an order.
|
Pair<APIResult,java.lang.Long> |
submitOrder(java.lang.String clOrdID,
int feedID,
int marketID,
Side side,
MFFloat amount,
MFFloat price,
OrderType ordType,
TimeInForce tif)
Submit an order.
|
Pair<APIResult,java.lang.Long> |
submitOrder(java.lang.String clOrdID,
int feedID,
int marketID,
Side side,
MFFloat amount,
MFFloat price,
OrderType ordType,
TimeInForce tif,
MFClient.OrderArgs args)
Submit an order.
|
APIResult |
subscribeAllMD()
Subscribe to all the market data feeds.
|
APIResult |
subscribeMD(int feedID,
int marketID)
Subscribe to market data updates for a specific feed.
|
APIResult |
subscribeMD(int feedID,
int marketID,
java.lang.String clSubID)
Subscribe to market data updates for a specific feed.
|
APIResult |
subscribeOF(int feedID)
Subscribe to trading for a specific feed.
|
APIResult |
subscribeOF(int feedID,
java.lang.String clSubID)
Subscribe to trading for a specific feed.
|
void |
test(APITest test)
Internal testing function.
|
APIResult |
unregisterMarketComb(int batchDefID)
Unregister for a given list of markets on a given feed using the id
provided in onBatchEvent callback.
|
APIResult |
unsubscribeAll()
Unsubscribe all market data and trading subscriptions.
|
APIResult |
unsubscribeMD(int feedID,
int marketID)
Unsubscribe to market data updates for a specific feed.
|
APIResult |
unsubscribeMD(int feedID,
int marketID,
java.lang.String clSubID)
Unsubscribe to market data updates for a specific feed.
|
APIResult |
unsubscribeOF(int feedID)
Unsubscribe to trading for a specific feed.
|
APIResult |
unsubscribeOF(int feedID,
java.lang.String clSubID)
Unsubscribe to trading for a specific feed.
|
public MFClient(java.lang.String _username,
java.lang.String _password,
java.lang.String _hostname1,
int _port1)
public MFClient(java.lang.String _username,
java.lang.String _password,
java.lang.String _hostname1,
int _port1,
java.lang.String _hostname2,
int _port2)
public void setUseHeartbeat(boolean use)
public void setDebug(boolean debug)
public void enableDebugMetrics(boolean flag)
public void setStickySubscriptions(boolean sticky)
public void setStickySubscriptions(boolean sticky,
boolean clearSubscriptionsOnStop)
public boolean isConnected()
public APIResult connect()
public APIResult close()
public boolean isRunning()
public APIResult stop()
public APIResult join()
public APIResult run(MFHandler _handler)
public APIResult processEvents(MFHandler _handler)
public java.lang.String getSignature()
public int getSequenceID(int feedID)
public APIFeed[] getFeeds()
public APIFeed getFeedByName(java.lang.String name)
public APIFeed getFeedByID(int id)
public APIMarket getMarketByName(APIFeed feed, java.lang.String name)
public APIMarket getMarketByID(APIFeed feed, int marketID)
public java.lang.String getHostname()
public int getPort()
public void handle(com.marketfactory.api.ConfigMessage msg)
public void handle(com.marketfactory.api.ConnectResponseMessage msg)
public void handle(com.marketfactory.api.ClientDisconnectMessage msg)
public void handle(com.marketfactory.api.TestMessage msg)
public void handle(com.marketfactory.api.ImHereMessage msg)
public void handle(com.marketfactory.api.HeartbeatMessage msg)
public java.util.Queue<MFClient.PingTime> getLastPingTimes()
public APIResult replay(int feedID, int fromSequenceID, int toSequenceID)
public APIResult subscribeMD(int feedID, int marketID, java.lang.String clSubID)
public APIResult subscribeMD(int feedID, int marketID)
public APIResult subscribeOF(int feedID, java.lang.String clSubID)
public APIResult subscribeOF(int feedID)
public APIResult subscribeAllMD()
public APIResult unsubscribeMD(int feedID, int marketID, java.lang.String clSubID)
public APIResult unsubscribeMD(int feedID, int marketID)
public APIResult unsubscribeOF(int feedID, java.lang.String clSubID)
public APIResult unsubscribeOF(int feedID)
public APIResult unsubscribeAll()
public void handle(com.marketfactory.api.SubscriptionEventMessage msg)
public Pair<APIResult,java.lang.Integer> registerMarketComb(int feedID, int[] marketIds)
public APIResult unregisterMarketComb(int batchDefID)
public void handle(com.marketfactory.api.MktDataMessage msg)
public APIResult requestSnapshot(int feedID, int marketID)
public void handle(com.marketfactory.api.RequestSnapshotMessage msg)
public void handle(com.marketfactory.api.BatchesCompletedMessage msg)
public void handle(com.marketfactory.api.LastSequenceIDMessage msg)
public Pair<APIResult,java.lang.Long> submitOrder(java.lang.String clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, OrderType ordType, TimeInForce tif)
public Pair<APIResult,java.lang.Long> submitOrder(java.lang.String clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, MFFloat stopPrice, MFFloat maxShowAmt, OrderType ordType, TimeInForce tif)
public Pair<APIResult,java.lang.Long> submitOrder(java.lang.String clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, OrderType ordType, TimeInForce tif, MFClient.OrderArgs args)
public Pair<APIResult,java.lang.Long> submitOrder(java.lang.String clOrdID, int feedID, int marketID, Side side, MFFloat amount, MFFloat price, MFFloat stopPrice, MFFloat maxShowAmt, OrderType ordType, TimeInForce tif, java.lang.String modelID, java.util.ArrayList<KeyValue> parameters)
public Pair<APIResult,java.lang.Long> modifyOrder(java.lang.String clOrdID, java.lang.String clNewID, MFFloat amount, MFFloat price)
public APIResult cancelOrder(java.lang.String cxlID, java.lang.String clOrdID)
public APIResult cancelOrder(java.lang.String cxlID, long orderID)
public APIResult cancelOrder(java.lang.String cxlID, long orderID, java.lang.String clOrdID)
public APIResult cancelAll(int feedID, java.lang.String cxlID)
public APIResult cancelAll(java.lang.String cxlID)
public void handle(com.marketfactory.api.RiskResponseMessage msg)
public void handle(com.marketfactory.api.LockResponseMessage msg)
public void handle(com.marketfactory.api.OrderReceivedMessage msg)
public void handle(com.marketfactory.api.OrderSubmittedMessage msg)
public void handle(com.marketfactory.api.OrderRejectedMessage msg)
public void handle(com.marketfactory.api.OrderCanceledMessage msg)
public void handle(com.marketfactory.api.OrderCancelRejectedMessage msg)
public void handle(com.marketfactory.api.DropCopyMessage msg)
public void handle(com.marketfactory.api.TradeCaptureMessage msg)
public void handle(com.marketfactory.api.OrderDoneMessage msg)
public void handle(com.marketfactory.api.EventReportMessage msg)
public void handle(com.marketfactory.api.ReplayDoneMessage msg)
public void handle(com.marketfactory.api.DateRolloverMessage msg)
public void log(java.lang.String message)
public void log(java.lang.String message,
LogLevel level)
public void test(APITest test)
public void handle(com.marketfactory.api.RuThereMessage msg)
public void handle(com.marketfactory.api.VersionMessage msg)
public void handle(com.marketfactory.api.InsertLogMessage msg)
public void handle(com.marketfactory.api.ClientConnectMessage msg)
public void handle(com.marketfactory.api.ReplayMessage msg)
public void handle(com.marketfactory.api.BatchRegisterMessage msg)
public void handle(com.marketfactory.api.BatchUnregisterMessage msg)
public void handle(com.marketfactory.api.SubscribeMessage msg)
public void handle(com.marketfactory.api.UnsubscribeMessage msg)
public void handle(com.marketfactory.api.UnsubscribeAllMessage msg)
public void handle(com.marketfactory.api.ComplexOrderMessage msg)
public void handle(com.marketfactory.api.SubmitOrderMessage msg)
public void handle(com.marketfactory.api.CancelOrderMessage msg)
public void handle(com.marketfactory.api.CancelAllOrderMessage msg)
public void handle(com.marketfactory.api.ModifyOrderMessage msg)
public void handle(com.marketfactory.api.LockUserMessage msg)
public void handle(com.marketfactory.api.TradeLimitDataMessage msg)
public static MFClient open(java.lang.String user, java.lang.String pass, java.lang.String host, int port) throws java.io.IOException
java.io.IOExceptionpublic static MFClient open(java.lang.String user, java.lang.String pass, java.lang.String _hostname1, int _port1, java.lang.String _hostname2, int _port2) throws java.io.IOException
java.io.IOException