Automating for a 1 tick scalp? - futures io
futures io futures trading



Automating for a 1 tick scalp?


Discussion in Traders Hideout

Updated by JWM1270
      Top Posters
    1. looks_one Revan with 4 posts (0 thanks)
    2. looks_two iantg with 3 posts (20 thanks)
    3. looks_3 Quick Summary with 1 posts (0 thanks)
    4. looks_4 TheShrike with 1 posts (0 thanks)
    1. trending_up 2,077 views
    2. thumb_up 22 thanks given
    3. group 13 followers
    1. forum 12 replies
    2. attach_file 1 attachments




Welcome to futures io: the largest futures trading community on the planet, with well over 100,000 members
  • Genuine reviews from real traders, not fake reviews from stealth vendors
  • Quality education from leading professional traders
  • We are a friendly, helpful, and positive community
  • We do not tolerate rude behavior, trolling, or vendors advertising in posts
  • We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community.  It's free and simple.

-- Big Mike, Site Administrator

(If you already have an account, login at the top of the page)

 
Search this Thread
 

Automating for a 1 tick scalp?

(login for full post details)
  #1 (permalink)
Brisbane, Australia
 
 
Posts: 95 since Mar 2018
Thanks: 72 given, 26 received

Enter at limit *bid/ask doesn't change* exit at limit! (jokes aside anyone ever tried that?)

I'm using the dom, what's the best way to automate for a one tick scalp?

Enter at limit exit at market?

Enter at market exit at limit?


Some other complex trailing type thing? my target is 1 tick, any advice? I'm entering via my own discretion (no AI)

Reply With Quote

Can you help answer these questions
from other members on futures io?
Price Down, Volume Up, Open Interest Down
Traders Hideout
Looking freelancer for MT4 Indicator
Platforms and Indicators
Time & Sales Filter Size ES/NQ
The Elite Circle
T​​​​​​radestation datafeed (real time and historical) to NT8
NinjaTrader
Times and Sales more data to be displayed
TradeStation
 
Best Threads (Most Thanked)
in the last 7 days on futures io
Legal question and need desperate help
70 thanks
Building a high-performance data system
14 thanks
Risk reward question
11 thanks
TopstepTrader's Michael Patak (Founder) - Ask Me Anything (AMA)
11 thanks
Is Orderflow An Outdated Concept?
11 thanks
 
(login for full post details)
  #3 (permalink)
W.Coast, USA.
 
Experience: Intermediate
Platform: Anything
Trading: Emini
 
Posts: 55 since Jul 2017
Thanks: 13 given, 36 received


A strategy like that will help you squeeze a few pennies while risking your (presumably) small account. Good luck.

Reply With Quote
The following user says Thank You to Arch for this post:
 
(login for full post details)
  #4 (permalink)
charlotte nc
 
Experience: Master
Platform: ninjatrader
Broker: NinjaTrader
Trading: Emini (ES, YM, NQ, ect.)
 
Posts: 394 since Jan 2015
Thanks: 73 given, 1,016 received

Hi Revan,

Sure this is precisely the world that HF traders play in. I have been studying this very technique as well as the mechanics of microstructure and HF market making techniques for around 2 years. I could probably field most of your questions in this space if you are serious about researching this area.

But yes, you can get filled (buy the bid / sell the ask) on the same price level. I have a few NinjaTrader strategies that do exactly this on the same price level by quoting from the bid and ask at the same time.

If you are trying to do this seriously there are a few things you will need to know.

1. You will have to go with unmanaged code. Ninjatrader managed code won't support this. This means handling all your own canceling logic to determine what was filled, unfilled, entries vs. exits, orphan orders etc.

