Exemplo n.º 1
0
 def __init__(self, *args, **kwargs):
     super().__init__(*args, **kwargs)
     redis_domain = get_env(env.REDIS_DOMAIN)
     redis_password = get_env(env.REDIS_PASSWORD)
     self.redis = redis.StrictRedis(redis_domain,
                                    6379,
                                    encoding="utf-8",
                                    decode_responses=True,
                                    password=redis_password)
Exemplo n.º 2
0
    def stream(self, callback, instruments=None):
        accountID = get_env(env.OANDA_DEFAULT_ACCOUNT)
        token = get_env(env.OANDA_TOKEN)
        headers = {"Authorization": f"Bearer {token}"}
        if instruments is None:
            instruments = ["EUR_USD", "USD_JPY", "AUD_USD", "USD_CAD", "USD_CHF", "USD_JPY", "EUR_JPY", "GBP_USD"]

        instrument_url = ""
        for instrument in instruments:
            instrument_url = instrument_url + f"{instrument}%2C"

        stream_domain = get_env(env.OANDA_STREAM_DOMAIN)
        the_url = f"https://{stream_domain}/v3/accounts/{accountID}/pricing/stream?instruments={instrument_url}"
        r = requests.get(the_url, stream=True, headers=headers)

        print(">>>> Pricing service online! <<<<<")
        for line in r.iter_lines():
            if line:
                line = json.loads(line.decode('utf-8'))
                if line["type"] == "PRICE":
                    callback(line)
Exemplo n.º 3
0
 def get_dependencies():
     access_token = get_env(env.OANDA_TOKEN)
     oanda_trade_domain = get_env(env.OANDA_TRADE_DOMAIN)
     api = v20.Context(oanda_trade_domain, 443, token=access_token)
     account_id = get_env(env.OANDA_DEFAULT_ACCOUNT)
     return api, account_id
Exemplo n.º 4
0
 def __init__(self, *args, **kwargs):
     super().__init__(*args, **kwargs)
     uri = get_env(env.MONGODB_FULL_URL)
     self.client = MongoClient(uri)
Exemplo n.º 5
0
 def get_dependencies():
     oanda_trade_domain = get_env(env.OANDA_TRADE_DOMAIN)
     access_token = get_env(env.OANDA_TOKEN)
     account_id = get_env(env.OANDA_DEFAULT_ACCOUNT)
     return oanda_trade_domain, access_token, account_id
Exemplo n.º 6
0
 def __init__(self, *args, **kwargs):
     super().__init__(*args, **kwargs)
     sid = get_env(env.TWILIO_SID)
     token = get_env(env.TWILIO_TOKEN)
     self.client = Client(sid, token)