コード例 #1
0
        private void ProcessaDia(Ativo ativo, Consts.PERIODO_ACAO periodoAcao, CargaADVFN item)
        {
            Candle  candleAnterior  = null;
            Periodo periodoAnterior = null;

            //i=0 está bugado...

            for (int i = item.t.Count - 1; i > 0; i--)
            {
                //DataDTO data = item.data[i];
                DateTime data = Utils.UnixTimeStampToDateTime(item.t[i]);
                if (!minDateSet)
                {
                    minDate    = data;
                    minDateSet = true;
                }
                if (data.CompareTo(minDate) >= 0)
                {
                    if (ativo.name.Contains("USIM5") && data.Month == 3 && data.Year == 2016 && data.Day > 27)
                    {
                        Console.WriteLine("beep");
                    }

                    if (periodoAcao == Consts.PERIODO_ACAO.DIARIO)
                    {
                        ProcessaPeriodoDiario(ativo, item, ref candleAnterior, ref periodoAnterior, i, data);
                    }
                    if (periodoAcao == Consts.PERIODO_ACAO.SEMANAL)
                    {
                        ProcessaPeriodoSemanal(ativo, item, ref candleAnterior, ref periodoAnterior, i, data);
                    }
                }
            }
        }
コード例 #2
0
ファイル: AtivoLogical.cs プロジェクト: romeogresta/SCA
        public static Ativo ExcluirAtivo(int id)
        {
            try {
                Ativo ativo = new Ativo();

                using (var dbAtivo = new AtivoContext()) {
                    ativo = (
                        from a in dbAtivo.Records
                        where a.ID == id
                        select a).FirstOrDefault();

                    if (ativo != null)
                    {
                        dbAtivo.Records.Remove(ativo);

                        dbAtivo.SaveChanges();
                    }

                    return(ativo);
                }
            }
            catch (Exception e) {
                throw (e);
            }
        }
コード例 #3
0
ファイル: Testes.cs プロジェクト: cristianoferr/BackTester
        public void TestMockAtivo()
        {
            Ativo ativo = facade.GenerateAtivoMock(500);

            Assert.IsNotNull(ativo);
            Assert.IsTrue(ativo.candles.Count == Consts.QTD_ATIVOS_MOCK);
        }
コード例 #4
0
ファイル: Testes.cs プロジェクト: cristianoferr/BackTester
        public void TestFormulas()
        {
            facade = new FacadeBacktester();
            facade.LoadAtivo("PETR4", 100, Consts.PERIODO_ACAO.DIARIO, "dados/petr4-diario.js");
            Ativo ativo = facade.GetAtivo("PETR4");

            FormulaManager fm = facade.formulaManager;

            Assert.IsNotNull(fm.GetFormula("3"));

            Formula f = fm.GetFormula("RSI(HV(SUBTRACT(O,-9),L),C)");

            Assert.IsNotNull(f);

            f = fm.GetFormula("PERCENTIL(SUBTRACT(PERCENTIL(C),C))");
            Assert.IsNotNull(f);

            f = fm.GetFormula("RSI(HV(SUBTRACT(O,-9),L),C)");
            Assert.IsNotNull(f);

            Assert.IsNotNull(fm.GetFormula("MME(C,3)"));

            string fonte    = "C";
            int    periodos = 3;

            validaFormulaMMS(ativo, fm, fonte, periodos);

            periodos = 6;
            fonte    = "MME(O,6)";
            validaFormulaMMS(ativo, fm, fonte, periodos);
        }
コード例 #5
0
ファイル: AtivoLogical.cs プロジェクト: romeogresta/SCA
        public static Ativo AlterarDataManutencao(int id, JsonPatchDocument <Ativo> patch)
        {
            try {
                Ativo ativo = new Ativo();

                using (var dbAtivo = new AtivoContext()) {
                    ativo = (
                        from a in dbAtivo.Records
                        where a.ID == id
                        select a).FirstOrDefault();

                    if (ativo != null)
                    {
                        DateTime datManutencaoAnterior = ativo.DataManutencao;

                        patch.ApplyTo(ativo);

                        dbAtivo.Records.Update(ativo);

                        dbAtivo.SaveChanges();

                        LogManutencaoLogical.IncluirLogManutencao(ativo.ID, datManutencaoAnterior, ativo.DataManutencao);
                    }

                    return(ativo);
                }
            }
            catch (Exception e) {
                throw (e);
            }
        }
