def subscribe_trades(self, account_id): fields = ["CONFIRMS", "WOU", "OPU"] subscription = Subscription(mode="DISTINCT", items=["TRADE:" + account_id], fields=fields, adapter="") self.subscribe(subscription) subscription.addlistener(self, IGWatcher.on_trade_update)
def subscribe_account(self, account_id): fields = ["PNL", "AVAILABLE_TO_DEAL", "MARGIN", "FUNDS", "AVAILABLE_CASH"] subscription = Subscription( mode="MERGE", items=["ACCOUNT:"+account_id], fields=fields, adapter="") self.subscribe_ws(subscription) subscription.addlistener(self, IGWatcher.on_account_update)
def subscribe_market(self, instrument): """ Subscribe to an instrument. """ fields = ["MARKET_STATE", "UPDATE_TIME", "BID", "OFFER"] subscription = Subscription(mode="MERGE", items=["MARKET:" + instrument], fields=fields, adapter="") self.subscribe(subscription) subscription.addlistener(self, IGWatcher.on_market_update)
def subscribe_tick(self, instrument): """ Subscribe to an instrument tick updates. """ fields = ["BID", "OFR", "LTP", "LTV", "TTV", "UTM"] subscription = Subscription(mode="DISTINCT", items=["CHART:" + instrument + ":TICK"], fields=fields, adapter="") self.subscribe(subscription) subscription.addlistener(self, IGWatcher.on_tick_update)