bitshares.account module

class bitshares.account.Account(*args, **kwargs)[source]

Bases: bitshares.instance.BlockchainInstance, bitshares.account.Account

This class allows to easily access Account data

Parameters:
  • account_name (str) – Name of the account
  • blockchain_instance (bitshares.bitshares.BitShares) – BitShares instance
  • full (bool) – Obtain all account data including orders, positions, etc.
  • lazy (bool) – Use lazy loading
  • full – Obtain all account data including orders, positions, etc.
Returns:

Account data

Return type:

dictionary

Raises:

bitshares.exceptions.AccountDoesNotExistsException – if account does not exist

Instances of this class are dictionaries that come with additional methods (see below) that allow dealing with an account and it’s corresponding functions.

from bitshares.account import Account
account = Account("init0")
print(account)

Note

This class comes with its own caching function to reduce the load on the API server. Instances of this class can be refreshed with Account.refresh().

balance(symbol)[source]

Obtain the balance of a specific Asset. This call returns instances of amount.Amount.

balances

List balances of an account. This call returns instances of amount.Amount.

bitshares

Alias for the specific blockchain

blacklist(account)[source]

Add an other account to the blacklist of this account

blockchain
blockchain_instance_class

alias of bitshares.instance.BlockchainInstance

cache(key=None)
call_positions

Alias for :func:bitshares.account.Account.callpositions

callpositions

List call positions (collateralized positions Market Pegged Assets)

chain

Short form for blockchain (for the lazy)

clear() → None. Remove all items from D.
static clear_cache()
copy() → a shallow copy of D
define_classes()[source]

Needs to define instance variables that provide classes

ensure_full()[source]
fromkeys()

Returns a new dict with keys from iterable and values equal to value.

get(k[, d]) → D[k] if k in D, else d. d defaults to None.
get_instance_class()

Should return the Chain instance class, e.g. bitshares.BitShares

getcache(id)
history(first=0, last=0, limit=-1, only_ops=[], exclude_ops=[])[source]

Returns a generator for individual account transactions. The latest operation will be first. This call can be used in a for loop.

Parameters:
  • first (int) – sequence number of the first transaction to return (optional)
  • last (int) – sequence number of the last transaction to return (optional)
  • limit (int) – limit number of transactions to return (optional)
  • only_ops (array) – Limit generator by these operations (optional)
  • exclude_ops (array) – Exclude these operations from generator (optional).
… note::
only_ops and exclude_ops takes an array of strings: The full list of operation ID’s can be found in operationids.py. Example: [‘transfer’, ‘fill_order’]
classmethod inject(cls)
is_fully_loaded

Is this instance fully loaded / e.g. all data available?

is_ltm

Is the account a lifetime member (LTM)?

iscached(id)
items() → a set-like object providing a view on D's items
keys() → a set-like object providing a view on D's keys
name
nolist(account)[source]

Remove an other account from any list of this account

static objectid_valid(i)
openorders

Returns open Orders

pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem() → (k, v), remove and return some (key, value) pair as a

2-tuple; but raise KeyError if D is empty.

refresh()[source]

Refresh/Obtain an account’s data from the API server

static set_shared_blockchain_instance(instance)

This method allows us to override default instance for all users of SharedInstance.instance.

Parameters:instance (chaininstance) – Chain instance
set_shared_config(config)

This allows to set a config that will be used when calling shared_blockchain_instance and allows to define the configuration without requiring to actually create an instance

setdefault(k[, d]) → D.get(k,d), also set D[k]=d if k not in D
shared_blockchain_instance()

This method will initialize SharedInstance.instance and return it. The purpose of this method is to have offer single default instance that can be reused by multiple classes.

space_id = 1
test_valid_objectid(i)
testid(id)
type_id = None
type_ids = []
update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

upgrade()[source]

Upgrade account to life time member

values() → an object providing a view on D's values
whitelist(account)[source]

Add an other account to the whitelist of this account

class bitshares.account.AccountUpdate(*args, **kwargs)[source]

Bases: bitshares.instance.BlockchainInstance, bitshares.account.AccountUpdate

This purpose of this class is to keep track of account updates as they are pushed through by bitshares.notify.Notify.

Instances of this class are dictionaries and take the following form:

account

In oder to obtain the actual account.Account from this class, you can use the account attribute.

bitshares

Alias for the specific blockchain

blockchain
blockchain_instance_class

alias of bitshares.instance.BlockchainInstance

chain

Short form for blockchain (for the lazy)

clear() → None. Remove all items from D.
copy() → a shallow copy of D
define_classes()[source]

Needs to define instance variables that provide classes

fromkeys()

Returns a new dict with keys from iterable and values equal to value.

get(k[, d]) → D[k] if k in D, else d. d defaults to None.
get_instance_class()

Should return the Chain instance class, e.g. bitshares.BitShares

classmethod inject(cls)
items() → a set-like object providing a view on D's items
keys() → a set-like object providing a view on D's keys
pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem() → (k, v), remove and return some (key, value) pair as a

2-tuple; but raise KeyError if D is empty.

static set_shared_blockchain_instance(instance)

This method allows us to override default instance for all users of SharedInstance.instance.

Parameters:instance (chaininstance) – Chain instance
set_shared_config(config)

This allows to set a config that will be used when calling shared_blockchain_instance and allows to define the configuration without requiring to actually create an instance

setdefault(k[, d]) → D.get(k,d), also set D[k]=d if k not in D
shared_blockchain_instance()

This method will initialize SharedInstance.instance and return it. The purpose of this method is to have offer single default instance that can be reused by multiple classes.

update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() → an object providing a view on D's values