コード例 #6
0
        public async Task <IActionResult> Put(int id_ativo, Ativo model)
        {
            try
            {
                var ativo = await _repo.GetAtivoAsyncById(id_ativo);

                if (ativo == null)
                {
                    return(NotFound());
                }

                _repo.Update(model);

                if (await _repo.SaveChangesAsync())
                {
                    return(Created($"/api/ativos/{model.IdAtivo}", ativo));
                }
            }

            catch (System.Exception)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, "Banco de Dados falhou"));
            }
            return(BadRequest());
        }
コード例 #7
0
 public void Finalizando()
 {
     cliente           = null;
     agenteCedente     = null;
     agenteCessionario = null;
     ativo             = null;
 }
コード例 #8
0
        public int Gravar(int Codigo, int Regional, int Filial, int Sala, int Placa, string Tag, string Estado, string Observacao, string Descricao, int TipoAtivo, string Marca, string NumeroSerie, string Modelo, double Valor, string Img, string Latitude, string Longitude, int CodigoNota, string NumeroNota, double ValorNota, DateTime DataEmissao, string Fornecedor, string Cnpj, string NomeAnexo, string Anexo)
        {
            Localizacao Localiza = new Localizacao(Latitude, Longitude, 0);

            List <Imagem> imagens = new List <Imagem>();

            string[] bases64 = Img.Split("**Separdor Imagem**");

            foreach (string i in bases64)
            {
                imagens.Add(new Imagem(0, i, 0));
            }

            Ativo      Ativo = new Ativo(Codigo, Placa, Descricao, Estado, Observacao, Tag, Marca, Modelo, NumeroSerie, true, Valor, TipoAtivo, "", 0, Sala, "", CodigoNota);
            NotaFiscal Nota  = new NotaFiscal(CodigoNota, NumeroNota, ValorNota, DataEmissao, Fornecedor, Cnpj);

            Ativo.SetNota(Nota);

            if (NomeAnexo != "" && NomeAnexo != null)
            {
                Ativo.SetAnexo(new Anexo()
                {
                    Nome   = NomeAnexo,
                    Base64 = Anexo
                });
            }

            return(Ativo.Gravar(imagens, Localiza));
        }
コード例 #9
0
ファイル: AtivoLogical.cs プロジェクト: romeogresta/SCA
        public static Ativo AlterarAtivo(int id, AtivoRequest ativoRequest)
        {
            try {
                Ativo ativo = new Ativo();

                using (var dbAtivo = new AtivoContext()) {
                    ativo = (
                        from a in dbAtivo.Records
                        where a.ID == id
                        select a).FirstOrDefault();

                    if (ativo != null)
                    {
                        ativo.IDCategoriaAtivo = ativoRequest.IDCategoriaAtivo;
                        ativo.Name             = ativoRequest.Name;
                        ativo.DataManutencao   = ativoRequest.DataManutencao;

                        dbAtivo.Records.Update(ativo);

                        dbAtivo.SaveChanges();
                    }

                    return(ativo);
                }
            }
            catch (Exception e) {
                throw (e);
            }
        }
