コード例 #1
0
ファイル: MarketOrder.cs プロジェクト: InzenDN/adapter-csharp
 public MarketOrder(OrderID id, DateTime createTime, OrderState state, ClientExtensions clientExtensions, OrderType type, InstrumentName instrument, double units, TimeInForce timeInForce, PriceValue priceBound, OrderPositionFill positionFill, MarketOrderTradeClose tradeClose, MarketOrderPositionCloseout longPositionCloseout, MarketOrderPositionCloseout shortPositionCloseout, MarketOrderMarginCloseout marginCloseout, MarketOrderDelayedTradeClose delayedTradeClose, TakeProfitDetails takeProfitOnFill, StopLossDetails stopLossOnFill, TrailingStopLossDetails trailingStopLossOnFill, ClientExtensions tradeClientExtensions, TransactionID fillingTransactionID, DateTime filledTime, TradeID tradeOpenedID, TradeID tradeReducedID, List <TradeID> tradeClosedIDs, TransactionID cancellingTransactionID, DateTime cancelledTime)
 {
     this.Id                      = id;
     this.CreateTime              = createTime;
     this.State                   = state;
     this.ClientExtensions        = clientExtensions;
     this.Type                    = type;
     this.Instrument              = instrument;
     this.Units                   = units;
     this.TimeInForce             = timeInForce;
     this.PriceBound              = priceBound;
     this.PositionFill            = positionFill;
     this.TradeClose              = tradeClose;
     this.LongPositionCloseout    = longPositionCloseout;
     this.ShortPositionCloseout   = shortPositionCloseout;
     this.MarginCloseout          = marginCloseout;
     this.DelayedTradeClose       = delayedTradeClose;
     this.TakeProfitOnFill        = takeProfitOnFill;
     this.StopLossOnFill          = stopLossOnFill;
     this.TrailingStopLossOnFill  = trailingStopLossOnFill;
     this.TradeClientExtensions   = tradeClientExtensions;
     this.FillingTransactionID    = fillingTransactionID;
     this.FilledTime              = filledTime;
     this.TradeOpenedID           = tradeOpenedID;
     this.TradeReducedID          = tradeReducedID;
     this.TradeClosedIDs          = tradeClosedIDs;
     this.CancellingTransactionID = cancellingTransactionID;
     this.CancelledTime           = cancelledTime;
 }
コード例 #2
0
 public MarketOrderRejectTransaction(
     string id,
     DateTime time,
     int?userID,
     string accountID,
     string?batchID,
     string?requestID,
     TransactionType type,
     ClientExtensions?clientExtensions,
     string?replacesOrderID,
     string?cancellingTransactionID,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     string instrument,
     decimal units,
     OrderPositionFill positionFill,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     decimal priceBound,
     MarketOrderTradeClose?tradeClose,
     MarketOrderPositionCloseout?longPositionCloseout,
     MarketOrderPositionCloseout?shortPositionCloseout,
     MarketOrderMarginCloseout?marginCloseout,
     MarketOrderDelayedTradeClose?delayedTradeClose,
     MarketOrderReason reason,
     TransactionRejectReason rejectReason)
     : base(
         id,
         time,
         userID,
         accountID,
         batchID,
         requestID,
         type,
         clientExtensions,
         replacesOrderID,
         cancellingTransactionID,
         timeInForce,
         gtdTime,
         instrument,
         units,
         positionFill,
         takeProfitOnFill,
         stopLossOnFill,
         trailingStopLossOnFill,
         guaranteedStopLossOnFill,
         tradeClientExtensions,
         priceBound,
         tradeClose,
         longPositionCloseout,
         shortPositionCloseout,
         marginCloseout,
         delayedTradeClose,
         reason)
 {
     RejectReason = rejectReason;
 }
