def main(): backtest_config = BacktestingConfig( id="down2%-test-config", stg_id="down2%", stg_cls='algotrader.strategy.down_2pct_strategy.Down2PctStrategy', portfolio_id='test', portfolio_initial_cash=100000, instrument_ids=[1], subscription_types=[ BarSubscriptionType(bar_type=BarType.Time, bar_size=BarSize.D1) ], from_date=date(2010, 1, 1), to_date=date.today(), broker_id=Broker.Simulator, feed_id=Feed.CSV, stg_configs={'qty': 1000}, ref_data_mgr_type=RefDataManager.DB, persistence_config=backtest_mongo_persistance_config(), provider_configs=[ MongoDBConfig(), CSVFeedConfig(path='../../data/tradedata') ]) app_context = ApplicationContext(app_config=backtest_config) BacktestRunner(True).start(app_context)
def get_default_app_context(): config = MongoDBConfig() persistence_config = PersistenceConfig( None, DataStore.Mongo, PersistenceMode.Batch, DataStore.Mongo, PersistenceMode.Batch, DataStore.Mongo, PersistenceMode.Batch, DataStore.Mongo, PersistenceMode.Batch) app_config = ApplicationConfig(None, None, None, persistence_config, config) return ApplicationContext(app_config=app_config)
def app_context(): persistence_config = PersistenceConfig(None, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime) app_config = ApplicationConfig(id=None, ref_data_mgr_type=RefDataManager.DB, clock_type=Clock.RealTime, persistence_config=persistence_config, provider_configs=[MongoDBConfig(), IBConfig(client_id=2, use_gevent=True)]) app_context = ApplicationContext(app_config=app_config) return app_context
def get_default_app_context(): config = MongoDBConfig() persistence_config = PersistenceConfig( None, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime) app_config = ApplicationConfig("InstrumentImport", RefDataManager.DB, Clock.Simulation, persistence_config, config) return ApplicationContext(app_config=app_config)
def test_bar(): config = MongoDBConfig() store = MongoDBDataStore(config) store.start() for x in range(0, 10): data = sorted([random.randint(0, 100) for i in range(0, 4)]) bar = Bar(inst_id=3, open=data[1], high=data[3], low=data[0], close=data[2], vol=random.randint(100, 1000)) store.save(bar) print bar time.sleep(1)
def main(): persistence_config = PersistenceConfig( None, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime, DataStore.Mongo, PersistenceMode.RealTime) app_config = RealtimeMarketDataImporterConfig( None, feed_id=Broker.IB, instrument_ids=[3], subscription_types=[ BarSubscriptionType(bar_type=BarType.Time, bar_size=BarSize.D1) ], ref_data_mgr_type=RefDataManager.InMemory, clock_type=Clock.RealTime, persistence_config=persistence_config, provider_configs=[MongoDBConfig(), IBConfig(client_id=2)]) app_context = ApplicationContext(app_config=app_config) MktDataImporter().start(app_context)
broker.on_ord_cancel_req(order) time.sleep(5) if __name__ == "__main__": logger.setLevel(logging.DEBUG) persistence_config = PersistenceConfig( None, DataStore.InMemoryDB, PersistenceMode.RealTime, DataStore.InMemoryDB, PersistenceMode.RealTime, DataStore.InMemoryDB, PersistenceMode.RealTime, DataStore.InMemoryDB, PersistenceMode.RealTime) app_config = RealtimeMarketDataImporterConfig( None, RefDataManager.InMemory, Clock.RealTime, Broker.IB, [3], [BarSubscriptionType(bar_type=BarType.Time, bar_size=BarSize.D1)], persistence_config, MongoDBConfig(), IBConfig(client_id=2, use_gevent=True)) app_context = ApplicationContext(app_config=app_config) app_context.start() broker = app_context.provider_mgr.get(Broker.IB) broker.start(app_context) # test_sub_hist_bar(broker) test_sub_realtime_bar(broker) time.sleep(1000) # test_sub_realtime_trade(broker) # test_sub_realtime_quote(broker)
# name = "test_%s" % int(time.time() * 1000) name = "test" create_at_start = True cass_delete_at_stop = False mongo_delete_at_stop = True im_memory_delete_at_stop = True app_config = ApplicationConfig( None, None, Clock.RealTime, persistence_config, provider_configs=[ MongoDBConfig(dbname=name, create_at_start=create_at_start, delete_at_stop=mongo_delete_at_stop), CassandraConfig(contact_points=['127.0.0.1'], keyspace=name, create_at_start=create_at_start, delete_at_stop=cass_delete_at_stop), InMemoryStoreConfig(file="%s_db.p" % name, create_at_start=create_at_start, delete_at_stop=im_memory_delete_at_stop) ]) context = ApplicationContext(app_config=app_config) clock = context.clock mongo = context.provider_mgr.get(DataStore.Mongo) cassandra = context.provider_mgr.get(DataStore.Cassandra) inmemory = context.provider_mgr.get(DataStore.InMemory)
broker.on_ord_cancel_req(order) time.sleep(5) if __name__ == "__main__": logger.setLevel(logging.DEBUG) persistence_config = PersistenceConfig(None, DataStore.InMemory, PersistenceMode.RealTime, DataStore.InMemory, PersistenceMode.RealTime, DataStore.InMemory, PersistenceMode.RealTime, DataStore.InMemory, PersistenceMode.RealTime) app_config = RealtimeMarketDataImporterConfig(None, RefDataManager.InMemory, Clock.RealTime, Broker.IB, [3], [BarSubscriptionType(bar_type=BarType.Time, bar_size=BarSize.D1)], persistence_config, MongoDBConfig(), IBConfig(client_id=2, use_gevent=True)) app_context = ApplicationContext(app_config=app_config) app_context.start() broker = app_context.provider_mgr.get(Broker.IB) broker.start(app_context) # test_sub_hist_bar(broker) test_sub_realtime_bar(broker) time.sleep(1000) # test_sub_realtime_trade(broker) # test_sub_realtime_quote(broker)