Autosync Triggers Too Early

I recently subscribed to the 76West system after reading the “Strategy of the Week” article that was sent out. My observation after the first couple of days is that it seems that the subscribers are often getting filled at worse prices than the original limit orders due to the autosync triggering too early. The most recent example was this morning (11/10/15). There was a BTC limit order in place for ES at 1070.00. At 9:42:17am there were 30 contracts traded at this price, which was probably only about 10% of the bid stack. The key is that none of the C2 subscribers filled at that price, but the autosync triggered a market order since a lucky few did get executed at that price. By the time the market orders hit, the price had jumped 4 ticks higher to 1071, which is what most C2 autotraders got filled at. So instead of a 10-tick profit that the vendor likely made, the subscribers only made 6 ticks. Of course this is just one example, and I realize there are times when that early exit would have produced a small profit instead of a loss. I guess my point is that if the intention of autosync is to keep all autotraders in sync, why not trigger the autosync trade when the first autotrader gets filled instead of the first fill somewhere in the market? Perhaps this change is technically difficult, but if it is not then I think it should be considered.

Gary

this is a very common issue which i experience all the time in my strategy. The issue with it is that its just that a LIMIT order that means that i dont want anyone to fill me or assume ‘some people’ got filled. If they did great. but if i have a target or say 2098 to get out and it prints 2098 do not fill me. it must print 2098.25 and then fill me at 2098. Now i understand in real life i do get filled depending on where you are in line in the queue but for auto trade it should be made and traders should be told to set their limit orders to the price they want assuming it must go one tick past to get filled. That would solve the issues, in that case with limit order just wait until it prints one tick past and THEN if c2 wants to put a market order in if it does not fill within x seconds that’s fine. Its just not being done correctly and many many people have this issue. It could be so much better if they could correct this. OR, give the strategy developer the OPTION. That way if different people trade different strategies different ways they can opt to have their setting that way. Either keep it as it is now, which i suspect no one would want unless they are trying to run some phantom system or do it the right away.

Gary. This happens a lot and is very frustrating. Below is what C2 email out to system developers.

"Dear B48 ES:

We are sending you this automated email to let you know about your system on Collective2 called B48 ES. You now have at least one AutoTrader for this system. As you may know, U.S. regulations require that we display on the Collective2 Web site the actual fills received by real-life traders in their real-life brokerage accounts. We recently received electronic notifications from the brokers being used by your AutoTrader subscribers. Based on the real-life fill prices achieved in your subscribers’ accounts, we have adjusted the fill price displayed on the Collective2 Web site. Specifically, we have changed the following fill:

Previous: BTO @ESZ5 - Filled at 2078.250000
New: BTO @ESZ5 - Filled at 2078.500000

The new fill price will now appear on your Collective2 system page.

COMMON QUESTIONS

Q: Hey, that isn’t fair. I submitted a limit order, and I can’t fill a limit at a worse price than the limit I specify!

A: Often, system vendors at C2 will submit a limit order at a price that is not “market clearing.” This means that the limit price just gets touched briefly, but does not trade through. Certain lucky people get filled at the price, but other people do not. Then the price moves away from the limit price.

In these cases, C2 will wait a few seconds for your order to fill at your specified limit price, but - if it doesn’t fill in a customer’s account - we will convert the order to a market order. In these cases, therefore, it is possible to be filled at a price that is less favorable than the limit you specified.

Welcome to the world of managing other people’s money… and the world of trading large enough quantities that you can’t count on an entire order being filled. If you were running a large hedge fund in a single trading account, and if you submitted a limit order to trade a large quantity, something very similar would happen. You might get filled for some portion of your order, but not the rest. Then you would have a decision to make. Move your limit? Wait and pray that the market moves back to your limit?

At C2, it’s vital that we keep all your subscribers in sync with your system’s intentions. When you are long, they should be long. When you’re short, they should be short. That’s what they are paying you for, after all.

This is the reason why we convert certain orders to market orders – this only happens if you choose a limit price that is not “market clearing.” And, when this does happen – because we are regulated by U.S. regulatory authoritues – we are required to post the actual fills received by your actual traders.

Q: Gosh, that really stinks.

A: Maybe. But it’s worth keeping a few things in perspective. One: the ability to AutoTrade your system using the cool C2 AutoTrade technology makes your system more attractive to subscribers, and thus in the long run, is a good thing for you. Second, our insistence that we make C2 completely transparent and that we follow U.S. financial regulations make the site more attractive to subscribers (which benefits you). More important, this protects you from any regulatory concerns.

HOW OFTEN DO WE SEND THESE EMAILS?

