Exemplo n.º 1
0
from datetime import datetime, timedelta

import gevent
from rx.concurrency.historicalscheduler import HistoricalScheduler

from algotrader.event.market_data import Bar, BarSize
from algotrader.utils.clock import RealTimeClock
from algotrader.utils.date_utils import DateUtils

realtime_clock = RealTimeClock()


class HistoricalScheduler2(HistoricalScheduler):
    def __init__(self, initial_clock=None, comparer=None):
        def compare_datetimes(a, b):
            return (a > b) - (a < b)

        clock = initial_clock or datetime.fromtimestamp(0)
        comparer = comparer or compare_datetimes
        super(HistoricalScheduler2, self).__init__(clock, comparer)

    def now(self):
        return self.clock

    @staticmethod
    def add(absolute, relative):

        if isinstance(relative, int):
            return absolute + timedelta(milliseconds=relative)
        elif isinstance(relative, float):
            return absolute + timedelta(seconds=relative)
Exemplo n.º 2
0
 def setUp(self):
     self.simluation_clock = SimulationClock()
     self.realtime_clock = RealTimeClock()
     self.simluation_clock.reset()
     self.endtime = []
     self.simluation_clock.update_time(ClockTest.ts)
Exemplo n.º 3
0
 def __get_clock(self):
     if self.app_config.clock_type == Clock.RealTime:
         return RealTimeClock()
     return SimulationClock()