예제 #1
0
 public BotBase(string host, ushort port)
 {
     Client = new CrossTraderClient()
     {
         Host = host,
         Port = port
     };
 }
예제 #2
0
        static async Task Main(string[] args)
        {
            // TODO: Parse host and port from command line args
            var    host   = "localhost";
            ushort port   = 10666;
            var    client = new CrossTraderClient()
            {
                Host = host,
                Port = port
            };

            await(new Bot(client)).RunAsync();
        }
        internal OrderBookWindowViewModel(CrossTraderClient client, Instrument instrument)
            : base(client)
        {
            Instrument = instrument;
            _SyncRoot  = new object();
            Asks       = new ObservableCollection <OrderLevel>();
            Bids       = new ObservableCollection <OrderLevel>();

            BindingOperations.EnableCollectionSynchronization(Asks, _SyncRoot);
            BindingOperations.EnableCollectionSynchronization(Bids, _SyncRoot);

            Client.OrderBookReceived += Client_OrderBookReceived;

            Client.SubscribeOrderBook(instrument.Id, 0, 25);
        }
예제 #4
0
 public PositionsSubscriptions(CrossTraderClient client)
     : base(client)
 {
 }
예제 #5
0
 internal BitFlyerExecutionsWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.BitFlyer.ExecutionsReceived += BitFlyer_ExecutionsReceived;
     client.BitFlyer.ExecutionsError    += BitFlyer_ExecutionsError;
 }
예제 #6
0
 public TickerSubscriptions(CrossTraderClient client)
     : base(client)
 {
 }
 public BitFlyerChildOrdersSubscriptions(CrossTraderClient client)
     : base(client)
 {
 }
 public OrdersSubscriptions(CrossTraderClient client)
     : base(client)
 {
 }
예제 #9
0
 internal TickersWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.TickerReceived += Client_TickerReceived;
     client.TickerError    += Client_TickerError;
 }
예제 #10
0
 internal OrdersWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.OrdersReceived += Client_OrdersReceived;
     client.OrdersError    += Client_OrdersError;
 }
 internal BitFlyerClientPlugin(CrossTraderClient client)
 {
     _Client = client;
 }
 internal ExchangesWindowViewModel(CrossTraderClient client)
     : base(client)
 {
 }
 internal BitMexPositionsWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.BitMex.PositionsReceived += BitMex_PositionsReceived;
     client.BitMex.PositionsError    += BitMex_PositionsError;
 }
예제 #14
0
 internal InstrumentsWindowViewModelBase(CrossTraderClient client)
     : base(client)
 {
 }
예제 #15
0
 public Bot(CrossTraderClient client)
 => Client = client;
예제 #16
0
 internal ExecutionsWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.ExecutionsReceived += Client_ExecutionsReceived;
     client.ExecutionsError    += Client_ExecutionsError;
 }
예제 #17
0
 protected Subscriptions(CrossTraderClient client)
 {
     Client         = client;
     _Subscriptions = new Dictionary <TKey, CancellationTokenSource>();
 }
 public BitFlyerExecutionsSubscriptions(CrossTraderClient client)
     : base(client)
 {
 }
예제 #19
0
 public BitMexTradesSubscriptions(CrossTraderClient client)
     : base(client)
 {
 }
 internal BitFlyerChildOrdersWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.BitFlyer.ChildOrdersReceived += BitFlyer_ChildOrdersReceived;
     client.BitFlyer.ChildOrdersError    += BitFlyer_ChildOrdersError;
 }
 protected WindowViewModelBase(CrossTraderClient client)
 => Client = client;
 internal PositionsWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.PositionsReceived += Client_PositionsReceived;
     client.PositionsError    += Client_PositionsError;
 }
예제 #23
0
 internal BitMexTradesWindowViewModel(CrossTraderClient client)
     : base(client)
 {
     client.BitMex.TradesReceived += BitMex_TradesReceived;
     client.BitMex.TradesError    += BitMex_TradesError;
 }