Exemple #1
0
 public LightweightExternalOrderbookService(
     IEventChannel <BestPriceChangeEventArgs> bestPriceChangeEventChannel,
     IOrderBookProviderApi orderBookProviderApi,
     IDateService dateService,
     IConvertService convertService,
     IScheduleSettingsCacheService scheduleSettingsCache,
     IAssetPairDayOffService assetPairDayOffService,
     IAssetPairsCache assetPairsCache,
     ICqrsSender cqrsSender,
     IIdentityGenerator identityGenerator,
     ILog log,
     MarginTradingSettings marginTradingSettings)
 {
     _bestPriceChangeEventChannel = bestPriceChangeEventChannel;
     _orderBookProviderApi        = orderBookProviderApi;
     _dateService            = dateService;
     _convertService         = convertService;
     _scheduleSettingsCache  = scheduleSettingsCache;
     _assetPairDayOffService = assetPairDayOffService;
     _assetPairsCache        = assetPairsCache;
     _cqrsSender             = cqrsSender;
     _identityGenerator      = identityGenerator;
     _log = log;
     _defaultExternalExchangeId = string.IsNullOrEmpty(marginTradingSettings.DefaultExternalExchangeId)
         ? "Default"
         : marginTradingSettings.DefaultExternalExchangeId;
     _orderbookValidation = marginTradingSettings.OrderbookValidation;
 }
Exemple #2
0
 public MtController(
     IMarginTradingAccountHistoryRepository accountsHistoryRepository,
     IMarginTradingOrdersHistoryRepository ordersHistoryRepository,
     IMicrographCacheService micrographCacheService,
     IAccountAssetsCacheService accountAssetsCacheService,
     IAssetPairsCache assetPairsCache,
     IMarketMakerMatchingEngine matchingEngine,
     ITradingEngine tradingEngine,
     IAccountsCacheService accountsCacheService,
     IMarginTradingOperationsLogService operationsLogService,
     IConsole consoleWriter,
     OrdersCache ordersCache,
     MarginSettings marginSettings,
     AccountManager accountManager,
     IAssetPairDayOffService assetDayOffService,
     IQuoteCacheService quoteCacheService,
     IIdentityGenerator identityGenerator)
 {
     _accountsHistoryRepository = accountsHistoryRepository;
     _ordersHistoryRepository   = ordersHistoryRepository;
     _micrographCacheService    = micrographCacheService;
     _accountAssetsCacheService = accountAssetsCacheService;
     _assetPairsCache           = assetPairsCache;
     _matchingEngine            = matchingEngine;
     _tradingEngine             = tradingEngine;
     _accountsCacheService      = accountsCacheService;
     _operationsLogService      = operationsLogService;
     _consoleWriter             = consoleWriter;
     _ordersCache        = ordersCache;
     _marginSettings     = marginSettings;
     _accountManager     = accountManager;
     _assetDayOffService = assetDayOffService;
     _quoteCacheService  = quoteCacheService;
     _identityGenerator  = identityGenerator;
 }
 public ExternalOrderbookService(
     IEventChannel <BestPriceChangeEventArgs> bestPriceChangeEventChannel,
     IOrderBookProviderApi orderBookProviderApi,
     IDateService dateService,
     IConvertService convertService,
     IAssetPairDayOffService assetPairDayOffService,
     IScheduleSettingsCacheService scheduleSettingsCache,
     IAssetPairsCache assetPairsCache,
     ICqrsSender cqrsSender,
     IIdentityGenerator identityGenerator,
     ILog log,
     MarginTradingSettings marginTradingSettings)
 {
     _bestPriceChangeEventChannel = bestPriceChangeEventChannel;
     _orderBookProviderApi        = orderBookProviderApi;
     _dateService            = dateService;
     _convertService         = convertService;
     _assetPairDayOffService = assetPairDayOffService;
     _scheduleSettingsCache  = scheduleSettingsCache;
     _assetPairsCache        = assetPairsCache;
     _cqrsSender             = cqrsSender;
     _identityGenerator      = identityGenerator;
     _log = log;
     _marginTradingSettings = marginTradingSettings;
 }
