def getBalance(self, coin):
    if coin not in coin_balance_map:
      print("Error QuadrigaExchange.getBalance(): Coin not in coin_balance_map")
      return False, ""

    client = QuadrigaClient(api_key=self.key,
                            api_secret=self.secret,
                            client_id=self.client_id,
                            timeout=None,
                            session=None,
                            logger=None)
    res = client.get_balance()
    return res[coin_balance_map[coin][0]], res[coin_balance_map[coin][1]], res[coin_balance_map[coin][2]]
  def withdraw(self, coin, amount, to_address):
    if coin not in coin_map:
        print("Error QuadrigaExchange.withdraw(): Coin not in coin_map")
        return False, ""

    client = QuadrigaClient(api_key=self.key,
                            api_secret=self.secret,
                            client_id=self.client_id,
                            timeout=None,
                            session=None,
                            logger=None)

    res = client.withdraw(coin_abbrev_map[coin], amount, to_address)
    print("withdraw response:", res)
Beispiel #3
0
def main():

    API_setup = APISetup()

    # Initialize the QuadrigaCX client
    client = QuadrigaClient(api_key=API_setup.client['api_key'],
                            api_secret=API_setup.client['api_secret'],
                            client_id=API_setup.client['client_id'],
                            default_book=API_setup.client['default_book'])

    summary = client.get_summary()

    balance = client.get_balance()
    pass
Beispiel #4
0
def build_client(default_book=test_book):
    return QuadrigaClient(
        api_key=test_key,
        api_secret=test_secret,
        client_id=test_client_id,
        default_book=default_book
    )
Beispiel #5
0
def client(session, logger):
    return QuadrigaClient(api_key=api_key,
                          api_secret=api_secret,
                          client_id=client_id,
                          timeout=timeout,
                          session=session,
                          logger=logger)
  def sell_limit(self, coin, amount=0, price=0):
    if amount == 0:
      print("Error QuadrigaExchange.sell(): Enter a valid coin amount to sell")
      return False, ""

    if coin not in coin_map:
      print("Error QuadrigaExchange.sell(): Coin not in coin_map")
      return False, ""

    client = QuadrigaClient(api_key=self.key,
                              api_secret=self.secret,
                              client_id=self.client_id,
                              timeout=None,
                              session=None,
                              logger=None)

    pair = coin_map[coin]
    res = client.book(pair).sell_limit_order(amount, price)

    return True, res
import time
from datetime import datetime
from config import config
from quadriga import QuadrigaClient
from db import Data
import sms_client
import logging as log

log.basicConfig(
    filename="notification_worker.log",
    level=log.INFO,
    format='%(asctime)s %(levelname)s %(message)s',
)

daemon_config = config["daemon"]
qClient = QuadrigaClient()
data = Data()


def worker():
    while True:

        cache = {}  # avoid to call quadriga multiple times for the same book

        # Getting pending notifications
        log.info("Querying DB for pending notifications")
        notifications = data.select_untriggered()
        if not len(notifications):
            log.info("No pending notifications this time")

        for notification in notifications:
Beispiel #8
0
from quadriga import QuadrigaClient
import datetime
import sqlite3

# Initialize the QuadrigaCX client
client = QuadrigaClient(api_key='api_key',
                        api_secret='api_secret',
                        client_id='client_id',
                        default_book='bch_cad')

# Initialize SQLite database
conn = sqlite3.connect('quadrigaData.db')
c = conn.cursor()


def main():
    orderTimeStamp, orderBids, orderAsks = pullPublicOrders()
    writeListToSQLdb(orderTimeStamp, 0, orderBids)
    writeListToSQLdb(orderTimeStamp, 1, orderAsks)
    conn.close()


def pullPublicOrders():
    orderData = client.get_public_orders()
    orderTimeStamp = int(orderData['timestamp'])
    orderBids = [[float(bid[0]), float(bid[1])] for bid in orderData['bids']]
    orderAsks = [[float(ask[0]), float(ask[1])] for ask in orderData['asks']]

    return (orderTimeStamp, orderBids, orderAsks)
    #print(datetime.datetime.fromtimestamp(ordersTimeStamp))
Beispiel #9
0
from quadriga import QuadrigaClient
import numpy
import settings

client = QuadrigaClient(
    api_key=settings.API_KEY,
    api_secret=settings.API_SECRET,
    client_id=settings.CLIENT_ID,
    default_book=settings.CURRENCY + '_cad'
)

class QuadrigaSummary:
    def __init__(self):
        summary = client.get_summary()
        self.high = summary['high']
        self.last = summary['last']
        self.timestamp = summary['timestamp']
        self.volume = summary['volume']
        self.vwap = summary['vwap']
        self.low = summary['low']
        self.ask = summary['ask']
        self.bid = summary['bid']

    def update(self):
        summary = client.get_summary()
        self.high = summary['high']
        self.last = summary['last']
        self.timestamp = summary['timestamp']
        self.volume = summary['volume']
        self.vwap = summary['vwap']
        self.low = summary['low']