Elder's Market Thermometer [LazyBear]

Market temperature, introduced by Dr . Alexander Elder, helps differentiate between sleepy, quiet and hot market periods.

Following is Mr.Elder's explanation on how to use this indicator (from his book "Come in to my Trading Room"):

"When markets are quiet, the adjacent bars tend to overlap. The consensus of value is well established, and the crowd does little buying or selling outside of yesterday’s range. When highs and lows exceed their previous day’s values, they do so only by small margins. Market Thermometer falls and its EMA slants down, indicating a sleepy market. When a market begins to run, either up or down, its daily bars start pushing outside of the previous ranges. The histogram of Market Thermometer grows taller and crosses above its EMA , which soon turns up, confirming the new trend."

"Market Thermometer gives four trading signals, based on the relationship between its histogram and its moving average:

1) The best time to enter new positions is when Market Thermometer falls below its moving average. When Market Thermometer falls below its EMA , it indicates that the market is quiet. If your system flashes an entry signal, try to enter when the market is cooler than usual. When Market Thermometer rises above its moving average, it warns that the market is hot and slippage more likely.

2) Exit positions when Market Thermometer rises to triple the height of its moving average. A spike of Market Thermometer indicates a runaway move. When the crowd feels jarred by a sudden piece of news and surges, it is a good time to take profits. Panics tend to be short-lived, offering a brief opportunity to cash in. If the EMA of Market Thermometer stands at 5 cents, but the Thermometer itself shoots up to 15 cents, take profits. Test these values for the market you are trading.

3) Get ready for an explosive move if the Thermometer stays below its moving average for five to seven trading days. Quiet markets put amateurs to sleep. They become careless and stop watching prices. Volatility and volume fall, and professionals get a chance to run away with the market. Explosive moves often erupt from periods of inactivity.

4) Market Thermometer can help you set a profit target for the next trading day. If you are a short-term trader and are long, add the value of today’s Thermometer EMA to yesterday’s high and place a sell order there. If you are short, subtract the value of the Thermometer’s EMA from yesterday’s low and place an order to cover at that level."

You can configure the "Explosive Move threshold" (default: 3), "Idle Market Threshold" (default: 7) and "Thermometer EMA length" (default: 22) via Options page.

More info:
"Come in to my Trading Room - A complete Guide to Trading" by Dr . Alexander Elder. (Page 162)

List of my other indicators:
- Chart: - GDoc:

List of my free indicators:
List of my indicators at Appstore:
Script open-source

Dans le véritable esprit de TradingView, l'auteur de ce script l'a publié en open-source, afin que les traders puissent le comprendre et le vérifier. Bravo à l'auteur! Vous pouvez l'utiliser gratuitement, mais la réutilisation de ce code dans une publication est régie par le règlement. Vous pouvez le mettre en favori pour l'utiliser sur un graphique.

Clause de non-responsabilité

Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.

Vous voulez utiliser ce script sur un graphique ?
// @author LazyBear 
// List of all my indicators: 
study("Elder Market Thermometer [LazyBear]", shorttitle="EMT_LB")
lengthMA=input(22, "EMA Length")
explosiveMktThreshold=input(3, title="Explosive Market Threshold")
idleMarketThreshold=input(7, title="Idle Market Threshold")

emt =   iff (high<high[1] and low>low[1], 0, 
        iff ((high - high[1]) > (low[1] - low), abs(high - high[1]), abs(low[1] - low)))

aemt = ema(emt, lengthMA)
cemt = (emt < aemt) ? qc>idleMarketThreshold?green:blue : 
        ((emt > aemt) and (emt < aemt*explosiveMktThreshold)) ? orange : red

plot(emt, color=cemt, style=columns, linewidth=2, title="Market Thermometer")
plot(aemt, color=#FE00DE, title="EMA of Market Thermometer")