'''
 Generated by EZX Code Generator  
Date: 02/24/22 
'''

from enum import Enum, unique

@unique
class MsgOrigin(Enum):
	TWOWAY = 1
	ROUTEDIN = 2
	LOCAL = 3
	UNSOL = 4


@unique
class PairState(Enum):
	Cancelled = "CANC"
	Closed = "CLOSED"
	New = "NEW"
	Open = "OPEN"
	Suspended = "SUSP"


@unique
class IDSource(Enum):
	CUSIP = "1"
	WM_CODE = "101"
	NECIGEF = "102"
	SEDOL = "2"
	QUIK = "3"
	ISIN = "4"
	RIC = "5"
	ISO_CURR_CODE = "6"
	ISO_COUNTRY_CODE = "7"
	EXCHANGE_SYMBOL = "8"
	CONSOLIDATE_TAPE_ASSOC = "9"
	VALOREN = "D"
	SICOVAM = "E"


@unique
class ClientOrderType(Enum):
	CLIENT_ORDER_ONLY = 1
	STAGED_ORDER = 2
	AUTO_STAGED_ORDER = 3
	PROXY = 4


@unique
class ReceivedMethod(Enum):
	ELECTRONIC = "E"
	FAX = "F"
	INSTANT_MESSAGE = "I"
	EMAIL = "L"
	MANUAL = "M"
	PHONE = "P"
	VERBAL = "V"


@unique
class SettlementType(Enum):
	REGULAR = 0
	CASH = 1
	NEXT_DAY = 2
	T_PLUS_2 = 3
	T_PLUS_3 = 4
	T_PLUS_4 = 5
	FUTURE = 6
	WHEN_ISSUED = 7
	SELLERS_OPTION = 8
	T_PLUS_5 = 9


@unique
class CFICode(Enum):
	EQUITY_COMMON_SHARES = "ES"
	OPTION_CALL = "OC"
	OPTION_PUT = "OP"


@unique
class MDUpdateAction(Enum):
	New = "0"
	Change = "1"
	Delete = "2"


@unique
class AdminResult(Enum):
	FAILURE = 0
	SUCCESS = 1


@unique
class MarketDataLogonType(Enum):
	MONEY_MARKET = 1
	BONDS = 2


@unique
class ReportFills(Enum):
	WHEN_FILLED = 1
	PARTIAL_FILLS = 2


@unique
class QuoteState(Enum):
	ACCEPTED = "ACCEPTED"
	ACKED = "ACKED"
	CAND = "CAND"
	FILLED = "FILLED"
	NEW = "NEW"
	PASSED = "PASSED"
	REJT = "REJT"


@unique
class Side(Enum):
	BUY = 1
	BUY_TO_COVER = 101
	SELL = 2
	BUY_MINUS = 3
	SELL_PLUS = 4
	SELL_SHORT = 5
	SELL_SHORT_EXEMPT = 6


@unique
class SecType(Enum):
	COMMON_STOCK = "CS"
	FUTURE = "FUT"
	MUTUAL_FUND = "MF"
	OPTION = "OPT"
	PREFERRED_STOCK = "PS"


@unique
class TradingSessionID(Enum):
	EARLY = "1"
	NORMAL = "2"
	LATE = "3"


@unique
class Events(Enum):
	ACK = "ACK"
	CANA = "CANA"
	CANC = "CANC"
	CAND = "CAND"
	CANE = "CANE"
	CANR = "CANR"
	CORE = "CORE"
	DELETED = "DELETED"
	DONE = "DONE"
	EDTD = "EDTD"
	EXEC = "EXEC"
	EXPIRE = "EXPIRE"
	ORDR = "ORDR"
	PENDING = "PENDING"
	REJT = "REJT"
	REPA = "REPA"
	REPD = "REPD"
	REPL = "REPL"
	REPR = "REPR"
	RESTATED = "RESTATED"
	RESUBMITTED = "RESUBMITTED"
	RPTD = "RPTD"
	STOPPED = "STOPPED"
	SUSPENDED = "SUSPENDED"
	UNKNOWN = "UNKNOWN"
	URPTD = "URPTD"


@unique
class Currency(Enum):
	USD = "USD"


@unique
class TimeInForce(Enum):
	DAY = 0
	GOOD_TILL_CANCEL = 1
	AT_THE_OPEN = 2
	IMMEDIATE_OR_CANCEL = 3
	FILL_OR_KILL = 4
	GOOD_TILL_CROSSING = 5
	GOOD_TILL_DATE = 6
	AT_THE_CLOSE = 7


@unique
class PositionEffect(Enum):
	CLOSE = "C"
	FIFO = "F"
	OPEN = "O"
	ROLLED = "R"