Exemple #4
0
 public ValidateOrderService(
     IQuoteCacheService quoteCashService,
     IAccountUpdateService accountUpdateService,
     IAccountsCacheService accountsCacheService,
     ITradingInstrumentsCacheService accountAssetsCacheService,
     IAssetPairsCache assetPairsCache,
     OrdersCache ordersCache,
     IAssetPairDayOffService assetDayOffService,
     IIdentityGenerator identityGenerator,
     IDateService dateService,
     MarginTradingSettings marginSettings,
     ICfdCalculatorService cfdCalculatorService)
 {
     _quoteCashService        = quoteCashService;
     _accountUpdateService    = accountUpdateService;
     _accountsCacheService    = accountsCacheService;
     _tradingInstrumentsCache = accountAssetsCacheService;
     _assetPairsCache         = assetPairsCache;
     _ordersCache             = ordersCache;
     _assetDayOffService      = assetDayOffService;
     _identityGenerator       = identityGenerator;
     _dateService             = dateService;
     _marginSettings          = marginSettings;
     _cfdCalculatorService    = cfdCalculatorService;
 }
Exemple #5
0
 public SpecialLiquidationCommandsHandler(
     ITradingEngine tradingEngine,
     IDateService dateService,
     IOrderReader orderReader,
     IChaosKitty chaosKitty,
     IOperationExecutionInfoRepository operationExecutionInfoRepository,
     ILog log,
     MarginTradingSettings marginTradingSettings,
     IAssetPairsCache assetPairsCache,
     IAssetPairDayOffService assetPairDayOffService,
     IExchangeConnectorService exchangeConnectorService,
     IIdentityGenerator identityGenerator,
     IAccountsCacheService accountsCacheService)
 {
     _tradingEngine = tradingEngine;
     _dateService   = dateService;
     _orderReader   = orderReader;
     _chaosKitty    = chaosKitty;
     _operationExecutionInfoRepository = operationExecutionInfoRepository;
     _log = log;
     _marginTradingSettings    = marginTradingSettings;
     _assetPairsCache          = assetPairsCache;
     _assetPairDayOffService   = assetPairDayOffService;
     _exchangeConnectorService = exchangeConnectorService;
     _identityGenerator        = identityGenerator;
     _accountsCacheService     = accountsCacheService;
 }
Exemple #6
0
 public ValidateOrderService(
     IQuoteCacheService quoteCashService,
     IAccountUpdateService accountUpdateService,
     IAccountsCacheService accountsCacheService,
     ITradingInstrumentsCacheService accountAssetsCacheService,
     IAssetPairsCache assetPairsCache,
     OrdersCache ordersCache,
     IAssetPairDayOffService assetDayOffService,
     IIdentityGenerator identityGenerator,
     IDateService dateService,
     MarginTradingSettings marginSettings,
     ICfdCalculatorService cfdCalculatorService,
     IFeatureManager featureManager,
     CorrelationContextAccessor correlationContextAccessor)
 {
     _quoteCashService           = quoteCashService;
     _accountUpdateService       = accountUpdateService;
     _accountsCacheService       = accountsCacheService;
     _tradingInstrumentsCache    = accountAssetsCacheService;
     _assetPairsCache            = assetPairsCache;
     _ordersCache                = ordersCache;
     _assetDayOffService         = assetDayOffService;
     _identityGenerator          = identityGenerator;
     _dateService                = dateService;
     _marginSettings             = marginSettings;
     _cfdCalculatorService       = cfdCalculatorService;
     _featureManager             = featureManager;
     _correlationContextAccessor = correlationContextAccessor;
 }
 public MarketMakerService(IMarketMakerMatchingEngine matchingEngine,
                           IAssetPairDayOffService assetPairDayOffService,
                           IMaintenanceModeService maintenanceModeService)
 {
     _matchingEngine         = matchingEngine;
     _assetPairDayOffService = assetPairDayOffService;
     _maintenanceModeService = maintenanceModeService;
 }
 public PendingOrdersCleaningService(ILog log, IOrderReader orderReader, ITradingEngine tradingEngine,
                                     IAssetPairDayOffService assetDayOffService)
     : base(nameof(PendingOrdersCleaningService), 60000, log)
 {
     _log                = log;
     _orderReader        = orderReader;
     _tradingEngine      = tradingEngine;
     _assetDayOffService = assetDayOffService;
 }
 public TradingScheduleController(
     IDateService dateService,
     IScheduleSettingsCacheService scheduleSettingsCacheService,
     IAssetPairDayOffService assetPairDayOffService,
     IAssetPairsCache assetPairsCache)
 {
     _scheduleSettingsCacheService = scheduleSettingsCacheService;
     _assetPairDayOffService       = assetPairDayOffService;
     _assetPairsCache = assetPairsCache;
 }
