will calculate a difference between the calculated target amount and the amount you give as src_amount
      if you will obtain target_amount_obtained instead
    valid_days_max: see rate()
    returns a tuple: (percent, difference_src_currency, difference_target_currency)

def worse(src_amount, src_currency, target_amount_obtained, target_currency, date=None, valid_days_max=None):
    """will calculate a difference between the calculated target amount and the amount you give as src_amount
      if you will obtain target_amount_obtained instead
    valid_days_max: see rate()
    returns a tuple: (percent, difference_src_currency, difference_target_currency)
    """
    calculated = convert(src_amount, src_currency, target=target_currency, date=date, valid_days_max=valid_days_max)
    worse = calculated - target_amount_obtained
    worse_src = convert(worse, target_currency, target=src_currency, date=date, valid_days_max=valid_days_max)
    if src_amount:
        return worse_src / src_amount * 100.0, worse_src, worse
    elif not target_amount_obtained:
        return 0.0, worse_src, worse
    else:
        return float('inf') if (target_amount_obtained < 0) else float('-inf'), worse_src, worse