示例#1
0
        public static QuickFix.TimeInForce deOrdemValidadeParaTimeInForce(OrdemValidadeEnum ordValidade)
        {
            QuickFix.TimeInForce retorno = null;

            switch (ordValidade)
            {
            case OrdemValidadeEnum.ValidaParaODia:
                retorno = new QuickFix.TimeInForce(QuickFix.TimeInForce.DAY);
                break;

            case OrdemValidadeEnum.ExecutaIntegralParcialOuCancela:
                retorno = new QuickFix.TimeInForce(QuickFix.TimeInForce.IMMEDIATEORCANCEL);
                break;

            case OrdemValidadeEnum.ExecutaIntegralOuCancela:
                retorno = new QuickFix.TimeInForce(QuickFix.TimeInForce.FILL_OR_KILL);
                break;

            case OrdemValidadeEnum.ValidaAteSerCancelada:
                retorno = new QuickFix.TimeInForce(QuickFix.TimeInForce.GOOD_TILL_CANCEL);
                break;

            case OrdemValidadeEnum.ValidoAteDeterminadaData:
                retorno = new QuickFix.TimeInForce(QuickFix.TimeInForce.GOOD_TILL_DATE);
                break;

            case OrdemValidadeEnum.ValidaParaAberturaDoMercado:
                retorno = new QuickFix.TimeInForce(QuickFix.TimeInForce.ATTHEOPENING);
                break;

            case OrdemValidadeEnum.FechamentoDoMercado:
                retorno = new QuickFix.TimeInForce(QuickFix.TimeInForce.ATTHECLOSE);
                break;

            case OrdemValidadeEnum.BoaParaLeilao:
                retorno = new QuickFix.TimeInForce('A');
                break;

            default:
                logger.Error("TradutorFix.deOrdemValidadeParaTimeInForce() - Validade de ordem não implementado: " + ordValidade.ToString());
                retorno = null;
                break;
            }

            return(retorno);
        }
示例#2
0
        public static OrdemValidadeEnum TraduzirOrdemValidade(char valor)
        {
            // Decide
            OrdemValidadeEnum retorno = OrdemValidadeEnum.NaoImplementado;

            switch (valor)
            {
            case QuickFix.TimeInForce.DAY:
                retorno = OrdemValidadeEnum.ValidaParaODia;
                break;

            case QuickFix.TimeInForce.IMMEDIATEORCANCEL:
                retorno = OrdemValidadeEnum.ExecutaIntegralParcialOuCancela;
                break;

            case QuickFix.TimeInForce.FILL_OR_KILL:
                retorno = OrdemValidadeEnum.ExecutaIntegralOuCancela;
                break;

            case QuickFix.TimeInForce.GOOD_TILL_CANCEL:
                retorno = OrdemValidadeEnum.ValidaAteSerCancelada;
                break;

            case QuickFix.TimeInForce.GOOD_TILL_DATE:
                retorno = OrdemValidadeEnum.ValidoAteDeterminadaData;
                break;

            case QuickFix.TimeInForce.ATTHEOPENING:
                retorno = OrdemValidadeEnum.ValidaParaAberturaDoMercado;
                break;

            default:
                logger.Error("TradutorFix.TraduzirOrdemValidade() - Validade de ordem não implementado: " + valor.ToString());
                retorno = OrdemValidadeEnum.NaoImplementado;
                break;
            }

            // Retorna
            return(retorno);
        }