コード例 #3
0
ファイル: MarketOrder.cs プロジェクト: InzenDN/adapter-csharp
 public MarketOrder()
 {
     this.Id                      = new OrderID();
     this.CreateTime              = new DateTime();
     this.State                   = new OrderState();
     this.ClientExtensions        = new ClientExtensions();
     this.Type                    = new OrderType(EOrderType.MARKET);
     this.Instrument              = new InstrumentName();
     this.TimeInForce             = new TimeInForce(ETimeInForce.FOK);
     this.PriceBound              = new PriceValue();
     this.PositionFill            = new OrderPositionFill(EOrderPositionFill.DEFAULT);
     this.TradeClose              = new MarketOrderTradeClose();
     this.LongPositionCloseout    = new MarketOrderPositionCloseout();
     this.ShortPositionCloseout   = new MarketOrderPositionCloseout();
     this.MarginCloseout          = new MarketOrderMarginCloseout();
     this.DelayedTradeClose       = new MarketOrderDelayedTradeClose();
     this.TakeProfitOnFill        = new TakeProfitDetails();
     this.StopLossOnFill          = new StopLossDetails();
     this.TrailingStopLossOnFill  = new TrailingStopLossDetails();
     this.TradeClientExtensions   = new ClientExtensions();
     this.FillingTransactionID    = new TransactionID();
     this.FilledTime              = new DateTime();
     this.TradeOpenedID           = new TradeID();
     this.TradeReducedID          = new TradeID();
     this.TradeClosedIDs          = new List <TradeID>();
     this.CancellingTransactionID = new TransactionID();
     this.CancelledTime           = new DateTime();
 }
コード例 #4
0
ファイル: StopOrder.cs プロジェクト: InzenDN/adapter-csharp
 public StopOrder()
 {
     this.Id                      = new OrderID();
     this.CreateTime              = new DateTime();
     this.State                   = new OrderState();
     this.ClientExtensions        = new ClientExtensions();
     this.Type                    = new OrderType(EOrderType.STOP);
     this.Instrument              = new InstrumentName();
     this.Price                   = new PriceValue();
     this.PriceBound              = new PriceValue();
     this.TimeInForce             = new TimeInForce(ETimeInForce.GTC);
     this.GtdTime                 = new DateTime();
     this.PositionFill            = new OrderPositionFill(EOrderPositionFill.DEFAULT);
     this.TriggerCondition        = new OrderTriggerCondition(EOrderTriggerCondition.DEFAULT);
     this.TakeProfitOnFill        = new TakeProfitDetails();
     this.StopLossOnFill          = new StopLossDetails();
     this.TrailingStopLossOnFill  = new TrailingStopLossDetails();
     this.TradeClientExtensions   = new ClientExtensions();
     this.FillingTransactionID    = new TransactionID();
     this.FilledTime              = new DateTime();
     this.TradeOpenedID           = new TradeID();
     this.TradeReducedID          = new TradeID();
     this.TradeClosedIDs          = new List <TradeID>();
     this.CancellingTransactionID = new TransactionID();
     this.CancelledTime           = new DateTime();
     this.ReplacesOrderID         = new OrderID();
     this.ReplacedByOrderID       = new OrderID();
 }
コード例 #5
0
 public TrailingStopLossOrder(
     string id,
     DateTime createTime,
     OrderState state,
     ClientExtensions?clientExtensions,
     OrderType type,
     string instrument,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     OrderPositionFill positionFill,
     OrderTriggerCondition triggerCondition,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     string?fillingTransactionID,
     DateTime?filledTime,
     string?tradeOpenedID,
     string?tradeReducedID,
     ImmutableList <string>?tradeClosedIDs,
     string?cancellingTransactionID,
     DateTime?cancelledTime,
     string?replacesOrderID,
     string?replacedByOrderID,
     string tradeID,
     string?clientTradeID,
     decimal distance,
     decimal?trailingStopValue)
     : base(
         id,
         createTime,
         state,
         clientExtensions,
         type,
         instrument,
         timeInForce,
         gtdTime,
         positionFill,
         triggerCondition,
         takeProfitOnFill,
         stopLossOnFill,
         guaranteedStopLossOnFill,
         trailingStopLossOnFill,
         tradeClientExtensions,
         fillingTransactionID,
         filledTime,
         tradeOpenedID,
         tradeReducedID,
         tradeClosedIDs,
         cancellingTransactionID,
         cancelledTime,
         replacesOrderID,
         replacedByOrderID)
 {
     TradeID           = tradeID;
     ClientTradeID     = clientTradeID;
     Distance          = distance;
     TrailingStopValue = trailingStopValue;
 }
