Replies

sand
20 Aug 2017, 00:06

Thank you for your reply and the useful information.
For the first point of the Deal ID, it is understandable since in the history statements you display the deals and not the positions.
However from the user's side, that DID is not available in the FIX API.
The user cannot identify/compare the deal based on his information from the FIX API.
The corresponding OID (Order ID) though is available to the user via the FIX API and is uniquely linked to the DID.

For the second issue of the PID in the open Position panel, your information solved my problem as I can select from the menu to display the PID.
Also I found out that likewise (from that menu) I can select to display the "Label" in the "History" panel (and hide the DID) which solves also my first problem of the history statements since the "Label" is available in the FIX API.

One minor suggestion, probably it would not harm if it were possible to add into that right-click menu also the OID for the "History" panel.

Both the 2 issues of my inquiry are solved.
I appreciate your assistance.

Thank you .


@sand

sand
18 Aug 2017, 03:37

The order of the tags in the message maybe a reason sometimes.
Especially the tags:
146=1|55=1|267=2|269=0|269=1
must be in that sequence, with the tags 262-265 before them.
as in the example from the manual.

I think the nearest to the tags-order of the manual's example the better.

6.3. Market Data Request
For spots
Request
8=FIX.4.4|9=131|35=V|49=theBroker.12345|56=CSERVER|34=3|52=20170117-
10:26:54|50=QUOTE|262=876316403|263=1|264=1|265=1|146=1|55=1|267=2|269=0|269=1|10=094|

https://www.spotware.com/pdf/cTraderFixApi_v2.12.pdf

If the above does not work another reason maybe that the time-stamp in tag 52 goes without milliseconds.


@sand

sand
14 Jun 2017, 19:06

Replying to Spotware,
Thank you for your replies and advise which I studied carefully.
I tested also the order cancellation that has been added and found it useful.
I do agree with your statement that if FIX API is used properly, it can be useful for both cases.
I would like to mark this question as solved.
Thank you.

 

 


@sand

sand
12 Jun 2017, 21:41

I cannot agree with that reply, or it needs clarification.
When I was in corporate software development and investment banking, some people used to call the bugs, features.
In that sense this issue maybe called a feature, but I kindly prefer to call it bug.
There are 2 types of stop orders.
1st a standalone or independent stop-order (not attached to any existing position), and 2nd a stop order attached to an existing PosID.
The 2nd type of stop order, is like a stop-loss order and cannot stay active after the main position (PosID) closes, but has to be closed automatically by the broker.
As long as a stop-order attached to a PosID is like a stop-loss, then it must close automatically upon closing of the main PosID.
As far as I know this is the only way to add stop-loss in your platform.

You also advised:
"If you wish your stop order to be canceled when a related position is closed, then this is a functionality that you need to develop on your side. You will need to keep track of your positions and the related orders and cancel those orders when positions are closed."
As far as I know what you advise is not possible in your platform. Your platform can close only a PosID but cannot close an OID (order id). Your platform can close only positions but it cannot close orders. Please correct me if I am mistaken.
I hope you can forward please this issue to a manager.

It is like seen a person walking in the streets holding an umbrella high above his head, and when the person goes inside his house, the umbrella still remains outside high in the air by itself.

The 2nd type of a stop order (or stop-loss) is like an umbrella to the main position (PoSID); when the PosId closes by any other action, the attached stop order (or stop-loss) must not remain in the air by itself; it must be closed automatically by the broker.

Otherwise without any provision for stop-loss, your FIX API is obsolete for trading. It works for quotes but for trades it is absolutely no use. And what a pity, it is a nice FIX API !

 

I think I sense that there is some reservation holds from your side, to have the FIX API running as it is supposed to be, as a high performance tool and the standard in financial transactions.
It is like buying a brand new multi-tonne lorry and keep moving around with it only with 3 kilograms of load, for not spoiling it.
Or buying a Ferrari and going in the main streets with 10 Mph blocking the traffic avoiding to stretch it.

FIX API is the standard of financial transactions and cannot be such much shy and blocking from opening and operating proper stop-loss (never mind the trailing stops), to save internet traffic and CPU utilization from/to the brokers.

Your trading friends,
Kind regards


@sand