coinbase-pro-0.9.2.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 Sandbox (stats btcusd) >>= print
run Sandbox (candles btcusd Nothing Nothing Minute) >>= print
run Sandbox (trades btcusd) >>= print
run Sandbox time >>= print
run Sandbox products >>= print
run Sandbox (aggregateOrderBook btcusd (Just Best)) >>= print
run Sandbox (aggregateOrderBook btcusd (Just TopFifty)) >>= print
run Sandbox (fullOrderBook btcusd) >>= print
runCbAuthT (run Sandbox) cpc $ do
accounts >>= liftIO . print
account aid >>= liftIO . print
accountHistory 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"