コード例 #6
0
ファイル: StopOrder.cs プロジェクト: InzenDN/adapter-csharp
 public StopOrder(OrderID id, DateTime createTime, OrderState state, ClientExtensions clientExtensions, OrderType type, InstrumentName instrument, double units, PriceValue price, PriceValue priceBound, TimeInForce timeInForce, DateTime gtdTime, OrderPositionFill positionFill, OrderTriggerCondition triggerCondition, TakeProfitDetails takeProfitOnFill, StopLossDetails stopLossOnFill, TrailingStopLossDetails trailingStopLossOnFill, ClientExtensions tradeClientExtensions, TransactionID fillingTransactionID, DateTime filledTime, TradeID tradeOpenedID, TradeID tradeReducedID, List <TradeID> tradeClosedIDs, TransactionID cancellingTransactionID, DateTime cancelledTime, OrderID replacesOrderID, OrderID replacedByOrderID)
 {
     this.Id                      = id;
     this.CreateTime              = createTime;
     this.State                   = state;
     this.ClientExtensions        = clientExtensions;
     this.Type                    = type;
     this.Instrument              = instrument;
     this.Units                   = units;
     this.Price                   = price;
     this.PriceBound              = priceBound;
     this.TimeInForce             = timeInForce;
     this.GtdTime                 = gtdTime;
     this.PositionFill            = positionFill;
     this.TriggerCondition        = triggerCondition;
     this.TakeProfitOnFill        = takeProfitOnFill;
     this.StopLossOnFill          = stopLossOnFill;
     this.TrailingStopLossOnFill  = trailingStopLossOnFill;
     this.TradeClientExtensions   = tradeClientExtensions;
     this.FillingTransactionID    = fillingTransactionID;
     this.FilledTime              = filledTime;
     this.TradeOpenedID           = tradeOpenedID;
     this.TradeReducedID          = tradeReducedID;
     this.TradeClosedIDs          = tradeClosedIDs;
     this.CancellingTransactionID = cancellingTransactionID;
     this.CancelledTime           = cancelledTime;
     this.ReplacesOrderID         = replacesOrderID;
     this.ReplacedByOrderID       = replacedByOrderID;
 }
コード例 #7
0
 public StopOrderTransaction(TransactionID id, DateTime time, int userID, AccountID accountID, TransactionID batchID, RequestID requestID, TransactionType type, InstrumentName instrument, double units, PriceValue price, PriceValue priceBound, TimeInForce timeInForce, DateTime gTDTime, OrderPositionFill positionFill, OrderTriggerCondition triggerCondition, StopOrderReason reason, ClientExtensions clientExtensions, TakeProfitDetails takeProfitOnFill, StopLossDetails stopLossOnFill, TrailingStopLossDetails trailingStopLossOnFill, ClientExtensions tradeClientExtensions, OrderID replacesOrderID, TransactionID cancellingTransactionID)
 {
     this.Id                      = id;
     this.Time                    = time;
     this.UserID                  = userID;
     this.AccountID               = accountID;
     this.BatchID                 = batchID;
     this.RequestID               = requestID;
     this.Type                    = type;
     this.Instrument              = instrument;
     this.Units                   = units;
     this.Price                   = price;
     this.PriceBound              = priceBound;
     this.TimeInForce             = timeInForce;
     this.GTDTime                 = gTDTime;
     this.PositionFill            = positionFill;
     this.TriggerCondition        = triggerCondition;
     this.Reason                  = reason;
     this.ClientExtensions        = clientExtensions;
     this.TakeProfitOnFill        = takeProfitOnFill;
     this.StopLossOnFill          = stopLossOnFill;
     this.TrailingStopLossOnFill  = trailingStopLossOnFill;
     this.TradeClientExtensions   = tradeClientExtensions;
     this.ReplacesOrderID         = replacesOrderID;
     this.CancellingTransactionID = cancellingTransactionID;
 }
コード例 #8
0
 public MarketIfTouchedOrder(
     string id,
     DateTime createTime,
     OrderState state,
     ClientExtensions?clientExtensions,
     OrderType type,
     string instrument,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     OrderPositionFill positionFill,
     OrderTriggerCondition triggerCondition,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     string?fillingTransactionID,
     DateTime?filledTime,
     string?tradeOpenedID,
     string?tradeReducedID,
     ImmutableList <string>?tradeClosedIDs,
     string?cancellingTransactionID,
     DateTime?cancelledTime,
     string?replacesOrderID,
     string?replacedByOrderID,
     decimal units,
     decimal price,
     decimal priceBound,
     decimal initialMarketPrice)
     : base(
         id,
         createTime,
         state,
         clientExtensions,
         type,
         instrument,
         timeInForce,
         gtdTime,
         positionFill,
         triggerCondition,
         takeProfitOnFill,
         stopLossOnFill,
         guaranteedStopLossOnFill,
         trailingStopLossOnFill,
         tradeClientExtensions,
         fillingTransactionID,
         filledTime,
         tradeOpenedID,
         tradeReducedID,
         tradeClosedIDs,
         cancellingTransactionID,
         cancelledTime,
         replacesOrderID,
         replacedByOrderID)
 {
     Units              = units;
     Price              = price;
     PriceBound         = priceBound;
     InitialMarketPrice = initialMarketPrice;
 }
