SOR-DMA

Imported from previous forum

[ original email was from Nidhi Srivastava - thisisnidhi@yahoo.co.in ]

How is the order flow managed in case of SOR-DMA(Tag 21=1)???

How is the order flow managed in case of SOR-DMA(Tag 21=1)???

SOR - DMA tend to be antonyms…
Smart order routing - possibility to execute on multiple execution venues
Direct Market access - direct to exchange

My call on 21=1 is that it is DMA (assumption is you use the primary listing of the instrument in combination of its currency to identify the market)

[ original email was from Nidhi Srivastava - thisisnidhi@yahoo.co.in ]
> >

How is the order flow managed in case of SOR-DMA(Tag 21=1)???

SOR - DMA tend to be antonyms…
Smart order routing - possibility to execute on multiple execution venues
Direct Market access - direct to exchange

My call on 21=1 is that it is DMA (assumption is you use the primary listing of the instrument in combination of its currency to identify the market)

Indian exchanges have allowed SOR for DMA orders as well , wherein a DMA order(Tag21=1) recieved from the Buy side can be splitted to be routed to different exchanges (NSE and BSE in Indian scenario)based on best price/quantity available.

For e.g:

If the BUY side sends the following order:

35=D,11=NORD1,38=100, 55=ABC, 21=1
Resp=35=8,11=NORD1,38=100,39=A,150=A,37=20101004NORD1

As our FIX engine is recieving online market feeds , it is smart enough to split the order and route different quanitities to different exchanges , for e.g if there are two exchanges NX and BX.

In Exchange NX, 30 Qty
In Exchange BX, 70 Qty

Response for the orders is pending.

As the order is splitted and routed to 2 exchanges;
a)Should I send 2 Responses for PENDING i.e. 39=0 to BUY SIDE??
b)What Value to be sent in Tag#38 for 39=0??
c)In CancelReplace i.e. 35=G, how the Qty will be tracked and for which exchange??
d)If a modification is recieved for qty greater than original qty , should the modified qty be routed considering the logic of Best Price available for the said qty ???

We have thought of as mentioned below but we are stuck how to manage for Tag#11 and Tag#37

1.35=8,11=NORD1, 38=30,39=0,150=0,100=NX,37=20101004NORD1(???)
2.35=8,11=NORD1, 38=70,39=0,150=0,100=BX,37=20101004NORD1(???)

Hi Nidhi,

I believe you can resolve using the below. Any other option can also be explored…

There might be no identification sent by the buy side that the order will be SOR or not. The SOR functionality can be set at your server depending on the client. So, it can be clientwise setting at the server. This can be defined by the broker as per the commission they will charge to their clients.

After client identification, the DMA order will require to be spilt into 2 orders. There should be 2 order confirmation sent back to the client with the same order ID. You will have to treat the DMA order as how you treat non-DMA order (which has multiple market order release mapped to single order ID).

Therefore a DMA order having single market/exchange orders will have to be changed. A DMA order can now have multiple market orders if SOR needs to be implemented.

Hope that helps.

Cheers,
Shakir

How is the order flow managed in case of SOR-DMA(Tag 21=1)???

SOR - DMA tend to be antonyms…
Smart order routing - possibility to execute on multiple execution venues
Direct Market access - direct to exchange

My call on 21=1 is that it is DMA (assumption is you use the primary listing of the instrument in combination of its currency to identify the market)

Indian exchanges have allowed SOR for DMA orders as well , wherein a DMA order(Tag21=1) recieved from the Buy side can be splitted to be routed to different exchanges (NSE and BSE in Indian scenario)based on best price/quantity available.

For e.g:

If the BUY side sends the following order:

35=D,11=NORD1,38=100, 55=ABC, 21=1
Resp=35=8,11=NORD1,38=100,39=A,150=A,37=20101004NORD1

As our FIX engine is recieving online market feeds , it is smart enough to split the order and route different quanitities to different exchanges , for e.g if there are two exchanges NX and BX.

In Exchange NX, 30 Qty
In Exchange BX, 70 Qty

Response for the orders is pending.

As the order is splitted and routed to 2 exchanges;
a)Should I send 2 Responses for PENDING i.e. 39=0 to BUY SIDE??
b)What Value to be sent in Tag#38 for 39=0??
c)In CancelReplace i.e. 35=G, how the Qty will be tracked and for which exchange??
d)If a modification is recieved for qty greater than original qty , should the modified qty be routed considering the logic of Best Price available for the said qty ???

We have thought of as mentioned below but we are stuck how to manage for Tag#11 and Tag#37

1.35=8,11=NORD1, 38=30,39=0,150=0,100=NX,37=20101004NORD1(???)
2.35=8,11=NORD1, 38=70,39=0,150=0,100=BX,37=20101004NORD1(???)

Thanks…this helps in understanding the DMA order flow in case of SOR but we still seek some understanding on the FIX Side pertaining to the example mentioned below and point no.(d) as mentioned in the previous query.

1.35=8,11=NORD1, 38=30,39=0,150=0,100=NX,37=20101004NORD1(???)
2.35=8,11=NORD1, 38=70,39=0,150=0,100=BX,37=20101004NORD1(???)

d) If a modification is recieved for qty greater than original qty , should the modified qty be routed considering the logic of Best Price available for the said qty ???

Hi Nidhi,

I believe you can resolve using the below. Any other option can also be explored…

There might be no identification sent by the buy side that the order will be SOR or not. The SOR functionality can be set at your server depending on the client. So, it can be clientwise setting at the server. This can be defined by the broker as per the commission they will charge to their clients.

