Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

UrmaBlume

Trade Intensity

Recommended Posts

Contracts traded are contracts traded..... the total over the same time period have to be the same no matter how you view it..... don't they ?

 

I think I'm with darthtrader, especially after visiting their website..... I smell a rat.

 

Dean.

 

well I don't really agree with this...Look at the difference between TWAP and VWAP...the fact there is a big difference is obviously quite important if your taking things to this level.

Thats why all these "VSA" threads on here to me are laughable...there should be no difference between TWAP/VWAP...else you assume things that are obviously false.

Share this post


Link to post
Share on other sites
Contracts traded are contracts traded..... the total over the same time period have to be the same no matter how you view it..... don't they ?

I like to give people the benefit of the doubt but I think I'm with darthtrader, especially after visiting their website..... I think I smell a rat.

 

Dean.

 

The volume histogram would of course look the same but a histogram of the intensity/rate of trade would not and this calculation requires more granularity of time than is avialable in TS.

Share this post


Link to post
Share on other sites

So what kind of chart would show this kind of action? A 1s chart? A 100ms chart? 10ms? Because, while TS doesn't support these types of intervals, feeds like Zenfire might come close enough.

Share this post


Link to post
Share on other sites
So what kind of chart would show this kind of action? A 1s chart? A 100ms chart? 10ms? Because, while TS doesn't support these types of intervals, feeds like Zenfire might come close enough.

 

Atto,

 

Thank you, I appreciate the thought that goes into your posts.

 

This post, however, still misses the essence of measuring trade intensity.

 

Very short term time charts would just show a succession of trades - no spikes as most of this trade is broken down into small sizes anyway. The same would go for constant volume bars.

 

During a 1 minute bar trade intensity may spike to 100,000 contracts per minute (and does several times per day) even though only a few thousand contracts were traded during that minute. Volume in this bar did not spike, intensity did. This concept scales both up and down with either time or volume.

 

In the emini S&P trade averages about 5 - 6,000 contracts per minute during the day session. This trade is not evenly distributed throughout the day.

 

For the sake of this example - We have 2 charts - a 1 minute chart and a 5k contract bar chart. Without regard to price, trade is flowing at a steady 5k contracts per minute.

 

Volume Bars are all even, all averages of volume are flat. Now if 2k of the 5k contracts traded inside one of these bars trades at a very fast rate then there will be a huge spike in our measure of trade intensity but no spikes in any other traditional measure of volume.

 

As soon as Trade Station and other packages achieve better time granularity traders will be able to plot a host of more relevant indicators of trade flow and we know of no better indicators or motivators of price change than the flow of trade.

Share this post


Link to post
Share on other sites

Yeah, I'm sure I understand your concept (of intensity). However, I was simply asking what kind of interval could capture this stuff. For example, I trade on NinjaTrader with ZenFire for data, which gives very good live tick data. It seems as though this "retail" feed would work just fine, as I get the actual ticks. From there, it would be rather trivial to write a Ninja strategy that uses the tick data to gauge intensity my measuring how fast the ticks are coming in against a fast clock (such as a 100ms timer). Am I missing something?

Share this post


Link to post
Share on other sites
Yeah, I'm sure I understand your concept (of intensity). However, I was simply asking what kind of interval could capture this stuff. For example, I trade on NinjaTrader with ZenFire for data, which gives very good live tick data. It seems as though this "retail" feed would work just fine, as I get the actual ticks. From there, it would be rather trivial to write a Ninja strategy that uses the tick data to gauge intensity my measuring how fast the ticks are coming in against a fast clock (such as a 100ms timer). Am I missing something?

 

Any interval can capture intensity - the point is that it must be measured outside the bar and imported. As shown a 1 minute or 30 second bar could very easily show normal volume yet contain a huge spike in intensity.

 

When using ticks you must remember to consider the size of the tick and not just the number of ticks.

 

Using a 100ms timer and volume flow could definetly produce a useable measure of trade intensity. We measure this intensity via 3 different algorithms.

 

cheers

Share this post


