aspTrader,
certainly. Not only I am curious how my strategies would behave on the CRBs but that would really be a treat to be able to optimize the bar height/number of ticks/timeframe, too.
Ahhh, I can only dream about it with the prehistoric Tradestation optimizer. But, the end is near After all the 6/6/2006 was a devilish date wasn't that
I am looking forward to your new NeoTicker optimizer presentation!
MidPoint statistics  surprising results!
Moderator: moderators
 michal.kreslik
 rank: 1000+ posts
 Posts: 1036
 Joined: Sat May 13, 2006 2:40 am
 Reputation: 4
 Location: Monte Carlo, Monaco
 Real name: Michal Kreslik
 Gender:
 Contact:
Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.
Thank you for your support.
Hi Michal...
Yes... The NeoTicker optimizer has exceeded the expectations I had... and I had high expectations because, well, I believe in Lawrence Chan.
The NeoTicker Grid Optimizer has options that make it more than just a brute force optimizer... There isn't enough documentation on this yet so it's hard to say what exactly is going on... But a friend started an opt run last night that had 56 million iterations.... Let's see today how far along he is.
Regarding this zone analysis and CRBs...
I think what really is important to analyze with CRBs is not midpoint zone statistics but statistics related to Bar Overlap... The point is... When you're working with bars of variable price heights you can't expect to be too exacting in your analysis.
But when all Bars are the same price height, new kinds of analysis can be performed that are more exacting. I've done a bit on this but there is more to do. For example...
"Bar Overlap" is a term I made up to describe cases where:
High[0] > High[1] and Low[0] < High[1]
"Bar Overlap" is the difference specified in the equation:
High[1]  Low[0]
I have a BarOverlap indicator that displays BarOverlap discretely for each bar and also contains a running summation of BarOverlap values for certain lookback periods... but I haven't taken it very far. I'd be happy to work further on this kind of thing with you if/when you decide to start using the #1 trading platform on the market...
 aspTrader
Yes... The NeoTicker optimizer has exceeded the expectations I had... and I had high expectations because, well, I believe in Lawrence Chan.
The NeoTicker Grid Optimizer has options that make it more than just a brute force optimizer... There isn't enough documentation on this yet so it's hard to say what exactly is going on... But a friend started an opt run last night that had 56 million iterations.... Let's see today how far along he is.
Regarding this zone analysis and CRBs...
I think what really is important to analyze with CRBs is not midpoint zone statistics but statistics related to Bar Overlap... The point is... When you're working with bars of variable price heights you can't expect to be too exacting in your analysis.
But when all Bars are the same price height, new kinds of analysis can be performed that are more exacting. I've done a bit on this but there is more to do. For example...
"Bar Overlap" is a term I made up to describe cases where:
High[0] > High[1] and Low[0] < High[1]
"Bar Overlap" is the difference specified in the equation:
High[1]  Low[0]
I have a BarOverlap indicator that displays BarOverlap discretely for each bar and also contains a running summation of BarOverlap values for certain lookback periods... but I haven't taken it very far. I'd be happy to work further on this kind of thing with you if/when you decide to start using the #1 trading platform on the market...
 aspTrader
Last edited by aspTrader on Fri Jun 09, 2006 12:25 pm, edited 1 time in total.
 michal.kreslik
 rank: 1000+ posts
 Posts: 1036
 Joined: Sat May 13, 2006 2:40 am
 Reputation: 4
 Location: Monte Carlo, Monaco
 Real name: Michal Kreslik
 Gender:
 Contact:
CRB overlap/overhead
aspTrader wrote:"Bar Overlap" is a term I made up to describe cases where:
High[0] > High[1] and Low[0] < High[1]
"Bar Overlap" is the difference specified in the equation:
High[1]  Low[0]
aspTrader,
I've been thinking about your idea of CRB overlaps.
I guess you made a typo and you meant
High[0] > Low[1] AND Low[0] < High[1]
instead of
High[0] > High[1] and Low[0] < High[1]
First of all  correct me if I'm wrong, but to me a definition of overlap is when two or more entities do have something in common. Your definition would exclude the cases where the two CRBs have only one price level in common. But I think that an overlap is valid if the two CRBs have at least one price level in common, thus:
High[0] >= Low[1] AND Low[0] <= High[1]
Then there is a problem with the very term of "overlap". Using the above condition we could define an overlap as a positive number only. But what if the CRBs don't overlap at all? Assuming that CRBs indeed are of constant height, there might be a wide, void gap between one CRB's close and the following CRB's open. The overlap between such bars then would be 0% no matter what the difference between the close and the following open is. Certianly, the overlap should be measured in a different way.
Instead of measuring the overlap in the range of 0% to 100%, we should measure it in the range of infinity to +100%. Unfortunately, we can't go beyond 100% since the two CRBs just can't overlap themselves more than being at the very same place The infinity measure is defined as the situation where the CRBs are infinitely distant from each other.
But even this improved method would leave us with no directional information. For example, the negative overlap value doesn't mean that the following bar is shifted down. It only means it is shifted completely outside the preceding bar's range. This way, the overlap value only tells us how much the CRB is shifted against the preceding CRB, but doesn't provide information on which way it is shifted (for instance, the overlap of +30% is the same regardless of the CRBs' mutual position).
Thus, I would rather suggest using a term overhead. You can define overhead in the range of infinity to +infinity. Overhead indicates the extent to which the two bars overlap each other and also the mutual position (direction) between the two bars.
Obviously:
 negative overhead indicates that the CRB is shifted down in relation to the preceding CRB
 positive overhead means the CRB is shifted up in relation to the preceding CRB
 If the two bars overlap perfectly each other, the overhead is 0%
Also, I would suggest measuring the overhead in units of price levels rather than in an absolute price difference. Mathematically it is a prerequisite for being able to define the two CRBs as overlapping themselves even if they only overlap at one single price level. Without using this method, one would get an overlap of zero in this case:
low[0]  high[1]
and yet, if these prices were the same (low[0] = high[1]), the overlap wouldn't in fact be zero, but exactly one price level.
For this to work properly, we must first define a variable named MinimumPriceMove. It is the smallest measure of price movement of the particular security of our interest. In Tradestation, this variable would be defined as MinMove / PriceScale. For example, in Forex EURUSD pair, the smallest measure of price movement is 0.0001. In a nutshell, price can't go anywhere between 1.2312 and 1.2313.
Subsequently, we must define the CRBPriceLevels variable. It is a measure of how many price levels there are in one CRB. For example, if we defined the CRB range for EURUSD forex pair as 5 points, the CRBPriceLevels will be 6, since the smallest measure of price movement in EURUSD is exactly one point and there are 6 price levels within the 5 points range (1.2000, 1.2001, 1.2002, 1.2003, 1.2004, 1.2005 = 6). The simple formulae:
 CRB height:
CRBheight = high[0]  low[0]
 number of price levels:
CRBPriceLevels = 1 + CRBheight/MinimumPriceMove
 overHead measured in number of price levels:
overHeadPriceLevels = (high[0]  high[1])/MinimumPriceMove
 overhead in percentage:
overHeadPriceLevels% = overHeadPriceLevels/CRBPriceLevels
 overlap in price levels:
overLapPriceLevels = CRBPriceLevels  AbsValue(overHeadPriceLevels)
 overlap in percentage:
overLapPriceLevels% = overLapPriceLevels/CRBPriceLevels
Picture is worth a thousand words, so have a look at the attached figures  I used these initial values:
 CRB height = 0.80
 MinimumPriceMove = 0.20
 CRBPriceLevels = 1 + CRBheight/MinimumPriceMove
= 1 + 0.80/0.20
= 1 + 4
= 5
Michal

 rank: <50 posts
 Posts: 41
 Joined: Sat Jun 24, 2006 1:20 pm
 Reputation: 0
 Location: Toronto
 Gender:
 Contact:
I have done this type of test on S&P data from 5min all the way upto 135min bars many years ago. The basic comparison was close > close of 1 bar ago.
You will find the results are vrey similar to what Michal did. And the interesting thing is, you can pretty much describe the distributions with basic binomial distribution.
The edge happens when the distribution of say the last 100 bars or so formed a curve that biased towards one side. I forgot exactly what I did with the work afterwards
You will find the results are vrey similar to what Michal did. And the interesting thing is, you can pretty much describe the distributions with basic binomial distribution.
The edge happens when the distribution of say the last 100 bars or so formed a curve that biased towards one side. I forgot exactly what I did with the work afterwards
Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.
Thank you for your support.
 michal.kreslik
 rank: 1000+ posts
 Posts: 1036
 Joined: Sat May 13, 2006 2:40 am
 Reputation: 4
 Location: Monte Carlo, Monaco
 Real name: Michal Kreslik
 Gender:
 Contact:
