Trading Endpoints

class allcoin.client.Client(api_key, api_secret, requests_params=None)[source]
batch_orders(symbol, order_data, order_type=None)[source]

Create an order

Parameters:
  • symbol (str) – required
  • order_data (list of dicts) – list of dictionaries of price, amount and type
  • order_type (str) – optional buy/sell default used if type not set in order_data dict
order_data = [
    {
        "price": "0.0123",
        "amount": "120",
        "type": "sell"
    },
    {
        "price": "0.0112",
        "amount": "110"
    }
]
order = client.create_order('eth_btc', order_data, type='buy')
Returns:API response
{
    "order_info":[
        {"order_id":41724206},
        {"error_code":10011,"order_id":-1},
        {"error_code":10014,"order_id":-1}
    ],
    "result":true
}
Raises:AllcoinResponseException, BinanceAPIException
cancel_order(symbol, order_id)[source]

Cancel an order or up to 3 orders

Parameters:
  • symbol (str) – required
  • order_id (str) – order ID (multiple orders are separated by a comma ‘,’, 3 orders at most are allowed per request)
# single order
order = client.cancel_order('eth_btc', '123456')

# multiple orders
order = client.cancel_order('eth_btc', '123456,123457,123557')
Returns:API response
# single order id
{
    "order_id": "123456",
    "result": true
}

# multiple order ids
{
    "success":"123456,123457",
    "error":"123458"
}
Raises:AllcoinResponseException, BinanceAPIException
create_buy_order(symbol, price, amount)[source]

Create a buy order

Parameters:
  • symbol (str) – required
  • price (str) – order price
  • amount (str) – order quantity
# default
order = client.create_buy_order('eth_btc', '0.2348', '100')
Returns:API response
{
    "order_id": "123456",
    "result": true
}
Raises:AllcoinResponseException, BinanceAPIException
create_order(symbol, side, price, amount)[source]

Create an order

Parameters:
  • symbol (str) – required
  • side (str) – order side buy/sell
  • price (str) – order price
  • amount (str) – order quantity
# default
order = client.create_order('eth_btc', 'buy', '0.2348', '100')
Returns:API response
{
    "order_id": "123456",
    "result": true
}
Raises:AllcoinResponseException, BinanceAPIException
create_sell_order(symbol, price, amount)[source]

Create a sell order

Parameters:
  • symbol (str) – required
  • price (str) – order price
  • amount (str) – order quantity
# default
order = client.create_buy_order('eth_btc', '0.2348', '100')
Returns:API response
{
    "order_id": "123456",
    "result": true
}
Raises:AllcoinResponseException, BinanceAPIException
get_open_orders(symbol)[source]

Get info about all open orders

Parameters:symbol (str) – required
order = client.get_open_orders('eth_btc')
Returns:API response
{
    "result": true,
    "orders": [
        {
            "amount": 0.1,
            "avg_price": 0,                 # average transaction price
            "create_date": 1418008467000,   # order time
            "deal_amount": 0,               # filled quantity
            "order_id": 10000591,           # order id
            "price": 500,                   # entrustment price
            "status": 0,                    # 0 = unfilled, 1 = partially filled, 2 = fully filled, 10 = cancelled
            "symbol": "btc_usd",
            "type": "sell"
        },
        {
            "amount": 0.2,
            "avg_price": 0,
            "create_date": 1417417957000,
            "deal_amount": 0,
            "order_id": 10000724,
            "price": 0.1,
            "status": 0,
            "symbol": "btc_usd",
            "type": "buy"
        }
    ]
}
Raises:AllcoinResponseException, BinanceAPIException
get_order(symbol, order_id)[source]

Get info about a particular order

Parameters:
  • symbol (str) – required
  • order_id (str) – order ID to fetch
order = client.get_order('eth_btc', '123456')
Returns:API response
{
    "result": true,
    "orders": [
        {
            "amount": 0.1,
            "avg_price": 0,                 # average transaction price
            "create_date": 1418008467000,   # order time
            "deal_amount": 0,               # filled quantity
            "order_id": 10000591,           # order id
            "price": 500,                   # entrustment price
            "status": 0,                    # 0 = unfilled, 1 = partially filled, 2 = fully filled, 10 = cancelled
            "symbol": "btc_usd",
            "type": "sell"
        },
        {
            "amount": 0.2,
            "avg_price": 0,
            "create_date": 1417417957000,
            "deal_amount": 0,
            "order_id": 10000724,
            "price": 0.1,
            "status": 0,
            "symbol": "btc_usd",
            "type": "buy"
        }
    ]
}
Raises:AllcoinResponseException, BinanceAPIException
get_order_history(symbol, order_status, page=1, limit=200)[source]

Get history of orders for a symbol

Parameters:
  • symbol (str) – required
  • order_status (int) – 0 for unfilled orders; 1 for filled orders
  • page (int) – page to fetch
  • limit (int) – amount on each page
order = client.get_order_history('eth_btc', 1)
Returns:API response
[
    {
        "current_page": 1,
        "orders": [
            {
                "amount": 0,
                "avg_price": 0,
                "create_date": 1405562100000,
                "deal_amount": 0,
                "order_id": 0,
                "price": 0,
                "status": 2,
                "symbol": "btc_usd",
                "type": "sell”
            }
        ],
        "page_length": 1,
        "result": true,
        "total": 3
    }
]
Raises:AllcoinResponseException, BinanceAPIException
get_orders(symbol, order_status, order_ids)[source]

Get info about multiple orders

Parameters:
  • symbol (str) – required
  • order_status (int) – 0 for unfilled orders; 1 for filled orders
  • order_ids (str) – order IDs to fetch (multiple orders are separated by ‘,’, 50 orders at most are allowed per request)
order = client.get_orders('eth_btc', 1)
Returns:API response
{
    "result": true,
    "orders": [
        {
            "amount": 0.1,
            "avg_price": 0,                 # average transaction price
            "create_date": 1418008467000,   # order time
            "deal_amount": 0,               # filled quantity
            "order_id": 10000591,           # order id
            "price": 500,                   # entrustment price
            "status": 0,                    # 0 = unfilled, 1 = partially filled, 2 = fully filled, 10 = cancelled
            "symbol": "btc_usd",
            "type": "sell"
        },
        {
            "amount": 0.2,
            "avg_price": 0,
            "create_date": 1417417957000,
            "deal_amount": 0,
            "order_id": 10000724,
            "price": 0.1,
            "status": 0,
            "symbol": "btc_usd",
            "type": "buy"
        }
    ]
}
Raises:AllcoinResponseException, BinanceAPIException
get_trade_history(symbol, since=None)[source]

Get trade history - requires api key

Parameters:
  • symbol (str) – required
  • since (int) – Transaction id (inclusive)
# default
trades = client.get_trade_history('eth_btc')

# default
trades = client.get_trade_history('eth_btc', since=230433)
Returns:API response
[
    {
        "date": 1367130137,
        "date_ms": 1367130137000,
        "price": 787.71,
        "amount": 0.003,
        "tid": "230433",
        "type": "sell"
    },
    {
        "date": 1367130137,
        "date_ms": 1367130137000,
        "price": 787.65,
        "amount": 0.001,
        "tid": "230434",
        "type": "sell"
    },
    {
        "date": 1367130137,
        "date_ms": 1367130137000,
        "price": 787.5,
        "amount": 0.091,
        "tid": "230435",
        "type": "sell"
    }
]
Raises:AllcoinResponseException, BinanceAPIException