Link to post
Share on other sites
Yeah, I'm sure I understand your concept (of intensity). However, I was simply asking what kind of interval could capture this stuff. For example, I trade on NinjaTrader with ZenFire for data, which gives very good live tick data. It seems as though this "retail" feed would work just fine, as I get the actual ticks. From there, it would be rather trivial to write a Ninja strategy that uses the tick data to gauge intensity my measuring how fast the ticks are coming in against a fast clock (such as a 100ms timer). Am I missing something?

 

I thought much the same. I would present the high intensity and low intensity value of the 'sample period' or bar. I guess the peak intensity of that sample period is the thing most would be interested in. Possibly how long it was sustained above a threshold would be interesting.

 

Darth I know the 'why tradestation' question wasn't addressed to me but you gotta love how quick and easy it is to prototype stuff (well I do at least).

Share this post


Link to post
Share on other sites

UrmaBlume,

 

The timer resolution of Windows machines is about 16 milliseconds. The jitter of the packets in an internet connection is at least 10-20 milliseconds. How do you deal with or avoid issues coming from the millisecond frequency?

Share this post


Link to post
Share on other sites
Any interval can capture intensity
I take this comment as meaning it's time frame independent and instead of dealing with micro seconds one could use such information for larger intraday moves or swings? Is this statement correct and if so, have you done any research on the larger interval "intensity spikes"? If you have, could you post some charts? Thanks.

Share this post


Link to post
Share on other sites

Interesting thread.

 

As it turns out, I've been working on an NT indicator in C# to track "trade intensity" in a way that may be similar to what is described in this thread, actually bid - ask volume delta, i.e. derivative of volume delta: d_Delta/dt.

 

I'd be curious to know what UrmaBlume and other's opinions are on a suitable time interval. So far I have been tracking on a per bar interval on very fast constant volume charts but I don't feel this is fine enough resolution to really see the spikes. Still a work in progress.

Edited by Pepperdog

Share this post


Link to post
Share on other sites

Hey UrmaBlume,

 

thanks for sharing this indicator. I am not sure whether I have correctly understood how you actually calculate 'trade intensity', so can you please correct me if my interpretation is wrong on how you calculate this:

 

