示例#1
0
def to_ql_currency(arg):
    """Converts string with a calendar name to a calendar instance of QuantLib.

    :param arg: str
        The currency 3 letter identifier
    :return QuantLib.Currency
    """

    if arg.upper() == "USD":
        return ql.USDCurrency()
    elif arg.upper() == "BRL":
        return ql.BRLCurrency()
    elif arg.upper() == "EUR":
        return ql.EURCurrency()
    elif arg.upper() == "GBP":
        return ql.GBPCurrency()
    elif arg.upper() == "AUD":
        return ql.AUDCurrency()
    elif arg.upper() == "JPY":
        return ql.JPYCurrency()
    elif arg.upper() == "TRY":
        return ql.TRYCurrency()
    elif arg.upper() == "ZAR":
        return ql.ZARCurrency()
    elif arg.upper() == "CHF":
        return ql.CHFCurrency()
    elif arg.upper() in ["CNY", "CNH"]:
        return ql.CNYCurrency()
    else:
        raise ValueError(
            "Unable to convert {} to a QuantLib currency".format(arg))
示例#2
0
def to_ql_currency(arg):
    """Converts string with a calendar name to a calendar instance of QuantLib.

    Parameters
    ----------
    arg: str

    Returns
    -------
    QuantLib.Currency

    """

    if arg.upper() == "USD":
        return ql.USDCurrency()
    if arg.upper() == "BRL":
        return ql.BRLCurrency()
    if arg.upper() == "EUR":
        return ql.EURCurrency()
    else:
        raise ValueError(
            "Unable to convert {} to a QuantLib currency".format(arg))