B
     9-e$                 @   s   d Z ddlmZmZmZmZ ddlmZ ddlm	Z	 ddl
mZ ddl
mZ ddl
mZ ed\ZZZed	\ZZZZeZG d
d deZG dd deZdS )z
Copyright (C) 2019 Interactive Brokers LLC. All rights reserved. This code is subject to the terms
 and conditions of the IB API Non-Commercial License or the IB API Commercial License, as applicable.
    )UNSET_INTEGERUNSET_DOUBLEUNSET_DECIMALDOUBLE_INFINITY)Object)SoftDollarTier)decimalMaxString)intMaxString)floatMaxString      c               @   s   e Zd Zdd Zdd ZdS )OrderComboLegc             C   s
   t | _d S )N)r   price)self r   G:\My Drive\STUDY\EPAT\09 TBP - Trading & Back-testing Platforms\TBP04 - Backtesting & Live Trading\IB IBridgePy API\02 Python 3.7 IBridgePy_Win_Anaconda37_64\ibapi\order.py__init__   s    zOrderComboLeg.__init__c             C   s   dt | j S )Nz%s)r
   r   )r   r   r   r   __str__   s    zOrderComboLeg.__str__N)__name__
__module____qualname__r   r   r   r   r   r   r      s   r   c               @   s   e Zd Zdd Zdd ZdS )Orderc             C   s<  t ddd| _d| _d| _d| _d| _t| _d| _t	| _
t	| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _d| _t| _t	| _ d| _!t	| _"t	| _#d| _$d| _%d| _&d| _'d| _(d| _)t*| _+d| _,d| _-d| _.d| _/t0| _1t	| _2t	| _3t	| _4t	| _5t	| _6d| _7d| _8t	| _9t| _:d| _;t	| _<d| _=d| _>d| _?d| _@d| _Ad| _Bd| _Cd| _Dd| _Et| _Ft	| _Gt| _Ht| _It| _Jt	| _Kt	| _Lt| _Mt	| _Nd| _Ot| _Pt| _Qd| _Rd| _Sd| _Td| _Ud| _Vd| _Wd| _Xd| _Yd| _Zd | _[d | _\d| _]d| _^d| __d| _`d| _ad | _bd | _cd| _dd| _ed| _fd| _gd| _hd| _it	| _jt	| _kt	| _lt	| _md| _nt	| _og | _pd| _qd| _rd| _st	| _td| _ud| _vd| _wd| _xd| _yd| _zd| _{d| _|t| _}d| _~d| _d| _d| _d| _d| _d | _t| _t| _d| _d| _t| _t| _t	| _t	| _t	| _d S )N r   TFg        )r   softDollarTierorderIdclientIdpermIdactionr   totalQuantity	orderTyper   lmtPriceauxPricetifactiveStartTimeactiveStopTimeocaGroupocaTypeorderReftransmitparentId
blockOrdersweepToFilldisplaySizetriggerMethod
outsideRthhiddengoodAfterTimegoodTillDaterule80A	allOrNoner   minQtypercentOffsetoverridePercentageConstraintstrailStopPricetrailingPercentfaGroup	faProfilefaMethodfaPercentagedesignatedLocation	openCloseCUSTOMERoriginshortSaleSlot
exemptCodediscretionaryAmtoptOutSmartRoutingAUCTION_UNSETauctionStrategystartingPricestockRefPricedeltastockRangeLowerstockRangeUpperrandomizePricerandomizeSize
volatilityvolatilityTypedeltaNeutralOrderTypedeltaNeutralAuxPricedeltaNeutralConIddeltaNeutralSettlingFirmdeltaNeutralClearingAccountdeltaNeutralClearingIntentdeltaNeutralOpenClosedeltaNeutralShortSaledeltaNeutralShortSaleSlotdeltaNeutralDesignatedLocationcontinuousUpdatereferencePriceTypebasisPointsZbasisPointsTypescaleInitLevelSizescaleSubsLevelSizescalePriceIncrementscalePriceAdjustValuescalePriceAdjustIntervalscaleProfitOffsetscaleAutoResetscaleInitPositionscaleInitFillQtyscaleRandomPercent
scaleTable	hedgeType
hedgeParamaccountsettlingFirmclearingAccountclearingIntentalgoStrategy
algoParamssmartComboRoutingParamsalgoIdwhatIfnotHeld	solicited	modelCodeorderComboLegsorderMiscOptionsreferenceContractIdpeggedChangeAmountisPeggedChangeAmountDecreasereferenceChangeAmountreferenceExchangeIdadjustedOrderTypetriggerPriceadjustedStopPriceadjustedStopLimitPriceadjustedTrailingAmountadjustableTrailingUnitlmtPriceOffset
conditionsconditionsCancelOrderconditionsIgnoreRthextOperatorcashQtymifid2DecisionMakermifid2DecisionAlgomifid2ExecutionTradermifid2ExecutionAlgodontUseAutoPriceForHedgeisOmsContainerdiscretionaryUpToLimitPriceZautoCancelDatefilledQuantityZrefFuturesConIdautoCancelParentZshareholderZimbalanceOnlyZrouteMarketableToBboZparentPermIdusePriceMgmtAlgoduration	postToAtsadvancedErrorOverridemanualOrderTimeminTradeQtyminCompeteSizecompeteAgainstBestOffsetmidOffsetAtWholemidOffsetAtHalf)r   r   r   r   r      s   zOrder.__init__c             C   s   dt | jt | jt | jf }|d| j| jt| jt| j	f 7 }|d| j
 7 }| jr|d7 }x| jD ]}|t|d 7 }qhW |d7 }| jr|d7 }x| jD ]}|t|d 7 }qW |d7 }|S )Nz	%s,%s,%s:z %s %s %s@%sz %sz CMB(,)z COND()r	   r   r   r   r    r   r   r   r
   r!   r#   rw   strr   )r   slegcondr   r   r   r      s$     zOrder.__str__N)r   r   r   r   r   r   r   r   r   r      s    Ar   N)__doc__ibapi.commonr   r   r   r   ibapi.object_implemr   ibapi.softdollartierr   ibapi.utilsr   r	   r
   ranger@   ZFIRMUNKNOWNrF   ZAUCTION_MATCHZAUCTION_IMPROVEMENTZAUCTION_TRANSPARENT%COMPETE_AGAINST_BEST_OFFSET_UP_TO_MIDr   r   r   r   r   r   <module>   s   