private void ArmarStopLoss(int idCliente, string Instrumento, decimal preco, decimal preco2, StopStartTipoEnum StopStartTipo) { try { //AutomacaoOrdensInfo _Order = new AutomacaoOrdensInfo(); ///* //_Order.IdBolsa = 1; //_Order.IdCliente = idCliente; //_Order.IdMercadoTipo = 1; //_Order.IdStopstartStatus = (int)OrdemStopStatus.Registrado; //_Order.IdStopStartTipo = StopStartTipo; //_Order.Instrumento = Instrumento; //_Order.DataValidade = DateTime.Now; //*/ //_Order.IdBolsa = 1; //_Order.Symbol = Instrumento; //_Order.StopStartStatusID = (int)OrdemStopStatus.RegistradaAplicacao; //_Order.ExpireDate = DateTime.Now; //_Order.Account = idCliente; //_Order.OrdTypeID = 'S'; //_Order.IdStopStartTipo = StopStartTipo; ////_Order. //if (StopStartTipo == StopStartTipoEnum.StopLoss) //{ // _Order.SendStopGainPrice = null; // _Order.StopGainValuePrice = null; // _Order.StopLossValuePrice = preco; // _Order.SendStopLossValuePrice = preco2; // _Order.OrderQty = 100; // _Order.AdjustmentMovelPrice = null; // _Order.InitialMovelPrice = null; // ArmarStartStopResponse _Response = _Servico.ArmarStopLoss( // new ArmarStartStopRequest() // { // _AutomacaoOrdensInfo = _Order // }); // Registrador.AddEvent(EventMds, Eventos); // if (Contexto.SocketPrincipal != null) // { // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); // } // else // { // Console.WriteLine("Cliente não esta conectado."); // } //} //if (StopStartTipo == StopStartTipoEnum.StopGain) //{ // _Order.StopGainValuePrice = preco; // _Order.SendStopGainPrice = 35.60M; // _Order.StopLossValuePrice = null; // _Order.SendStopLossValuePrice = null; // _Order.OrderQty = 100; // _Order.AdjustmentMovelPrice = null; // _Order.InitialMovelPrice = null; // ArmarStartStopResponse _Response = _Servico.ArmarStopGain( // new ArmarStartStopRequest() // { // _AutomacaoOrdensInfo = _Order // }); // Registrador.AddEvent(EventMds, Eventos); // if (Contexto.SocketPrincipal != null) // { // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); // } // else // { // Console.WriteLine("Cliente não esta conectado."); // } //} //if (StopStartTipo == StopStartTipoEnum.StopSimultaneo) //{ // _Order.StopLossValuePrice = preco; // _Order.StopGainValuePrice = preco2; // _Order.SendStopGainPrice = 34.90M; // _Order.SendStopLossValuePrice = 34.50M; // _Order.OrderQty = 100; // _Order.AdjustmentMovelPrice = null; // _Order.InitialMovelPrice = null; // ArmarStartStopResponse _Response = _Servico.ArmarStopSimultaneo( // new ArmarStartStopRequest() // { // _AutomacaoOrdensInfo = _Order // }); // Registrador.AddEvent(EventMds, Eventos); // if (Contexto.SocketPrincipal != null) // { // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); // } // else // { // Console.WriteLine("Cliente não esta conectado."); // } //} //if (StopStartTipo == StopStartTipoEnum.StartCompra) //{ // _Order.StartPriceValue = preco; // _Order.SendStartPrice = preco2; // _Order.StopLossValuePrice = null; // _Order.SendStopLossValuePrice = null; // _Order.OrderQty = 100; // _Order.AdjustmentMovelPrice = null; // _Order.InitialMovelPrice = null; // ArmarStartStopResponse _Response = _Servico.ArmarStartCompra( // new ArmarStartStopRequest() // { // _AutomacaoOrdensInfo = _Order // }); // Registrador.AddEvent(EventMds, Eventos); // if (Contexto.SocketPrincipal != null) // { // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); // } // else // { // Console.WriteLine("Cliente não esta conectado."); // } //} //if (StopStartTipo == StopStartTipoEnum.StopMovel) //{ // _Order.StartPriceValue = preco; // _Order.SendStartPrice = preco2; // _Order.StopLossValuePrice = null; // _Order.SendStopLossValuePrice = null; // _Order.OrderQty = 100; // _Order.AdjustmentMovelPrice = decimal.Parse(txtAdjMovelPrice.Text); // _Order.InitialMovelPrice = decimal.Parse(txtInitialMovelPrice.Text); // ArmarStartStopResponse _Response = _Servico.ArmarStartCompra( // new ArmarStartStopRequest() // { // _AutomacaoOrdensInfo = _Order // }); // Registrador.AddEvent(EventMds, Eventos); // if (Contexto.SocketPrincipal != null) // { // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); // } // else // { // Console.WriteLine("Cliente não esta conectado."); // } //} } catch (Exception ex) { throw new Exception(string.Format("{0}{1}", "Ocorreu um erro ao armar o StopLoss: ", ex.Message)); } }
private void btnDisparar_Click(object sender, EventArgs e) { StopStartTipoEnum StopStartTipo = (StopStartTipoEnum)(int.Parse(cbTipoOrdem.SelectedValue.ToString())); ArmarStopLoss(int.Parse(txtCodigoCliente.Text), txtInstrumento.Text, decimal.Parse(txtPreco.Text), decimal.Parse(txtPreco2.Text), StopStartTipo); }
private void ArmarStopLoss(int idCliente, string Instrumento, decimal preco, decimal preco2, StopStartTipoEnum StopStartTipo) { try { _Servico = Ativador.Get <IServicoOrdemStopStart>(); if (_Servico != null) { AutomacaoOrdensInfo _Order = new AutomacaoOrdensInfo(); ///* //_Order.IdBolsa = 1; //_Order.IdCliente = idCliente; //_Order.IdMercadoTipo = 1; //_Order.IdStopstartStatus = (int)OrdemStopStatus.Registrado; //_Order.IdStopStartTipo = StopStartTipo; //_Order.Instrumento = Instrumento; //_Order.DataValidade = DateTime.Now; //*/ _Order.IdBolsa = 1; _Order.Symbol = Instrumento; _Order.StopStartStatusID = (int)OrdemStopStatus.RegistradaAplicacao; _Order.ExpireDate = DateTime.Now; _Order.Account = idCliente; _Order.OrdTypeID = 83; //--StopStart _Order.IdStopStartTipo = StopStartTipo; ////_Order. if (StopStartTipo == StopStartTipoEnum.StopLoss) { _Order.SendStopGainPrice = null; _Order.StopGainValuePrice = null; _Order.StopLossValuePrice = preco; _Order.SendStopLossValuePrice = preco2; _Order.StartPriceValue = null; _Order.OrderQty = 100; _Order.AdjustmentMovelPrice = Conversao.ToDecimal(txtAdjMovelPrice.Text); _Order.InitialMovelPrice = Conversao.ToDecimal(txtInitialMovelPrice.Text); _Order.AdjustmentMovelPrice = null; _Order.InitialMovelPrice = null; ArmarStartStopResponse _Response = _Servico.ArmarStopStartGeral( new ArmarStartStopRequest() { _AutomacaoOrdensInfo = _Order }); //_Servico.ArmarStopLoss(new ArmarStartStopRequest() { _AutomacaoOrdensInfo = _Order }); //Registrador.AddEvent(EventMds, Eventos); //if (Contexto.SocketPrincipal != null) //{ // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); //} //else //{ // Console.WriteLine("Cliente não esta conectado."); //} } if (StopStartTipo == StopStartTipoEnum.StopGain) { _Order.StopGainValuePrice = preco; _Order.SendStopGainPrice = preco2; _Order.StopLossValuePrice = null; _Order.SendStopLossValuePrice = null; _Order.OrderQty = 90; _Order.AdjustmentMovelPrice = null; _Order.InitialMovelPrice = null; ArmarStartStopResponse _Response = _Servico.ArmarStopStartGeral( new ArmarStartStopRequest() { _AutomacaoOrdensInfo = _Order }); //Registrador.AddEvent(EventMds, Eventos); txtHistorico.Text += _Response.DescricaoResposta + "\n"; //if (Contexto.SocketPrincipal != null) //{ // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); //} //else //{ // Console.WriteLine("Cliente não esta conectado."); //} } if (StopStartTipo == StopStartTipoEnum.StopSimultaneo) { _Order.StopLossValuePrice = preco; _Order.StopGainValuePrice = preco2; _Order.SendStopGainPrice = Convert.ToDecimal(txtSendGain.Text); _Order.SendStopLossValuePrice = Convert.ToDecimal(txtSendLoss.Text); _Order.OrderQty = 1; //_Order.AdjustmentMovelPrice = Convert.ToDecimal(txtAdjMovelPrice.Text); //_Order.InitialMovelPrice = Convert.ToDecimal(txtInitialMovelPrice.Text); ArmarStartStopResponse _Response = _Servico.ArmarStopStartGeral( new ArmarStartStopRequest() { _AutomacaoOrdensInfo = _Order }); txtHistorico.Text += string.Concat(_Response.DescricaoResposta, "\n"); //if (Contexto.SocketPrincipal != null) //{ // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); //} //else //{ // Console.WriteLine("Cliente não esta conectado."); //} } if (StopStartTipo == StopStartTipoEnum.StartCompra) { _Order.StartPriceValue = preco; _Order.SendStartPrice = preco2; _Order.StopLossValuePrice = null; _Order.SendStopLossValuePrice = null; _Order.OrderQty = 90; _Order.AdjustmentMovelPrice = null; _Order.InitialMovelPrice = null; ArmarStartStopResponse _Response = _Servico.ArmarStopStartGeral( new ArmarStartStopRequest() { _AutomacaoOrdensInfo = _Order }); //Registrador.AddEvent(EventMds, Eventos); //if (Contexto.SocketPrincipal != null) //{ // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); //} //else //{ // Console.WriteLine("Cliente não esta conectado."); //} } //if (StopStartTipo == StopStartTipoEnum.StopMovel) //{ // _Order.StartPriceValue = preco; // _Order.SendStartPrice = preco2; // _Order.StopLossValuePrice = null; // _Order.SendStopLossValuePrice = null; // _Order.OrderQty = 100; // _Order.AdjustmentMovelPrice = decimal.Parse(txtAdjMovelPrice.Text); // _Order.InitialMovelPrice = decimal.Parse(txtInitialMovelPrice.Text); // ArmarStartStopResponse _Response = _Servico.ArmarStartCompra( // new ArmarStartStopRequest() // { // _AutomacaoOrdensInfo = _Order // }); // //Registrador.AddEvent(EventMds, Eventos); // if (Contexto.SocketPrincipal != null) // { // Console.WriteLine(string.Format("{0}{1}{2}{3}", "Stop armado com sucesso: ", _Order.Symbol, " - " + _Order.StopStartID.ToString(), " - " + _Order.StopLossValuePrice.ToString())); // } // else // { // Console.WriteLine("Cliente não esta conectado."); // } //} } } catch (Exception ex) { throw new Exception(string.Format("{0}{1}", "Ocorreu um erro ao armar o StopLoss: ", ex.Message)); } }