- You calculate the time span between to the current trade and the previous trade (that's why no latency is so important)

- You then divide the number of contracts of this trade traded by this time span. For example, 40 contracts were traded after just 0.0001 minutes (=0.06 = 60 milliseconds). So you do 40 / 0.0001 = 40.000. That would mean that the 'trade intensity' would be 40.000 contracts per minute.

 

What I am now wondering is how you you summarize this information for all trades that occur in 1 minute. Do you have one bar for each second that is the average of the 'trade intensities' in that second?

Share this post


Link to post
Share on other sites

Well I was feeling a bit bored this morning so I knocked up something in Ninja. With the results I got I feel that you might be doing a bit of smoothing after you have processed the data? I found that the Intensity can slam around a bit.

 

Agekay my hunch is that the two histograms (in UB's charts) show peak trade intensity and lowest trade intensity for the bar - max and min values if you like. Could be wrong there. Anyway it seems that the peaks are what is interesting.

 

Here's a couple of squished up charts. The 'saw tooth' is interesting this is an artefact due to data arriving with the same delta time. I chose to add this hence the saw tooth what I really should do is reset it on a new bar. Just messing around really.

5aa70eaba68e1_ES03-0927_01_2009(100Volume)2.thumb.jpg.4db970f9e455c3ebd48f3afbca1f0482.jpg

5aa70eabae6ed_ES03-0927_01_2009(100Volume)3.thumb.jpg.0ee84f258725863924801a6932f9536e.jpg

Share this post


Link to post
Share on other sites

Me too, I whipped one up using AgeKay's formula and averaged the trade intensities over the bar.

 

Here are the millisecond differences of a bunch of ticks. I assume the ones with 3-7 ms differences are trades that happen one after another.

 

3.0003

0

3.0003

3.0003

49.0049

3.0003

3.0003

3.0003

3.0003

2.0002

7.0007

3.0003

3.0003

3.0003

6.0006

3.0003

4.0004

3.0003

3.0003

3.0003

5.0005

3.0003

5.0005

3.0003

6.0006

3.0003

0

48.0048

2.0002

95.0095

3.0003

4.0004

3.0003

3.0003

3.0003

3.0003

3.0003

3.0003

44.0044

128.0121

 

tradeintensity.thumb.png.3895edfd9923198561514cee52714d86.png

Share this post


Link to post
Share on other sites
Hey UrmaBlume,

 

thanks for sharing this indicator. I am not sure whether I have correctly understood how you actually calculate 'trade intensity', so can you please correct me if my interpretation is wrong on how you calculate this:

 

- You calculate the time span between to the current trade and the previous trade (that's why no latency is so important)

- You then divide the number of contracts of this trade traded by this time span. For example, 40 contracts were traded after just 0.0001 minutes (=0.06 = 60 milliseconds). So you do 40 / 0.0001 = 40.000. That would mean that the 'trade intensity' would be 40.000 contracts per minute.

 

What I am now wondering is how you you summarize this information for all trades that occur in 1 minute. Do you have one bar for each second that is the average of the 'trade intensities' in that second?

 

What we do aside - measure the time for a block of a constant size and extrapolate to cpm. We take this a step further so that our work not only reveals intensity but also the degree of trader commitment.

Share this post


Link to post
Share on other sites

BlowFish and honvly, thanks for posting, very cool. What feed did you use in that case with NinjaTrader?

 

BlowFish, what calculation did you use for your indicator? Something similar to my interpretation?

 

honvly, what do you with the 3-7 ms differences with regards to the formula I posted?

Share this post


Link to post
Share on other sites
What we do aside - measure the time for a block of a constant size and extrapolate to cpm. We take this a step further so that our work not only reveals intensity but also the degree of trader commitment.

 

UrmaBlume, thanks for chiming in.

 

Do these program trades always chop up their orders in constant sizes? Seems rather dumb to me if they want to disguise their intentions.

 

What do you mean by trader commitment?

Share this post


Link to post
Share on other sites

Here is a chart I posted earlier with one difference, the blue verticals are at 1 minute intervals, but this time I added the light coloured verticals every 1 second, anyone notice the Intensity..... :-)

 

 

185 trades in 1 second, contracts = 1342

 

now also don't dismiss the 1 second before the intense second.

 

52 trades in 1 second, contracts = 985

 

so I see 2 ways to inject volume in a very short time without it being obvious in higher timeframes, lots of smaller trades, or a few large trades. It's almost like the large spikes are a test.... of liquidly?

 

You can see a similar thing happening if you use a 1 Volume chart and plot vertical line every second.

 

I found this timeline indicator and changed it to display vertical lines every second instead of minutes like it was designed to do, unfortunately it is hugely CPU intensive now and pretty much unusable on my average home laptop. If anyone knows how to make it more CPU friendly, someone asked if there was another way of drawing a vertical line in this post:

http://www.ninjatrader-support2.com/vb/showthread.php?t=13440&highlight=vertical+line

and here is the link to the indicator the moderator said to take look at how to do it.

http://www.ninjatrader-support2.com/vb/local_links.php?catid=1&sort=N&page=1&pp=15&keyid=86

 

I want to thank UrmaBlume for helping me to see this, and I would edit an earlier post if I it was possible, my apologizes UrmaBlume.

 

Dean.

5aa70eabcac68_Ticks185-ES03-0923_01_2009(1Tick).thumb.png.eebc6e0f8a32e967bf121fc013eaf955.png

TimeLines_Seconds.zip

Edited by deanz
added missing link

Share this post


Link to post
Share on other sites
BlowFish and honvly, thanks for posting, very cool. What feed did you use in that case with NinjaTrader?

 

BlowFish, what calculation did you use for your indicator? Something similar to my interpretation?

 

honvly, what do you with the 3-7 ms differences with regards to the formula I posted?

 

I am using Zen-Fire.

 

Right now I am just dividing the contract size by the 3-7 ms differences and averaging this value across all ticks in a bar. However, I believe that the 3-7 ms differences are artifacts of NinjaTrader's bar processing speed. To improve the accuracy, I am going to try to increase the millisecond differences by filtering out trades less than 10 contracts and splitting bid/ask volume.

Share this post


Link to post
Share on other sites

honvly I would be cautious of using plain old bid/ask, as UrmaBlume has said in this post:

 

Most Data Vendors designate trade on the ask as UpVolume and trade on the bid as DnVolume. We have found flaws in that approach and use something close but, still different.

 

We calculate buy and sell imbalances over several volume/time frames and then further pre-process this data into inputs to both linear and non-linear analysis.

Share this post


Link to post
Share on other sites
If anyone knows how to make it more CPU friendly, someone asked if there was another way of drawing a vertical line in this

 

From what I've seen to do anything usefull with drawing in ninja that is complex it seems you have to override plot(). I might be way off but I think what happens when you don't do this is ninja paints all the bar data with plot then paints over that with whatever you have in onbarupdate..I get the feeling that if you do your drawing within plot, its all painted on one pass.

I'm still struggling with figuring out how to do much when it comes to the X cordinate though.

Maybe we can get a ninja coding sub forum on here? :)

Share this post


Link to post
Share on other sites

185 trades in 1 second, contracts = 1342

 

now also don't dismiss the 1 second before the intense second.

 

52 trades in 1 second, contracts = 985

 

Had all of these trades the same size?

Share this post


Link to post
Share on other sites
BlowFish and honvly, thanks for posting, very cool. What feed did you use in that case with NinjaTrader?

 

BlowFish, what calculation did you use for your indicator? Something similar to my interpretation?

 

honvly, what do you with the 3-7 ms differences with regards to the formula I posted?

 

Ninjatrader with Zenfire. Felt like a challenge and I find coding Ninja challenging :) It uses the .Net frameworks DateTime construct which will returun ticks (100 nano seconds resolution). Obviously far greater than is actually available in the real world!

 