We send this kind of notification email only once each day, in order to remind you about how C2 works. If your system continues to have AutoTraders, there may be other fill adjustments, perhaps many, but we won’t send you an email for each one, as that would quickly become annoying. You can always see your latest results on your C2 system page:"

That’s good info – thanks for sharing it.

I know it has been a problem for a long time – I’m pretty sure I’ve posted on the topic before. What I propose won’t eliminate the problem, because there will still be some “lucky” C2 traders that get filled at the limit while other “unlucky” C2 traders get filled at the market. However, I think it would greatly reduce the times where all of the C2 traders are unlucky – especially for heavily-traded instruments like ES.

Gary

1 Like

The last STO trade of 76West was 8 ticks below the limit order for the first autotraders to fill (the slower ones got a little better price).

MK – any comments on my proposed fix to the problem? I think it will just be a matter of time before this issue negatively affects the performance of this system, and the subscribers will begin to drop.

Gary

The C2 algorithm is as follows:

If you enter a limit order, and if your order gets filled anywhere in the world, we will fill you in your C2 Model Account; and all your C2 AutoTraders who were not lucky enough to receive the limit price will convert to a market order to follow along with your trade.

Then, subsequent to all this, we will change your C2 Model Account track record to reflect the volume-weighted average price that actually happened in real life. This may be worse than your limit price; or it may be better.

Keep in mind that this “just-touched” limit-order phenomenon occurs only when you trade with non-market-clearing limit orders. Limit orders that “trade through” will trade at the limit price or better.

We’re not going to be able to change the method I describe above, for a variety of both technical and regulatory reasons - some of which are not obvious, and some of which are hard to appreciate until you have personally undergone a regulatory colonoscopy, which it has been my pleasure to experience on a periodic basis, and which I wish on no one, not even my worst enemies.

Yes, we’ve considered the idea of “holding off” on converting-to-market until a C2 person fills a trade in a broker account (as opposed to any old anonymous market participant), but this introduces technical and regulatory complexities, and is a pretty uncommon occurrence anyway – one that will grow even less common as more people use C2. I’m not saying “never” to the proposal – I do understand the appeal – but it’s not an obvious no-brainer, and there are costs and risks that come with it (including additional latency at various points in the trade replication process).

The best solution (to the extent it is possible to control) is for strategy owners to enter limit orders which have sufficient liquidity behind them to ensure all AutoTraders get filled at the price the strategy owner hopes they will. I know it’s not always possible to know this with certainty in advance, but what is certain is that scalping methods which rely on just-touched limit orders probably won’t scale beyond your own personal trading account.

Matthew

P.S. I want to add that after writing the long-winded answer above, I double checked on the 76West fill in question. That fill was unrelated to the explanation I give in this post. But I’ll let the explanation here stand since it does address other, previous questions.

Hi Matthew,

I really do appreciate the full explanation. I did not realize that there were regulatory issues involved (other than reporting the actual fill prices, which you do).

I guess my only disagreement with your comments is this one: “…is a pretty uncommon occurrence anyway…”. I’m guessing that if you were to analyze the tick data, you would find MANY cases during the course of the day when only the top few contracts of the ES order book gets filled and the price reverses a couple of ticks or more in the other direction. I’m not sure how priority is given to GLOBEX orders, but my guess is that it is not the retail traders like us getting those fills. If there are any experts in this area then please chime in, because I don’t claim to be one.

I’m coming at this from the perspective of being a subscriber in many C2 systems over the years and this issue seems to keep popping up. I’m not trying to be a complainer – just trying to offer my perspective in hopes that C2 will keep improving (as it has dramatically over the 10+ years I have been using the service).

Gary

The issue is very simple. it has to do with the latency of the C2 system in syncing the orders. if you are trading, and i will say this again, for the /ES market which is the most liquid one out there and you have a target price of 2050 and the price ticks 2050.25 (you are long) EVERYONE gets filled, period. At least 99.9999999999999999999999% of the time. The issue with the C2 system is this:

  1. you put target order on long at 2050.
  2. the price touches 2050 and backs off (for like 3 seconds)
  3. then got to 2050.25

Everyone should get filled at 2050 right? Well no, because it seems C2, and they may have a good reason for doing it, waits like 1 second or less so that unless the price just BLOWS through VERY quickly AND stays above 2050 for several seconds in some cases (in some cases more than that but i wont go there just yet) and then backs off your out of luck.

Again, i am not sure if there is another way for them to do it or not, Im just telling you the issue and the reason they give is not correct in most cases.

Here is what they say:

A: Often, system vendors at C2 will submit a limit order at a price that is not “market clearing.” This means that the limit price just gets touched briefly, but does not trade through. Certain lucky people get filled at the price, but other people do not. Then the price moves away from the limit price.

