+1 888 340 6572 GET STARTED
MultiCharts Project Management
Go to the previous open issue
Go to the previous issue (open or closed)
Please log in to bookmark issues
Open Bug report MC-14

Market order cancels in intra-bar ordergeneration mode

Go to the next issue (open or closed)
Go to the next open issue

When running in IOG mode with ASYNC...orders randomy do not make it to the broker. It appears that the order stack gets cleared and that under certain situations high frequencies of ticks prevent the order from being transmitted. This is a problem I have been battling and spent well over 300 hours on. No matter what I do it does not go away because there is internal processing within multicharts that cancels a market order or clears a stack somewhere. When I send a market order its done. It is irrevokable and needs a guarnatee htat it makes it to the broker and the market.

When I send the order, I set a semaphore/marker so that I know its been sent so that I do not sent it twice, but that makes no difference...the stack is getting cleared somehow. This functionality is essential and basic functionality, there is no reason that I should have had to spend 300+ hours and still have the problem on this.

Steps to reproduce this issue

Create a IOG strategy and trigger a market order when a price is met...the order will randomly be sent or unsent. However, the chart will show the order arrows on the screen. Additionally, if there was a failure to transmit and order, turning off the strategy will ask if you would like to close the open position even though the chart shows that there is no open position.

Comments (6)
user-offline.png  StanTest (StanTest)
Oct 15, 2010 - 10:44

From the words of the customer: Essentially, the objective is to NEVER cancel market orders.

user-offline.png  StanTest (StanTest)
Oct 15, 2010 - 11:01

After a discussion, the issue seems to be that in a fast-ticking market, it may happen that with IOG enabled, orders get canceled before a tick is entirely processed (MC drops the old tick, and starts calculating the next one, the drops this one before finishing calculations, moves on to the next one, and so on). The result being that no orders (even market) are sent at all if the ticking is too quick for MC. 
Possible solution: Calculation of strategies based on a time-event, as opposed to ticks. (i.e. evaluate strategies every 1, 2, 5 seconds, or minutes, or hours, and so on). This would guarantee that the strategy fully calculates and fires and order if a condition is met.

user-offline.png  StanTest (StanTest)
Oct 15, 2010 - 11:29

these were the best 300 hours of your life, admit it :)

user-offline.png  pcampbell66 (pcampbell66)
Oct 16, 2010 - 11:05

My investment into muticharts has been a very good one...and I appreciate all your support...as you did invest quite a bit of time into this with me over that period. I am glad that we have it solved - as it appears.

user-offline.png  Stan_MultiCharts (Stan_MultiCharts)
Oct 18, 2010 - 08:51

It has been determined that Market orders that cancel present a difficulty to the user. Further investigation into the subject revealed that originally MultiCharts did NOT cancel Market orders - i.e. once it was sent, it would remain at the broker's until it was filled. This changed after we added support for Trading Technologies as a broker. The 'TT' plugin does not support Market orders, so they had to be monitored on our end, and sent as Limit orders with a price that would guarantee it being filled. This introduced a Cancel for Market orders, because we needed to monitor the Limit orders for TT. 
Now, it has been brought to our attention, that this rule should be ignored for brokers that do support Market orders, otherwise the Market orders have very little chance of being filled. It will be addressed by MC 7.0 for brokers that do support Market orders - they will no longer be cancelled in any case by MultiCharts.

user-offline.png  MultiCharts Support (MultiCharts)
Dec 28, 2010 - 09:10

Unfortunately there is no way to forbid cancelling Market Orders because we also have manual trading and in this case Market Orders may take much time to be executed. Any user must have opportunity to cancel long in execution order.

Issue basics
  • Type of issue
    Bug report
  • Category
    Not determined
  • Targeted for
    MultiCharts 7.0 (RELEASED)
  • Status
  • Priority
    Not determined
User pain
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
Affected by this issue (3)
People involved
Times and dates
  • Posted at
  • Last updated
Issue details
  • Reproducability
    Not determined
  • Severity
Attachments (1)
Commits (0)
There are no code checkins for this issue
Duplicate issues (0)
This issue does not have any duplicates