I pretty much used your interpretation AK because when I thought about it, it seems like the right way to do it.

 

I am still wondering about smoothing to which end I have tried adding average intensity per bar.

Share this post


Link to post
Share on other sites
I am using Zen-Fire.

 

Right now I am just dividing the contract size by the 3-7 ms differences and averaging this value across all ticks in a bar. However, I believe that the 3-7 ms differences are artifacts of NinjaTrader's bar processing speed. To improve the accuracy, I am going to try to increase the millisecond differences by filtering out trades less than 10 contracts and splitting bid/ask volume.

 

I dunno but I think you might have an issue I get several clear flurries with a time difference of zero and a more varied spread of values. Are you using DateTime.Now.Ticks? ..........Time[0].Ticks does not work.

 

Here's some sample output (FTSE).

ninja.doc

Share this post


Link to post
Share on other sites
I dunno but I think you might have an issue I get several clear flurries with a time difference of zero and a more varied spread of values. Are you using DateTime.Now.Ticks? ..........Time[0].Ticks does not work.

 

Here's some sample output (FTSE).

 

So what do you do with the time differences of zero since you can't divide by zero?

 

And what do you mean by FTSE? Is that the sample output of the UK FTSE 100 stock index?

Share this post


Link to post
Share on other sites
So what do you do with the time differences of zero since you can't divide by zero?

 

And what do you mean by FTSE? Is that the sample output of the UK FTSE 100 stock index?

 