Well what do you mean, not market clearing? Again, in futures there has to be a buyer for every seller and yes in certain markets there is slippage but lets just take the most liquid one that trades well over 1mil contracts a day and that has to have a buyer for every sell at every price ticked. Okay — if you try for a target of 2050 and it prints 2050.25 it IS MARKET CLEARING. PERIOD.

So this is just not being explained properly. And again, it may be there is nothing they can do about it. My suggestion is this. Since most everyone agrees you can not count on the price just touching to get filled and in fact in more times than not you WONT get filled when it just touches, if you have a limit sell order make it go through the price by a tick and the fill the orders. that way it will either keep going, or stay a tick above for a few seconds and yes in some cases it will back off quicker than the replies can be sent from the brokers and there still will be slippage but there will be much less slippage, again in my opinion, than the way it is being done now.

I also understand different people trade different markets so leave the choice to the developer.

I will reiterate that i do not have inherent knowledge of the C2 platform internally (I dont work there) so there may be some good reason why they can not do it this way. If so, in order to clear up the issue it should be explained more clear and more choices given because regardless of what they think it is a problem.

I love the C2 site and what it offers traders and maybe its just ‘the way it is’ with auto trading. That may be very possible.

Here is another scenario and how it can be problematic:

  1. you are dealing with higher broker commissions (as it should be as its an auto program).
  2. I place a buy in the /ES at 2049. Okay so if it pulls back to 2049 in a live account i either get filled at 2049 or better on a limit. Again, per my example above once it TOUCHES 2049 C2 fills it so some may get 2049.25 (some may even get 2049.50 and im not even filled yet at the evens.
  3. now you go to get out and same thing so tons of slippage which i my opinion can be avoided. Either tell the traders how to set their limits or give them the choice of how they want it handled.

And yes, there STILL will be issues but in my opinion you would see fill prices 50-80% better than now with some still having issues but not nearly as many.

The key issue is that the C2 simulated account and the autotraders all must be kept in sync. For example, let’s say a system is long ES and has a stop loss and a (limit) profit target in place. If C2 simulates that the profit target was hit and only half of the C2 traders actually hit the target, then C2 will issue a cancel for the stop order and then those that didn’t hit the limit now have an unprotected position. This is just one of many scenarios that can happen when all of the autotraders are not in sync with the system.

My point of bringing up this topic was that I thought that the number of autotraders incurring slippage due to the limits going to market could be signficantly reduced if the autosync triggered on the first autotrader fill instead of the first fill somewhere in the market. Based on Matthew’s post to this thread, it sounds like this change would not be trivial. However, if it happens as often as many of us suspect and it results in profitable systems no longer being profitable, then he may decide to take on the costs and risks associated with implementing this change.

Gary

If Collective2 will start to filter real-world trades by its lucky/unlucky autotraders accounts, it will create its own virtual world.

If I will want to subscribe to the system, I will check every single trade against a market data.

If I will find a trade which - according my market data - should be filled but it is not filled on Collective2 (because its autotraders were not lucky enough) then I will shout loudly: Collective2 is not trustworthy!

I decided this discussion needed some harder numbers instead of anecdotal evidence. There are two systems I subscribe to that use limit orders on ES – 76West and e24 SP500. Over this past week, each of them issued 3 limit orders. Of those 6 orders, 4 of them traded at market for all autotraders (i.e., everyone incurred slippage) and 2 of them traded at the limit price for all autotraders (i.e., 0 slippage for all). Admittedly, this is a fairly small sample but it does indicate that this premature trigger to market is not a rare occurrence.

It is also worth pointing out that the costs to subscribers is very real. If everyone filled at the best price out of the group, then the total slippage cost would have been $4,425. Many filled at a worse price, so the actual slippage cost was higher than this figure (but less than $6,400). A spreadsheet containing the details of the trades are available here:

http://www.neurodimension.com/temp/SlippageTracking.xlsx

Matthew is the only one that can decide if it is worth the time and effort to fix this issue – I just want to present the facts as I see them so he can make an informed decision.

Gary

Slightly different issue, but sometimes you get positive slippage. C2 filled the system at 2081.25 for a long, but sub fill 2081

Was this for a stop order?

Gary

It was a market order. Just making the point that when placing a market order (or when collective2 converts a trade into a market order) sometimes a system will get positive slippage, in that a real fill was better than the fill assigned.

Good point. However, with Limit orders you would never get positive slippage – you either fill at the limit price or if it converts to market it will be at a worse price. I suppose there is the rare case where between the time that the limit order is cancelled and the market order is issued that the price moves in your favor, but it seems pretty unlikely unless that process of cancelling and issuing orders is slower than I think.

Gary

that’s right. regards