コード例 #9
0
 public MarketIfTouchedOrderRequest(
     TimeInForce timeInForce,
     DateTime?gtdTime,
     OrderTriggerCondition triggerCondition,
     ClientExtensions?clientExtensions,
     string instrument,
     OrderPositionFill positionFill,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     decimal price,
     decimal?priceBound)
     : base(
         OrderType.MARKET_IF_TOUCHED,
         timeInForce,
         gtdTime,
         triggerCondition,
         clientExtensions,
         instrument,
         positionFill,
         takeProfitOnFill,
         stopLossOnFill,
         guaranteedStopLossOnFill,
         trailingStopLossOnFill,
         tradeClientExtensions)
 {
     ValidateTimeInForce(timeInForce, _allowed);
     Price      = price;
     PriceBound = priceBound;
 }
コード例 #10
0
 public LimitOrderRequest(
     TimeInForce timeInForce,
     DateTime?gtdTime,
     OrderTriggerCondition triggerCondition,
     ClientExtensions?clientExtensions,
     string instrument,
     OrderPositionFill positionFill,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     decimal units,
     decimal price)
     : base(
         OrderType.LIMIT,
         timeInForce,
         gtdTime,
         triggerCondition,
         clientExtensions,
         instrument,
         positionFill,
         takeProfitOnFill,
         stopLossOnFill,
         guaranteedStopLossOnFill,
         trailingStopLossOnFill,
         tradeClientExtensions)
 {
     Units = units;
     Price = price;
 }
コード例 #11
0
 public MarketIfTouchedOrderRejectTransaction(
     string id,
     DateTime time,
     int?userID,
     string accountID,
     string?batchID,
     string?requestID,
     TransactionType type,
     ClientExtensions?clientExtensions,
     string?replacesOrderID,
     string?cancellingTransactionID,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     string instrument,
     decimal units,
     OrderPositionFill positionFill,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     decimal price,
     decimal?priceBound,
     OrderTriggerCondition triggerCondition,
     MarketIfTouchedOrderReason reason,
     TransactionRejectReason rejectReason)
     : base(
         id,
         time,
         userID,
         accountID,
         batchID,
         requestID,
         type,
         clientExtensions,
         replacesOrderID,
         cancellingTransactionID,
         timeInForce,
         gtdTime,
         instrument,
         units,
         positionFill,
         takeProfitOnFill,
         stopLossOnFill,
         trailingStopLossOnFill,
         guaranteedStopLossOnFill,
         tradeClientExtensions,
         price,
         priceBound,
         triggerCondition,
         reason)
 {
     RejectReason = rejectReason;
 }
コード例 #12
0
 /// <summary>
 /// A StopOrderRequest specifies the parameters that may be set when creating a Stop Order.
 /// </summary>
 /// <param name="instrument">The Stop Order’s Instrument.</param>
 /// <param name="units">The quantity requested to be filled by the Stop Order. A posititive number of units results in a long Order, and a negative number of units results in a short Order.</param>
 /// <param name="price">The price threshold specified for the Stop Order. The Stop Order will only be filled by a market price that is equal to or worse than this price.</param>
 public StopOrderRequest(InstrumentName instrument, double units, PriceValue price)
 {
     this.Type             = EOrderType.STOP;
     this.Instrument       = instrument;
     this.Units            = units;
     this.Price            = price;
     this.TimeInForce      = ETimeInForce.GTC;
     this.GtdTime          = DateTime.UtcNow;
     this.PositionFill     = EOrderPositionFill.DEFAULT;
     this.TriggerCondition = EOrderTriggerCondition.DEFAULT;
 }