After client identification, the DMA order will require to be spilt into 2 orders. There should be 2 order confirmation sent back to the client with the same order ID. You will have to treat the DMA order as how you treat non-DMA order (which has multiple market order release mapped to single order ID).

Therefore a DMA order having single market/exchange orders will have to be changed. A DMA order can now have multiple market orders if SOR needs to be implemented.

Hope that helps.

Cheers,
Shakir

How is the order flow managed in case of SOR-DMA(Tag 21=1)???

SOR - DMA tend to be antonyms…
Smart order routing - possibility to execute on multiple execution venues
Direct Market access - direct to exchange

My call on 21=1 is that it is DMA (assumption is you use the primary listing of the instrument in combination of its currency to identify the market)

Indian exchanges have allowed SOR for DMA orders as well , wherein a DMA order(Tag21=1) recieved from the Buy side can be splitted to be routed to different exchanges (NSE and BSE in Indian scenario)based on best price/quantity available.

For e.g:

If the BUY side sends the following order:

35=D,11=NORD1,38=100, 55=ABC, 21=1
Resp=35=8,11=NORD1,38=100,39=A,150=A,37=20101004NORD1

As our FIX engine is recieving online market feeds , it is smart enough to split the order and route different quanitities to different exchanges , for e.g if there are two exchanges NX and BX.

In Exchange NX, 30 Qty
In Exchange BX, 70 Qty

Response for the orders is pending.

As the order is splitted and routed to 2 exchanges;
a)Should I send 2 Responses for PENDING i.e. 39=0 to BUY SIDE??
b)What Value to be sent in Tag#38 for 39=0??
c)In CancelReplace i.e. 35=G, how the Qty will be tracked and for which exchange??
d)If a modification is recieved for qty greater than original qty , should the modified qty be routed considering the logic of Best Price available for the said qty ???

We have thought of as mentioned below but we are stuck how to manage for Tag#11 and Tag#37

1.35=8,11=NORD1, 38=30,39=0,150=0,100=NX,37=20101004NORD1(???)
2.35=8,11=NORD1, 38=70,39=0,150=0,100=BX,37=20101004NORD1(???)

Thanks…this helps in understanding the DMA order flow in case of SOR but we still seek some understanding on the FIX Side pertaining to the example mentioned below and point no.(d) as mentioned in the previous query.

1.35=8,11=NORD1, 38=30,39=0,150=0,100=NX,37=20101004NORD1(???)
2.35=8,11=NORD1, 38=70,39=0,150=0,100=BX,37=20101004NORD1(???)

The tag 100 is not part of execution report messages. I would use the tag 30 (LastMkt) instead.

I wouldn’t use the same ClOrdID in your both execution reports. It might confuse the client. Maybe the tag 583 (ClOrdLinkID introduced by FIX 4.3) is more approriate.

d) If a modification is recieved for qty greater than original qty , should the modified qty be routed considering the logic of Best Price available for the said qty ???

If you manage replace/cancel requests on the original parent order, I would say yes. Otherwise you only allow the client to replace/cancel chidren orders directly…

Regards,
Xavier.

Hi Nidhi,

I believe you can resolve using the below. Any other option can also be explored…

There might be no identification sent by the buy side that the order will be SOR or not. The SOR functionality can be set at your server depending on the client. So, it can be clientwise setting at the server. This can be defined by the broker as per the commission they will charge to their clients.

After client identification, the DMA order will require to be spilt into 2 orders. There should be 2 order confirmation sent back to the client with the same order ID. You will have to treat the DMA order as how you treat non-DMA order (which has multiple market order release mapped to single order ID).

Therefore a DMA order having single market/exchange orders will have to be changed. A DMA order can now have multiple market orders if SOR needs to be implemented.

Hope that helps.

Cheers,
Shakir

How is the order flow managed in case of SOR-DMA(Tag 21=1)???

SOR - DMA tend to be antonyms…
Smart order routing - possibility to execute on multiple execution venues
Direct Market access - direct to exchange

My call on 21=1 is that it is DMA (assumption is you use the primary listing of the instrument in combination of its currency to identify the market)

Indian exchanges have allowed SOR for DMA orders as well , wherein a DMA order(Tag21=1) recieved from the Buy side can be splitted to be routed to different exchanges (NSE and BSE in Indian scenario)based on best price/quantity available.

For e.g:

If the BUY side sends the following order:

35=D,11=NORD1,38=100, 55=ABC, 21=1
Resp=35=8,11=NORD1,38=100,39=A,150=A,37=20101004NORD1

As our FIX engine is recieving online market feeds , it is smart enough to split the order and route different quanitities to different exchanges , for e.g if there are two exchanges NX and BX.

In Exchange NX, 30 Qty
In Exchange BX, 70 Qty

Response for the orders is pending.

As the order is splitted and routed to 2 exchanges;
a)Should I send 2 Responses for PENDING i.e. 39=0 to BUY SIDE??
b)What Value to be sent in Tag#38 for 39=0??
c)In CancelReplace i.e. 35=G, how the Qty will be tracked and for which exchange??
d)If a modification is recieved for qty greater than original qty , should the modified qty be routed considering the logic of Best Price available for the said qty ???

We have thought of as mentioned below but we are stuck how to manage for Tag#11 and Tag#37

1.35=8,11=NORD1, 38=30,39=0,150=0,100=NX,37=20101004NORD1(???)
2.35=8,11=NORD1, 38=70,39=0,150=0,100=BX,37=20101004NORD1(???)