2. You will need to be very fast. Retail traders are at an extreme disadvantage in this space. So you will need to have very optimized code and co-locate to even have close to a fighting chance.
3. You have to understand the microstructure of the ES (assuming that is what you are trading). If you don't know what this looks like or how it works, then you will write code that leads you the wrong way because all your assumptions will be wrong.
4. You will need a solid queue tracking algorythm. Again, most retail traders are at a dissadvantage here. There is already integrated queue tracking with the new MBO CME feed, but most retail platforms don't have this, so you will end up needing to develop your own logic for this. Why? If you don't know your position in the queue, then you can't play in this space. The path to get filled via limit orders is usually toxic. (You get filled only as a function of being at the end of the queue and the price level collapses immediately after your fill and you are down 1 tick instantly). If you want to mitigate this you will need to track your queue position and have a strategy / betting model that uses this.
5. You will need to understand your latency chain in full: Initialized > Submitted > Accepted > Working . You will need to know the various lags you are hitting on each leg and how to optimize these. You will also need to understand what you can and can't do in time in relation to the microstructure. Somethings work conceptually and look awesome on paper, and then you really you are too damn slow and you want throw things.... But you have to be honest with yourself and have the common sense to only take the bets you can pull off and avoid the pipe dream bets.
6. You will need to be able to work around your crappy retail data feed / platform that delivers this. This is going to be par for the course with all of them unfortunately. The level 2, level 1, and Bar related data feeds can all get over heated and lag, and if you don't know what price level you are on, you will get killed. The OnMarketData feed for example can lag the real market by as much as 2 - 3 seconds. I will pause to let that sync in. So you will need solve for this.... You can have 10,20 50 price level changes per second some times.
7. Even if you can pull this off, you will quickly find out that the math doesn't work unless you have a seat license and get on a rebate program from your broker. So you will need to pay up just to get to a proof of concept.


But yes, you can do everything you mentioned and even a few things you didn't mention.

1. Going long and short at the same time.
2. Scratching trades (paying only commissions)
3. Exiting with limit orders at a loss (Being able to use this in place of stop losses at market orders)
4. Making your 1 tick scalp on the next price level


But generally speaking you will need to code this and really really know what you are doing. I don't want to discourage you from experimenting but there is a right way and wrong way to pursue this. Even as far as I have gotten there are lots of people that would tell you I am at too much of a disadvantage using retail tools, even highly optimized.

My best advice is that you really need to see the microstructure first before you try to get into this space. Without this you are literally flying blind.

Hope some of this helps!

Ian




Revan View Post
Enter at limit *bid/ask doesn't change* exit at limit! (jokes aside anyone ever tried that?)

I'm using the dom, what's the best way to automate for a one tick scalp?

Enter at limit exit at market?

Enter at market exit at limit?


Some other complex trailing type thing? my target is 1 tick, any advice? I'm entering via my own discretion (no AI)


In the analytical world there is no such thing as art, there is only the science you know and the science you don't know. Characterizing the science you don't know as "art" is a fools game.
Visit my futures io Trade Journal Reply With Quote
The following 5 users say Thank You to iantg for this post:
 
(login for full post details)
  #5 (permalink)
Brisbane, Australia
 
 
Posts: 95 since Mar 2018
Thanks: 72 given, 26 received

The reason I ask for one tick is because on the ladder I can only see price trade tick by tick, I have no idea how the price will trade once it reaches the next level, therefore I feel one movement is all I could really call, do people trade the ladder over multiple ticks? how so?

Maybe some people have a different outlook, I don't want to go down the hft path however, not my cup of tea.

Reply With Quote
 
(login for full post details)
  #6 (permalink)
charlotte nc
 
Experience: Master
Platform: ninjatrader
Broker: NinjaTrader
Trading: Emini (ES, YM, NQ, ect.)
 
Posts: 394 since Jan 2015
Thanks: 73 given, 1,016 received

Revan,

The best way for me to explain this, it to show you an example. I think this will help you understand the tools that you will need at a minimum to be successful. You might view this as the "HF world" and that would be a fair characterization to a point, but nonetheless without a very specific approach here, you won't have any success ever trying to scalp 1 tick.

Here is an example of the market microstructure for the ES:




The market has a strong side and a weak side.