コード例 #10
0
ファイル: Sql.cs プロジェクト: NathanNeves/bahiaapi
 /// <summary>
 /// Método que serve para buscar no banco de dados um Ativo, usando o nome como parametro para busca
 /// </summary>
 /// <param name="nome"></param>
 /// <returns description="Um objeto da Classe Ativo"></returns>
 public Ativo getAtivo(string nome)
 {
     using (SqlConnection conn = new SqlConnection(conString))
     {
         try
         {
             conn.Open();
             //Ativo a ser retornado
             Ativo ativo = new Ativo();
             //Comando Sql usado para selectionar um determinado ativo de acordo com a descricao
             SqlCommand cmd = new SqlCommand("SELECT * FROM Ativo WHERE descricao = @descricao", conn);
             cmd.Parameters.AddWithValue("@descricao", nome);
             SqlDataReader dataReader = cmd.ExecuteReader();
             //Leitor linha a linha do resultado da query
             while (dataReader.Read())
             {
                 int index = 0;
                 ativo.id         = dataReader.GetInt32(index++);
                 ativo.nomeAtivo  = dataReader.GetString(index++);
                 ativo.quantidade = dataReader.GetInt32(index++);
             }
             dataReader.Close();
             return(ativo);
         }
         catch (Exception e)
         {
             throw e;
         }
         finally
         {
             conn.Close();
         }
     }
 }
コード例 #11
0
        private void btnGeraMockGrafico_Click(object sender, EventArgs e)
        {
            int   seed  = int.Parse(txtSeed.Text);
            Ativo ativo = tsController.GenerateMockAtivo(seed);

            ativo.DrawIn(panelGrafico.CreateGraphics());
        }
コード例 #12
0
 public void Clear()
 {
     DIA.Clear();
     Ativo.Clear();
     Vencido.Clear();
     Baixado.Clear();
 }
コード例 #13
0
        public async Task <bool> Handle(AlterarSituacaoAtivoCommand request, CancellationToken cancellationToken)
        {
            Ativo ativo = await _repository.GetById(request.Id);

            ativo.AtualizarSituacao(request.Situacao);
            _repository.Update(ativo);
            return(await _repository.UnitOfWork.Commit());
        }
コード例 #14
0
ファイル: AtivoRepository.cs プロジェクト: peterson3/sca
        public void Alterar(Ativo ativo)
        {
            var atv = _context.Ativos
                      .Find(ativo.Id);

            _context.Entry(atv).CurrentValues.SetValues(ativo);
            _context.SaveChanges();
        }