コード例 #13
0
 /// <summary>
 /// A MarketIfTouchedOrderRequest specifies the parameters that may be set when creating a Market-if-Touched Order.
 /// </summary>
 /// <param name="instrument">The MarketIfTouched Order’s Instrument.</param>
 /// <param name="units">The quantity requested to be filled by the MarketIfTouched Order. A posititive number of units results in a long Order, and a negative number of units results in a short Order.</param>
 /// <param name="price">The price threshold specified for the MarketIfTouched Order. The MarketIfTouched Order will only be filled by a market price that crosses this price from the direction of the market price at the time when the Order was created (the initialMarketPrice). Depending on the value of the Order’s price and initialMarketPrice, the MarketIfTouchedOrder will behave like a Limit or a Stop Order.</param>
 public MarketIfTouchedOrderRequest(InstrumentName instrument, double units, PriceValue price)
 {
     this.Type             = EOrderType.MARKET_IF_TOUCHED;
     this.Instrument       = instrument;
     this.Units            = units;
     this.Price            = price;
     this.TimeInForce      = ETimeInForce.GTC;
     this.GtdTime          = DateTime.UtcNow;
     this.PositionFill     = EOrderPositionFill.DEFAULT;
     this.TriggerCondition = EOrderTriggerCondition.DEFAULT;
 }
コード例 #14
0
 public MarketOrderRejectTransaction(
     TransactionID id,
     DateTime time,
     int userId,
     AccountID accountID,
     TransactionID batchID,
     RequestID requestID,
     TransactionType type,
     InstrumentName instrument,
     double units,
     TimeInForce timeInForce,
     PriceValue priceBound,
     OrderPositionFill positionFill,
     MarketOrderTradeClose tradeClose,
     MarketOrderPositionCloseout longPositionCloseout,
     MarketOrderPositionCloseout shortPositionCloseout,
     MarketOrderMarginCloseout marginCloseout,
     MarketOrderDelayedTradeClose delayedTradeClose,
     MarketOrderReason reason,
     ClientExtensions clientExtensions,
     TakeProfitDetails takeProfitOnFill,
     StopLossDetails stopLossOnFill,
     TrailingStopLossDetails trailingStopLossOnFill,
     ClientExtensions tradeClientExtensions,
     TransactionRejectReason rejectReason
     )
 {
     this.Id                     = id;
     this.Time                   = time;
     this.UserId                 = userId;
     this.AccountID              = accountID;
     this.BatchID                = batchID;
     this.RequestID              = requestID;
     this.Type                   = type;
     this.Instrument             = instrument;
     this.Units                  = units;
     this.TimeInForce            = timeInForce;
     this.PriceBound             = priceBound;
     this.PositionFill           = positionFill;
     this.TradeClose             = tradeClose;
     this.LongPositionCloseout   = longPositionCloseout;
     this.ShortPositionCloseout  = shortPositionCloseout;
     this.MarginCloseout         = marginCloseout;
     this.DelayedTradeClose      = delayedTradeClose;
     this.Reason                 = reason;
     this.ClientExtensions       = clientExtensions;
     this.TakeProfitOnFill       = takeProfitOnFill;
     this.StopLossOnFill         = stopLossOnFill;
     this.TrailingStopLossOnFill = trailingStopLossOnFill;
     this.TradeClientExtensions  = tradeClientExtensions;
     this.RejectReason           = rejectReason;
 }
コード例 #15
0
 protected Order(
     string id,
     DateTime createTime,
     OrderState state,
     ClientExtensions?clientExtensions,
     OrderType type,
     string instrument,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     OrderPositionFill positionFill,
     OrderTriggerCondition triggerCondition,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     string?fillingTransactionID,
     DateTime?filledTime,
     string?tradeOpenedID,
     string?tradeReducedID,
     ImmutableList <string>?tradeClosedIDs,
     string?cancellingTransactionID,
     DateTime?cancelledTime,
     string?replacesOrderID,
     string?replacedByOrderID)
 {
     Id                       = id;
     CreateTime               = createTime;
     State                    = state;
     ClientExtensions         = clientExtensions;
     Type                     = type;
     Instrument               = instrument;
     TimeInForce              = timeInForce;
     GtdTime                  = gtdTime;
     PositionFill             = positionFill;
     TriggerCondition         = triggerCondition;
     TakeProfitOnFill         = takeProfitOnFill;
     StopLossOnFill           = stopLossOnFill;
     GuaranteedStopLossOnFill = guaranteedStopLossOnFill;
     TrailingStopLossOnFill   = trailingStopLossOnFill;
     TradeClientExtensions    = tradeClientExtensions;
     FillingTransactionID     = fillingTransactionID;
     FilledTime               = filledTime;
     TradeOpenedID            = tradeOpenedID;
     TradeReducedID           = tradeReducedID;
     TradeClosedIDs           = tradeClosedIDs;
     CancellingTransactionID  = cancellingTransactionID;
     CancelledTime            = cancelledTime;
     ReplacesOrderID          = replacesOrderID;
     ReplacedByOrderID        = replacedByOrderID;
 }
