本文整理匯總了Golang中github.com/quickfixgo/quickfix/field.NewSide函數的典型用法代碼示例。如果您正苦於以下問題:Golang NewSide函數的具體用法?Golang NewSide怎麽用?Golang NewSide使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了NewSide函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: updateOrder
func (a *Application) updateOrder(order internal.Order, status enum.OrdStatus) {
execReport := executionreport.New(
field.NewOrderID(order.ClOrdID),
field.NewExecID(a.genExecID()),
field.NewExecTransType(enum.ExecTransType_NEW),
field.NewExecType(enum.ExecType(status)),
field.NewOrdStatus(status),
field.NewSymbol(order.Symbol),
field.NewSide(order.Side),
field.NewLeavesQty(order.OpenQuantity(), 2),
field.NewCumQty(order.ExecutedQuantity, 2),
field.NewAvgPx(order.AvgPx, 2),
)
execReport.SetOrderQty(order.Quantity, 2)
execReport.SetClOrdID(order.ClOrdID)
switch status {
case enum.OrdStatus_FILLED, enum.OrdStatus_PARTIALLY_FILLED:
execReport.SetLastShares(order.LastExecutedQuantity, 2)
execReport.SetLastPx(order.LastExecutedPrice, 2)
}
execReport.Header.SetTargetCompID(order.SenderCompID)
execReport.Header.SetSenderCompID(order.TargetCompID)
quickfix.Send(execReport)
}
示例2: OnFIX41NewOrderSingle
func (e *executor) OnFIX41NewOrderSingle(msg fix41nos.NewOrderSingle, sessionID quickfix.SessionID) (err quickfix.MessageRejectError) {
ordType, err := msg.GetOrdType()
if err != nil {
return
}
if ordType != enum.OrdType_LIMIT {
return quickfix.ValueIsIncorrect(tag.OrdType)
}
symbol, err := msg.GetSymbol()
if err != nil {
return
}
side, err := msg.GetSide()
if err != nil {
return
}
orderQty, err := msg.GetOrderQty()
if err != nil {
return
}
price, err := msg.GetPrice()
if err != nil {
return
}
execReport := fix41er.New(
e.genOrderID(),
e.genExecID(),
field.NewExecTransType(enum.ExecTransType_NEW),
field.NewExecType(enum.ExecType_FILL),
field.NewOrdStatus(enum.OrdStatus_FILLED),
field.NewSymbol(symbol),
field.NewSide(side),
field.NewOrderQty(orderQty, 2),
field.NewLastShares(orderQty, 2),
field.NewLastPx(price, 2),
field.NewLeavesQty(decimal.Zero, 2),
field.NewCumQty(orderQty, 2),
field.NewAvgPx(price, 2),
)
clOrdID, err := msg.GetClOrdID()
if err != nil {
return
}
execReport.SetClOrdID(clOrdID)
quickfix.SendToTarget(execReport, sessionID)
return
}
示例3: updateOrder
func (a *Application) updateOrder(order Order, status string) {
execReport := executionreport.New(
field.NewOrderID(order.ClOrdID),
field.NewExecID(a.genExecID()),
field.NewExecTransType(enum.ExecTransType_NEW),
field.NewExecType(status),
field.NewOrdStatus(status),
field.NewSymbol(order.Symbol),
field.NewSide(order.Side),
field.NewLeavesQty(order.OpenQuantity()),
field.NewCumQty(order.ExecutedQuantity),
field.NewAvgPx(order.AvgPx),
)
execReport.SetOrderQty(order.Quantity)
execReport.SetClOrdID(order.ClOrdID)
execReport.Header.SetTargetCompID(order.SenderCompID)
execReport.Header.SetSenderCompID(order.TargetCompID)
quickfix.Send(execReport)
}
示例4: querySide
func querySide() field.SideField {
choices := []string{
"Buy",
"Sell",
"Sell Short",
"Sell Short Exempt",
"Cross",
"Cross Short",
"Cross Short Exempt",
}
values := []string{
string(enum.Side_BUY),
string(enum.Side_SELL),
string(enum.Side_SELL_SHORT),
string(enum.Side_SELL_SHORT_EXEMPT),
string(enum.Side_CROSS),
string(enum.Side_CROSS_SHORT),
"A",
}
return field.NewSide(enum.Side(queryFieldChoices("Side", choices, values)))
}
示例5: SetSide
//SetSide sets Side, Tag 54
func (m NoRelatedSym) SetSide(v string) {
m.Set(field.NewSide(v))
}
示例6: SetSide
//SetSide sets Side, Tag 54
func (m OrderMassCancelRequest) SetSide(v string) {
m.Set(field.NewSide(v))
}
示例7: SetSide
//SetSide sets Side, Tag 54
func (m NoBidComponents) SetSide(v string) {
m.Set(field.NewSide(v))
}
示例8: SetSide
//SetSide sets Side, Tag 54
func (m DontKnowTrade) SetSide(v string) {
m.Set(field.NewSide(v))
}
示例9: SetSide
//SetSide sets Side, Tag 54
func (m IOI) SetSide(v string) {
m.Set(field.NewSide(v))
}
示例10: SetSide
//SetSide sets Side, Tag 54
func (m NoRelatedSym) SetSide(v enum.Side) {
m.Set(field.NewSide(v))
}
示例11: SetSide
//SetSide sets Side, Tag 54
func (m IndicationofInterest) SetSide(v string) {
m.Set(field.NewSide(v))
}
示例12: SetSide
//SetSide sets Side, Tag 54
func (m OrderCancelRequest) SetSide(v enum.Side) {
m.Set(field.NewSide(v))
}
示例13: SetSide
//SetSide sets Side, Tag 54
func (m NoStrikes) SetSide(v enum.Side) {
m.Set(field.NewSide(v))
}
示例14: SetSide
//SetSide sets Side, Tag 54
func (m Allocation) SetSide(v string) {
m.Set(field.NewSide(v))
}
示例15: SetSide
//SetSide sets Side, Tag 54
func (m NewOrderList) SetSide(v enum.Side) {
m.Set(field.NewSide(v))
}