Exemple #10
0
 public LiquidationHelper(IMatchingEngineRouter matchingEngineRouter,
                          IDateService dateService,
                          ICqrsSender cqrsSender,
                          OrdersCache ordersCache,
                          IAssetPairDayOffService assetPairDayOffService)
 {
     _matchingEngineRouter   = matchingEngineRouter;
     _dateService            = dateService;
     _cqrsSender             = cqrsSender;
     _ordersCache            = ordersCache;
     _assetPairDayOffService = assetPairDayOffService;
 }
Exemple #11
0
 public FxRateCacheService(ILog log,
                           IMarginTradingBlobRepository blobRepository,
                           IEventChannel <FxBestPriceChangeEventArgs> fxBestPriceChangeEventChannel,
                           MarginTradingSettings marginTradingSettings,
                           IAssetPairDayOffService assetPairDayOffService)
     : base(nameof(FxRateCacheService), marginTradingSettings.BlobPersistence.FxRatesDumpPeriodMilliseconds, log)
 {
     _log            = log;
     _blobRepository = blobRepository;
     _fxBestPriceChangeEventChannel = fxBestPriceChangeEventChannel;
     _assetPairDayOffService        = assetPairDayOffService;
     _quotes = new Dictionary <string, InstrumentBidAskPair>();
 }
Exemple #12
0
        public TradingEngine(
            IEventChannel <MarginCallEventArgs> marginCallEventChannel,
            IEventChannel <OrderPlacedEventArgs> orderPlacedEventChannel,
            IEventChannel <OrderExecutedEventArgs> orderClosedEventChannel,
            IEventChannel <OrderCancelledEventArgs> orderCancelledEventChannel,
            IEventChannel <OrderChangedEventArgs> orderChangedEventChannel,
            IEventChannel <OrderExecutionStartedEventArgs> orderExecutionStartedEventChannel,
            IEventChannel <OrderActivatedEventArgs> orderActivatedEventChannel,
            IEventChannel <OrderRejectedEventArgs> orderRejectedEventChannel,
            IValidateOrderService validateOrderService,
            IAccountsCacheService accountsCacheService,
            OrdersCache ordersCache,
            IMatchingEngineRouter meRouter,
            IThreadSwitcher threadSwitcher,
            IAssetPairDayOffService assetPairDayOffService,
            ILog log,
            IDateService dateService,
            ICfdCalculatorService cfdCalculatorService,
            IIdentityGenerator identityGenerator,
            IAssetPairsCache assetPairsCache,
            ICqrsSender cqrsSender,
            IEventChannel <StopOutEventArgs> stopOutEventChannel,
            IQuoteCacheService quoteCacheService,
            MarginTradingSettings marginTradingSettings)
        {
            _marginCallEventChannel           = marginCallEventChannel;
            _orderPlacedEventChannel          = orderPlacedEventChannel;
            _orderExecutedEventChannel        = orderClosedEventChannel;
            _orderCancelledEventChannel       = orderCancelledEventChannel;
            _orderActivatedEventChannel       = orderActivatedEventChannel;
            _orderExecutionStartedEvenChannel = orderExecutionStartedEventChannel;
            _orderChangedEventChannel         = orderChangedEventChannel;
            _orderRejectedEventChannel        = orderRejectedEventChannel;

            _validateOrderService   = validateOrderService;
            _accountsCacheService   = accountsCacheService;
            _ordersCache            = ordersCache;
            _meRouter               = meRouter;
            _threadSwitcher         = threadSwitcher;
            _assetPairDayOffService = assetPairDayOffService;
            _log                   = log;
            _dateService           = dateService;
            _cfdCalculatorService  = cfdCalculatorService;
            _identityGenerator     = identityGenerator;
            _assetPairsCache       = assetPairsCache;
            _cqrsSender            = cqrsSender;
            _stopOutEventChannel   = stopOutEventChannel;
            _quoteCacheService     = quoteCacheService;
            _marginTradingSettings = marginTradingSettings;
        }