コード例 #16
0
 public FixedPriceOrderTransaction(
     string id,
     DateTime time,
     int?userID,
     string accountID,
     string?batchID,
     string?requestID,
     TransactionType type,
     ClientExtensions?clientExtensions,
     string?replacesOrderID,
     string?cancellingTransactionID,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     string instrument,
     decimal units,
     OrderPositionFill positionFill,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     decimal price,
     TradeState tradeState,
     FixedPriceOrderReason reason)
     : base(
         id,
         time,
         userID,
         accountID,
         batchID,
         requestID,
         type,
         clientExtensions,
         replacesOrderID,
         cancellingTransactionID,
         timeInForce,
         gtdTime,
         instrument,
         units,
         positionFill,
         takeProfitOnFill,
         stopLossOnFill,
         trailingStopLossOnFill,
         guaranteedStopLossOnFill,
         tradeClientExtensions)
 {
     Price      = price;
     TradeState = tradeState;
     Reason     = reason;
 }
コード例 #17
0
 public FixedPriceOrderTransaction()
 {
     this.Id                     = new TransactionID();
     this.Time                   = new DateTime();
     this.AccountID              = new AccountID();
     this.BatchID                = new TransactionID();
     this.RequestID              = new RequestID();
     this.Type                   = new TransactionType(ETransactionType.FIXED_PRICE_ORDER);
     this.Instrument             = new InstrumentName();
     this.Price                  = new PriceValue();
     this.PositionFill           = new OrderPositionFill(EOrderPositionFill.DEFAULT);
     this.Reason                 = new FixedPriceOrderReason();
     this.ClientExtensions       = new ClientExtensions();
     this.TakeProfitOnFill       = new TakeProfitDetails();
     this.StopLossOnFill         = new StopLossDetails();
     this.TrailingStopLossOnFill = new TrailingStopLossDetails();
     this.TradeClientExtensions  = new ClientExtensions();
 }
コード例 #18
0
 protected OpeningOrderTransaction(
     string id,
     DateTime time,
     int?userID,
     string accountID,
     string?batchID,
     string?requestID,
     TransactionType type,
     ClientExtensions?clientExtensions,
     string?replacesOrderID,
     string?cancellingTransactionID,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     string instrument,
     decimal units,
     OrderPositionFill positionFill,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     ClientExtensions?tradeClientExtensions)
     : base(
         id,
         time,
         userID,
         accountID,
         batchID,
         requestID,
         type,
         clientExtensions,
         replacesOrderID,
         cancellingTransactionID,
         timeInForce,
         gtdTime)
 {
     Instrument               = instrument;
     Units                    = units;
     PositionFill             = positionFill;
     TakeProfitOnFill         = takeProfitOnFill;
     StopLossOnFill           = stopLossOnFill;
     TrailingStopLossOnFill   = trailingStopLossOnFill;
     GuaranteedStopLossOnFill = guaranteedStopLossOnFill;
     TradeClientExtensions    = tradeClientExtensions;
 }
コード例 #19
0
 public FixedPriceOrderTransaction(
     TransactionID id,
     DateTime time,
     int userId,
     AccountID accountID,
     TransactionID batchID,
     RequestID requestID,
     TransactionType type,
     InstrumentName instrument,
     double units,
     PriceValue price,
     OrderPositionFill positionFill,
     string tradeState,
     FixedPriceOrderReason reason,
     ClientExtensions clientExtensions,
     TakeProfitDetails takeProfitOnFill,
     StopLossDetails stopLossOnFill,
     TrailingStopLossDetails trailingStopLossOnFill,
     ClientExtensions tradeClientExtensions
     )
 {
     this.Id                     = id;
     this.Time                   = time;
     this.UserId                 = userId;
     this.AccountID              = accountID;
     this.BatchID                = batchID;
     this.RequestID              = requestID;
     this.Type                   = type;
     this.Instrument             = instrument;
     this.Units                  = units;
     this.Price                  = price;
     this.PositionFill           = positionFill;
     this.TradeState             = tradeState;
     this.Reason                 = reason;
     this.ClientExtensions       = clientExtensions;
     this.TakeProfitOnFill       = takeProfitOnFill;
     this.StopLossOnFill         = stopLossOnFill;
     this.TrailingStopLossOnFill = trailingStopLossOnFill;
     this.TradeClientExtensions  = tradeClientExtensions;
 }
