| Copyright | 2016 Tebello Thejane |
|---|---|
| License | BSD3 |
| Maintainer | Tebello Thejane <zyxoas+hackage@gmail.com> |
| Stability | Experimental |
| Portability | non-portable (GHC Extensions) |
| Safe Haskell | None |
| Language | Haskell2010 |
Network.Bitcoin.BitX.Types
Description
The types used for the various BitX API calls.
Synopsis
- data Ticker = Ticker {}
- data CcyPair
- data Orderbook = Orderbook {
- orderbookTimestamp :: UTCTime
- orderbookBids :: [Bid]
- orderbookAsks :: [Ask]
- data Order = Order {}
- type Bid = Order
- type Ask = Order
- data Trade = Trade {}
- data BitXAuth = BitXAuth {
- bitXAuthId :: Text
- bitXAuthSecret :: Text
- data PrivateOrder = PrivateOrder {
- privateOrderBase :: Scientific
- privateOrderCounter :: Scientific
- privateOrderCreationTimestamp :: UTCTime
- privateOrderExpirationTimestamp :: UTCTime
- privateOrderCompletedTimestamp :: UTCTime
- privateOrderFeeBase :: Scientific
- privateOrderFeeCounter :: Scientific
- privateOrderLimitPrice :: Scientific
- privateOrderLimitVolume :: Scientific
- privateOrderId :: OrderID
- privateOrderPair :: CcyPair
- privateOrderState :: RequestStatus
- privateOrderOrderType :: OrderType
- type OrderID = Text
- data OrderType
- data RequestStatus
- data OrderRequest = OrderRequest {}
- data MarketOrderRequest = MarketOrderRequest {}
- type RequestSuccess = Bool
- data BitXError = BitXError {}
- type AccountID = Text
- data Asset
- data Balance = Balance {}
- data FundingAddress = FundingAddress {}
- data WithdrawalRequest = WithdrawalRequest {}
- data NewWithdrawal = NewWithdrawal {}
- data WithdrawalType
- data BitcoinSendRequest = BitcoinSendRequest {}
- data QuoteRequest = QuoteRequest {}
- data OrderQuote = OrderQuote {}
- data QuoteType
- type BitXClientAuth = BitXAuth
- data Transaction = Transaction {}
- data Account = Account {
- accountId :: Text
- accountName :: Text
- accountCurrency :: Asset
- data PrivateTrade = PrivateTrade {
- privateTradeBase :: Scientific
- privateTradeCounter :: Scientific
- privateTradeFeeBase :: Scientific
- privateTradeFeeCounter :: Scientific
- privateTradeIsBuy :: Bool
- privateTradeOrderId :: Text
- privateTradePair :: CcyPair
- privateTradePrice :: Scientific
- privateTradeTimestamp :: UTCTime
- privateTradeOrderType :: OrderType
- privateTradeVolume :: Scientific
- data FeeInfo = FeeInfo {}
- mkBitXAuth :: BitXAuth
- mkAccount :: Account
- mkBitcoinSendRequest :: BitcoinSendRequest
- mkOrderRequest :: OrderRequest
- mkQuoteRequest :: QuoteRequest
- mkNewWithdrawal :: NewWithdrawal
- mkMarketOrderRequest :: MarketOrderRequest
- class HasError s a | s -> a where
- class HasErrorCode s a | s -> a where
- class HasTimestamp s a | s -> a where
- class HasBid s a | s -> a where
- class HasAsk s a | s -> a where
- class HasLastTrade s a | s -> a where
- class HasRolling24HourVolume s a | s -> a where
- class HasPair s a | s -> a where
- class HasVolume s a | s -> a where
- class HasPrice s a | s -> a where
- class HasBids s a | s -> a where
- class HasAsks s a | s -> a where
- class HasSecret s a | s -> a where
- class HasId s a | s -> a where
- class HasBase s a | s -> a where
- class HasCounter s a | s -> a where
- class HasCreationTimestamp s a | s -> a where
- class HasExpirationTimestamp s a | s -> a where
- class HasCompletedTimestamp s a | s -> a where
- class HasFeeBase s a | s -> a where
- class HasFeeCounter s a | s -> a where
- class HasLimitPrice s a | s -> a where
- class HasState s a | s -> a where
- class HasOrderType s a | s -> a where
- class HasLimitVolume s a | s -> a where
- class HasRowIndex s a | s -> a where
- class HasBalance s a | s -> a where
- class HasAvailable s a | s -> a where
- class HasBalanceDelta s a | s -> a where
- class HasAvailableDelta s a | s -> a where
- class HasCurrency s a | s -> a where
- class HasDescription s a | s -> a where
- class HasAsset s a | s -> a where
- class HasReserved s a | s -> a where
- class HasUnconfirmed s a | s -> a where
- class HasAddress s a | s -> a where
- class HasTotalReceived s a | s -> a where
- class HasTotalUnconfirmed s a | s -> a where
- class HasAmount s a | s -> a where
- class HasWithdrawalType s a | s -> a where
- class HasMessage s a | s -> a where
- class HasQuoteType s a | s -> a where
- class HasBaseAmount s a | s -> a where
- class HasCounterAmount s a | s -> a where
- class HasCreatedAt s a | s -> a where
- class HasExpiresAt s a | s -> a where
- class HasDiscarded s a | s -> a where
- class HasExercised s a | s -> a where
- class HasName s a | s -> a where
- class HasIsBuy s a | s -> a where
- class HasStatus s a | s -> a where
- class HasBeneficiaryId s a | s -> a where
- class HasOrderId s a | s -> a where
- class HasMakerFee s a | s -> a where
- class HasTakerFee s a | s -> a where
- class HasThirtyDayVolume s a | s -> a where
Documentation
The state of a single market, identified by the currency pair.
As usual, the ask/sell price is the price of the last filled ask order, and the bid/buy price is
the price of the last filled bid order. Necessarily bid <= ask.
Constructors
| Ticker | |
Fields | |
Instances
A currency pair
Constructors
| XBTZAR | Bitcoin vs. ZAR |
| XBTMYR | Bitcoin vs. Malaysian Ringgit |
| XBTNGN | Bitcoin vs. Nigerian Naira |
| XBTIDR | Bitcoin vs. Indonesian Rupiah |
| ETHXBT | Ether vs. Bitcoin |
Instances
| Eq CcyPair # | |
| Data CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CcyPair -> c CcyPair # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CcyPair # toConstr :: CcyPair -> Constr # dataTypeOf :: CcyPair -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CcyPair) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CcyPair) # gmapT :: (forall b. Data b => b -> b) -> CcyPair -> CcyPair # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CcyPair -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CcyPair -> r # gmapQ :: (forall d. Data d => d -> u) -> CcyPair -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> CcyPair -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> CcyPair -> m CcyPair # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CcyPair -> m CcyPair # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CcyPair -> m CcyPair # | |
| Ord CcyPair # | |
Defined in Network.Bitcoin.BitX.Types | |
| Show CcyPair # | |
| Generic CcyPair # | |
| FromJSON CcyPair # | |
| NFData CcyPair # | |
Defined in Network.Bitcoin.BitX.Types | |
| HasPair Ticker CcyPair # | |
| HasPair PrivateOrder CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair OrderRequest CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair MarketOrderRequest CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair QuoteRequest CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair OrderQuote CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods pair :: Lens' OrderQuote CcyPair # | |
| HasPair PrivateTrade CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| type Rep CcyPair # | |
Defined in Network.Bitcoin.BitX.Types type Rep CcyPair = D1 (MetaData "CcyPair" "Network.Bitcoin.BitX.Types" "bitx-bitcoin-0.12.0.0-7ncUftIWEn21uDS1jekzfK" False) ((C1 (MetaCons "XBTZAR" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "XBTMYR" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "XBTNGN" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "XBTIDR" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "ETHXBT" PrefixI False) (U1 :: * -> *)))) | |
The current state of the publically accessible orderbook. Bid orders are requests to buy, ask orders are requests to sell.
Constructors
| Orderbook | |
Fields
| |
Instances
| Eq Orderbook # | |
| Data Orderbook # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Orderbook -> c Orderbook # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Orderbook # toConstr :: Orderbook -> Constr # dataTypeOf :: Orderbook -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Orderbook) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Orderbook) # gmapT :: (forall b. Data b => b -> b) -> Orderbook -> Orderbook # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Orderbook -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Orderbook -> r # gmapQ :: (forall d. Data d => d -> u) -> Orderbook -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Orderbook -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Orderbook -> m Orderbook # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Orderbook -> m Orderbook # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Orderbook -> m Orderbook # | |
| Ord Orderbook # | |
| Show Orderbook # | |
| Generic Orderbook # | |
| NFData Orderbook # | |
Defined in Network.Bitcoin.BitX.Types | |
| BitXAesRecordConvert Orderbook # | |
| HasTimestamp Orderbook UTCTime # | |
| HasBids Orderbook [Bid] # | |
| HasAsks Orderbook [Ask] # | |
| type Rep Orderbook # | |
Defined in Network.Bitcoin.BitX.Types type Rep Orderbook = D1 (MetaData "Orderbook" "Network.Bitcoin.BitX.Types" "bitx-bitcoin-0.12.0.0-7ncUftIWEn21uDS1jekzfK" False) (C1 (MetaCons "Orderbook" PrefixI True) (S1 (MetaSel (Just "orderbookTimestamp") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 UTCTime) :*: (S1 (MetaSel (Just "orderbookBids") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Bid]) :*: S1 (MetaSel (Just "orderbookAsks") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Ask])))) | |
| type Aes Orderbook # | |
Defined in Network.Bitcoin.BitX.Types.Internal | |
A single placed order in the orderbook
Constructors
| Order | |
Fields | |
Instances
| Eq Order # | |
| Data Order # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Order -> c Order # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Order # dataTypeOf :: Order -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Order) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Order) # gmapT :: (forall b. Data b => b -> b) -> Order -> Order # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Order -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Order -> r # gmapQ :: (forall d. Data d => d -> u) -> Order -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Order -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Order -> m Order # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Order -> m Order # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Order -> m Order # | |
| Ord Order # | |
| Show Order # | |
| Generic Order # | |
| NFData Order # | |
Defined in Network.Bitcoin.BitX.Types | |
| BitXAesRecordConvert Order # | |
| HasVolume Order Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods volume :: Lens' Order Scientific # | |
| HasPrice Order Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods price :: Lens' Order Scientific # | |
| HasBids Orderbook [Bid] # | |
| HasAsks Orderbook [Ask] # | |
| type Rep Order # | |
Defined in Network.Bitcoin.BitX.Types type Rep Order = D1 (MetaData "Order" "Network.Bitcoin.BitX.Types" "bitx-bitcoin-0.12.0.0-7ncUftIWEn21uDS1jekzfK" False) (C1 (MetaCons "Order" PrefixI True) (S1 (MetaSel (Just "orderVolume") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Scientific) :*: S1 (MetaSel (Just "orderPrice") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Scientific))) | |
| type Aes Order # | |
Defined in Network.Bitcoin.BitX.Types.Internal | |
Constructors
| Trade | |
Fields
| |
Instances
An auth type used by all private API calls, after authorisation.
Constructors
| BitXAuth | |
Fields
| |
Instances
| Eq BitXAuth # | |
| Data BitXAuth # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BitXAuth -> c BitXAuth # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BitXAuth # toConstr :: BitXAuth -> Constr # dataTypeOf :: BitXAuth -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BitXAuth) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BitXAuth) # gmapT :: (forall b. Data b => b -> b) -> BitXAuth -> BitXAuth # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BitXAuth -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BitXAuth -> r # gmapQ :: (forall d. Data d => d -> u) -> BitXAuth -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> BitXAuth -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> BitXAuth -> m BitXAuth # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BitXAuth -> m BitXAuth # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BitXAuth -> m BitXAuth # | |
| Ord BitXAuth # | |
Defined in Network.Bitcoin.BitX.Types | |
| Show BitXAuth # | |
| IsString BitXAuth # | |
Defined in Network.Bitcoin.BitX.Types Methods fromString :: String -> BitXAuth # | |
| Generic BitXAuth # | |
| NFData BitXAuth # | |
Defined in Network.Bitcoin.BitX.Types | |
| BitXAesRecordConvert BitXAuth # | |
| HasSecret BitXAuth Text # | |
| HasId BitXAuth Text # | |
| type Rep BitXAuth # | |
Defined in Network.Bitcoin.BitX.Types type Rep BitXAuth = D1 (MetaData "BitXAuth" "Network.Bitcoin.BitX.Types" "bitx-bitcoin-0.12.0.0-7ncUftIWEn21uDS1jekzfK" False) (C1 (MetaCons "BitXAuth" PrefixI True) (S1 (MetaSel (Just "bitXAuthId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "bitXAuthSecret") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))) | |
| type Aes BitXAuth # | |
Defined in Network.Bitcoin.BitX.Types.Internal | |
data PrivateOrder #
>>>:set -XOverloadedStrings>>>"id:secret" :: BitXAuthBitXAuth {bitXAuthId = "id", bitXAuthSecret = "secret"}>>>"id:se:cret" :: BitXAuthBitXAuth {bitXAuthId = "id", bitXAuthSecret = "se:cret"}
A recently placed (private) order, containing a lot more information than is available on the public order book.
Constructors
Instances
The type of a placed order.
Instances
data RequestStatus #
The state of a (private) placed request -- either an order or a withdrawal request.
Constructors
| PENDING | Not yet completed. An order will stay in |
| COMPLETE | Completed. |
| CANCELLED | Cancelled. Note that an order cannot be in |
Instances
data OrderRequest #
A request to place an order.
Constructors
| OrderRequest | |
Instances
data MarketOrderRequest #
Constructors
| MarketOrderRequest | |
Instances
type RequestSuccess = Bool #
A possible error which the BitX API might return, instead of returning the requested data. Note that as yet there is no exhaustive list of error codes available, so comparisons will have to be done via Text comparisons (as opposed to typed pattern matching). Sorry...
Constructors
| BitXError | |
Fields | |
Instances
| Eq BitXError # | |
| Data BitXError # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BitXError -> c BitXError # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BitXError # toConstr :: BitXError -> Constr # dataTypeOf :: BitXError -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BitXError) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BitXError) # gmapT :: (forall b. Data b => b -> b) -> BitXError -> BitXError # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BitXError -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BitXError -> r # gmapQ :: (forall d. Data d => d -> u) -> BitXError -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> BitXError -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> BitXError -> m BitXError # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BitXError -> m BitXError # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BitXError -> m BitXError # | |
| Ord BitXError # | |
| Show BitXError # | |
| Generic BitXError # | |
| NFData BitXError # | |
Defined in Network.Bitcoin.BitX.Types | |
| BitXAesRecordConvert BitXError # | |
| HasErrorCode BitXError Text # | |
| HasError BitXError Text # | |
| type Rep BitXError # | |
Defined in Network.Bitcoin.BitX.Types type Rep BitXError = D1 (MetaData "BitXError" "Network.Bitcoin.BitX.Types" "bitx-bitcoin-0.12.0.0-7ncUftIWEn21uDS1jekzfK" False) (C1 (MetaCons "BitXError" PrefixI True) (S1 (MetaSel (Just "bitXErrorError") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "bitXErrorErrorCode") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))) | |
| type Aes BitXError # | |
Defined in Network.Bitcoin.BitX.Types.Internal | |
A trade-able asset. Essentially, a currency.
Constructors
| ZAR | South African Rand |
| XBT | Bitcoin |
| MYR | Malaysian Ringgit |
| IDR | Indonesian Rupiah |
| BCH | Bitcoin Cash |
| ETH | Ether |
Instances
| Eq Asset # | |
| Data Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Asset -> c Asset # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Asset # dataTypeOf :: Asset -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Asset) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Asset) # gmapT :: (forall b. Data b => b -> b) -> Asset -> Asset # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Asset -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Asset -> r # gmapQ :: (forall d. Data d => d -> u) -> Asset -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Asset -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Asset -> m Asset # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Asset -> m Asset # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Asset -> m Asset # | |
| Ord Asset # | |
| Show Asset # | |
| Generic Asset # | |
| FromJSON Asset # | |
| NFData Asset # | |
Defined in Network.Bitcoin.BitX.Types | |
| POSTEncodeable Asset # | |
Defined in Network.Bitcoin.BitX.Types.Internal Methods postEncode :: Asset -> [(ByteString, ByteString)] # | |
| HasCurrency Transaction Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasCurrency BitcoinSendRequest Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasCurrency Account Asset # | |
| HasAsset Balance Asset # | |
| HasAsset FundingAddress Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| type Rep Asset # | |
Defined in Network.Bitcoin.BitX.Types type Rep Asset = D1 (MetaData "Asset" "Network.Bitcoin.BitX.Types" "bitx-bitcoin-0.12.0.0-7ncUftIWEn21uDS1jekzfK" False) ((C1 (MetaCons "ZAR" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "XBT" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "MYR" PrefixI False) (U1 :: * -> *))) :+: (C1 (MetaCons "IDR" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "BCH" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "ETH" PrefixI False) (U1 :: * -> *)))) | |
The current balance of a private account.
Constructors
| Balance | |
Fields | |
Instances
data FundingAddress #
A registered address for an acocunt.
Constructors
| FundingAddress | |
Instances
data WithdrawalRequest #
The state of a request to withdraw from an account.
Constructors
| WithdrawalRequest | |
Fields | |
Instances
data NewWithdrawal #
A request to withdraw from an account.
Constructors
| NewWithdrawal | |
Instances
data WithdrawalType #
The type of a withdrawal request.
Constructors
| ZAR_EFT | ZAR by Electronic Funds Transfer |
| NAD_EFT | Namibian Dollar by EFT |
| KES_MPESA | Kenyan Shilling by Vodafone MPESA |
| MYR_IBG | Malaysian Ringgit by Interbank GIRO (?) |
| IDR_LLG | Indonesian Rupiah by Lalu Lintas Giro (??) |
Instances
data BitcoinSendRequest #
A request to send bitcoin to a bitcoin address or email address.
Constructors
| BitcoinSendRequest | |
Instances
data QuoteRequest #
A request to lock in a quote.
Constructors
| QuoteRequest | |
Instances
data OrderQuote #
A temporarily locked-in quote.
Constructors
| OrderQuote | |
Instances
Instances
| Eq QuoteType # | |
| Data QuoteType # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> QuoteType -> c QuoteType # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c QuoteType # toConstr :: QuoteType -> Constr # dataTypeOf :: QuoteType -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c QuoteType) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c QuoteType) # gmapT :: (forall b. Data b => b -> b) -> QuoteType -> QuoteType # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> QuoteType -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> QuoteType -> r # gmapQ :: (forall d. Data d => d -> u) -> QuoteType -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> QuoteType -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> QuoteType -> m QuoteType # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> QuoteType -> m QuoteType # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> QuoteType -> m QuoteType # | |
| Ord QuoteType # | |
| Show QuoteType # | |
| Generic QuoteType # | |
| FromJSON QuoteType # | |
| NFData QuoteType # | |
Defined in Network.Bitcoin.BitX.Types | |
| HasQuoteType QuoteRequest QuoteType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasQuoteType OrderQuote QuoteType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| type Rep QuoteType # | |
type BitXClientAuth = BitXAuth #
data Transaction #
A transaction on a private user account.
Constructors
| Transaction | |
Instances
A registered account.
Constructors
| Account | |
Fields
| |
Instances
data PrivateTrade #
A private trade, containing a lot more information than is avaiable when inspecting trades via the public API.
Constructors
Instances
Fee information
Constructors
| FeeInfo | |
Instances
| Eq FeeInfo # | |
| Data FeeInfo # | |
Defined in Network.Bitcoin.BitX.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FeeInfo -> c FeeInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FeeInfo # toConstr :: FeeInfo -> Constr # dataTypeOf :: FeeInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FeeInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FeeInfo) # gmapT :: (forall b. Data b => b -> b) -> FeeInfo -> FeeInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FeeInfo -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FeeInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> FeeInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> FeeInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> FeeInfo -> m FeeInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FeeInfo -> m FeeInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FeeInfo -> m FeeInfo # | |
| Ord FeeInfo # | |
Defined in Network.Bitcoin.BitX.Types | |
| Show FeeInfo # | |
| Generic FeeInfo # | |
| BitXAesRecordConvert FeeInfo # | |
| HasThirtyDayVolume FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasTakerFee FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasMakerFee FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| type Rep FeeInfo # | |
Defined in Network.Bitcoin.BitX.Types type Rep FeeInfo = D1 (MetaData "FeeInfo" "Network.Bitcoin.BitX.Types" "bitx-bitcoin-0.12.0.0-7ncUftIWEn21uDS1jekzfK" False) (C1 (MetaCons "FeeInfo" PrefixI True) (S1 (MetaSel (Just "feeInfoMakerFee") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Scientific) :*: (S1 (MetaSel (Just "feeInfoTakerFee") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Scientific) :*: S1 (MetaSel (Just "feeInfoThirtyDayVolume") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Scientific)))) | |
| type Aes FeeInfo # | |
Defined in Network.Bitcoin.BitX.Types.Internal | |
Convenient constructors for records which serve as input parameters to functions. These are not completely safe (since you can forget to set a field and the Haskell compiler won't notice), but they are a bit more convenient than dealing with the raw records directly, as long as you're careful.
mkBitXAuth :: BitXAuth #
mkBitXAuth = BitXAuth "" ""
mkBitcoinSendRequest :: BitcoinSendRequest #
mkBitcoinSendRequest = BitcoinSendRequest 0 ZAR "" Nothing Nothing
mkOrderRequest :: OrderRequest #
mkOrderRequest = OrderRequest XBTZAR BID 0 0
mkQuoteRequest :: QuoteRequest #
mkQuoteRequest = QuoteRequest BUY XBTZAR 0
mkNewWithdrawal :: NewWithdrawal #
mkNewWithdrawal = NewWithdrawal ZAR_EFT 0
mkMarketOrderRequest :: MarketOrderRequest #
mkMarketOrderRequest = MarketOrderRequest XBTZAR BID 0
Lens Has* instances for convenient record accessors and mutators.
For a broader view of how these function (and why you can generally ignore them) see the
documentation for lens's makeFields.
Essentially, an instance declaration of the form
instance HasFoo MyRecord Int
implies that we can pretend that the data type MyRecord has a field called Foo of type Int
(although in reality the field would be called myRecordFoo or such), and that there exists a
lens called foo which can be used -- among other things -- as a setter and getter on
MyRecord.
class HasErrorCode s a | s -> a where #
Minimal complete definition
Instances
| HasErrorCode BitXError Text # | |
class HasTimestamp s a | s -> a where #
Minimal complete definition
Instances
| HasTimestamp Ticker UTCTime # | |
| HasTimestamp Orderbook UTCTime # | |
| HasTimestamp Trade UTCTime # | |
| HasTimestamp Transaction UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasTimestamp PrivateTrade UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasBid s a | s -> a where #
Minimal complete definition
Instances
| HasBid Ticker (Maybe Scientific) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasAsk s a | s -> a where #
Minimal complete definition
Instances
| HasAsk Ticker (Maybe Scientific) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasLastTrade s a | s -> a where #
Minimal complete definition
Instances
| HasLastTrade Ticker (Maybe Scientific) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasRolling24HourVolume s a | s -> a where #
Minimal complete definition
Methods
rolling24HourVolume :: Lens' s a #
Instances
| HasRolling24HourVolume Ticker Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasPair s a | s -> a where #
Minimal complete definition
Instances
| HasPair Ticker CcyPair # | |
| HasPair PrivateOrder CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair OrderRequest CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair MarketOrderRequest CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair QuoteRequest CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPair OrderQuote CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods pair :: Lens' OrderQuote CcyPair # | |
| HasPair PrivateTrade CcyPair # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasVolume s a | s -> a where #
Minimal complete definition
Instances
| HasVolume Order Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods volume :: Lens' Order Scientific # | |
| HasVolume Trade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods volume :: Lens' Trade Scientific # | |
| HasVolume OrderRequest Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasVolume MarketOrderRequest Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasVolume PrivateTrade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasPrice s a | s -> a where #
Minimal complete definition
Instances
| HasPrice Order Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods price :: Lens' Order Scientific # | |
| HasPrice Trade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods price :: Lens' Trade Scientific # | |
| HasPrice OrderRequest Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasPrice PrivateTrade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasId s a | s -> a where #
Minimal complete definition
Instances
| HasId BitXAuth Text # | |
| HasId PrivateOrder OrderID # | |
Defined in Network.Bitcoin.BitX.Types Methods id :: Lens' PrivateOrder OrderID # | |
| HasId Balance AccountID # | |
| HasId WithdrawalRequest Text # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasId OrderQuote Text # | |
Defined in Network.Bitcoin.BitX.Types Methods id :: Lens' OrderQuote Text # | |
| HasId Account Text # | |
class HasBase s a | s -> a where #
Minimal complete definition
Instances
| HasBase PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasBase PrivateTrade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCounter s a | s -> a where #
Minimal complete definition
Instances
| HasCounter PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasCounter PrivateTrade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCreationTimestamp s a | s -> a where #
Minimal complete definition
Methods
creationTimestamp :: Lens' s a #
Instances
| HasCreationTimestamp PrivateOrder UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasExpirationTimestamp s a | s -> a where #
Minimal complete definition
Methods
expirationTimestamp :: Lens' s a #
Instances
| HasExpirationTimestamp PrivateOrder UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCompletedTimestamp s a | s -> a where #
Minimal complete definition
Methods
completedTimestamp :: Lens' s a #
Instances
| HasCompletedTimestamp PrivateOrder UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasFeeBase s a | s -> a where #
Minimal complete definition
Instances
| HasFeeBase PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasFeeBase PrivateTrade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasFeeCounter s a | s -> a where #
Minimal complete definition
Methods
feeCounter :: Lens' s a #
Instances
| HasFeeCounter PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasFeeCounter PrivateTrade Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasLimitPrice s a | s -> a where #
Minimal complete definition
Methods
limitPrice :: Lens' s a #
Instances
| HasLimitPrice PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasState s a | s -> a where #
Minimal complete definition
Instances
| HasState PrivateOrder RequestStatus # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasOrderType s a | s -> a where #
Minimal complete definition
Instances
| HasOrderType PrivateOrder OrderType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasOrderType OrderRequest OrderType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasOrderType MarketOrderRequest OrderType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasOrderType PrivateTrade OrderType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasLimitVolume s a | s -> a where #
Minimal complete definition
Methods
limitVolume :: Lens' s a #
Instances
| HasLimitVolume PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasRowIndex s a | s -> a where #
Minimal complete definition
Instances
| HasRowIndex Transaction Int # | |
Defined in Network.Bitcoin.BitX.Types Methods rowIndex :: Lens' Transaction Int # | |
class HasBalance s a | s -> a where #
Minimal complete definition
Instances
| HasBalance Transaction Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasBalance Balance Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAvailable s a | s -> a where #
Minimal complete definition
Instances
| HasAvailable Transaction Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasBalanceDelta s a | s -> a where #
Minimal complete definition
Methods
balanceDelta :: Lens' s a #
Instances
| HasBalanceDelta Transaction Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAvailableDelta s a | s -> a where #
Minimal complete definition
Methods
availableDelta :: Lens' s a #
Instances
| HasAvailableDelta Transaction Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCurrency s a | s -> a where #
Minimal complete definition
Instances
| HasCurrency Transaction Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasCurrency BitcoinSendRequest Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasCurrency Account Asset # | |
class HasDescription s a | s -> a where #
Minimal complete definition
Methods
description :: Lens' s a #
Instances
| HasDescription Transaction Text # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasDescription BitcoinSendRequest (Maybe Text) # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAsset s a | s -> a where #
Minimal complete definition
Instances
| HasAsset Balance Asset # | |
| HasAsset FundingAddress Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasReserved s a | s -> a where #
Minimal complete definition
Instances
| HasReserved Balance Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasUnconfirmed s a | s -> a where #
Minimal complete definition
Methods
unconfirmed :: Lens' s a #
Instances
| HasUnconfirmed Balance Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAddress s a | s -> a where #
Minimal complete definition
Instances
| HasAddress FundingAddress Text # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasAddress BitcoinSendRequest Text # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasTotalReceived s a | s -> a where #
Minimal complete definition
Methods
totalReceived :: Lens' s a #
Instances
| HasTotalReceived FundingAddress Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasTotalUnconfirmed s a | s -> a where #
Minimal complete definition
Methods
totalUnconfirmed :: Lens' s a #
Instances
| HasTotalUnconfirmed FundingAddress Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAmount s a | s -> a where #
Minimal complete definition
Instances
| HasAmount NewWithdrawal Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasAmount BitcoinSendRequest Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasWithdrawalType s a | s -> a where #
Minimal complete definition
Methods
withdrawalType :: Lens' s a #
Instances
| HasWithdrawalType NewWithdrawal WithdrawalType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasMessage s a | s -> a where #
Minimal complete definition
Instances
| HasMessage BitcoinSendRequest (Maybe Text) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasQuoteType s a | s -> a where #
Minimal complete definition
Instances
| HasQuoteType QuoteRequest QuoteType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasQuoteType OrderQuote QuoteType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasBaseAmount s a | s -> a where #
Minimal complete definition
Methods
baseAmount :: Lens' s a #
Instances
| HasBaseAmount QuoteRequest Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
| HasBaseAmount OrderQuote Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCounterAmount s a | s -> a where #
Minimal complete definition
Methods
counterAmount :: Lens' s a #
Instances
| HasCounterAmount OrderQuote Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCreatedAt s a | s -> a where #
Minimal complete definition
Instances
| HasCreatedAt OrderQuote UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasExpiresAt s a | s -> a where #
Minimal complete definition
Instances
| HasExpiresAt OrderQuote UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasDiscarded s a | s -> a where #
Minimal complete definition
Instances
| HasDiscarded OrderQuote Bool # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasExercised s a | s -> a where #
Minimal complete definition
Instances
| HasExercised OrderQuote Bool # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasIsBuy s a | s -> a where #
Minimal complete definition
Instances
| HasIsBuy Trade Bool # | |
| HasIsBuy PrivateTrade Bool # | |
Defined in Network.Bitcoin.BitX.Types Methods isBuy :: Lens' PrivateTrade Bool # | |
class HasStatus s a | s -> a where #
Minimal complete definition
Instances
| HasStatus WithdrawalRequest RequestStatus # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasBeneficiaryId s a | s -> a where #
Minimal complete definition
Methods
beneficiaryId :: Lens' s a #
Instances
| HasBeneficiaryId NewWithdrawal (Maybe Text) # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasOrderId s a | s -> a where #
Minimal complete definition
Instances
| HasOrderId PrivateTrade Text # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasMakerFee s a | s -> a where #
Minimal complete definition
Instances
| HasMakerFee FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasTakerFee s a | s -> a where #
Minimal complete definition
Instances
| HasTakerFee FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasThirtyDayVolume s a | s -> a where #
Minimal complete definition
Methods
thirtyDayVolume :: Lens' s a #
Instances
| HasThirtyDayVolume FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |