Bloomberg Trender Indicator
Bloomberg Trender Indicator
Anyone looked at Bloomberg Trender indicator before? It looks very similar to Parabolic Sar (or Jean Arps Trender which had not heard before) but Bloomberg refuses to share the parameters they use to plot it. I am in the process of trying to reverse engineer it ( i just can not deal with looking at something that i have not verified by myself it is doing what it supposed to ) to get the parameters (basically 3 things are unknown 2 Time Constants for the exponential lags/moving averages and the window of standard deviation they use). I thought i 'd check whether someone has gone through the exercise already and has an answer. Any help appreciated.

 Roundtable Knight
 Posts: 138
 Joined: Wed Nov 10, 2004 4:36 pm
The parameters appear to be user selected, but you can find a discussion of this indicator by downloading the attached pdf file to post #8 in this forexfactory forum thread.
Thanks for the link Babelproofreader but i had already seen that one. Actually the parameters are not selected by the user what is selected is the sensitivity which means how many standard deviations to add or subtract from your signal to get the trailing stop. The Time Constants for the two exponential MAs and the standard deviation window are not visible. ( they might not even be constant as far as we know)

 Roundtable Knight
 Posts: 229
 Joined: Thu Jul 08, 2010 2:36 pm
 Location: Boulder, CO
 Contact:
I was curious so I looked at the pdf (linked by Babelproofreader) describing the indicator. Since the formula for the indicator is specified, I assume that it is the parameters you are trying to figure out.
Here's some things I noticed:
1) The diagram on page 2 must be a conceptual representation rather than an actual rendering of what the indicator would produce. The bars are evenly spaced, yet the indicator steps are not  look at the second step down from the left, it occurs between the bars! Also, the moving averages do not make sense unless they are some kind of splines  they should be straight line segments from one bar to the next and midpoint ema should always move towards the data yet you can find bars where the midpoint declines but the "ema" rises!
Conclusion: I don't think you can derive / approximate the parameter settings from the diagram, maybe you can from Bloomberg itself.
2) The basic principal is similar to the Kase DevStop: assume price is continuing to move in the same direction until this null hypothesis is disproved by price moving in the opposite direction a distance that is a function of volatility and standard deviation of volatility.
The indicator as described seems to get in its own way: taking the standard deviation of an exponential average doesn't make much sense (the average of the square of the current moving average minus the average of the moving average!). Statistically speaking, the successive readings are very strongly serially correlated. Practically speaking, why not use the standard deviation of the true range itself? It would be more responsive to changes in volatility, even if it still has significant serial correlation.
Bottom line: don't worry about the parameter values, code it up and experiment. Secondly, you could probably create a version of this using an arithmetic average and standard deviation of true range that would do a better job of achieving the design intent (create a meaningful way of identifying a "real" change in trend vs "noise", that accounts for volatility and volatility of volatility).
For similar concepts you might want to look into the random walk indicator which essentially says "ignore price changes that can be explained by random walk, take action when the price moves more than can be explained by random walk".
Here's some things I noticed:
1) The diagram on page 2 must be a conceptual representation rather than an actual rendering of what the indicator would produce. The bars are evenly spaced, yet the indicator steps are not  look at the second step down from the left, it occurs between the bars! Also, the moving averages do not make sense unless they are some kind of splines  they should be straight line segments from one bar to the next and midpoint ema should always move towards the data yet you can find bars where the midpoint declines but the "ema" rises!
Conclusion: I don't think you can derive / approximate the parameter settings from the diagram, maybe you can from Bloomberg itself.
2) The basic principal is similar to the Kase DevStop: assume price is continuing to move in the same direction until this null hypothesis is disproved by price moving in the opposite direction a distance that is a function of volatility and standard deviation of volatility.
The indicator as described seems to get in its own way: taking the standard deviation of an exponential average doesn't make much sense (the average of the square of the current moving average minus the average of the moving average!). Statistically speaking, the successive readings are very strongly serially correlated. Practically speaking, why not use the standard deviation of the true range itself? It would be more responsive to changes in volatility, even if it still has significant serial correlation.
Bottom line: don't worry about the parameter values, code it up and experiment. Secondly, you could probably create a version of this using an arithmetic average and standard deviation of true range that would do a better job of achieving the design intent (create a meaningful way of identifying a "real" change in trend vs "noise", that accounts for volatility and volatility of volatility).
For similar concepts you might want to look into the random walk indicator which essentially says "ignore price changes that can be explained by random walk, take action when the price moves more than can be explained by random walk".
Thanks Eventhorizon, you do raise some very interesting points.
1) The diagram must be a conceptual representation, as you say. I didn't base my analysis on that. Instead i used some data from bloomberg which has the trender value for each bar
i am looking at. What i did was set up an equation of the form y=f(EMA(TR),EMA(MP),StDev(TR)) with 3 unknonw parameters: the Time Constants for the two EMAs and the
rolling window size of the stDev. i then sumed up the squared deviaitons of my predicted values and observed values and tried to use solver to optimize my 3 unknonw parameters
such that this quantity be minimized. I didn;t really get anywhere. The issue might be that for each bar you need to have a flag that says "Buy" or "Sell" so that you know if you are
adding or subtracting to the EMA(MP). That flag is a funcition of the previous bar's flag and whether you closed above or below yesterdays Trender value. I think that makes my optimization
problem a bit messy.
2) As you point out i could not understand coneptually what it means to take the standard deviation of the exponential MA of True Range ( the volatility of the average of volatility). playin around with my data i saw that
as expected changing the parameter of this stDev window has a very low sensitivity to my Trender signal (as expected i think)
3) I was not familiar with KaseDev . I will look into it and also the Random Walk Indicator.
1) The diagram must be a conceptual representation, as you say. I didn't base my analysis on that. Instead i used some data from bloomberg which has the trender value for each bar
i am looking at. What i did was set up an equation of the form y=f(EMA(TR),EMA(MP),StDev(TR)) with 3 unknonw parameters: the Time Constants for the two EMAs and the
rolling window size of the stDev. i then sumed up the squared deviaitons of my predicted values and observed values and tried to use solver to optimize my 3 unknonw parameters
such that this quantity be minimized. I didn;t really get anywhere. The issue might be that for each bar you need to have a flag that says "Buy" or "Sell" so that you know if you are
adding or subtracting to the EMA(MP). That flag is a funcition of the previous bar's flag and whether you closed above or below yesterdays Trender value. I think that makes my optimization
problem a bit messy.
2) As you point out i could not understand coneptually what it means to take the standard deviation of the exponential MA of True Range ( the volatility of the average of volatility). playin around with my data i saw that
as expected changing the parameter of this stDev window has a very low sensitivity to my Trender signal (as expected i think)
3) I was not familiar with KaseDev . I will look into it and also the Random Walk Indicator.

 Roundtable Knight
 Posts: 229
 Joined: Thu Jul 08, 2010 2:36 pm
 Location: Boulder, CO
 Contact:
The analysis might be thrown off by the initialization of the EMA's. I don't know how many bars of data you are fitting to  this effect becomes less significant the more bars you have. Possible ways of dealing with this:
1) Perhaps if you introduced two additional variables, the initial values of EMA(TR) and EMA(MP), into your function "y" it might help.
2) Allow enough time for the EMA's to settle  i.e. ignore the first n data points for the purposes of assessing the "goodness of fit".
I think the major difficulty is the nonlinearity of the indicator: it switches from lower to upper channel and back, and the channel that is active only moves onedirection.
It's a tough reverseengineering problem! Good luck.
1) Perhaps if you introduced two additional variables, the initial values of EMA(TR) and EMA(MP), into your function "y" it might help.
2) Allow enough time for the EMA's to settle  i.e. ignore the first n data points for the purposes of assessing the "goodness of fit".
I think the major difficulty is the nonlinearity of the indicator: it switches from lower to upper channel and back, and the channel that is active only moves onedirection.
It's a tough reverseengineering problem! Good luck.