coinbase-pro-0.7.1.0: src/example/request/Main.hs
{-# LANGUAGE OverloadedStrings #-}
module Main where
import Control.Monad.IO.Class (liftIO)
import CoinbasePro.Authenticated
import CoinbasePro.Authenticated.Accounts
import CoinbasePro.Authenticated.Headers
import CoinbasePro.Authenticated.Orders
import CoinbasePro.Authenticated.Request
import CoinbasePro.MarketData.Types hiding (time)
import CoinbasePro.Request
import CoinbasePro.Types hiding (time)
import CoinbasePro.Unauthenticated
main :: IO ()
main = do
run (stats btcusd) >>= print
run (candles btcusd Nothing Nothing Minute) >>= print
run (trades btcusd) >>= print
run time >>= print
run products >>= print
run (aggregateOrderBook btcusd (Just Best)) >>= print
run (aggregateOrderBook btcusd (Just TopFifty)) >>= print
run (fullOrderBook btcusd) >>= print
runCbAuthT cpc $ do
accounts >>= liftIO . print
account aid >>= liftIO . print
fills (Just btcusd) Nothing >>= liftIO . print
listOrders (Just [All]) (Just btcusd) >>= liftIO . print
placeOrder btcusd Sell (Size 0.001) (Price 99999.00) True Nothing Nothing Nothing >>= liftIO . print
placeOrder btcusd Buy (Size 1.0) (Price 1.00) True Nothing Nothing Nothing >>= liftIO . print
cancelAll (Just btcusd) >>= liftIO . print
where
accessKey = CBAccessKey "accesskey"
secretKey = CBSecretKey "secretkey"
passphrase = CBAccessPassphrase "passphrase"
cpc = CoinbaseProCredentials accessKey secretKey passphrase
aid = AccountId "accountid"
btcusd = ProductId "BTC-USD"