public static void Main (string[] args)
{
try
{
LogAssembliesBeingUsed ();
Connect();
Console.WriteLine ("Listening for client account margin");
var marginListener = _streamingClient.BuildClientAccountMarginListener();
_listeners.Add(marginListener);
marginListener.MessageReceived += (s, e) =>
{
Console.WriteLine("ClientAccountMargin, equity: {0}", e.Data.NetEquity);
};
Console.WriteLine ("Listening for quotes");
var quotesListener = _streamingClient.BuildQuotesListener();
_listeners.Add(quotesListener);
quotesListener.MessageReceived += (s, e) =>
{
Console.WriteLine("Quote approved at {0}", e.Data.ApprovalDateTimeUTC);
};
Console.WriteLine ("Listening for prices");
var priceListener = _streamingClient.BuildPricesListener(Convert.ToInt32(ConfigurationManager.AppSettings["MarketId"]));
_listeners.Add(priceListener);
priceListener.MessageReceived += (s, message) => {
Console.WriteLine("Price at {0:O} is {1}", message.Data.TickDate, message.Data.Price);
};
Console.WriteLine("Listening for 120 seconds - check the number of open connections");
var gate = new ManualResetEvent(false);
gate.WaitOne(TimeSpan.FromSeconds(120));
}
finally
{
Disconnect ();
}
}