| 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
- rolling24HourVolume :: Lens' s a
- 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
- creationTimestamp :: Lens' s a
- class HasExpirationTimestamp s a | s -> a where
- expirationTimestamp :: Lens' s a
- class HasCompletedTimestamp s a | s -> a where
- completedTimestamp :: Lens' s a
- class HasFeeBase s a | s -> a where
- class HasFeeCounter s a | s -> a where
- feeCounter :: Lens' s a
- class HasLimitPrice s a | s -> a where
- limitPrice :: Lens' s a
- class HasState s a | s -> a where
- class HasOrderType s a | s -> a where
- class HasLimitVolume s a | s -> a where
- limitVolume :: Lens' s a
- 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
- balanceDelta :: Lens' s a
- class HasAvailableDelta s a | s -> a where
- availableDelta :: Lens' s a
- class HasCurrency s a | s -> a where
- class HasDescription s a | s -> a where
- description :: Lens' s a
- class HasAsset s a | s -> a where
- class HasReserved s a | s -> a where
- class HasUnconfirmed s a | s -> a where
- unconfirmed :: Lens' s a
- class HasAddress s a | s -> a where
- class HasTotalReceived s a | s -> a where
- totalReceived :: Lens' s a
- class HasTotalUnconfirmed s a | s -> a where
- totalUnconfirmed :: Lens' s a
- class HasAmount s a | s -> a where
- class HasWithdrawalType s a | s -> a where
- withdrawalType :: Lens' s a
- class HasMessage s a | s -> a where
- class HasQuoteType s a | s -> a where
- class HasBaseAmount s a | s -> a where
- baseAmount :: Lens' s a
- class HasCounterAmount s a | s -> a where
- counterAmount :: Lens' s a
- 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
- beneficiaryId :: Lens' s a
- 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
- thirtyDayVolume :: Lens' s a
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-L6mhOossEBP8IRNd216j1y" False) ((C1 (MetaCons "XBTZAR" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "XBTMYR" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "XBTNGN" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "XBTIDR" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "ETHXBT" PrefixI False) (U1 :: Type -> Type)))) | |
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-L6mhOossEBP8IRNd216j1y" 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-L6mhOossEBP8IRNd216j1y" 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-L6mhOossEBP8IRNd216j1y" 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-L6mhOossEBP8IRNd216j1y" 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-L6mhOossEBP8IRNd216j1y" False) ((C1 (MetaCons "ZAR" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "XBT" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "MYR" PrefixI False) (U1 :: Type -> Type))) :+: (C1 (MetaCons "IDR" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "BCH" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "ETH" PrefixI False) (U1 :: Type -> Type)))) | |
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-L6mhOossEBP8IRNd216j1y" 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 #
Instances
| HasErrorCode BitXError Text # | |
class HasTimestamp s a | s -> a where #
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 #
Instances
| HasBid Ticker (Maybe Scientific) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasAsk s a | s -> a where #
Instances
| HasAsk Ticker (Maybe Scientific) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasLastTrade s a | s -> a where #
Instances
| HasLastTrade Ticker (Maybe Scientific) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasRolling24HourVolume s a | s -> a where #
Methods
rolling24HourVolume :: Lens' s a #
Instances
| HasRolling24HourVolume Ticker Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasPair s a | s -> a where #
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 #
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 #
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 #
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 #
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 #
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 #
Methods
creationTimestamp :: Lens' s a #
Instances
| HasCreationTimestamp PrivateOrder UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasExpirationTimestamp s a | s -> a where #
Methods
expirationTimestamp :: Lens' s a #
Instances
| HasExpirationTimestamp PrivateOrder UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCompletedTimestamp s a | s -> a where #
Methods
completedTimestamp :: Lens' s a #
Instances
| HasCompletedTimestamp PrivateOrder UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasFeeBase s a | s -> a where #
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 #
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 #
Methods
limitPrice :: Lens' s a #
Instances
| HasLimitPrice PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasState s a | s -> a where #
Instances
| HasState PrivateOrder RequestStatus # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasOrderType s a | s -> a where #
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 #
Methods
limitVolume :: Lens' s a #
Instances
| HasLimitVolume PrivateOrder Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasRowIndex s a | s -> a where #
Instances
| HasRowIndex Transaction Int # | |
Defined in Network.Bitcoin.BitX.Types Methods rowIndex :: Lens' Transaction Int # | |
class HasBalance s a | s -> a where #
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 #
Instances
| HasAvailable Transaction Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasBalanceDelta s a | s -> a where #
Methods
balanceDelta :: Lens' s a #
Instances
| HasBalanceDelta Transaction Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAvailableDelta s a | s -> a where #
Methods
availableDelta :: Lens' s a #
Instances
| HasAvailableDelta Transaction Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCurrency s a | s -> a where #
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 #
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 #
Instances
| HasAsset Balance Asset # | |
| HasAsset FundingAddress Asset # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasReserved s a | s -> a where #
Instances
| HasReserved Balance Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasUnconfirmed s a | s -> a where #
Methods
unconfirmed :: Lens' s a #
Instances
| HasUnconfirmed Balance Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAddress s a | s -> a where #
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 #
Methods
totalReceived :: Lens' s a #
Instances
| HasTotalReceived FundingAddress Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasTotalUnconfirmed s a | s -> a where #
Methods
totalUnconfirmed :: Lens' s a #
Instances
| HasTotalUnconfirmed FundingAddress Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasAmount s a | s -> a where #
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 #
Methods
withdrawalType :: Lens' s a #
Instances
| HasWithdrawalType NewWithdrawal WithdrawalType # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasMessage s a | s -> a where #
Instances
| HasMessage BitcoinSendRequest (Maybe Text) # | |
Defined in Network.Bitcoin.BitX.Types | |
class HasQuoteType s a | s -> a where #
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 #
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 #
Methods
counterAmount :: Lens' s a #
Instances
| HasCounterAmount OrderQuote Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasCreatedAt s a | s -> a where #
Instances
| HasCreatedAt OrderQuote UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasExpiresAt s a | s -> a where #
Instances
| HasExpiresAt OrderQuote UTCTime # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasDiscarded s a | s -> a where #
Instances
| HasDiscarded OrderQuote Bool # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasExercised s a | s -> a where #
Instances
| HasExercised OrderQuote Bool # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasIsBuy s a | s -> a where #
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 #
Instances
| HasStatus WithdrawalRequest RequestStatus # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasBeneficiaryId s a | s -> a where #
Methods
beneficiaryId :: Lens' s a #
Instances
| HasBeneficiaryId NewWithdrawal (Maybe Text) # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasOrderId s a | s -> a where #
Instances
| HasOrderId PrivateTrade Text # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasMakerFee s a | s -> a where #
Instances
| HasMakerFee FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasTakerFee s a | s -> a where #
Instances
| HasTakerFee FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |
class HasThirtyDayVolume s a | s -> a where #
Methods
thirtyDayVolume :: Lens' s a #
Instances
| HasThirtyDayVolume FeeInfo Scientific # | |
Defined in Network.Bitcoin.BitX.Types Methods | |