コード例 #20
0
 public FixedPriceOrder()
 {
     this.Id                      = new OrderID();
     this.CreateTime              = new DateTime();
     this.State                   = new OrderState();
     this.ClientExtensions        = new ClientExtensions();
     this.Type                    = new OrderType(EOrderType.FIXED_PRICE);
     this.Instrument              = new InstrumentName();
     this.Price                   = new PriceValue();
     this.PositionFill            = new OrderPositionFill(EOrderPositionFill.DEFAULT);
     this.TakeProfitOnFill        = new TakeProfitDetails();
     this.StopLossOnFill          = new StopLossDetails();
     this.TrailingStopLossOnFill  = new TrailingStopLossDetails();
     this.TradeClientExtensions   = new ClientExtensions();
     this.FillingTransactionID    = new TransactionID();
     this.FilledTime              = new DateTime();
     this.TradeOpenedID           = new TradeID();
     this.TradeReducedID          = new TradeID();
     this.TradeClosedIDs          = new List <TradeID>();
     this.CancellingTransactionID = new TransactionID();
     this.CancelledTime           = new DateTime();
 }
コード例 #21
0
        protected OpenTradeOrderRequest(
            OrderType type,
            TimeInForce timeInForce,
            DateTime?gtdTime,
            OrderTriggerCondition triggerCondition,
            ClientExtensions?clientExtensions,
            string instrument,
            OrderPositionFill positionFill,
            TakeProfitDetails?takeProfitOnFill,
            StopLossDetails?stopLossOnFill,
            GuaranteedStopLossDetails?guaranteedStopLossOnFill,
            TrailingStopLossDetails?trailingStopLossOnFill,
            ClientExtensions?tradeClientExtensions)
            : base(
                type,
                timeInForce,
                gtdTime,
                triggerCondition,
                clientExtensions)
        {
            if (string.IsNullOrWhiteSpace(instrument))
            {
                throw new ArgumentException($"'{nameof(instrument)}' cannot be empty.", nameof(instrument));
            }

            if (stopLossOnFill is not null && guaranteedStopLossOnFill is not null)
            {
                throw new ArgumentException($"Cannot have both '{nameof(stopLossOnFill)}' and '{nameof(guaranteedStopLossOnFill)}'.");
            }

            Instrument               = instrument;
            PositionFill             = positionFill;
            TakeProfitOnFill         = takeProfitOnFill;
            StopLossOnFill           = stopLossOnFill;
            GuaranteedStopLossOnFill = guaranteedStopLossOnFill;
            TrailingStopLossOnFill   = trailingStopLossOnFill;
            TradeClientExtensions    = tradeClientExtensions;
        }
コード例 #22
0
 public LimitOrderRejectTransaction()
 {
     this.Id                      = new TransactionID();
     this.Time                    = new DateTime();
     this.AccountID               = new AccountID();
     this.BatchID                 = new TransactionID();
     this.RequestID               = new RequestID();
     this.Type                    = new TransactionType(ETransactionType.LIMIT_ORDER_REJECT);
     this.Instrument              = new InstrumentName();
     this.Price                   = new PriceValue();
     this.TimeInForce             = new TimeInForce();
     this.GTDTime                 = new DateTime();
     this.PositionFill            = new OrderPositionFill();
     this.TriggerCondition        = new OrderTriggerCondition(EOrderTriggerCondition.DEFAULT);
     this.Reason                  = new LimitOrderReason();
     this.ClientExtensions        = new ClientExtensions();
     this.TakeProfitOnFill        = new TakeProfitDetails();
     this.StopLossOnFill          = new StopLossDetails();
     this.TrailingStopLossOnFill  = new TrailingStopLossDetails();
     this.TradeClientExtensions   = new ClientExtensions();
     this.IntendedReplacesOrderID = new OrderID();
     this.RejectReason            = new TransactionRejectReason();
 }
コード例 #23
0
 public StopOrderTransaction()
 {
     this.Id                      = new TransactionID();
     this.Time                    = new DateTime();
     this.AccountID               = new AccountID();
     this.BatchID                 = new TransactionID();
     this.RequestID               = new RequestID();
     this.Type                    = new TransactionType(ETransactionType.STOP_ORDER);
     this.Instrument              = new InstrumentName();
     this.Price                   = new PriceValue();
     this.PriceBound              = new PriceValue();
     this.TimeInForce             = new TimeInForce(ETimeInForce.GTC);
     this.GTDTime                 = new DateTime();
     this.PositionFill            = new OrderPositionFill(EOrderPositionFill.DEFAULT);
     this.TriggerCondition        = new OrderTriggerCondition(EOrderTriggerCondition.DEFAULT);
     this.Reason                  = new StopOrderReason();
     this.ClientExtensions        = new ClientExtensions();
     this.TakeProfitOnFill        = new TakeProfitDetails();
     this.StopLossOnFill          = new StopLossDetails();
     this.TrailingStopLossOnFill  = new TrailingStopLossDetails();
     this.TradeClientExtensions   = new ClientExtensions();
     this.ReplacesOrderID         = new OrderID();
     this.CancellingTransactionID = new TransactionID();
 }
