coinbase-pro-0.8.0.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.Environment
import CoinbasePro.MarketData.Types hiding (time)
import CoinbasePro.Request
import CoinbasePro.Types hiding (time)
import CoinbasePro.Unauthenticated
main :: IO ()
main = do
run Production (stats btcusd) >>= print
run Production (candles btcusd Nothing Nothing Minute) >>= print
run Production (trades btcusd) >>= print
run Production time >>= print
run Production products >>= print
run Production (aggregateOrderBook btcusd (Just Best)) >>= print
run Production (aggregateOrderBook btcusd (Just TopFifty)) >>= print
run Production (fullOrderBook btcusd) >>= print
runCbAuthT (run Production) cpc $ do
accounts >>= liftIO . print
account aid >>= liftIO . print
fills (Just btcusd) Nothing >>= liftIO . print
listOrders (Just [All]) (Just btcusd) >>= liftIO . print
placeOrder Nothing btcusd Sell (Size 0.001) (Price 99999.00) True Nothing Nothing Nothing >>= liftIO . print
placeOrder Nothing 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"