Exemple #13
0
        public TradingEngine(
            IEventChannel <MarginCallEventArgs> marginCallEventChannel,
            IEventChannel <StopOutEventArgs> stopoutEventChannel,
            IEventChannel <OrderPlacedEventArgs> orderPlacedEventChannel,
            IEventChannel <OrderClosedEventArgs> orderClosedEventChannel,
            IEventChannel <OrderCancelledEventArgs> orderCancelledEventChannel,
            IEventChannel <OrderLimitsChangedEventArgs> orderLimitsChangesEventChannel,
            IEventChannel <OrderClosingEventArgs> orderClosingEventChannel,
            IEventChannel <OrderActivatedEventArgs> orderActivatedEventChannel,
            IEventChannel <OrderRejectedEventArgs> orderRejectedEventChannel,

            IValidateOrderService validateOrderService,
            IQuoteCacheService quoteCashService,
            IAccountUpdateService accountUpdateService,
            ICommissionService swapCommissionService,
            IEquivalentPricesService equivalentPricesService,
            IAccountsCacheService accountsCacheService,
            OrdersCache ordersCache,
            IAccountAssetsCacheService accountAssetsCacheService,
            IMatchingEngineRouter meRouter,
            IThreadSwitcher threadSwitcher,
            IContextFactory contextFactory,
            IAssetPairDayOffService assetPairDayOffService,
            ILog log)
        {
            _marginCallEventChannel         = marginCallEventChannel;
            _stopoutEventChannel            = stopoutEventChannel;
            _orderPlacedEventChannel        = orderPlacedEventChannel;
            _orderClosedEventChannel        = orderClosedEventChannel;
            _orderCancelledEventChannel     = orderCancelledEventChannel;
            _orderActivatedEventChannel     = orderActivatedEventChannel;
            _orderClosingEventChannel       = orderClosingEventChannel;
            _orderLimitsChangesEventChannel = orderLimitsChangesEventChannel;
            _orderRejectedEventChannel      = orderRejectedEventChannel;

            _quoteCashService          = quoteCashService;
            _accountUpdateService      = accountUpdateService;
            _swapCommissionService     = swapCommissionService;
            _validateOrderService      = validateOrderService;
            _equivalentPricesService   = equivalentPricesService;
            _accountsCacheService      = accountsCacheService;
            _ordersCache               = ordersCache;
            _accountAssetsCacheService = accountAssetsCacheService;
            _meRouter               = meRouter;
            _threadSwitcher         = threadSwitcher;
            _contextFactory         = contextFactory;
            _assetPairDayOffService = assetPairDayOffService;
            _log = log;
        }
Exemple #14
0
 public ValidateOrderService(
     IQuoteCacheService quoteCashService,
     IAccountUpdateService accountUpdateService,
     IAccountsCacheService accountsCacheService,
     IAccountAssetsCacheService accountAssetsCacheService,
     IAssetPairsCache assetPairsCache,
     OrdersCache ordersCache,
     IAssetPairDayOffService assetDayOffService)
 {
     _quoteCashService          = quoteCashService;
     _accountUpdateService      = accountUpdateService;
     _accountsCacheService      = accountsCacheService;
     _accountAssetsCacheService = accountAssetsCacheService;
     _assetPairsCache           = assetPairsCache;
     _ordersCache        = ordersCache;
     _assetDayOffService = assetDayOffService;
 }
