Topics
Replies
ctid692448
21 May 2020, 12:44
RE:
PanagiotisCharalampous said:
Hi Jan,
The example you posted does not show the order message, just the cancel message. Tag 41 needs to be tag 11 of your order message.
I also tried to send tag11 as tag41 but it is not working either.
Please provide the sequence of messages where you tried this.
Best Regards,
Panagiotis
Yes thanks, figured that out finally too. It´s mostly a bit tricky with FIX and it's documentations.
@ctid692448
ctid692448
21 May 2020, 12:43
( Updated at: 21 Dec 2023, 09:22 )
I figured it out by trial and error. Here is an example that is working:
Cancel request tag 41 must have the value from tag 11 of the previously sent order message.
@ctid692448
ctid692448
21 May 2020, 12:21
( Updated at: 21 Dec 2023, 09:22 )
RE:
PanagiotisCharalampous said:
Hi Jan,
You are passing a wrong ID in tag 47. In Tag 47 you should assign the client order ID (from your order FIX message seems to be 0048402), not the order ID.
Best Regards,
Panagiotis
I also tried to send tag11 as tag41 but it is not working either.
The example above is from the fix doc and it shows that tag41 is different to tag11 in the cancel request.
Tag41 you get from the server within the execution report. And tag41 matches the order ID shown in cTrader.
@ctid692448
ctid692448
21 May 2020, 11:53
RE:
PanagiotisCharalampous said:
Hi Jan,
The order id in cTrader is different to the one you you are trying to cancel via FIX. In cTrader the order ID is 74625817 but you are trying to cancel an order with an ID 74469463
Best Regards,
Panagiotis
Hi Panagiotis,
You compared the orderID from yesterday´s log with the one I posted today.
Please compare the orderIDs from the post above.
Order ID cTrader: 74625817
Order ID FIX message: 74625817
@ctid692448
ctid692448
21 May 2020, 11:10
( Updated at: 21 Dec 2023, 09:22 )
RE:
PanagiotisCharalampous said:
Hi Jan,
Can you please post a screenshot showing the account, the order and the order id in cTrader?
Best Regards,
Panagiotis
Order message:
8=FIX.4.4|9=155|35=D|34=0000002|49=pepperstone.3377170|52=20200521-08:06:44.015|56=cServer|11=0048402|38=0001000|40=2|44=001.09671|59=1|54=1|55=1|60=20200521-08:06:44.015|10=242|
Execution report:
8=FIX.4.4|9=203|35=8|34=2|49=cServer|50=TRADE|52=20200521-08:06:44.076|56=pepperstone.3377170|11=0048402|14=0|37=74625817|38=1000|39=0|40=2|44=1.09671|54=1|55=1|59=1|60=20200521-08:06:44.062|150=0|151=1000|721=40966287|10=005|
Order cancel request:
8=FIX.4.4|9=098|35=F|34=0000003|49=pepperstone.3377170|52=20200521-08:06:44.283|56=cServer|11=1234567|41=74625817|10=196|
Rejection:
8=FIX.4.4|9=160|35=j|34=3|49=cServer|50=TRADE|52=20200521-08:06:44.344|56=pepperstone.3377170|58=ORDER_NOT_FOUND:Order with clientOrderId=74625817 not found.|379=1234567|380=0|10=058|
@ctid692448
ctid692448
02 Nov 2021, 11:56 ( Updated at: 21 Dec 2023, 09:22 )
RE:
PanagiotisCharalampous said:
Thanks for answering. It is bad practice because it is not according to FIX standards.
Good practice would be:
Not attempting to execute an order = not executing an order -> sending an order execution with a rejection of the order containing the reason for the rejection.
Please have a look at the link I posted above and scroll a bit down:
There it is extra stated that a business rejection message is not the right answer to a new order single. Please consider making the developers life easier by sticking to broad spread FIX rules being applied by (almost) everyone. You would also do a favor to yourself as a easier to implement cTrader FIX protocol will cause more people using it.
@ctid692448