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.

agon

Volume Splitter

Recommended Posts

Good work man! You got a lot further than I did. I spent the evening in the EOT free indicator class trying to look at splitter examples for clues...

 

Didn't come up with much. Even with modifying the BA Pressure indicator to look for size it still leaves the fundamental question of how they are pulling this data historically and not just real time... and its one I don't have an answer to just yet.

 

Yeah, I have no idea how they are using historical data. Now, I guess it is possible to interface with TradeStation's charting abilities and data feed via third party programming. For example, writing custom DLLs. I wonder if they wrote a DLL that logs trade volume and then they access it later.

 

I would guess TradeStation has an SDK for this type of work but his is outside of my realm of knowledge.

Share this post


Link to post
Share on other sites

There are only a couple of tricks they can use to pull historical data. The obvious one is to store all the info you need real time in your own database/file. This assumes that the data was captured real time at the client.

 

The second is to read historical data tick by tick and make assumptions based on the relationship of tick(n) to tick(n-1).This actually is a pretty good 'proxy'.

 

Thats pretty much all they can do.

Share this post


Link to post
Share on other sites

On the other hand, it seems to me, that nowadays (electronic age)

you don't just order 200 ES contracts, instead you order 200 times 1 ES contract.

You "pulse" your order. From the commissions side it should be the same, so it makes sense to me.

 

Can only underscore this.

 

"Smart money" uses quite sophisticated software for working their orders. They do not just hit the "buy 200" order button.

Orders of big size show that the buyers are more in the category "big moose, but (at most) medium sophistication".

 

Therefore, their importance in determining important market turning points is not really that big.

 

Real smart money has btw already gone beyond pulsing orders.

Share this post


Link to post
Share on other sites

You may not be able to track hedge funds and so forth, but if you are at least tracking "smaller" traders who shoot off 2-5K share trades (pardon me, I'm in equities), odds will still be in your favor, because they have more experience and are often more right than wrong, to get to trade that size.

Share this post


Link to post
Share on other sites

 

Real smart money has btw already gone beyond pulsing orders.

 

That's interesting, what might that be?

 

I think 'smart money' is not that useful a term, there are several different categories of traders that benefit from 'information asymmetry' making them 'informed traders', they pretty much compete with each other. These are the terms that those writing about market micorstructure seem to prefer (like O'Hara and Harris). That's not addressed at you particularly uexkuell....I blame the guys marketing certain VSA software <cough> ;)

 

Anyway back on topic, why would they give up the spread and go to market anyway? Would it not make sense to join the limit side of the order book with iceberg orders? If they do need to go to market why increase the risk of slippage by pulsing orders? Assuming they have large orders to fill they require liquidity. There will be other traders competing for that.

 

In any case you might enjoy Harris chapter on bluffers and manipulation and how they can get stuffed if liquidity providers adjust their prices quickly enough or if value traders (as defined by Harris) are currently participating on either side of the market. If on the opposite side of the market the bluffer will likely hit a wall of greater liquidity if on the same side they will be competing for the same liquidity.

 

Would you pulse orders to hide order flow or to make it look greater? (to be honest only the later would make sense to me) Is it that effective? I guess that would be the first step for me in understanding why someone might want to do it. What sort of participant might want to and why?

 

Those interested in this sort of thing would undoubtedly enjoy:-

 

Amazon.com: Market Microstructure Theory: Maureen O'Hara: Books

 

Amazon.com: Trading and Exchanges: Market Microstructure for Practitioners: Larry Harris: Books

Share this post


Link to post
Share on other sites

Here are today’s results. I did not like how it was plotting during the morning session so I did some modifications. Below are two charts from the afternoon sessions. The price chart has two volume splitter indicators. The first one tracks TradeVolume of 50 or larger. The second one (on the bottom) tracks TradeVolume orders between 1-10.

 

The indicator is far from a true volume splitter but it does look like it might have some potential.

 

attachment.php?attachmentid=10412&stc=1&d=1241219553

 

attachment.php?attachmentid=10413&stc=1&d=1241219553

ES_377t_01.jpg.1a9bbf867c336c5f95d1574ff80438ae.jpg

ES_377t_02.jpg.7ccfeee23d049b2ec6ab1f18aecaf77b.jpg

Share this post


Link to post
Share on other sites
did anybody manage to filter the amount of contracts like the indicator in the movie ? im having a hard time filtering them to my conditions

mincontracts - maxcontracts

 

 

I'm having some success as seen in the screen shots above. I still have some ideas I want to test to make it look more like the EOT indicator.

Share this post


Link to post
Share on other sites
I'm having some success as seen in the screen shots above.

 

how did you succeed - would you mind sharing ....

 

i pretty much have it the way i want it to be but i still need to filter

the contracts somehow

 

btw. second film dumb money part2 somewere in the midle the guy says something like

" i turned on the pc at 9am because the indicator only plots live " you can also see there

that in the beginning of the chart the indicator didnt plot so it definitly does NOT use historical data

Edited by flyingdutchmen

Share this post


Link to post
Share on other sites
how did you succeed - would you mind sharing ....

 

i pretty much have it the way i want it to be but i still need to filter

the contracts somehow

 

btw. second film dumb money part2 somewere in the midle the guy says something like

" i turned on the pc at 9am because the indicator only plots live " you can also see there

that in the beginning of the chart the indicator didnt plot so it definitly does NOT use historical data

 

Strictly speaking TradeStration's EasyLanguage does not have support for Time and Sales, which is what we need to accurately do this. However, I'm using the quote field called TradeVolume to get an approximation of what's going on. This field gives you the trade size of the "last order." Within a single bar this will be updated very frequently. Because of something called "tick netting" (I don't know the details) orders maybe lumped together when they are reported. So, the last order may not be the last order! It may be a lump sum of a few orders. Anyway, to get a feel for this simply create an indicator and have it print the TradeVolume value. You will see the order sizes in real time.

 