1. On the first row you will see clearly that the bid price of 2737.75 has all the volume stacked in it's favor 247 contracts to be precise.
2. Also on the first row you can see that the ask price of 2738 is the weak side. It starts off with virtually 0 volume. In 90% of all cases the weak side will break first, and the strong side will win.
3. Because the bid of 2737.75 is the strong side and strong side typically wins, the market moves up one tick to the next price level. Here the Ask side is now the strong side and starts this price level with the resting volume it was able to drag in, and the bid has to spontaneously back-fill it's volume and it starts with practically 0 volume. So just like with the first example, the strong side once again wins and the bid breaks.
4. Back down now we go to the price level where Bid = 2737.75 and is once again the strong side. This process repeats over and over with only the strong side winning each sequence. And in each of these sequences, the winning side is only able to clear a very small portion of it's queue, where as at the same time the weak side which loses clears 100% of it's queue.
5. This back and forth between adjacent strong side's winning repeats until the first row that I highlighted bold shows up. Here the pattern finally breaks. The price moves up to Bid = 2738 and this is the weak side starting as usual with little to volume. But a large market order goes through on the Ask side, The HF traders cancel in mass on that side, and the Ask side breaks. This causes a shift in the pattern and now the market moves to a new sequence with 2 new adjacent strong sides.


So this is how the market moves. Where this concerns the trader using limit orders is understanding what the fill rate is on the side that actually wins the price level. The losing side clears 100% of it's queue, but the winning side typically clears far less. In truth overall there is around 25% or so of the price levels where the entire quantify of the starting volume gets cleared and the side actually wins. In most cases only the top 10%, 25%, to 50% of the queue will get filled from the winning side. Most retail traders only path to a fill is a toxic fill.

I provided 2 examples showing the types of patterns of the market microstructure.

1. The first example was the fight between the first two strong sides: Bid = 2737.75 and Ask = 27838.25. In this example both of these two strong sides could have cleared a large majority of their queues before the price level change. This is less common.
2. Starting with the significant price level change where the bid price moves up to 2738.25 you can see the more common case. Neither strong side is able to clear any significant amount of their respective queues. The only fills that occur are toxic fills.

I show this to give you some insight of what the odds are that you will ever get filled on your limit orders. It will break down something like this over thousands of trades (assuming you do no queue optimization, infrastructure optimization, or any further research into the HF world)

Over 100 Trades this would be your realistic fill rate (Assuming you have a 50% / 50% odds of correctly picking direction in the first place. It would be far worse if you were not at 50% / 50% odds on direction picking).

1. Toxic Fills: (You picked the wrong direction) 100% fill rate. So for 50 trades you start 1 tick down immediately.
2. Missed Fills: You picked the right direction, but you were not far enough up in the queue to get filled: 30 times this will occur. You knew which way the market was going, but you were not able to get filled. Bummer.
3. 20 Times. You picked the right side and got filled! This is around your non toxic fill rate with no optimization. I can further quantify this for any one skeptical here, but this is what it is going to be around.

So after 100 trades, the fills will look like this.

1. Toxic fills: 50
2. Non Toxic Fills 20
3. What about the rest? 50 to 20 doesn't equal 100. That's right... You picked the right side correctly, but you were not far enough up in the queue to get filled, so you missed these.

Why are the misses 30, higher than the fills from the winning side 20? I am actually being a little generous here.... The fill rate from winning side will typically clear the full starting queue only 25% to 50% of the time. So for people that posted late and are in the very back of the line (Most retail traders) the only path to a non toxic fill will be through the first example. Which is an outlier. But a ratio of 50 toxic to 20 non toxic fill should be enough to scare most people away, even if the reality is that a 50% / 50% rate of correctly predicting direction is generous and a 20% non toxic fill rate from the back of the queue is generous. So you can see where an even slightly more pessimistic view will be catastrophic. And in my experience the pessimistic view is the more realistic view for chart retail traders.

So at this point there is little you can do other than aim for a larger target, or take on more risk by setting a profit target of 1 vs a stop loss of > 1. Something like 5 or 10 ticks for example (This can actually work, but it does carry more risks). Both of those options may be viable for you. But scalping with even odds (1 tick profit vs. 1 tick loss) will kill you unless you can solve some of the problems that I brought up.

Hope this helps.

Ian








