Supported exchanges¶
- NYSE
- NASDAQ
- Coinbase
- Coinbase Pro
- Binance
- Kraken
- Bitmex
- Deribit
- Bitfinex
- Huobi Global
- Okex
- Hitbtc
- ZB
Adding an account for trading¶
To trade using your accounts in various crypto exchanges, you will have to add your exchange/broker's API key.
US Exchanges (NYSE & NASDAQ)¶
Supported brokers¶
Alpaca¶
You can trade at NYSE & NASDAQ using a broker account. Streak currently supports Alpaca and Alpaca's API enables you to trade with real-time market data.
All orders placed are assumed to be GTC and the user can place both Limit and Market orders.
Pattern Day trader(PDT)¶
An account is designated as a Pattern Day Trader if it makes four (4) day trades within five (5) business days and day trading activities are greater than 6 percent of its total trading activity for that same 5 day period. Day trades less than this criteria will not flag the account for PDT.
If you are designated as a pattern day trader, a $25,000 minimum equity requirement must be deposited in the account prior to any day-trading activities and maintained in your account at all times.
In order to prevent Alpaca Brokerage Account customers from unintentionally being designated as a Pattern Day Trader (PDT), the Alpaca Trading platform checks the PDT rule condition every time an order is submitted from a customer. If the order could potentially result in the account being flagged as a PDT, the order is rejected, and API returns error with HTTP status code 403 (Forbidden). This protection triggers only when the previous day’s closing account equity is less than $25,000 at the time of order submission.
In addition to the filled orders, the Alpaca system also takes into consideration pending orders in the account. In this case, regardless of the order of pending orders, a pair of buy and sell orders is counted as a potential day trade. This is because orders that are active (pending) in the marketplace may fill in random orders. Therefore, even if your sell limit order is submitted first (without being filled yet) and another buy order on the same security is submitted later, this buy order will be blocked if your account already has 3 day trades in the last 5 busines. Link
Crypto Exchanges¶
BINANCE¶
Trading requirements:
- API Key
- Secret Key
API Key Permissions:
- Read Info - Required. Allows fetching account balance and order details
- Enable Trading - Required. Allows to place and cancel orders
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s account holdings. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit and Market All orders placed have a time in force, GTC (Good Till Cancelled). Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USD, the minimum allowed quantity of BTC is 0.001. The order will be rejected if the quantity is lesser or the precision is greater than 3. Each currency has a MIN_NOTIONAL value. (Price x Quantity) for each order should be greater than the MIN_NOTIONAL for the respective currency.
DERIBIT¶
Trading requirements:
- API Key
- Secret Key
API Key Permissions:
- account - Required
- block trade - Not Required
- trade - Required
- wallet - Required
- custody - Not Required
Accounts:
Account verification is successful if Streak is able to fetch user’s account holdings. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit and Market All orders placed have a time in force, GTC (Good Till Cancelled) Price and quantity for each order should be within the allowed precision for the respective currency.
HITBTC¶
Trading requirements:
- API Key
- Secret Key
API Key Permissions:
- Order book, History, Trading balance - Required. Allows fetching account balance and order details
- Place/cancel orders - Required. Allows to place and cancel orders
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s account holdings. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit and Market All orders placed have a time in force, GTC (Good Till Cancelled) Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USD, minimum allowed quantity of BTC is 0.001. The order will be rejected if the quantity is lesser or the precision is greater than 3.
OKEX¶
Streak supports only v3 API
Trading requirements:
- API Key
- Secret Key
- API Passphrase
API Key Permissions:
- Enquiry - Required. Allows to fetch account balance and order details
- Trade - Required. Allows to place and cancel orders
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s spot account holdings. All trades are done using the spot account. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit and Market All orders placed have a time in force, GTC (Good Till Cancelled) Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USD, minimum allowed quantity of BTC is 0.001. The order will be rejected if the quantity is lesser or the precision is greater than 3. Buy market orders are placed with the total value, ie (price * quantity) while sell market orders are placed with quantity only.
HUOBI¶
Trading requirements:
- Access Key
- Secret Key
API Key Permissions:
Huobi API keys gives permission to read and trade by default
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s spot account holdings. All trades are done using the spot account. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit and Market All orders are placed using the default spot account. Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USD, minimum allowed quantity of BTC is 0.001. The order will be rejected if the quantity is lesser or the precision is greater than 3. Buy market orders are placed with the total value, ie (price * quantity) while sell market orders are placed with quantity only.
KRAKEN¶
Trading requirements:
- API Key
- Private Key
API Key Permissions:
- Query Funds - Required. Allows to fetch account balance.
- Query Open Orders & Trades - Required. Allows querying order info.
- Query Closed Orders & Trades - Required. Allows querying order info.
- Modify Orders - Required. Allows placing orders.
- Cancel/Close Orders - Required. Allows canceling orders.
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s account holdings. Currency balances, available and hold information for wallets associated with the API key are fetched. Tier 2 or greater verification of account is preferred for a smoother experience.
Orders:
Example
When placing order for BTC/USD, minimum allowed quantity of BTC is 0.001. The order will be rejected if the quantity is lesser or the precision is greater than 3
COINBASE PRO¶
Trading requirements:
- API Key
- Secret Key
- API Passphrase
API Key Permissions:
- View - Required. Allows to fetch account balance and order details
- Trade - Required. Allows to place and cancel orders
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s account holdings. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit and Market All orders placed have a time in force, GTC (Good Till Cancelled). Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USD, minimum allowed quantity of BTC is 0.001. The order will be rejected if the quantity is lesser or the precision is greater than 3
COINBASE¶
Trading requirements:
- API Key
- Secret Key
API Key Permissions:
- wallet:accounts:read - Required. Allows to fetch account balance and order details
- wallet:buys:create - Required. Allows to place buy orders
- wallet:buys:read - Required. Allows to fetch buy order details
- wallet:sells:create - Required. Allows to place sell orders
- wallet:sells:read - Required. Allows to fetch sell order details
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s account holdings. User’s can have only one primary account. Currency balances, available and hold information for wallets associated with the primary account.
Orders:
- Order types available - Market
All orders are placed using the primary account. Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USD, minimum allowed quantity of BTC is 0.001. The order will be rejected if the quantity is lesser or the precision is greater than 3.
ZB¶
Trading requirements:
- API Key
- Secret Key
API Key Permissions:
- Inquire Asset - Required. Inquire account information and asset
- Transaction - Required. Place Order, Cancel, Inquire transaction order
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s account holdings. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USDT, if the minimum allowed quantity of BTC is 0.001, the order will be rejected if the quantity is lesser or the precision is greater than 3.
BitMEX¶
Trading requirements:
- API Key
- Secret Key
API Key Permissions:
- Order. Required. To allow the placement and cancellation of orders.
Accounts:
Account verification on Streak is successful if Streak is able to fetch user’s account holdings. Currency balances, available and hold information for wallets associated with the API key are fetched.
Orders:
- Order types available - Limit and Market
All orders placed have a time in force, GTC (Good Till Cancelled). Price and quantity for each order should be within the allowed precision for the respective currency.
Example
When placing order for BTC/USD, if minimum allowed quantity of BTC is 0.001 then the order will be rejected if the quantity is lesser or the precision is greater than 3