コード例 #15
0
        public ActionResult DeleteConfirmed(int id)
        {
            Ativo ativo = db.Ativos.Find(id);

            db.Ativos.Remove(ativo);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
コード例 #16
0
        public void ValidacaoAtivo_CamposObrigatoriosNaoPreenchidos_Invalido()
        {
            var ativo = new Ativo {
            };
            var resultadoValidacao = validadorAtivo.Validate(ativo);

            Assert.False(resultadoValidacao.IsValid);
            Assert.Equal(6, resultadoValidacao.Errors.Count);
        }
コード例 #17
0
 private static void CarregaDadosWebSeNaoExisteArquivo(Ativo ativo, string fileName, Consts.TIPO_CARGA_ATIVOS tipoCarga)
 {
     //sempre carrego quando é dado atual...
     if (!File.Exists(fileName) || tipoCarga == Consts.TIPO_CARGA_ATIVOS.DADOS_ATUAIS)
     {
         Utils.Info("Ativo " + ativo.name + " não encontrado... carregando via serviço...");
         AcaoService.RequestData(ativo.name, fileName, tipoCarga);
     }
 }
コード例 #18
0
        public Ativo converterRequestParaAtivo(AdicionarAtivoRequest request)
        {
            var novoAtivo = new Ativo();

            novoAtivo.empresa  = request.empresa;
            novoAtivo.codigoB3 = request.codigoB3;
            novoAtivo.valor    = request.valor;
            return(novoAtivo);
        }
コード例 #19
0
 public IActionResult CadastrarAtivo(Ativo ativo)
 {
     ativos.Add(ativo);
     ViewBag.Ativos = ativos.ToList();
     ViewBag.Trades = trades.ToList();
     ativoId++;
     ViewBag.AtivoId = ativoId;
     return(View("Index"));
 }
コード例 #20
0
 public Posicao(Carteira carteira, Ativo ativo, int idPosicao)
 {
     this.carteira     = carteira;
     this.ativo        = ativo;
     operacoesAbertas  = new List <Operacao>();
     operacoesFechadas = new List <Operacao>();
     saldo             = 0;
     this.idPosicao    = idPosicao;
     direcao           = 0;
 }
コード例 #21
0
        private void ProcessaPeriodoDiario(Ativo ativo, CargaADVFN item, ref Candle candleAnterior, ref Periodo periodoAnterior, int i, DateTime data)
        {
            Periodo periodo = facade.GetPeriodo(data);

            if (ativo.GetCandle(periodo) == null)
            {
                Candle candle = new Candle(periodo, ativo, item.o[i], item.c[i], item.h[i], item.l[i], item.v[i]);
                ProcessaCandle(ativo, ref candleAnterior, ref periodoAnterior, candle);
            }
        }
コード例 #22
0
 public ActionResult Edit([Bind(Include = "ID,Nome,Descricao")] Ativo ativo)
 {
     if (ModelState.IsValid)
     {
         db.Entry(ativo).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(ativo));
 }
コード例 #23
0
        internal bool AtualizarSala(Ativo a)
        {
            b.getComandoSQL().Parameters.Clear();

            b.getComandoSQL().CommandText = @"update Ativos set sal_codigo = @sala where ati_codigo = @codigo;";
            b.getComandoSQL().Parameters.AddWithValue("@codigo", a.GetCodigo());
            b.getComandoSQL().Parameters.AddWithValue("@sala", a.GetSala().GetCodigo());

            return(b.ExecutaComando(true) == 1);
        }
コード例 #24
0
ファイル: Carteira.cs プロジェクト: cristianoferr/BackTester
        public int PossuiAtivo(Ativo ativo)
        {
            if (!posicoesAbertas.ContainsKey(ativo))
            {
                return(0);
            }
            Posicao p = posicoesAbertas[ativo];

            return(p.saldo * p.direcao);
        }
コード例 #25
0
 public ActionResult Edit([Bind(Include = "Id,Descricao,Local,Tipo,UsuarioId")] Ativo ativo)
 {
     if (ModelState.IsValid)
     {
         db.Entry(ativo).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.UsuarioId = new SelectList(db.Usuarios, "Id", "Nome", ativo.UsuarioId);
     return(View(ativo));
 }
コード例 #26
0
        public ActionResult Create([Bind(Include = "ID,Nome,Descricao")] Ativo ativo)
        {
            if (ModelState.IsValid)
            {
                db.Ativoes.Add(ativo);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(ativo));
        }
コード例 #27
0
ファイル: Carteira.cs プロジェクト: cristianoferr/BackTester
        public Posicao GetPosicaoDoAtivo(Ativo ativo)
        {
            if (posicoesAbertas.ContainsKey(ativo))
            {
                return(posicoesAbertas[ativo]);
            }
            Posicao posicao = new Posicao(this, ativo, countPosicoes++);

            posicoesAbertas.Add(ativo, posicao);
            return(posicao);
        }
コード例 #28
0
        public ActionResult Create([Bind(Include = "Id,Descricao,Local,Tipo,UsuarioId")] Ativo ativo)
        {
            if (ModelState.IsValid)
            {
                db.Ativos.Add(ativo);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.UsuarioId = new SelectList(db.Usuarios, "Id", "Nome", ativo.UsuarioId);
            return(View(ativo));
        }
コード例 #29
0
 public void Finalizando()
 {
     mock              = null;
     agenteCedente     = null;
     agenteCessionario = null;
     ativo1            = null;
     ativo2            = null;
     CPF_INVALIDO      = String.Empty;
     CPF_VALIDO        = String.Empty;
     CNPJ_VALIDO       = String.Empty;
     CNPJ_INVALIDO     = String.Empty;
 }
コード例 #30
0
        public void LoadAtivo(string papel, int loteMin, Consts.PERIODO_ACAO periodo, string fileName, Consts.TIPO_CARGA_ATIVOS tipoCarga = backend.Consts.TIPO_CARGA_ATIVOS.GERA_CANDIDATOS)
        {
            Ativo ativo = dh.GetOrCreateAtivo(papel, loteMin);

            if (ativo.candles.Count > 0)
            {
                return;
            }
            if (!dm.LoadAtivo(ativo, periodo, fileName, tipoCarga))
            {
                dh.RemoveAtivo(ativo);
            }
        }