コード例 #24
0
 public FixedPriceOrder(OrderID id, DateTime createTime, OrderState state, ClientExtensions clientExtensions, OrderType type, InstrumentName instrument, double units, PriceValue price, OrderPositionFill positionFill, string tradeState, TakeProfitDetails takeProfitOnFill, StopLossDetails stopLossOnFill, TrailingStopLossDetails trailingStopLossOnFill, ClientExtensions tradeClientExtensions, TransactionID fillingTransactionID, DateTime filledTime, TradeID tradeOpenedID, TradeID tradeReducedID, List <TradeID> tradeClosedIDs, TransactionID cancellingTransactionID, DateTime cancelledTime)
 {
     this.Id                      = id;
     this.CreateTime              = createTime;
     this.State                   = state;
     this.ClientExtensions        = clientExtensions;
     this.Type                    = type;
     this.Instrument              = instrument;
     this.Units                   = units;
     this.Price                   = price;
     this.PositionFill            = positionFill;
     this.TradeState              = tradeState;
     this.TakeProfitOnFill        = takeProfitOnFill;
     this.StopLossOnFill          = stopLossOnFill;
     this.TrailingStopLossOnFill  = trailingStopLossOnFill;
     this.TradeClientExtensions   = tradeClientExtensions;
     this.FillingTransactionID    = fillingTransactionID;
     this.FilledTime              = filledTime;
     this.TradeOpenedID           = tradeOpenedID;
     this.TradeReducedID          = tradeReducedID;
     this.TradeClosedIDs          = tradeClosedIDs;
     this.CancellingTransactionID = cancellingTransactionID;
     this.CancelledTime           = cancelledTime;
 }
コード例 #25
0
ファイル: MarketOrder.cs プロジェクト: FastFinTech/FFT.Oanda
 public MarketOrder(
     string id,
     DateTime createTime,
     OrderState state,
     ClientExtensions?clientExtensions,
     OrderType type,
     string instrument,
     TimeInForce timeInForce,
     DateTime?gtdTime,
     OrderPositionFill positionFill,
     OrderTriggerCondition triggerCondition,
     TakeProfitDetails?takeProfitOnFill,
     StopLossDetails?stopLossOnFill,
     GuaranteedStopLossDetails?guaranteedStopLossOnFill,
     TrailingStopLossDetails?trailingStopLossOnFill,
     ClientExtensions?tradeClientExtensions,
     string?fillingTransactionID,
     DateTime?filledTime,
     string?tradeOpenedID,
     string?tradeReducedID,
     ImmutableList <string>?tradeClosedIDs,
     string?cancellingTransactionID,
     DateTime?cancelledTime,
     string?replacesOrderID,
     string?replacedByOrderID,
     decimal units,
     decimal priceBound,
     MarketOrderTradeClose?tradeClose,
     MarketOrderPositionCloseout?longPositionCloseout,
     MarketOrderPositionCloseout?shortPositionCloseout,
     MarketOrderMarginCloseout?marginCloseout,
     MarketOrderDelayedTradeClose?delayedTradeClose)
     : base(
         id,
         createTime,
         state,
         clientExtensions,
         type,
         instrument,
         timeInForce,
         gtdTime,
         positionFill,
         triggerCondition,
         takeProfitOnFill,
         stopLossOnFill,
         guaranteedStopLossOnFill,
         trailingStopLossOnFill,
         tradeClientExtensions,
         fillingTransactionID,
         filledTime,
         tradeOpenedID,
         tradeReducedID,
         tradeClosedIDs,
         cancellingTransactionID,
         cancelledTime,
         replacesOrderID,
         replacedByOrderID)
 {
     Units                 = units;
     PriceBound            = priceBound;
     TradeClose            = tradeClose;
     LongPositionCloseout  = longPositionCloseout;
     ShortPositionCloseout = shortPositionCloseout;
     MarginCloseout        = marginCloseout;
     DelayedTradeClose     = delayedTradeClose;
 }