Exemple #1
0
        private void criarOrdemInversa(OrderBook book, Ordem ordemExecutada)
        {
            try
            {
                Console.WriteLine("Criando ordem inversa");
                OrderList orderList = null;
                double precoLimite = 0;
                ordemExecutada.definirQuantidade(ordemExecutada.obterQuantidadeExecutada());
                if (ordemExecutada.action == Constantes.TIPO_ORDEM_COMPRA)
                {
                    ordemExecutada.precoLimite = ordemExecutada.obterPreco() + api.parametros.minimoLucroBRL;
                    criarOrdemVendaNova(book, ordemExecutada);
                }
                else if (ordemExecutada.action == Constantes.TIPO_ORDEM_VENDA)
                {
                    ordemExecutada.precoLimite = Convert.ToDouble(ordemExecutada.price) - api.parametros.minimoLucroBRL;
                    criarOrdemCompraNova(book, ordemExecutada);
                }

                //atualizarListaOrdens(orderList, precoLimite);
            }
            catch (Exception ex)
            {

                Console.WriteLine("Erro ao criar ordem inversa " + ex.Message);
                Console.WriteLine(" ");
            }
        }
Exemple #2
0
        private void criarOrdemResidual(OrderBook book, Ordem ordem)
        {
            try
            {
                Console.WriteLine("Criando ordem de trade residual:");
                ordem.definirQuantidade(ordem.obterQuantidade() - ordem.obterQuantidadeExecutada());
                OrderList orderList = null;
                if (ordem.action == Constantes.TIPO_ORDEM_COMPRA)
                {
                    criarOrdemCompraNova(book, ordem);
                }
                else if (ordem.action == Constantes.TIPO_ORDEM_VENDA)
                {
                    criarOrdemVendaNova(book, ordem);
                }

                // atualizarListaOrdens(orderList, ordem.precoLimite);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Erro ao criar ordem residual " + ex.Message);
            }
        }