Values coming off of TradeVolume look something like this: 1,2,2,3,1,1,2,1,20,3,4,2,1,1,30,1,1,2,3...

 

From there you can process these values as you see fit.Oh yes, TradeVolume only works on live data - not historical data. I will be posting the indicator. I just want it to look a little better before I do.

Share this post


Link to post
Share on other sites

this might help...

 

inputs: 
    BlockSize( 5 ) ;	 

vars: 
    IntrabarPersist TSstore( 0 ) , 
    IntrabarPersist TradeSize( 0 ) , 
    IntrabarPersist TickHist( 0 ), 
    IntrabarPersist BStatus( 0 ) ; 

if BStatus = 2 then begin 
    TSstore = 0 ; 
    TickHist = 0 ; 

end; // f BStatus = 2

if BarStatus( 1 ) <> 2 then begin 
    TradeSize = Ticks - TickHist ; 
    TickHist = Ticks ; 
    if TradeSize >= BlockSize then 
 ...

end ; // if BarStatus( 1 ) <> 2

... 
...

BStatus = BarStatus( 1 ) ;

 

see

https://www.tradestation.com/Discussions/Topic.aspx?Topic_ID=49719&Reply_ID=229034&SearchTerm=Blocksize&txtExactMatch=if%20the%20tick%20is%20greater%20than

etc

 

hth

Share this post


Link to post
Share on other sites

I may be mistaken but in this code you are counting ticks not order size. A single tick may be a one contract order or it may be 50 contract order. If we are interested in tracking orders that are 20+ contracts per order, how will you differentiate between the two order sizes?

 

 

this might help...

 

inputs: 
    BlockSize( 5 ) ;	 

vars: 
    IntrabarPersist TSstore( 0 ) , 
    IntrabarPersist TradeSize( 0 ) , 
    IntrabarPersist TickHist( 0 ), 
    IntrabarPersist BStatus( 0 ) ; 

if BStatus = 2 then begin 
    TSstore = 0 ; 
    TickHist = 0 ; 

end; // f BStatus = 2

if BarStatus( 1 ) <> 2 then begin 
    TradeSize = Ticks - TickHist ; 
    TickHist = Ticks ; 
    if TradeSize >= BlockSize then 
 ...