Lawrence,
I've got many other interesting statistical studies I've done on market data in my drawer. I'll post them here on the forums gradually.
The puzzling point is that nearly all examined concepts show a strong tendency towards statistical symmetry and gaussianshaped normal distribution with increasing number of observations. In some instances I've been astonished to find a Fibonacci sequences in the values of the observations' occurences.
Michal
I've got many other interesting statistical studies I've done on market data in my drawer. I'll post them here on the forums gradually.
The puzzling point is that nearly all examined concepts show a strong tendency towards statistical symmetry and gaussianshaped normal distribution with increasing number of observations. In some instances I've been astonished to find a Fibonacci sequences in the values of the observations' occurences.
Michal

 rank: <50 posts
 Posts: 41
 Joined: Sat Jun 24, 2006 1:20 pm
 Reputation: 0
 Location: Toronto
 Gender:
 Contact:
 christhlo2
 rank: <50 posts
 Posts: 25
 Joined: Thu May 18, 2006 7:03 am
 Reputation: 0
 Gender:
Hi Lawrence,
Just curious, if data is not partitioned by time, what would be the behaviour of the stat, and what other means/method of partition you think to be useful or interesting.
By the way, have you heard of prosticks.com, what do you think of their method of plotting the candlestick, it seems to be quite good at spotting support and resistance level ?
Thanks !
Chris
Just curious, if data is not partitioned by time, what would be the behaviour of the stat, and what other means/method of partition you think to be useful or interesting.
By the way, have you heard of prosticks.com, what do you think of their method of plotting the candlestick, it seems to be quite good at spotting support and resistance level ?
Thanks !
Chris
 michal.kreslik
 rank: 1000+ posts
 Posts: 1036
 Joined: Sat May 13, 2006 2:40 am
 Reputation: 4
 Location: Monte Carlo, Monaco
 Real name: Michal Kreslik
 Gender:
 Contact:
We can partition the data based on:
If, for instance, you choose for your starting tick on a 15min chart the tick that occured at 3:08:05 AM, then your next 15 min candle will start at 3:23:05, the next at 3:38:05 etc. This way, you certainly get a different view on the market data than if you select your first tick to be the one that occured at 3:00:00.
The same applies to the rest of the partitioning schemes listed above.
A question for Lawrence: is it possible to construct a mixedtype bars in Neo? As I pointed out above, let's say we would like to experiment with the bars that span <= 5 min AND <= 20 ticks AND <= 10 price points.
Michal
 time (traditional timerange bars)
 tick count (tickbased bars)
 price (constant range bars)
 internal condition (for instance, construct a new bar every time the data reaches highest high/lowest low of the last 30 minutes)
 external condition (construct a new EURUSD bar every time USDCHF makes 40 ticks)
 mixed conditions  the combination of the above (like bars that span <= 5 min AND <= 20 ticks)
If, for instance, you choose for your starting tick on a 15min chart the tick that occured at 3:08:05 AM, then your next 15 min candle will start at 3:23:05, the next at 3:38:05 etc. This way, you certainly get a different view on the market data than if you select your first tick to be the one that occured at 3:00:00.
The same applies to the rest of the partitioning schemes listed above.
A question for Lawrence: is it possible to construct a mixedtype bars in Neo? As I pointed out above, let's say we would like to experiment with the bars that span <= 5 min AND <= 20 ticks AND <= 10 price points.
Michal

 rank: <50 posts
 Posts: 41
 Joined: Sat Jun 24, 2006 1:20 pm
 Reputation: 0
 Location: Toronto
 Gender:
 Contact:
christhlo2 wrote:Hi Lawrence,
Just curious, if data is not partitioned by time, what would be the behaviour of the stat, and what other means/method of partition you think to be useful or interesting.
By the way, have you heard of prosticks.com, what do you think of their method of plotting the candlestick, it seems to be quite good at spotting support and resistance level ?
Thanks !
Chris
The extra dot produced in the prostick chart is simply an indicator based on tick data.
In NeoTicker, you can plot this type of indicators using the tick precise technology  which replay tick data onto a chart to generate the historical data as required.
Please add www.kreslik.com to your ad blocker white list.
Thank you for your support.
Thank you for your support.