@unique
class ExecType(Enum):
	NEW = 0
	PARTIALLY_FILLED = 1
	PENDING_NEW = 10
	DELETED = 100
	RESUBMITTED = 101
	FIX_ENGINE_EXPIRED = 102
	LASTLOOK_MATCH = 103
	LASTLOOK_TIMEOUT = 104
	LASTLOOK_REJECT = 105
	CALCULATED = 11
	EXPIRED = 12
	RESTATED = 13
	PENDING_REPLACE = 14
	TRADE = 15
	TRADE_CORRECT = 16
	TRADE_CANCEL = 17
	TRADE_STATUS = 18
	FILLED = 2
	DONE_FOR_DAY = 3
	CANCELLED = 4
	REPLACED = 5
	PENDING_CANCEL = 6
	STOPPED = 7
	REJECTED = 8
	SUSPENDED = 9


@unique
class PendReq(Enum):
	CANC = "CANC"
	NEW = "NEW"
	NOPEND = "NOPEND"
	REPL = "REPL"


@unique
class TradeLiquidityIndicator(Enum):
	ADDED_LIQUIDITY = "A"
	COND_ADDITIONAL_LIQUIDITY = "C"
	OTHER = "Q"
	REMOVED_LIQUIDITY = "R"
	ROUTED = "X"


@unique
class SecurityExchange(Enum):
	CBOT = "CBOT"
	CME = "CME"


@unique
class InfoType(Enum):
	ORDERS_ONLY = 1
	EXEC_AND_ORDERS = 2


@unique
class QuoteUpdateType(Enum):
	UPDATE = 1
	DELETE = 2


@unique
class MDEntryType(Enum):
	Bid = "0"
	Offer = "1"
	Trade = "2"
	IndexValue = "3"
	OpeningPrice = "4"
	ClosingPrice = "5"
	SettlementPrice = "6"
	TradingSessionHighPrice = "7"
	TradingSessionLowPrice = "8"
	TradingSessionVwapPrice = "9"
	Imbalance = "A"
	TradeVolume = "B"
	OpenInterest = "C"


@unique
class OpenClose(Enum):
	CLOSE = "C"
	OPEN = "O"


@unique
class ReturnCode(Enum):
	OK = 0
	INVALID_USER = 1
	DB_DOWN = 2
	DUP_LOGIN = 3
	USER_ERROR = 4
	SYSTEM_ERROR = 5


@unique
class PutOrCall(Enum):
	Put = 0
	Call = 1


@unique
class HandlInstr(Enum):
	AUTO_NO_BROKER = 1
	AUTO_BROKER_OK = 2
	MANUAL = 3


@unique
class OrdType(Enum):
	MARKET = "1"
	LIMIT = "2"
	STOP = "3"
	STOP_LIMIT = "4"
	MARKET_ON_CLOSE = "5"
	WITH_OR_WITHOUT = "6"
	LIMIT_OR_BETTER = "7"
	LIMIT_WITH_OR_WITHOUT = "8"
	ON_BASIS = "9"
	ON_CLOSE = "A"
	LIMIT_ON_CLOSE = "B"
	FOREX_MARKET = "C"
	PREVIOUSLY_QUOTED = "D"
	PREVIOUSLY_INDICATED = "E"
	FOREX_LIMIT = "F"
	FOREX_SWAP = "G"
	FOREX_PREVIOUSLY_QUOTED = "H"
	FUNARI = "I"
	PEGGED = "P"


@unique
class LogonType(Enum):
	OPEN = 1
	ALL_FILLS_MSGS_AND_ALL_OPEN_ORDERS = 10
	ALL = 2
	EXES = 3
	SENDONLY = 4
	TESTRECORD = 5
	TESTRUN = 6
	AGGREGATE = 7
	ORDSWITHFILLS = 8
	DROPCOPY = 9


@unique
class WashTradeCheck(Enum):
	NO_PRICE_CHECK = "NPC"
	PRICE_PLUS_DESTINATION = "PDC"
	PRICE_ONLY_CHECK = "POC"


@unique
class MsgType(Enum):
	NEW = 1
	CANC = 2
	REPL = 3
	EDIT = 4
	STATUS = 5
	TRADE_ACCEPT = 6
	TRADE_DECLINE = 7


@unique
class AllocTransType(Enum):
	NEW = 0
	REPLACE = 1
	CANCEL = 2


@unique
class MdOrderSource(Enum):
	Pairs = "P"
	Single = "S"


@unique
class RiskUserType(Enum):
	NOT_SET = -1
	CLEARING_FIRM = 0
	BROKER = 1
	TRADER = 2
	CLEARING_FIRM_BROKER = 3


@unique
class ExecTransType(Enum):
	NEW = 0
	CANCEL = 1
	CORRECT = 2
	STATUS = 3


@unique
class CustomerOrFirm(Enum):
	Customer = 0
	Firm = 1