end ; // if BarStatus( 1 ) <> 2

... 
...

BStatus = BarStatus( 1 ) ;

 

see

https://www.tradestation.com/Discussions/Topic.aspx?Topic_ID=49719&Reply_ID=229034&SearchTerm=Blocksize&txtExactMatch=if%20the%20tick%20is%20greater%20than

etc

 

hth

Share this post


Link to post
Share on other sites

^^ Actually I ran it and it seemed to be working exactly how we wanted... Anything that came through the T&S window that was grater than the "blocksize" was getting recorded and added onto itself each bar...

 

Now we just have to make it look like your histogram swan... and since it was recording all orders on both the bid and the ask I guess we have to modify it to take just bids greater than the block size and seperate them from the ask's greater than the block size right?

Share this post


Link to post
Share on other sites
^^ Actually I ran it and it seemed to be working exactly how we wanted... Anything that came through the T&S window that was grater than the "blocksize" was getting recorded and added onto itself each bar...

 

Now we just have to make it look like your histogram swan... and since it was recording all orders on both the bid and the ask I guess we have to modify it to take just bids greater than the block size and seperate them from the ask's greater than the block size right?

 

That's about right. You will need to separate them. I was unable to work on the indicator today. I will hope to do so Tuesday.

Share this post


Link to post
Share on other sites

You guys have completely missed the chart which was posted on the first page that shows how to do what you want. TS's TradeVolume is useless.

 

Ticks, and or Upticks and DownTicks contain the volume of each transaction as described. If you want to do what EOTPRO is doing it is not difficult - but requires using a 1 tick chart and passing the values to your chart using a Global Variable.

Share this post


Link to post
Share on other sites
You guys have completely missed the chart which was posted on the first page that shows how to do what you want. TS's TradeVolume is useless.

 

Ticks, and or Upticks and DownTicks contain the volume of each transaction as described. If you want to do what EOTPRO is doing it is not difficult - but requires using a 1 tick chart and passing the values to your chart using a Global Variable.

 

:doh:

AWESOME !, GREAT !

you absolutely right.

Share this post


Link to post
Share on other sites
I may be mistaken but in this code you are counting ticks not order size. A single tick may be a one contract order or it may be 50 contract order. If we are interested in tracking orders that are 20+ contracts per order, how will you differentiate between the two order sizes?

 

swansjr,

 

It was a code snippet for the concept

 

In TS the reserved word Ticks returns all volume for that bar so far if it is a Tick or Volume Bar chart set to Trade Volume...

 

"TradeVolume... represents "snapshot" information, not tick by tick information" TSSupport.

 

zdo

Edited by zdo

Share this post


Link to post
Share on other sites

that would leave me out unfortunally as i use 1 minute bars

for my fdax trading and tradesignal doesnt support ticks i will

have to make something from substracting the actual volume

Edited by flyingdutchmen

Share this post


Link to post
Share on other sites
what a google-search can do...

 

unfortunally i am not able to run this skript as i am tradesignal user not

tradestation i will have to convert some lines but from reading the skript

it draws text maybe one of you guys could make a screenshot and post it here

 

have fun

 

 

 

that's the market profile code.

it has been posted here on TL in numerous threads.

Share this post


Link to post
Share on other sites
that would leave me out unfortunally as i use 1 minute bars

for my fdax trading and tradesignal doesnt support ticks i will

have to make something from substracting the actual volume

 

You can read the Global Variable Value in ANY chart, any timeframe.

Share this post


Link to post
Share on other sites
You guys have completely missed the chart which was posted on the first page that shows how to do what you want. TS's TradeVolume is useless.

 

Ticks, and or Upticks and DownTicks contain the volume of each transaction as described. If you want to do what EOTPRO is doing it is not difficult - but requires using a 1 tick chart and passing the values to your chart using a Global Variable.

 

Thanks for the tip. I'm going to look into trying the 1-tick chart with GV.

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.


×
×
  • Create New...

Important Information

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