Revan View Post
The reason I ask for one tick is because on the ladder I can only see price trade tick by tick, I have no idea how the price will trade once it reaches the next level, therefore I feel one movement is all I could really call, do people trade the ladder over multiple ticks? how so?

Maybe some people have a different outlook, I don't want to go down the hft path however, not my cup of tea.


In the analytical world there is no such thing as art, there is only the science you know and the science you don't know. Characterizing the science you don't know as "art" is a fools game.
Visit my futures io Trade Journal Reply With Quote
The following 8 users say Thank You to iantg for this post:
 
(login for full post details)
  #7 (permalink)
Bridgeport, Ct
 
Experience: None
Broker: Tasty
Trading: STONKS
 
TheShrike's Avatar
 
Posts: 500 since Jun 2012
Thanks: 1,474 given, 792 received


Revan View Post
Enter at limit *bid/ask doesn't change* exit at limit! (jokes aside anyone ever tried that?)

I'm using the dom, what's the best way to automate for a one tick scalp?

Enter at limit exit at market?

Enter at market exit at limit?


Some other complex trailing type thing? my target is 1 tick, any advice? I'm entering via my own discretion (no AI)

You'll never be profitable trading that way so the optimal move here is to abandon the method.

Reply With Quote
 
(login for full post details)
  #8 (permalink)
Brisbane, Australia
 
 
Posts: 95 since Mar 2018
Thanks: 72 given, 26 received


iantg View Post
Revan,

The best way for me to explain this, it to show you an example. I think this will help you understand the tools that you will need at a minimum to be successful. You might view this as the "HF world" and that would be a fair characterization to a point, but nonetheless without a very specific approach here, you won't have any success ever trying to scalp 1 tick.

Here is an example of the market microstructure for the ES:




The market has a strong side and a weak side.

1. On the first row you will see clearly that the bid price of 2737.75 has all the volume stacked in it's favor 247 contracts to be precise.
2. Also on the first row you can see that the ask price of 2738 is the weak side. It starts off with virtually 0 volume. In 90% of all cases the weak side will break first, and the strong side will win.
3. Because the bid of 2737.75 is the strong side and strong side typically wins, the market moves up one tick to the next price level. Here the Ask side is now the strong side and starts this price level with the resting volume it was able to drag in, and the bid has to spontaneously back-fill it's volume and it starts with practically 0 volume. So just like with the first example, the strong side once again wins and the bid breaks.
4. Back down now we go to the price level where Bid = 2737.75 and is once again the strong side. This process repeats over and over with only the strong side winning each sequence. And in each of these sequences, the winning side is only able to clear a very small portion of it's queue, where as at the same time the weak side which loses clears 100% of it's queue.
5. This back and forth between adjacent strong side's winning repeats until the first row that I highlighted bold shows up. Here the pattern finally breaks. The price moves up to Bid = 2738 and this is the weak side starting as usual with little to volume. But a large market order goes through on the Ask side, The HF traders cancel in mass on that side, and the Ask side breaks. This causes a shift in the pattern and now the market moves to a new sequence with 2 new adjacent strong sides.


So this is how the market moves. Where this concerns the trader using limit orders is understanding what the fill rate is on the side that actually wins the price level. The losing side clears 100% of it's queue, but the winning side typically clears far less. In truth overall there is around 25% or so of the price levels where the entire quantify of the starting volume gets cleared and the side actually wins. In most cases only the top 10%, 25%, to 50% of the queue will get filled from the winning side. Most retail traders only path to a fill is a toxic fill.

I provided 2 examples showing the types of patterns of the market microstructure.

1. The first example was the fight between the first two strong sides: Bid = 2737.75 and Ask = 27838.25. In this example both of these two strong sides could have cleared a large majority of their queues before the price level change. This is less common.
2. Starting with the significant price level change where the bid price moves up to 2738.25 you can see the more common case. Neither strong side is able to clear any significant amount of their respective queues. The only fills that occur are toxic fills.

I show this to give you some insight of what the odds are that you will ever get filled on your limit orders. It will break down something like this over thousands of trades (assuming you do no queue optimization, infrastructure optimization, or any further research into the HF world)

