Ejemplo n.º 1
0
        public DateTime AdvanceToThisDayOpen(DateTime dateTimeServer)
        {
            DateTime ret = new DateTime(dateTimeServer.Year, dateTimeServer.Month, dateTimeServer.Day,
                                        this.MarketOpenServerTime.Hour, this.MarketOpenServerTime.Minute, this.MarketOpenServerTime.Second);
            MarketShortDay shortDay = this.getShortMarketDayForServerTime(ret);

            if (shortDay != null)
            {
                ret = new DateTime(ret.Year, ret.Month, ret.Day, shortDay.ServerTimeOpening.Hour,
                                   shortDay.ServerTimeOpening.Minute, shortDay.ServerTimeOpening.Second);
            }
            return(ret);
        }
Ejemplo n.º 2
0
        public void GetRegularOrShortDayOpenCloseMarketTimeForServerDate(DateTime dateTimeServer
                                                                         , out DateTime openTime, out DateTime closeTime)
        {
            openTime  = this.MarketOpenServerTime;
            closeTime = this.MarketCloseServerTime;
            MarketShortDay shortDay = getShortMarketDayForServerTime(dateTimeServer);

            if (shortDay != null)
            {
                openTime  = shortDay.ServerTimeOpening;
                closeTime = shortDay.ServerTimeClosing;
            }
            return;
        }
Ejemplo n.º 3
0
        public DateTime AdvanceToNextDayOpen(DateTime dateTimeServer)
        {
            DateTime ret = new DateTime(dateTimeServer.Year, dateTimeServer.Month, dateTimeServer.Day,
                                        this.MarketOpenServerTime.Hour, this.MarketOpenServerTime.Minute, this.MarketOpenServerTime.Second);

            do
            {
                ret = ret.AddDays(1.0);
            } while (!this.IsTradeableDayServerTime(ret));
            MarketShortDay shortDay = this.getShortMarketDayForServerTime(ret);

            if (shortDay != null)
            {
                ret = new DateTime(ret.Year, ret.Month, ret.Day, shortDay.ServerTimeOpening.Hour,
                                   shortDay.ServerTimeOpening.Minute, shortDay.ServerTimeOpening.Second);
            }
            return(ret);
        }
Ejemplo n.º 4
0
        private bool isMarketBeforeOpenServerTime(DateTime dateTimeServer)
        {
            DateTime       GenericOrShortDayOpenTimeServer = this.MarketOpenServerTime;
            MarketShortDay shortDay = this.getShortMarketDayForServerTime(dateTimeServer);

            if (shortDay != null)
            {
                GenericOrShortDayOpenTimeServer = shortDay.ServerTimeClosing;
            }
            if (this.IsTradeableDayServerTime(dateTimeServer) == false)
            {
                return(false);
            }
            if (dateTimeServer.Hour == GenericOrShortDayOpenTimeServer.Hour)
            {
                return(dateTimeServer.Minute < GenericOrShortDayOpenTimeServer.Minute);
            }
            return(dateTimeServer.Hour < GenericOrShortDayOpenTimeServer.Hour);
        }
Ejemplo n.º 5
0
        bool isMarketAfterCloseServerTime(DateTime dateTimeServer)
        {
            DateTime       GenericOrShortDayCloseTimeServer = this.MarketCloseServerTime;
            MarketShortDay shortDay = this.getShortMarketDayForServerTime(dateTimeServer);

            if (shortDay != null)
            {
                GenericOrShortDayCloseTimeServer = shortDay.ServerTimeClosing;
            }
            if (this.IsTradeableDayServerTime(dateTimeServer) == false)
            {
                return(false);
            }
            if (dateTimeServer.Hour == GenericOrShortDayCloseTimeServer.Hour)
            {
                return(dateTimeServer.Minute > GenericOrShortDayCloseTimeServer.Minute);
            }
            return(dateTimeServer.Hour > GenericOrShortDayCloseTimeServer.Hour);
        }