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

futures io is the largest futures trading community on the planet, with over 100,000 members. At futures io, our goal has always been and always will be to create a friendly, positive, forward-thinking community where members can openly share and discuss everything the world of trading has to offer. The community is one of the friendliest you will find on any subject, with members going out of their way to help others. Some of the primary differences between futures io and other trading sites revolve around the standards of our community. Those standards include a code of conduct for our members, as well as extremely high standards that govern which partners we do business with, and which products or services we recommend to our members.

At futures io, our focus is on quality education. No hype, gimmicks, or secret sauce. The truth is: trading is hard. To succeed, you need to surround yourself with the right support system, educational content, and trading mentors – all of which you can find on futures io, utilizing our social trading environment.

With futures io, you can find honest trading reviews on brokers, trading rooms, indicator packages, trading strategies, and much more. Our trading review process is highly moderated to ensure that only genuine users are allowed, so you don’t need to worry about fake reviews.

We are fundamentally different than most other trading sites:

We are here to help. Just let us know what you need.

We work extremely hard to keep things positive in our community.

We do not tolerate rude behavior, trolling, or vendors advertising in posts.

We firmly believe in and encourage sharing. The holy grail is within you, we can help you find it.

We expect our members to participate and become a part of the community. Help yourself by helping others.

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.

My understanding is that he compares to an EMA (instead of SMA) to be consistent with the standard MACD calculations (which uses EMAs). The VWMA comparison to SMA is done in another indicator (VPCI) which is used in conjunction with TTI to determine trading signals.

My understanding is that he compares to an EMA (instead of SMA) to be consistent with the standard MACD calculations (which uses EMAs). The VWMA comparison to SMA is done in another indicator (VPCI) which is used in conjunction with TTI to determine trading signals.

The original idea which preceeded the TTI, was the MACD built from volume-weighted moving averages. The TTI is still based on that concept, as fastavg and slowavg are such volume-weighted averages. The only enhancement applied to this concept, as that both fastavg and slowavg a multiplied with a volume factor or inverted volume factor.

This volume factor is needed to make the MACD faster in case that volume rises and slower in case that volume drops, at least this is my understanding.

Now, one of the most peculiar ideas is, that a VWMA of volume is used. This basically produces a sum of the squares of volume, as volume is multiplied by itself, then added up over the period and divided by the total volume. The value obtained is similar to a standard deviation of volume, which means that it will return a higher value if volume is dispersed and a lower value if volume is homogeneous. I do not see how the indicator can gain anything from taking into account the volume dispersion.

Why are two different moving averages used?

The essential idea of the vFactor seems to be that it compares the average volume over the fast period with the average volume over the slow period, so far not specified which type of average is used. The volume ratio can then be used to accelerate the fast moving average of the MACD, when volume is rising, or to decelerate it, when volume is falling.

I am now assuming that the correct formulae for FAST and SLOW are:

FAST = (VFACTOR/IVFACTOR) * FASTAVG;
LOW = (IVFACTOR/VFACTOR)* SLOWAVG;

and I can see that both the left and the right term will be greater than 1, if volume is rising. However, I do not see any advantage to use the volume weighted average for the left term. I think that

fast = [EMA(Volume, fastPeriod)/EMA(Volume, slowPeriod)]^2 * FASTAVG;

would be good enough to achieve the same behaviour. No need to fool around with two different types of moving averages.

Inconsistency in the way the smoothing constant is modified:

My remark regarding the inconsistency in comparing the VWMA to an EMA referred to the formula used for vavg. The ratio of the two moving averages distorts the smoothing constant used to calculate the signal line of the MACD. The term vfactor/ivfactor is identical with vfactor^2. This means that it takes values > 1, when volume is rising and < 1, when volume is falling. This tendency is reinforced by using a shorter weighted moving average for vfactor and a slower moving average for ivFactor. However, I do not see, how it makes sense to compare two averages with both a different formula and a different period. This formula calls for simplification. After all it is only used to modify the period for computing the signal line, and if you check it, it does not change a lot.

How can you compare a spread to a MACD?

This remark refers to the histogram shown by the indicator. The histogram of a MACD is usually obtained by calculating the difference between the raw MACD and the signal line. If I look at the Easy Language code, this is done when sprdiff is calculated.

But why would anyone subtract a standard MACD from that spread?

The following 2 users say Thank You to Fat Tails for this post:

Then let us go and code an indicator, which serves the same purpose as Buff Dormeier's Trend Thrust Indicator, but

- uses simpler mechanics
- and can be applied to intraday data

The first task is to get rid of the volume-weighted moving average VWMA and to replace it with a range-weighted moving average RWMA. We know that there is a positive correlation between volume and range, therefore the two averages will be similar. But unlike the VWMA, the RWMA will not overreact to the volume gap at the start and the end of the regular session.

Attached is the RWMA, which I will use for coding an enhanced version of the trend thrust indicator.

Please register on futures.io to view futures trading content such as post attachment(s), image(s), and screenshot(s).

Please register on futures.io to view futures trading content such as post attachment(s), image(s), and screenshot(s).

This is just to communicate that I have put the project on hold.

The original Trend Thrust Indicator has a few major shortcomings, I would even say that it violates the principles of mathematics. Let me summarize the problems

The indicator is derivative of a MACD. In the first step the two EMAs are replaced with VWMAs. This results in a MACD built from volume-weighted moving averages. There is no problem here, except that the volume is unevenly distributed between the night and the regular session. Therefore I would suggest to use a range-weighted moving averages instead of the volume-weighted moving average.

In a second step, Buff Dormeier tries to adapt the MACD in order to increase the difference, when volume increases. To achieve this he multiplies the fast MACD by a volume factor and the slow MACD by an inverted volume factor. This is where the technical problem starts. Multiplying both average with different multipliers may not only result in a reduction of the spread between them (the spread is the MACD) but it may actually create an inverted spread.

For example let us assume that the fast moving average is 110 and the slow moving average is 100. Let us further assume that the volume multiplier is 0.9 and the inverted volume multiplier is 1.11. If you look at the MACD prior to applying the volume multiplier, it is 110 - 100 = 10. It is positive, because the fast moving average is above the slow moving average, which stands for rising prices. Now, I will apply the volume multiplier. The modified fast moving average becomes 0.9 * 110 = 99, while the slow moving average is no 1.11 * 100 = 111. The new spread becomes 99 - 111 = - 12. The problem here is that we have rising prices, but a negative spread, which is unacceptable and makes the indicator unusable.

In my opinion this is a serious flaw.

The above problem does not invalidate the concept. The original idea is similar to the adaptive moving averages developed by Tushar Chande and Perry Kaufman, and also the behaviour of the ADXVMA, which flatten out when volatility drops. The only problem here is that the indicator uses different multipliers for the two moving averages. If the spread is calculated first, and the volume factor applied to the spread, then the indicator should behave in the way as it was intended.

I did not have the time to do this during the last week, but will come up with something. If I forget it, please remind me. However, I will not publish a copy of the original TTI, as I think that it should not be used. Of course there is the possibility that I have misinterpreted the TradeStation code, but in that case I should not publish my version of the TTI either.

The following 8 users say Thank You to Fat Tails for this post: