Exemple #1
0
        public CentralPanelScrin1(
            AccountInfo accountInfo,
            TradeAccountInfo tradeAccountInfo,
            CurrentTrades currentTrades,
            UserStreamData userStreamData,
            TradeConfigRepository configRepository,
            Martingale martingale,
            KeyPanelScrin1 keyPanelScrin1,
            RightPanelScrin1 rightPanelScrin1)
        {
            StartButton = new StartButton();
            StopButton  = new StopButton();

            TradeConfigurationView = new TradeConfigurationView();
            this.accountInfo       = accountInfo;
            this.tradeAccountInfo  = tradeAccountInfo;
            this.currentTrades     = currentTrades;
            this.userStreamData    = userStreamData;
            this.configRepository  = configRepository;
            this.martingale        = martingale;
            this.keyPanelScrin1    = keyPanelScrin1;
            this.rightPanelScrin1  = rightPanelScrin1;
            SetConfigView();
            SetPairs();
            // получаем сохраненные конфиги для правых кнопок
        }
Exemple #2
0
        public ModelView()
        {
            dispatcher = Dispatcher.CurrentDispatcher;

            var connectedPairService = new ConnectedPairService(new ConnectedPairRepository());

            connectedPairService.InitializeConnectedPair(MainWindow.ExchangeInfo.AllPairsMarket.MarketPairs);

            accountInfo      = new AccountInfo(new APIKeyRepository(), new BalanceRepository());
            tradeAccountInfo = new TradeAccountInfo(new APIKeyRepository(), new TradeConfigRepository(), new TradeRepository());
            currentTrades    = new CurrentTrades(new ConnectedPairRepository());
            userStreamData   = new UserStreamData(new StockExchenge.RepositoriesModel()
            {
                APIKeyRepository  = new APIKeyRepository(),
                BalanceRepository = new BalanceRepository()
            });

            martingaleReal = new Algoritms.Real.Martingale(new Algoritms.Real.RepositoriesM()
            {
                APIKeyRepository          = new APIKeyRepository(),
                BalanceRepository         = new BalanceRepository(),
                CurrentTrades             = currentTrades,
                ExchangeInfo              = MainWindow.ExchangeInfo,
                TradeConfigRepository     = new TradeConfigRepository(),
                StopLimitOrderRepository  = new StopLimitOrderRepository(),
                TakeProfitOrderRepository = new TakeProfitOrderRepository(),
                TradeRepository           = new TradeRepository(),
                TradeAccountInfo          = tradeAccountInfo
            });
            martingaleReal.MessageErrorEvent += MartingaleReal_MessageErrorEvent;
            martingaleReal.MessageDebugEvent += MartingaleReal_MessageDebugEvent;

            martingaleBackTest    = new Algoritms.BackTest.Martingale(new TradeHistoryRepository(), new TradeConfigRepository(), MainWindow.ExchangeInfo);
            currentGridStatistics = new Algoritms.BackTest.CurrentGridStatistics(new TradeConfigRepository());

            ScrinManager                = new ScrinManager();
            ConsoleScrin1               = new ConsoleScrin1();
            KeyPanelScrin1              = new KeyPanelScrin1(new APIKeyRepository(), new BalanceRepository());
            LeftPanelScrin1             = new LeftPanelScrin1();
            RightPanelScrin1            = new RightPanelScrin1();
            CentralPanelScrin1          = new CentralPanelScrin1(accountInfo, tradeAccountInfo, currentTrades, userStreamData, new TradeConfigRepository(), martingaleReal, KeyPanelScrin1, RightPanelScrin1);
            PairPanelScrin1             = new PairPanelScrin1(new ConnectedPairRepository());
            ChartService                = new ChartService(dispatcher, 230, 810);
            CentralPanelScrinCalculator = new CentralPanelScrinCalculator(martingaleBackTest, currentGridStatistics, new TradeHistoryRepository());

            ChartService.SelectedPair = CentralPanelScrin1.TradeConfigurationView.MainCoin + CentralPanelScrin1.TradeConfigurationView.AltCoin;
            //CentralPanelScrin1.loadChart = ChartService.LoadChart;
            CentralPanelScrin1.ChartService = ChartService;
        }