Enum BuySell

  • All Implemented Interfaces:
    Named, NamedEnum, Serializable, Comparable<BuySell>

    public enum BuySell
    extends Enum<BuySell>
    implements NamedEnum
    Flag indicating whether a trade is "buy" or "sell".

    Specifies whether the financial instrument is buy-side or sell-side. For example, in a Forward Rate Agreement the buyer receives the floating rate of interest in exchange for a fixed rate, whereas the seller pays the floating rate. This flag is stored on the instrument to indicate whether it was bought or sold.

    • Enum Constant Detail

      • BUY

        public static final BuySell BUY
        Buy.
      • SELL

        public static final BuySell SELL
        Sell.
    • Method Detail

      • values

        public static BuySell[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (BuySell c : BuySell.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static BuySell valueOf​(String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        IllegalArgumentException - if this enum type has no constant with the specified name
        NullPointerException - if the argument is null
      • of

        public static BuySell of​(String name)
        Obtains an instance from the specified name.

        Parsing handles the mixed case form produced by toString() and the upper and lower case variants of the enum constant name.

        Parameters:
        name - the name to parse
        Returns:
        the type
        Throws:
        IllegalArgumentException - if the name is not known
      • ofBuy

        public static BuySell ofBuy​(boolean isBuy)
        Converts a boolean "is buy" flag to the enum value.
        Parameters:
        isBuy - the buy flag, true for buy, false for sell
        Returns:
        the equivalent enum
      • normalize

        public double normalize​(double amount)
        Normalizes the specified notional amount using this buy/sell rule.

        This returns a positive signed amount if this is 'buy', and a negative signed amount if this is 'sell'. This effectively normalizes the input notional to the buy/sell sign conventions of this library. The negative form of zero will never be returned.

        Parameters:
        amount - the amount to adjust
        Returns:
        the adjusted amount
      • normalize

        public CurrencyAmount normalize​(CurrencyAmount amount)
        Normalizes the specified amount using this buy/sell rule.

        This returns a positive signed amount if this is 'buy', and a negative signed amount if this is 'sell'. This effectively normalizes the input notional to the buy/sell sign conventions of this library. The negative form of zero will never be returned.

        Parameters:
        amount - the amount to adjust
        Returns:
        the adjusted amount
      • isBuy

        public boolean isBuy()
        Checks if the type is 'Buy'.
        Returns:
        true if buy, false if sell
      • isSell

        public boolean isSell()
        Checks if the type is 'Sell'.
        Returns:
        true if sell, false if buy
      • opposite

        public BuySell opposite()
        Supplies the opposite of this value.
        Returns:
        the opposite value
      • toString

        public String toString()
        Returns the formatted name of the type.
        Overrides:
        toString in class Enum<BuySell>
        Returns:
        the formatted string representing the type