@unique
class State(Enum):
	ACKED = "ACKED"
	CAND = "CAND"
	DONE = "DONE"
	EXPIRE = "EXPIRE"
	FILLED = "FILLED"
	NEW = "NEW"
	OVRF = "OVRF"
	PAFI = "PAFI"
	REJT = "REJT"


@unique
class Country(Enum):
	US = "US"


@unique
class DestStatus(Enum):
	DOWN = 0
	UP = 1


@unique
class ProxyType(Enum):
	HTTP = 1
	SOCKS4 = 2
	SOCKS4A = 3
	SOCKS5 = 4


@unique
class QuoteType(Enum):
	BID = 0
	OFFER = 1


@unique
class CoveredOrUncovered(Enum):
	Covered = 0
	Uncovered = 1


@unique
class SymbolType(Enum):
	NO_MAP = 0
	REALTICK = 1
	ITS = 2
	BLOOMBERG = 3
	LIQUIDNET = 4
	REUTERS = 5
	LVOL = 6


@unique
class CompanySetting(Enum):
	TRADING_DISABLED = "0"
	TRADING_ENABLED = "1"
	MAX_AGGREGATED_EXECUTE_INT = "AG_EX"
	AGGREGATE_MAX_LOSS_INT = "AMXLS"
	CLIENT_CREDIT_LIMIT_DBL = "CCL"
	CLIENT_CREDIT_USED_DBL = "CCU"
	CREDIT_LIMIT_DBL = "CL"
	CLIENT_AGGREGATE_MAX_LOSS_INT = "CLAMXLS"
	CLIENT_MAX_OPEN_ORDERS_PER_SYMBOL_INT = "CLMOOPS"
	CLIENT_POSITION_LIMIT_INT = "CLPS_LIMIT"
	CLIENT_POSITION_LIMIT_USED_INT = "CLPS_LIMIT_USED"
	CLIENT_TRADING_LOSS = "CLTRDLS"
	DISABLE = "DISABLE"
	ENABLE = "ENABLE"
	ALLOW_SELL_SHORT_BOOL = "EN_SS"
	ALLOW_SELL_SHORT_EXEMP_BOOL = "EN_SSE"
	LOCATES_CSV = "LC"
	MAX_NOTIONAL_INT = "MAX_DOLLAR"
	MAX_NOTIONAL_OPT_INT = "MAX_DOLLAR_OPT"
	MAX_DUPES_CSV = "MAX_DUPES"
	MARKET_DATA_SOURCE_ENABLED_BOOL = "MDS_ON"
	MAX_OPEN_ORDERS_INT = "MOO"
	MAX_OPEN_ORDERS_PER_SYMBOL_INT = "MOOPS"
	MAX_PRICE_DIFF_PCT = "MPP"
	MAX_SHARES_LIMIT_INT = "MS"
	MAX_SHARES_LIMIT_OPT_INT = "MS_OPT"
	MOVEORDER_CSV = "MVORD"
	MAX_SHARES_TRADED_INT = "MXST"
	MAX_NET_TRADE_INT = "NET_EX"
	ON_CLOSE_CSV = "OC"
	ODD_LOT_ON_BOOL = "ODDLT"
	ODD_LOT_SYMBOLS_CSV = "ODLTSYM"
	ORDERS_PER_INTERVAL_INT = "OPI"
	POSITION_CSV = "PS"
	POSITION_LIMIT_INT = "PS_LIMIT"
	POSITION_LIMIT_USED_INT = "PS_LIMIT_USED"
	ADV_PCT_INT = "SHPCT"
	SYMLIMIT_BP_INT = "SLIMIT.BP"
	SYMLIMIT_DEFAULT_BP_INT = "SLIMIT.BPDEF"
	SYMLIMIT_DELETE_SYMBOL = "SLIMIT.DEL"
	SYMLIMIT_DEFAULT_MAXSHARES_INT = "SLIMIT.MAXSHDEF"
	SYMLIMIT_MXST_INT = "SLIMIT.MXST"
	SYMLIMIT_DEFAULT_MXST_INT = "SLIMIT.MXSTDEF"
	SYMLIMIT_MAXSHARES_INT = "SLIMIT.SH"
	STOP_SYMBOL = "STOPSYM"
	SYML_MAX_POS_VAL = "SYMXPSVAL"
	TOTAL_EXECUTED_LIMIT_INT = "TEL"
	TOTAL_OPEN_AND_EXECUTED_LIMIT_INT = "TOEL"
	DAY_TRADING_ON_OFF_CSV = "TRADEONOFF"
	TRADING_LOSS = "TRDLS"
	MAX_UNIQUE_POSITIONS_INT = "UPOS"
	WASH_TRADE_CHECK_CSV = "WASH"


