示例#1
0
        public void atualizar()
        {
            clsModMinhasOrdens vObjOrdenAtual;

            try
            {
                vObjOrdenAtual = new clsModMinhasOrdens();

                vObjOrdenAtual.carregarOrdemAtual();

                if (vObjOrdenAtual.pID > 0)
                {
                    if (Program.Parametros.pSimulando)
                    {
                        this.preencherValoresSimulado(vObjOrdenAtual);
                    }
                    else
                    {
                        this._ObjOrdemAPI = this._ObjAPI.buscarOrder(clsApiBaseRetornoTAPI.enumParMoedas.BRLBTC, vObjOrdenAtual.pID);
                    }

                    this.gravarOrdem(false);
                }
            }
            catch { throw; }
        }
示例#2
0
        private bool executarOperacao(clsApiMercadoBitcon.enumTipoOrdem aEnumTipoOrdem)
        {
            try
            {
                //--Quem define se será feito a operação é o método analisarOperacao chamada dentro de cada método de operação (Comprar/Vender)
                if (this._Operar)
                {
                    System.Threading.Thread.Sleep(10000);
                    if (Program.Parametros.pSimulando)
                    {
                        this.preencherValoresSimulado(aEnumTipoOrdem);
                    }
                    else
                    {
                        this._ObjOrdemAPI = _ObjAPI.enviarOrder(clsApiBaseRetornoTAPI.enumParMoedas.BRLBTC, aEnumTipoOrdem, this._QtdNegociada, this._ValorLimite);
                    }

                    //--Gravando no BD a operação
                    this.gravarOrdem(true);
                }
            }
            catch { throw; }
            finally
            {
                this._QtdNegociada = 0;
                this._ValorLimite  = 0;
                this.pConsulta     = null;
            }
            return(true);
        }
        public override clsApiOrders buscarOrder(clsApiBaseRetornoTAPI.enumParMoedas aEnumParMoedas, long aLngOrderID)
        {
            string vStrRetornoAPI = String.Empty;
            string vStrTapiMethod = String.Empty;

            List <clsTooParametros> vObjParametros = new List <clsTooParametros>();
            clsApiOrders            vObjOrder      = new clsApiOrders();

            try
            {
                vStrTapiMethod = enumTipoTapiMetodo.get_order.ToString();

                vObjParametros.Add(new clsTooParametros("tapi_method", vStrTapiMethod));
                vObjParametros.Add(new clsTooParametros("coin_pair", aEnumParMoedas.ToString()));
                vObjParametros.Add(new clsTooParametros("order_id", aLngOrderID.ToString()));

                vStrRetornoAPI = this.chamarMetodoAPI_Negociacao(vObjParametros);
                vObjOrder      = new clsApiOrders(vStrRetornoAPI);

                this.tratarErro(vObjOrder.status_code, vObjOrder.error_message);
            }
            catch
            {
                throw;
            }
            return(vObjOrder);
        }
        public override clsApiOrders enviarOrder(clsApiBaseRetornoTAPI.enumParMoedas aEnumParMoedas, enumTipoOrdem aEnumTipordem, decimal aQtdMoeda, decimal qVlrLimite)
        {
            string vStrRetornoAPI = string.Empty;
            string vStrTapiMethod = String.Empty;
            int    vIntTipoOrdem  = (aEnumTipordem == enumTipoOrdem.Compra) ? 1 : 2;

            List <clsTooParametros> vObjParametros = new List <clsTooParametros>();
            clsApiOrders            vObjOrders     = new clsApiOrders();

            try
            {
                if (aEnumTipordem == enumTipoOrdem.Ambas)
                {
                    throw new Exception("Tipo de Ordem inválida: " + aEnumTipordem.ToString());
                }

                vStrTapiMethod = (aEnumTipordem == enumTipoOrdem.Compra) ? enumTipoTapiMetodo.place_buy_order.ToString() : enumTipoTapiMetodo.place_sell_order.ToString();

                vObjParametros.Add(new clsTooParametros("tapi_method", vStrTapiMethod));
                vObjParametros.Add(new clsTooParametros("coin_pair", aEnumParMoedas.ToString()));
                vObjParametros.Add(new clsTooParametros("quantity", clsTooUtil.converterDecimalString_US(Math.Round(aQtdMoeda, 8))));
                vObjParametros.Add(new clsTooParametros("limit_price", clsTooUtil.converterDecimalString_US(qVlrLimite)));

                vStrRetornoAPI = this.chamarMetodoAPI_Negociacao(vObjParametros);
                vObjOrders     = new clsApiOrders(vStrRetornoAPI);

                this.tratarErro(vObjOrders.status_code, vObjOrders.error_message);
            }
            catch
            {
                throw;
            }
            return(vObjOrders);
        }
        public override clsApiOrders buscarOrders(clsApiBaseRetornoTAPI.enumParMoedas aEnumParMoedas, enumTipoOrdem aEnumTipordem)
        {
            string vStrRetornoAPI = string.Empty;
            int    vIntTipoOrdem  = (aEnumTipordem == enumTipoOrdem.Compra)?1:2;

            List <clsTooParametros> vObjParametros = new List <clsTooParametros>();
            clsApiOrders            vObjOrders     = new clsApiOrders();

            try
            {
                vObjParametros.Add(new clsTooParametros("tapi_method", enumTipoTapiMetodo.list_orders.ToString()));
                vObjParametros.Add(new clsTooParametros("coin_pair", aEnumParMoedas.ToString()));
                if (aEnumTipordem != enumTipoOrdem.Ambas)
                {
                    vObjParametros.Add(new clsTooParametros("order_type", vIntTipoOrdem.ToString()));
                }


                vStrRetornoAPI = this.chamarMetodoAPI_Negociacao(vObjParametros);
                vObjOrders     = new clsApiOrders(vStrRetornoAPI);

                this.tratarErro(vObjOrders.status_code, vObjOrders.error_message);
            }
            catch
            {
                throw;
            }
            return(vObjOrders);
        }
示例#6
0
 public clsCtrOperacao()
 {
     this._ObjAPI      = new clsApiMercadoBitcon();
     this._ObjOrdemAPI = new clsApiOrders();
     this.pConsulta    = null;
 }