Example #1
0
def get_pair_position(pair: TradePair, position: str) -> Asset:
    assert position == 'first' or position == 'second'
    currencies = pair.split('_')
    if len(currencies) != 2:
        raise ValueError("Could not split {} pair".format(pair))
    currency = currencies[0] if position == 'first' else currencies[1]
    return cast(Asset, currency)
Example #2
0
def pair_get_assets(pair: TradePair) -> Tuple[Asset, Asset]:
    """Returns a tuple with the (base, quote) assets"""
    assets = pair.split('_')
    if len(assets) != 2:
        raise ValueError(f'Could not split {pair} pair')

    return cast(Asset, assets[0]), cast(Asset, assets[1])
Example #3
0
def _split_pair(pair: TradePair) -> Tuple[str, str]:
    assets = pair.split('_')
    if len(assets) != 2:
        # Could not split the pair
        raise UnprocessableTradePair(pair)

    if len(assets[0]) == 0 or len(assets[1]) == 0:
        # no base or no quote asset
        raise UnprocessableTradePair(pair)

    return assets[0], assets[1]
Example #4
0
def _split_pair(pair: TradePair) -> Tuple[str, str]:
    assets = pair.split('_')
    if len(assets) != 2:
        raise ValueError(f'Could not split {pair} pair')

    if len(assets[0]) == 0:
        raise ValueError(f'Splitting {pair} yielded no base asset')

    if len(assets[1]) == 0:
        raise ValueError(f'Splitting {pair} yielded no quote asset')

    return assets[0], assets[1]