Stick the salami back together again :) That's why you get that sawtooth effect on the chart's I posted when you get a whole bunch of activity that spans several bars but with the same time stamp.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Topics

  • Posts

    • Be careful who you blame.   I can tell you one thing for sure.   Effective traders don’t blame others when things start to go wrong.   You can hang onto your tendency to play the victim, or the martyr… but if you want to achieve in trading, you have to be prepared to take responsibility.   People assign reasons to outcomes, whether based on internal or external factors.   When traders face losses, it's common for them to blame bad luck, poor advice, or other external factors, rather than reflecting on their own personal attributes like arrogance, fear, or greed.   This is a challenging lesson to grasp in your trading journey, but one that holds immense value.   This is called attribution theory. Taking responsibility for your actions is the key to improving your trading skills. Pause and ask yourself - What role did I play in my financial decisions?   After all, you were the one who listened to that source, and decided to act on that trade based on the rumour. Attributing results solely to external circumstances is what is known as having an ‘external locus of control’.   It's a concept coined by psychologist Julian Rotter in 1954. A trader with an external locus of control might say, "I made a profit because the markets are currently favourable."   Instead, strive to develop an "internal locus of control" and take ownership of your actions.   Assume that all trading results are within your realm of responsibility and actively seek ways to improve your own behaviour.   This is the fastest route to enhancing your trading abilities. A trader with an internal locus of control might proudly state, "My equity curve is rising because I am a disciplined trader who faithfully follows my trading plan." Author: Louise Bedford Source: https://www.tradinggame.com.au/
    • SELF IMPROVEMENT.   The whole self-help industry began when Dale Carnegie published How to Win Friends and Influence People in 1936. Then came other classics like Think And Grow Rich by Napoleon Hill, Awaken the Giant Within by Tony Robbins toward the end of the century.   Today, teaching people how to improve themselves is a business. A pure ruthless business where some people sell utter bullshit.   There are broke Instagrammers and YouTubers with literally no solid background teaching men how to be attractive to women, how to begin a start-up, how to become successful — most of these guys speaking nothing more than hollow motivational words and cliche stuff. They waste your time. Some of these people who present themselves as hugely successful also give talks and write books.   There are so many books on financial advice, self-improvement, love, etc and some people actually try to read them. They are a waste of time, mostly.   When you start reading a dozen books on finance you realize that they all say the same stuff.   You are not going to live forever in the learning phase. Don't procrastinate by reading bull-shit or the same good knowledge in 10 books. What we ought to do is choose wisely.   Yes. A good book can change your life, given you do what it asks you to do.   All the books I have named up to now are worthy of reading. Tim Ferriss, Simon Sinek, Robert Greene — these guys are worthy of reading. These guys teach what others don't. Their books are unique and actually, come from relevant and successful people.   When Richard Branson writes a book about entrepreneurship, go read it. Every line in that book is said by one of the greatest entrepreneurs of our time.   When a Chinese millionaire( he claims to be) Youtuber who releases a video titled “Why reading books keeps you broke” and a year later another one “My recommendation of books for grand success” you should be wise to tell him to jump from Victoria Falls.   These self-improvement gurus sell you delusions.   They say they have those little tricks that only they know that if you use, everything in your life will be perfect. Those little tricks. We are just “making of a to-do-list before sleeping” away from becoming the next Bill Gates.   There are no little tricks.   There is no success-mantra.   Self-improvement is a trap for 99% of the people. You can't do that unless you are very, very strong.   If you are looking for easy ways, you will only keep wasting your time forgetting that your time on this planet is limited, as alive humans that is.   Also, I feel that people who claim to read like a book a day or promote it are idiots. You retain nothing. When you do read a good book, you read slow, sometimes a whole paragraph, again and again, dwelling on it, trying to internalize its knowledge. You try to understand. You think. It takes time.   It's better to read a good book 10 times than 1000 stupid ones.   So be choosy. Read from the guys who actually know something, not some wannabe ‘influencers’.   Edit: Think And Grow Rich was written as a result of a project assigned to Napoleon Hill by Andrew Carnegie(the 2nd richest man in recent history). He was asked to study the most successful people on the planet and document which characteristics made them great. He did extensive work in studying hundreds of the most successful people of that time. The result was that little book.   Nowadays some people just study Instagram algorithms and think of themselves as a Dale Carnegie or Anthony Robbins. By Nupur Nishant, Quora Profits from free accurate cryptos signals: https://www.predictmag.com/    
    • there is no avoiding loses to be honest, its just how the market is. you win some and hopefully more, but u do lose some. 
    • $CSCO Cisco Systems stock, nice top of range breakout, from Stocks to Watch at https://stockconsultant.com/?CSCOSEPN Septerna stock watch for a bottom breakout, good upside price gap
    • $CSCO Cisco Systems stock, nice top of range breakout, from Stocks to Watch at https://stockconsultant.com/?CSCOSEPN Septerna stock watch for a bottom breakout, good upside price gap
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.