Exemple #15
0
 public QuotesMonitor(ILog log,
                      IMtSlackNotificationsSender slackNotificationsSender,
                      MarginTradingSettings marginSettings,
                      IQuoteCacheService quoteCacheService,
                      IDateService dateService,
                      IAssetPairDayOffService dayOffService,
                      IAlertSeverityLevelService alertSeverityLevelService)
     : base("QuotesMonitor", 60000, log)
 {
     _log = log;
     _slackNotificationsSender = slackNotificationsSender;
     _marginSettings           = marginSettings;
     _quoteCacheService        = quoteCacheService;
     _dateService               = dateService;
     _dayOffService             = dayOffService;
     _alertSeverityLevelService = alertSeverityLevelService;
     _outdatedQuotes            = new Dictionary <string, OutdatedQuoteInfo>();
 }
Exemple #16
0
 public LiquidationSaga(
     IDateService dateService,
     IChaosKitty chaosKitty,
     IOperationExecutionInfoRepository operationExecutionInfoRepository,
     OrdersCache ordersCache,
     CqrsContextNamesSettings cqrsContextNamesSettings,
     ILog log,
     IAccountsCacheService accountsCacheService,
     IAssetPairDayOffService assetPairDayOffService)
 {
     _dateService = dateService;
     _chaosKitty  = chaosKitty;
     _operationExecutionInfoRepository = operationExecutionInfoRepository;
     _ordersCache = ordersCache;
     _cqrsContextNamesSettings = cqrsContextNamesSettings;
     _log = log;
     _accountsCacheService   = accountsCacheService;
     _assetPairDayOffService = assetPairDayOffService;
 }
Exemple #17
0
 public PositionsController(
     ITradingEngine tradingEngine,
     IOperationsLogService operationsLogService,
     ILog log,
     OrdersCache ordersCache,
     IAssetPairDayOffService assetDayOffService,
     IIdentityGenerator identityGenerator,
     ICqrsSender cqrsSender,
     IDateService dateService)
 {
     _tradingEngine        = tradingEngine;
     _operationsLogService = operationsLogService;
     _log                = log;
     _ordersCache        = ordersCache;
     _assetDayOffService = assetDayOffService;
     _identityGenerator  = identityGenerator;
     _cqrsSender         = cqrsSender;
     _dateService        = dateService;
 }
 public PositionsController(
     ITradingEngine tradingEngine,
     IOperationsLogService operationsLogService,
     ILog log,
     OrdersCache ordersCache,
     IAssetPairDayOffService assetDayOffService,
     IIdentityGenerator identityGenerator,
     ICqrsSender cqrsSender,
     IDateService dateService,
     IAccountHistoryRepository accountHistoryRepository,
     IMarginTradingBlobRepository blobRepository)
 {
     _tradingEngine        = tradingEngine;
     _operationsLogService = operationsLogService;
     _log                      = log;
     _ordersCache              = ordersCache;
     _assetDayOffService       = assetDayOffService;
     _identityGenerator        = identityGenerator;
     _cqrsSender               = cqrsSender;
     _dateService              = dateService;
     _accountHistoryRepository = accountHistoryRepository;
     _blobRepository           = blobRepository;
 }
Exemple #19
0
 public OrdersController(IAssetPairsCache assetPairsCache,
                         ITradingEngine tradingEngine,
                         IAccountsCacheService accountsCacheService,
                         IOperationsLogService operationsLogService,
                         ILog log,
                         OrdersCache ordersCache,
                         IAssetPairDayOffService assetDayOffService,
                         IDateService dateService,
                         IValidateOrderService validateOrderService,
                         IIdentityGenerator identityGenerator,
                         ICqrsSender cqrsSender)
 {
     _assetPairsCache      = assetPairsCache;
     _tradingEngine        = tradingEngine;
     _accountsCacheService = accountsCacheService;
     _operationsLogService = operationsLogService;
     _log                  = log;
     _ordersCache          = ordersCache;
     _assetDayOffService   = assetDayOffService;
     _dateService          = dateService;
     _validateOrderService = validateOrderService;
     _identityGenerator    = identityGenerator;
     _cqrsSender           = cqrsSender;
 }