Over 100 Trades this would be your realistic fill rate (Assuming you have a 50% / 50% odds of correctly picking direction in the first place. It would be far worse if you were not at 50% / 50% odds on direction picking).

1. Toxic Fills: (You picked the wrong direction) 100% fill rate. So for 50 trades you start 1 tick down immediately.
2. Missed Fills: You picked the right direction, but you were not far enough up in the queue to get filled: 30 times this will occur. You knew which way the market was going, but you were not able to get filled. Bummer.
3. 20 Times. You picked the right side and got filled! This is around your non toxic fill rate with no optimization. I can further quantify this for any one skeptical here, but this is what it is going to be around.

So after 100 trades, the fills will look like this.

1. Toxic fills: 50
2. Non Toxic Fills 20
3. What about the rest? 50 to 20 doesn't equal 100. That's right... You picked the right side correctly, but you were not far enough up in the queue to get filled, so you missed these.

Why are the misses 30, higher than the fills from the winning side 20? I am actually being a little generous here.... The fill rate from winning side will typically clear the full starting queue only 25% to 50% of the time. So for people that posted late and are in the very back of the line (Most retail traders) the only path to a non toxic fill will be through the first example. Which is an outlier. But a ratio of 50 toxic to 20 non toxic fill should be enough to scare most people away, even if the reality is that a 50% / 50% rate of correctly predicting direction is generous and a 20% non toxic fill rate from the back of the queue is generous. So you can see where an even slightly more pessimistic view will be catastrophic. And in my experience the pessimistic view is the more realistic view for chart retail traders.

So at this point there is little you can do other than aim for a larger target, or take on more risk by setting a profit target of 1 vs a stop loss of > 1. Something like 5 or 10 ticks for example (This can actually work, but it does carry more risks). Both of those options may be viable for you. But scalping with even odds (1 tick profit vs. 1 tick loss) will kill you unless you can solve some of the problems that I brought up.

Hope this helps.

Ian

Cheers for the information, I am not the guy that has the infrastructure for HFT, I am already getting the type of results you mentioned on the sim, my estimated position is always near the back of the que, the market trades and while I'm waiting for my fill the order flow changes it's direction, one idea to counter this would be to scratch often, very often but it doesn't seem all that desirable does it?

This thread has answered my questions regarding the requirements of these types of orders, upon thought I feel what I need to do is forget one tick and go for identifying runs of momentum to get 4 or 5

But what strategies identify momentum across multiple ticks, when you can't see the order flow (at least tick for tick), I think there are methods that exist but I am not familiar with them yet, they will be key to my approach considering the demands of HFT, perhaps some kind of volume profile study etc but I'm not sure.



Thanks for saving me time and headache Ian, Kudos.

Reply With Quote
 
(login for full post details)
  #9 (permalink)
Legendary Market Chamois
Chicago, IL
 
Experience: None
Platform: NT8,NT7,TWS
Broker: InteractiveBrokers, S5T, IQFeed
Trading: The one I'm creating in the present....Index Futures mini/micro, ZF
 
Blash's Avatar
 
Posts: 2,231 since Nov 2011
Thanks: 7,056 given, 4,276 received


Revan View Post
Enter at limit *bid/ask doesn't change* exit at limit! (jokes aside anyone ever tried that?)

I'm using the dom, what's the best way to automate for a one tick scalp?

Enter at limit exit at market?

Enter at market exit at limit?


Some other complex trailing type thing? my target is 1 tick, any advice? I'm entering via my own discretion (no AI)

Dear @Revan

I have some advice:

You must Always Always Always think of the Risk first.

Forget about what your target is.....What is your RISK?

Trading is all about Risk management. Entering the market pales in comparison to strategizing Risk.

Better to burn your cash..... at least you can warm your hands or roast marshmallows.

Ron

...My calamity is My providence, outwardly it is fire and vengeance, but inwardly it is light and mercy...
The steed of this Valley is pain; and if there be no pain this journey will never end.
Buy Low And Sell High (read left to right or right to left....lol)
Follow me on Twitter Visit my futures io Trade Journal Reply With Quote
The following user says Thank You to Blash for this post:
 
