mult3fillconfirm example

Could someone please provide an example of mult3fillconfirm? I am finding the documentation can be interpreted multiple ways and am not able to get a response from customer support. Here is what it says:



“The format for mult3fillconfirm is identical to mult2fillconfirm. The only difference is that, when using mult3fillconfirm, you do not report C2’s internal signalids; instead, you report the “permids” that the broker has issued for each order, and which you have reported to C2 earlier in the confirmsig command.”



I have tried leaving the signalid out like this:

1) http://74.220.16.91:7878/?cmd=mult3fillconfirm&session=7753482889861499826&h=HP1&filldata=10000sep1164sep0.946680&live=1



I have tried replacing the signalid with the orderid and including a separate permid like this:

2) http://74.220.16.91:7878/?cmd=mult3fillconfirm&session=7753482889861499826&h=HP1&filldata=1164sep10000sep9458913sep0.946680&live=1



(where 1164 is the unique Execution.m_orderId sent to Interactive Brokers when placing the order and 9458913 is the unique Execution.m_permId returned by IB upon trade execution)



When either command is sent, C2 returns:

<collective2>

<status>OK</status>

<error>

<code>0</code>

</error>

<data>

Multiple fill confirmations (0) received for person 76318990 </data>

</collective2>



Note that I had previously reported to C2 the same 1164 in the signal confirmation shown below:

url=http://74.220.16.91:7878/?cmd=confirmsig&sigid=77536596&session=7753482889861499826&h=HP1&quant=10000&permid=1164

That seemed to work correctly because the signal stopped coming in after sending the confirmation.



I am also getting numerous <matchingOpenSigs> when the trade closes, probably because C2 did not accept my mult3fillconfirm of the opening trade.



Any help would be greatly appreciated as I have been stuck at this point for 3 weeks now.

this web site did some strange things to my post, leaving out the vertical bar before and after "sep" and inserting a semicolon by &live=1. Really annoying since I spent a lot of time being very careful with the syntax. let me try again without the http:



Could someone please provide an example of mult3fillconfirm? I am finding the documentation can be interpreted multiple ways and am not able to get a response from customer support. Here is what it says:



“The format for mult3fillconfirm is identical to mult2fillconfirm. The only difference is that, when using mult3fillconfirm, you do not report C2’s internal signalids; instead, you report the “permids” that the broker has issued for each order, and which you have reported to C2 earlier in the confirmsig command.”



I have tried leaving the signalid out like this:

1) ?cmd=mult3fillconfirm&session=7753482889861499826&h=HP1&filldata=10000sep1164sep0.946680&live=1



I have tried replacing the signalid with the orderid and including a separate permid like this:

2) ?cmd=mult3fillconfirm&session=7753482889861499826&h=HP1&filldata=1164sep10000sep9458913sep0.946680&live=1



(where 1164 is the unique Execution.m_orderId sent to Interactive Brokers when placing the order and 9458913 is the unique Execution.m_permId returned by IB upon trade execution)



When either command is sent, C2 returns:

<collective2>

<status>OK</status>

<error>

<code>0</code>

</error>

<data>

Multiple fill confirmations (0) received for person 76318990 </data>

</collective2>



Note that I had previously reported to C2 the same 1164 in the signal confirmation shown below:

?cmd=confirmsig&sigid=77536596&session=7753482889861499826&h=HP1&quant=10000&permid=1164

That seemed to work correctly because the signal stopped coming in after sending the confirmation.



I am also getting numerous <matchingOpenSigs> when the trade closes, probably because C2 did not accept my mult3fillconfirm of the opening trade.



Any help would be greatly appreciated as I have been stuck at this point for 3 weeks now.

well that didn’t work either. it looks fine in the preview and then messes up when it gets posted for real.

Greg:



Sorry about the pipe characters being stripped from your post. This forum software is archaic and is aching for an upgrade. But I see your open case in our help-desk database, so I can see the exact format you are using. And here’s the thing: I think you are using mult3fillconfirm correctly.



The problem actually lies somewhere else. The problem is that Collective2 has no record of ever sending your software signalid 77536596 (!) So when you report it to C2 as “acknowledged” using the confirmsig command, C2’s server is puzzled by your report. It effectively says: “Greg’s piece of software is acknowledging receiving signal 77536596 from me, but I don’t see that I’ve ever sent Greg that specific signal.” And so C2 ignores your confirmsig command. This means that later on, when you use mult3fillconfirm, and attempt to reference the same permid which you reported in this ignored confirmsig, the mult3fillconfirm command is equally puzzling to C2, and again is ignored.



So let’s try to step back and get to the root of the issue. How are you reporting acknowledgement of a signalid which C2 never “officially” sent your software? Or am I dreadfully misinterpreting the audit trail?



MK

Matthew,



Lets continue the forum post by email because the forum software strips out important information and its confusing enough without that happening! Which of my mult3fillconfirm interpretations is correct - #1 or #2?



I send the confirmsig command (as highlighted in bold red text further down in this thread) almost as soon as I get the signalId. The only thing I do first is place the order with IB in order to get the unique orderid.



I’m not sure about your theory that Collective2 has no record of ever sending signalid=77536596. That signalid was sent several weeks ago and I am still using it as an example. Maybe you are not looking back that far? I think that is working because when I started sending confirmsig correctly (after you found my typo several weeks ago), the signals which had been repeating, correctly stopped repeating.



I have another theory. I never send the ackc2fill command. I was planning to code that later because the doc did not list any critical consequences of not sending it, plus I never saw any instances of data in the <recentc2fills> block when I studied the logs (although its possible I missed it). Maybe sending it is needed for C2 to report the closing signal?



Greg

Here is a more recent example for you to investigate. I sent you this by email as well because this forum software will corrupt the code.



GREEN FOREX sent another signal this morning to which my software successfully received, confirmed, and executed. The Fill confirmation apparently has failed again though as you can see in bold red below.



06:33:12:931: TabCollective2.confirmSignal: url=http://74.220.16.91:7878/?cmd=confirmsig&sigid=77992380&session=77960115100715083425&h=HP1&quant=20000&permid=1315

<collective2>

<status>OK</status>

<error>

<code>0</code>

</error>

<data>

Signal confirm received 77992380

</data>

</collective2>



06:33:14:611: TabCollective2.confirmExecution: url=http://74.220.16.91:7878/?cmd=mult3fillconfirm&session=77960115100715083425&h=HP1&filldata=20000sep1315sep1.047120&live=1

06:33:14:782: GUI.showConnected: Connected to Tws server version 66 at 20121203 19:31:50 MST

<collective2>

<status>OK</status>

<error>

<code>0</code>

</error>

<data>

Multiple fill confirmations (0) received for person 76318990

</data>

</collective2>



Note that I have set the mult3fillconfirm to the format of my interpretation #1 as described in my previous forum post. I think that is the interpretation that you say is correct but I haven’t gotten confirmation from you on that yet.

Indeed, it failed because the closing signal came in a few minutes ago (by email) but my software failed to receive it. My software is getting data in the <completedtrades> block.



So I am not getting the closing signal because C2 is not accepting my mult3fillconfirm command. You say that I am sending the correct format so why isn’t it accepting it?

Not sure how I missed this in our initial correspondence. The proper format for mult3fillconfirm is





&filldata=PERMIDsepQUANTsepEXECUTIONIDsepFILLPRICE*&live=1



(Substitute the pipe character for asterisks, since our crazy forum software strips pipes.)



The PERMID in this case is 1315 and the executionid is whatever string your broker reports back to you.

That was my interpretation #2. I will set it back to that and try again.