(login for full post details)
  #10 (permalink)
charlotte nc
 
Experience: Master
Platform: ninjatrader
Broker: NinjaTrader
Trading: Emini (ES, YM, NQ, ect.)
 
Posts: 394 since Jan 2015
Thanks: 73 given, 1,016 received


Hi Revan,

I am glad that this info was useful. Regarding your question on what types of tools / strategies are out that could help someone aim for 3-5 ticks and have some decent predictability. There are some things that could potentially help you see such opportunities. If you get the kind of information that I provided in real time and are able to partition the data into these types of buckets, you can get a fair sense of direction like this.

1. Market Order bias over the last K number of price levels / time, etc. Look for areas where one side definitively has more market order interest that the other. This is backward looking.
2. Analyze the adjacent strong side volumes on the best bid / best ask. If one is definitively weaker than the other and this aligns with the side that is getting more market order action, you have a fair shot at a push...
3. If you look at the level 2 data. In my example data I showed the top 5 levels of the bid and ask resting. If you have the top 1-3 levels also showing weaker support vs. the other side, and this is the same side that has more market order action, and a weaker level 1 starting volume on each flip. I would say you have a fair bet.

If you can quantify a confluence of these 3 types of things and you have a decent limit order queue position and are likely to get filled properly..... Then this is your path to success. There are tons of permutations of different bets like this, but this one would be an ideal setup with lots of signs all pointing to the same thing.

You can also get a fair edge by setting your risk reward ratio in line with market volatility level. Here is how this works.

1. For low volatility trading times, set your stop losses outside of the range that the market is moving, and set your profit target inside the range the market is moving, put it tight and in all likelyhood it will bounce in this smaller range several times before it breaks out of this range and potentially hits your loss. So even if you pick the wrong direction initially, even if you get toxic fills, you can still recover and hit your PT easily.

2. In high volatility trading times, set your profit target > your stop loss. If the market is moving up and down in 10 tick blocks every minute, then you are just as likely to hit a 5 tick move as an 8 tick move. So just set your profit target higher than your stop loss but still reasonable for the range. You will still end up with 50% / 50% odds of hitting either, but the tick value will be higher.

You can code all of the logic I shared and with the right adjustments have some success with these approaches.

But outside of this I honestly don't think there is much else....

Just my two cents though....

Ian



Revan View Post
Cheers for the information, I am not the guy that has the infrastructure for HFT, I am already getting the type of results you mentioned on the sim, my estimated position is always near the back of the que, the market trades and while I'm waiting for my fill the order flow changes it's direction, one idea to counter this would be to scratch often, very often but it doesn't seem all that desirable does it?

This thread has answered my questions regarding the requirements of these types of orders, upon thought I feel what I need to do is forget one tick and go for identifying runs of momentum to get 4 or 5

But what strategies identify momentum across multiple ticks, when you can't see the order flow (at least tick for tick), I think there are methods that exist but I am not familiar with them yet, they will be key to my approach considering the demands of HFT, perhaps some kind of volume profile study etc but I'm not sure.



Thanks for saving me time and headache Ian, Kudos.


In the analytical world there is no such thing as art, there is only the science you know and the science you don't know. Characterizing the science you don't know as "art" is a fools game.
Visit my futures io Trade Journal Reply With Quote
The following 7 users say Thank You to iantg for this post:


futures io Trading Community Traders Hideout > Automating for a 1 tick scalp?


July 31, 2020


Upcoming Webinars and Events
 

Getting Comfortable with Price Action Patterns w/Earn2Trade

Aug 4
 

Live Video Panel: Ask Me Anything w/Ironbeam Brokerage

Aug 6
     



Copyright © 2020 by futures io, s.a., Av Ricardo J. Alfaro, Century Tower, Panama, +507 833-9432, info@futures.io
All information is for educational use only and is not investment advice.
There is a substantial risk of loss in trading commodity futures, stocks, options and foreign exchange products. Past performance is not indicative of future results.
no new posts